From 045d32a8e8cfba542a9e5de38eaa93a36e31148b Mon Sep 17 00:00:00 2001 From: "Daniel P. Berrange" Date: Tue, 15 Jan 2008 14:23:52 +0000 Subject: [PATCH] Fix off-by-one in SSH argv checking. Fix format string warning --- ChangeLog | 6 ++++++ src/remote_internal.c | 7 ++++--- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 3f720a06ab..070f320a63 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Mon Jan 15 09:18:53 EST 2008 Daniel P. Berrange + + * src/remote_internal.c: Fix off by one in checking SSH + argv for NULL. Fix format args in error message to avoid + compile warning. + 2008-01-14 Jim Meyering Update files from gnulib. diff --git a/src/remote_internal.c b/src/remote_internal.c index 9eff251eba..bf887118f0 100644 --- a/src/remote_internal.c +++ b/src/remote_internal.c @@ -670,11 +670,12 @@ doRemoteOpen (virConnectPtr conn, cmd_argv[j++] = strdup (sockname ? sockname : LIBVIRTD_PRIV_UNIX_SOCKET); cmd_argv[j++] = 0; assert (j == nr_args); - for (j = 0; j < nr_args; j++) + for (j = 0; j < (nr_args-1); j++) { if (cmd_argv[j] == NULL) { error (conn, VIR_ERR_SYSTEM_ERROR, strerror (ENOMEM)); goto failed; } + } } /*FALLTHROUGH*/ @@ -3177,7 +3178,7 @@ remoteAuthSASL (virConnectPtr conn, struct private_data *priv, int in_open, } __virRaiseError (in_open ? NULL : conn, NULL, NULL, VIR_FROM_REMOTE, VIR_ERR_AUTH_FAILED, VIR_ERR_ERROR, NULL, NULL, NULL, - 0, 0, msg); + 0, 0, "%s", msg); goto cleanup; } free(iret.mechlist); @@ -3253,7 +3254,7 @@ remoteAuthSASL (virConnectPtr conn, struct private_data *priv, int in_open, } __virRaiseError (in_open ? NULL : conn, NULL, NULL, VIR_FROM_REMOTE, VIR_ERR_AUTH_FAILED, VIR_ERR_ERROR, NULL, NULL, NULL, - 0, 0, msg); + 0, 0, "%s", msg); goto cleanup; }