]> jfr.im git - solanum.git/blobdiff - ssld/ssld.c
m_kline: check only the added K-line
[solanum.git] / ssld / ssld.c
index d06a198b1e15fbb59dbaa684f717572cec687229..db33486be448d2421288b5aa2a35b762ed91f9c1 100644 (file)
@@ -554,7 +554,6 @@ conn_mod_read_cb(rb_fde_t *fd, void *data)
 {
        char inbuf[READBUF_SIZE];
        conn_t *conn = data;
-       const char *err = remote_closed;
        int length;
        if(conn == NULL)
                return;
@@ -584,6 +583,7 @@ conn_mod_read_cb(rb_fde_t *fd, void *data)
                                return;
                        }
 
+                       const char *err;
                        if(IsSSL(conn) && length == RB_RW_SSL_ERROR)
                                err = rb_get_ssl_strerror(conn->mod_fd);
                        else
@@ -1159,7 +1159,7 @@ int
 main(int argc, char **argv)
 {
        const char *s_ctlfd, *s_pipe, *s_pid;
-       int ctlfd, pipefd, x, maxfd;
+       int ctlfd, pipefd, maxfd;
        maxfd = maxconn();
 
        s_ctlfd = getenv("CTL_FD");
@@ -1178,13 +1178,16 @@ main(int argc, char **argv)
        ctlfd = atoi(s_ctlfd);
        pipefd = atoi(s_pipe);
        ppid = atoi(s_pid);
-       x = 0;
+
 #ifndef _WIN32
-       for(x = 0; x < maxfd; x++)
+       int x;
+
+       for(x = 3; x < maxfd; x++)
        {
-               if(x != ctlfd && x != pipefd && x > 2)
+               if(x != ctlfd && x != pipefd)
                        close(x);
        }
+
        x = open("/dev/null", O_RDWR);
 
        if(x >= 0)
@@ -1199,6 +1202,7 @@ main(int argc, char **argv)
                        close(x);
        }
 #endif
+
        setup_signals();
        rb_lib_init(NULL, NULL, NULL, 0, maxfd, 1024, 4096);
        rb_init_rawbuffers(1024);