[lvm-devel] main - cov: add error path for daemon_request_extend
Zdenek Kabelac
zkabelac at sourceware.org
Mon Sep 20 13:30:00 UTC 2021
Gitweb: https://sourceware.org/git/?p=lvm2.git;a=commitdiff;h=e1840dd9e0b3be55281466e60a9a07cce068db4f
Commit: e1840dd9e0b3be55281466e60a9a07cce068db4f
Parent: 6427803252354203dfa5d816c6a8dc0ae385051e
Author: Zdenek Kabelac <zkabelac at redhat.com>
AuthorDate: Mon Sep 20 01:48:30 2021 +0200
Committer: Zdenek Kabelac <zkabelac at redhat.com>
CommitterDate: Mon Sep 20 14:26:09 2021 +0200
cov: add error path for daemon_request_extend
Check for errors in daemon_request_extend().
---
lib/locking/lvmlockd.c | 17 +++++++++++------
1 file changed, 11 insertions(+), 6 deletions(-)
diff --git a/lib/locking/lvmlockd.c b/lib/locking/lvmlockd.c
index 2284d60fe..4f9952d5b 100644
--- a/lib/locking/lvmlockd.c
+++ b/lib/locking/lvmlockd.c
@@ -186,7 +186,7 @@ static int _lockd_result(daemon_reply reply, int *result, uint32_t *lockd_flags)
static daemon_reply _lockd_send_with_pvs(const char *req_name,
const struct lvmlockd_pvs *lock_pvs, ...)
{
- daemon_reply repl;
+ daemon_reply repl = { .error = -1 };
daemon_request req;
int i;
char key[32];
@@ -201,18 +201,23 @@ static daemon_reply _lockd_send_with_pvs(const char *req_name,
/* Pass PV list */
if (lock_pvs && lock_pvs->num) {
- daemon_request_extend(req, "path_num = " FMTd64,
- (int64_t)(lock_pvs)->num, NULL);
-
+ if (!daemon_request_extend(req, "path_num = " FMTd64,
+ (int64_t)(lock_pvs)->num, NULL)) {
+ log_error("Failed to create pvs request.");
+ goto bad;
+ }
for (i = 0; i < lock_pvs->num; i++) {
snprintf(key, sizeof(key), "path[%d] = %%s", i);
val = lock_pvs->path[i] ? lock_pvs->path[i] : "none";
- daemon_request_extend(req, key, val, NULL);
+ if (!daemon_request_extend(req, key, val, NULL)) {
+ log_error("Failed to create pvs request.");
+ goto bad;
+ }
}
}
repl = daemon_send(_lvmlockd, req);
-
+bad:
daemon_request_destroy(req);
return repl;
More information about the lvm-devel
mailing list