[linux-lvm] [PATCH 04/10] clvmd: fix positive return value is not an error in csid->name translation
Vladislav Bogdanov
bubble at hoster-ok.com
Tue Mar 19 13:32:44 UTC 2013
csid_from_name() returns
* zero (cman) - should be fixed?
* positive value - nodeid (openais, corosync)
on success, but clvmd assumes only zero is a valid result.
Signed-off-by: Vladislav Bogdanov <bubble at hoster-ok.com>
---
daemons/clvmd/clvmd.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/daemons/clvmd/clvmd.c b/daemons/clvmd/clvmd.c
index 07a318e..4f2f458 100644
--- a/daemons/clvmd/clvmd.c
+++ b/daemons/clvmd/clvmd.c
@@ -1284,7 +1284,7 @@ static int read_from_local_sock(struct local_client *thisfd)
}
/* Check the node name for validity */
- if (inheader->node[0] && clops->csid_from_name(csid, inheader->node)) {
+ if (inheader->node[0] && clops->csid_from_name(csid, inheader->node) <= 0) {
/* Error, node is not in the cluster */
struct clvm_header reply = {
.cmd = CLVMD_CMD_REPLY,
@@ -1427,7 +1427,7 @@ static int distribute_command(struct local_client *thisfd)
/* Do it on a single node */
char csid[MAX_CSID_LEN];
- if (clops->csid_from_name(csid, inheader->node)) {
+ if (clops->csid_from_name(csid, inheader->node) <= 0) {
/* This has already been checked so should not happen */
return 0;
} else {
--
1.7.1
More information about the linux-lvm
mailing list