]> jfr.im git - solanum.git/blobdiff - src/listener.c
add_connection fixed to accept F instead of fd
[solanum.git] / src / listener.c
index 8f577cc5d270269516d8b6d9ab15ba0e08b3e6a0..d76bdfda80d64c0c44b34b36b46c2b8fd6270434 100644 (file)
@@ -360,12 +360,12 @@ add_listener(int port, const char *vhost_ip, int family)
        switch(family)
        {
                case AF_INET:
-                       SET_SS_LEN(vaddr, sizeof(struct sockaddr_in));
+                       SET_SS_LEN(&vaddr, sizeof(struct sockaddr_in));
                        ((struct sockaddr_in *)&vaddr)->sin_port = htons(port);
                        break;
 #ifdef IPV6
                case AF_INET6:
-                       SET_SS_LEN(vaddr, sizeof(struct sockaddr_in6));
+                       SET_SS_LEN(&vaddr, sizeof(struct sockaddr_in6));
                        ((struct sockaddr_in6 *)&vaddr)->sin6_port = htons(port);
                        break;
 #endif
@@ -441,8 +441,8 @@ close_listeners()
  * The client is sent to the auth module for verification, and not put in
  * any client list yet.
  */
-static void
-add_connection(listener_t *listener, int fd, struct sockaddr *sai, int exempt)
+static void\r
+add_connection(struct Listener *listener, rb_fde_t *F, struct sockaddr *sai, int exempt)
 {
        struct Client *new_client;
        s_assert(NULL != listener);
@@ -465,7 +465,7 @@ add_connection(listener_t *listener, int fd, struct sockaddr *sai, int exempt)
 
        strlcpy(new_client->host, new_client->sockhost, sizeof(new_client->host));
 
-       new_client->localClient->F = rb_add_fd(fd);
+       new_client->localClient->F = F;
 
        new_client->localClient->listener = listener;
        ++listener->ref_count;