From 3428455df9302b2b924e380cb90a77ca1ce5001e Mon Sep 17 00:00:00 2001 From: Kevin Wolf Date: Tue, 17 Nov 2020 17:30:44 +0100 Subject: [PATCH] authz-pam: Check that 'service' property is set MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit If the 'service' property is not set, we'll call pam_start() with a NULL pointer for the service name. This fails and leaves a message like this in the syslog: qemu-storage-daemon[294015]: PAM pam_start: invalid argument: service == NULL Make specifying the property mandatory and catch the error already during the creation of the object. Signed-off-by: Kevin Wolf Signed-off-by: Daniel P. Berrangé --- authz/pamacct.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/authz/pamacct.c b/authz/pamacct.c index e67195f7be..c862d9ff39 100644 --- a/authz/pamacct.c +++ b/authz/pamacct.c @@ -84,6 +84,12 @@ qauthz_pam_prop_get_service(Object *obj, static void qauthz_pam_complete(UserCreatable *uc, Error **errp) { + QAuthZPAM *pauthz = QAUTHZ_PAM(uc); + + if (!pauthz->service) { + error_setg(errp, "The 'service' property must be set"); + return; + } }