[libvirt] [PATCH 02/11] util: Alter virAuthGet*Path API to check valid callback

John Ferlan jferlan at redhat.com
Tue Aug 14 17:07:47 UTC 2018


Before trying to call @auth->cb, let's ensure it exists.

Signed-off-by: John Ferlan <jferlan at redhat.com>
---
 src/util/virauth.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/src/util/virauth.c b/src/util/virauth.c
index 1b9e4b6704..7e7098317d 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;
-- 
2.17.1




More information about the libvir-list mailing list