Abstract sockets for server and audiod.
[paraslash.git] / afs.c
diff --git a/afs.c b/afs.c
index c677b6c..65d6ed9 100644 (file)
--- a/afs.c
+++ b/afs.c
@@ -639,11 +639,15 @@ static int setup_command_socket_or_die(void)
        char *socket_name = conf.afs_socket_arg;
 
        unlink(socket_name);
-       ret = create_local_socket(socket_name,
-               S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IWOTH);
+       ret = create_local_socket(socket_name, 0);
        if (ret < 0) {
-               PARA_EMERG_LOG("%s: %s\n", para_strerror(-ret), socket_name);
-               exit(EXIT_FAILURE);
+               ret = create_local_socket(socket_name,
+                       S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IWOTH);
+               if (ret < 0) {
+                       PARA_EMERG_LOG("%s: %s\n", para_strerror(-ret),
+                               socket_name);
+                       exit(EXIT_FAILURE);
+               }
        }
        socket_fd = ret;
        PARA_INFO_LOG("listening on socket %s (fd %d)\n", socket_name,