Remove socket address parameter of create_local_socket().
[paraslash.git] / net.c
diff --git a/net.c b/net.c
index 139071022df39290c34bd56df88ec37808258c47..7a987444114abf7890251bb10da7e82507b87b64 100644 (file)
--- a/net.c
+++ b/net.c
@@ -863,8 +863,7 @@ static int init_unix_addr(struct sockaddr_un *u, const char *name)
  * Prepare, create, and bind a socket for local communication.
  *
  * \param name The socket pathname.
- * \param unix_addr Pointer to the \p AF_UNIX socket structure.
- * \param mode The desired mode of the socket.
+ * \param mode The desired permissions of the socket.
  *
  * This function creates a local socket for sequenced, reliable,
  * two-way, connection-based byte streams.
@@ -875,19 +874,19 @@ static int init_unix_addr(struct sockaddr_un *u, const char *name)
  * \sa bind(2)
  * \sa chmod(2)
  */
-int create_local_socket(const char *name, struct sockaddr_un *unix_addr,
-               mode_t mode)
+int create_local_socket(const char *name, mode_t mode)
 {
+       struct sockaddr_un unix_addr;
        int fd, ret;
 
-       ret = init_unix_addr(unix_addr, name);
+       ret = init_unix_addr(&unix_addr, name);
        if (ret < 0)
                return ret;
        ret = socket(PF_UNIX, SOCK_STREAM, 0);
        if (ret < 0)
                return -ERRNO_TO_PARA_ERROR(errno);
        fd = ret;
-       ret = bind(fd, (struct sockaddr *) unix_addr, UNIX_PATH_MAX);
+       ret = bind(fd, (struct sockaddr *)&unix_addr, UNIX_PATH_MAX);
        if (ret < 0) {
                ret = -ERRNO_TO_PARA_ERROR(errno);
                goto err;