diff --git a/src/util/virauth.c b/src/util/virauth.c index 1b9e4b6704a2e021dc582fd23fc3fc3c97d09481..7e7098317d683111c0c0151fdccc9b840848e639 100644 --- a/src/util/virauth.c +++ b/src/util/virauth.c @@ -175,6 +175,12 @@ virAuthGetUsernamePath(const char *path, if (auth->credtype[ncred] != VIR_CRED_AUTHNAME) continue; + if (!auth->cb) { + virReportError(VIR_ERR_INVALID_ARG, "%s", + _("Missing authentication callback")); + return NULL; + } + cred.type = VIR_CRED_AUTHNAME; cred.prompt = prompt; cred.challenge = hostname; @@ -251,6 +257,12 @@ virAuthGetPasswordPath(const char *path, continue; } + if (!auth->cb) { + virReportError(VIR_ERR_INVALID_ARG, "%s", + _("Missing authentication callback")); + return NULL; + } + cred.type = auth->credtype[ncred]; cred.prompt = prompt; cred.challenge = hostname;