ctdb-daemon: Use sock_clean() to remove stale sockets
authorAmitay Isaacs <amitay@gmail.com>
Mon, 30 Jan 2017 03:34:12 +0000 (14:34 +1100)
committerMartin Schwenke <martins@samba.org>
Fri, 17 Feb 2017 13:45:10 +0000 (14:45 +0100)
Signed-off-by: Amitay Isaacs <amitay@gmail.com>
Reviewed-by: Martin Schwenke <martin@meltin.net>
Autobuild-User(master): Martin Schwenke <martins@samba.org>
Autobuild-Date(master): Fri Feb 17 14:45:10 CET 2017 on sn-devel-144

ctdb/server/ctdb_daemon.c
ctdb/server/eventscript.c

index d0d86a0c70368afb8019d298ac8aa358a3797504..91a86c32dc9b5f8baa9401cebf4a2c7fb933d228 100644 (file)
@@ -45,6 +45,7 @@
 #include "common/common.h"
 #include "common/logging.h"
 #include "common/pidfile.h"
+#include "common/sock_io.h"
 
 struct ctdb_client_pid_list {
        struct ctdb_client_pid_list *next, *prev;
@@ -1007,14 +1008,7 @@ static int ux_socket_bind(struct ctdb_context *ctdb)
        addr.sun_family = AF_UNIX;
        strncpy(addr.sun_path, ctdb->daemon.name, sizeof(addr.sun_path)-1);
 
-       /* Remove any old socket */
-       ret = unlink(ctdb->daemon.name);
-       if (ret == 0) {
-               DEBUG(DEBUG_WARNING,
-                     ("Removed stale socket %s\n", ctdb->daemon.name));
-       } else if (errno != ENOENT) {
-               DEBUG(DEBUG_ERR,
-                     ("Failed to remove stale socket %s\n", ctdb->daemon.name));
+       if (! sock_clean(ctdb->daemon.name)) {
                return -1;
        }
 
index 22cd8735a9d2dd39822e9df4f254399d37baed6f..438fbbbcaa4966fde7801c4976d34d61841183bd 100644 (file)
@@ -171,12 +171,7 @@ int ctdb_start_eventd(struct ctdb_context *ctdb)
 
        ectx = ctdb->ectx;
 
-       ret = unlink(ectx->socket);
-       if (ret == 0) {
-               D_WARNING("Removed stale eventd socket %s\n", ectx->socket);
-       } else if (errno != ENOENT) {
-               D_ERR("Failed to remove stale eventd socket %s\n",
-                     ectx->socket);
+       if (! sock_clean(ectx->socket)) {
                return -1;
        }