From c84efe887416565276a1c9eeaa0fcf3314565c18 Mon Sep 17 00:00:00 2001 From: Wido den Hollander Date: Tue, 16 Jul 2013 14:26:07 +0200 Subject: [PATCH] rbd: Do not free the secret if it is not set Not all RBD (Ceph) storage pools have cephx authentication turned on, so "secret" might not be initialized. It could also be that the secret couldn't be located. Only call virSecretFree() if "secret" is initialized earlier. Signed-off-by: Wido den Hollander (cherry picked from commit d58c8478443d49c6e702bbb2c56a567ef23f036f) --- src/storage/storage_backend_rbd.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/storage/storage_backend_rbd.c b/src/storage/storage_backend_rbd.c index 953a8eefef..44f67aa1bd 100644 --- a/src/storage/storage_backend_rbd.c +++ b/src/storage/storage_backend_rbd.c @@ -176,7 +176,10 @@ static int virStorageBackendRBDOpenRADOSConn(virStorageBackendRBDStatePtr *ptr, cleanup: VIR_FREE(secret_value); VIR_FREE(rados_key); - virSecretFree(secret); + + if (secret != NULL) + virSecretFree(secret); + virBufferFreeAndReset(&mon_host); VIR_FREE(mon_buff); return ret; -- GitLab