From 01cc3f0784a361daeb80560319e93ebc2432350d Mon Sep 17 00:00:00 2001 From: Martin Schwenke Date: Fri, 26 Jul 2024 11:29:43 +1000 Subject: [PATCH] ctdb-daemon: Clean up error handling and debug Add some missing error handling and error messages. Remove a use of CTDB_NO_MEMORY(), which then renders the caller's use of ctdb_errstr() pointless, so remove that too. Signed-off-by: Martin Schwenke Reviewed-by: Anoop C S --- ctdb/server/ctdb_server.c | 12 +++++++++++- ctdb/server/ctdbd.c | 3 +-- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/ctdb/server/ctdb_server.c b/ctdb/server/ctdb_server.c index a1344bae1ae..7a1145179c9 100644 --- a/ctdb/server/ctdb_server.c +++ b/ctdb/server/ctdb_server.c @@ -158,10 +158,14 @@ int ctdb_set_address(struct ctdb_context *ctdb, const char *address) bool ok; ctdb->address = talloc(ctdb, ctdb_sock_addr); - CTDB_NO_MEMORY(ctdb, ctdb->address); + if (ctdb->address == NULL) { + DBG_ERR("Memory allocation error\n"); + return -1; + } ok = ctdb_parse_node_address(address, ctdb->address); if (!ok) { + DBG_ERR("Failed to parse node address\n"); TALLOC_FREE(ctdb->address); return -1; } @@ -169,6 +173,12 @@ int ctdb_set_address(struct ctdb_context *ctdb, const char *address) ctdb->name = talloc_asprintf(ctdb, "%s:%u", ctdb_addr_to_str(ctdb->address), ctdb_addr_to_port(ctdb->address)); + if (ctdb->name == NULL) { + DBG_ERR("Memory allocation error\n"); + TALLOC_FREE(ctdb->address); + return -1; + } + return 0; } diff --git a/ctdb/server/ctdbd.c b/ctdb/server/ctdbd.c index 0ce958a4883..f0f62533187 100644 --- a/ctdb/server/ctdbd.c +++ b/ctdb/server/ctdbd.c @@ -297,8 +297,7 @@ int main(int argc, const char *argv[]) if (ctdb_config.node_address) { ret = ctdb_set_address(ctdb, ctdb_config.node_address); if (ret == -1) { - D_ERR("ctdb_set_address failed - %s\n", - ctdb_errstr(ctdb)); + D_ERR("Failed to set node address\n"); goto fail; } } -- 2.47.3