]> arthur.barton.de Git - ngircd-alex.git/blobdiff - src/ngircd/conn.c
Allow pre-defined server local channels ("&").
[ngircd-alex.git] / src / ngircd / conn.c
index 0b21d3a12b66e27fdfd392f20b235e19ba6a9d7d..bd1a5bddffbd00c14c02a45ec259c0a0af0dbfe6 100644 (file)
@@ -116,6 +116,7 @@ cb_listen(int sock, short irrelevant)
        (void) irrelevant;
        if (New_Connection( sock ) >= 0)
                NumConnections++;
+       LogDebug("Total number of connections now %ld.", NumConnections);
 }
 
 
@@ -130,6 +131,7 @@ cb_listen_ssl(int sock, short irrelevant)
                return;
 
        NumConnections++;
+       LogDebug("Total number of connections now %ld.", NumConnections);
        io_event_setcb(My_Connections[fd].sock, cb_clientserver_ssl);
 }
 #endif
@@ -232,12 +234,12 @@ cb_connserver_login_ssl(int sock, short unused)
        case 0: LogDebug("ConnSSL_Connect: not ready");
                return;
        case -1:
-               Log(LOG_INFO, "SSL connection on socket %d failed", sock);
+               Log(LOG_ERR, "SSL connection on socket %d failed!", sock);
                Conn_Close(idx, "Can't connect!", NULL, false);
                return;
        }
 
-       Log( LOG_INFO, "SSL Connection %d with \"%s:%d\" established.", idx,
+       Log( LOG_INFO, "SSL connection %d with \"%s:%d\" established.", idx,
                        My_Connections[idx].host, Conf_Server[Conf_GetServer( idx )].port );
 
        server_login(idx);
@@ -344,11 +346,9 @@ Conn_Exit( void )
 
        CONN_ID idx;
 
-       LogDebug("Shutting down all connections ..." );
-
        Conn_ExitListeners();
 
-       /* Sockets schliessen */
+       LogDebug("Shutting down all connections ..." );
        for( idx = 0; idx < Pool_Size; idx++ ) {
                if( My_Connections[idx].sock > NONE ) {
                        Conn_Close( idx, NULL, NGIRCd_SignalRestart ?
@@ -449,7 +449,8 @@ Conn_ExitListeners( void )
 #endif
 
        arraylen = array_length(&My_Listeners, sizeof (int));
-       Log( LOG_INFO, "Shutting down all listening sockets (%d total)...", arraylen );
+       Log(LOG_INFO,
+           "Shutting down all listening sockets (%d total) ...", arraylen);
        fd = array_start(&My_Listeners);
        while(arraylen--) {
                assert(fd != NULL);
@@ -958,7 +959,7 @@ Conn_Close( CONN_ID Idx, char *LogMsg, char *FwdMsg, bool InformClient )
        c = Conn_GetClient( Idx );
 #ifdef SSL_SUPPORT
        if ( Conn_OPTION_ISSET( &My_Connections[Idx], CONN_SSL )) {
-               Log( LOG_INFO, "SSL Connection %d shutting down", Idx );
+               Log(LOG_INFO, "SSL connection %d shutting down ...", Idx);
                ConnSSL_Free(&My_Connections[Idx]);
        }
 #endif
@@ -1035,7 +1036,8 @@ Conn_Close( CONN_ID Idx, char *LogMsg, char *FwdMsg, bool InformClient )
        assert(NumConnections > 0);
        if (NumConnections)
                NumConnections--;
-       LogDebug("Shutdown of connection %d completed", Idx );
+       LogDebug("Shutdown of connection %d completed, %ld connection%s left.",
+                Idx, NumConnections, NumConnections != 1 ? "s" : "");
 } /* Conn_Close */
 
 
@@ -1164,7 +1166,7 @@ New_Connection( int Sock )
 #endif
        ng_ipaddr_t new_addr;
        char ip_str[NG_INET_ADDRSTRLEN];
-       int new_sock, new_sock_len;
+       int new_sock, new_sock_len, identsock;
        CLIENT *c;
        long cnt;
 
@@ -1267,10 +1269,14 @@ New_Connection( int Sock )
 
        Client_SetHostname(c, My_Connections[new_sock].host);
 
+       identsock = new_sock;
+#ifdef IDENTAUTH
+       if (Conf_NoIdent)
+               identsock = -1;
+#endif
        if (!Conf_NoDNS)
                Resolve_Addr(&My_Connections[new_sock].res_stat, &new_addr,
-                       My_Connections[new_sock].sock, cb_Read_Resolver_Result);
-
+                            identsock, cb_Read_Resolver_Result);
        Conn_SetPenalty(new_sock, 4);
        return new_sock;
 } /* New_Connection */
@@ -1717,8 +1723,9 @@ New_Server( int Server , ng_ipaddr_t *dest)
                Conf_Server[Server].conn_id = NONE;
        }
 #endif
-       LogDebug("Registered new connection %d on socket %d.",
-                               new_sock, My_Connections[new_sock].sock );
+       NumConnections++;
+       LogDebug("Registered new connection %d on socket %d (%ld in total).",
+                new_sock, My_Connections[new_sock].sock, NumConnections);
        Conn_OPTION_ADD( &My_Connections[new_sock], CONN_ISCONNECTING );
 } /* New_Server */
 
@@ -1817,8 +1824,8 @@ cb_Connect_to_Server(int fd, UNUSED short events)
                len -= sizeof(ng_ipaddr_t);
                if (len > sizeof(&Conf_Server[i].dst_addr)) {
                        len = sizeof(&Conf_Server[i].dst_addr);
-                       Log(LOG_NOTICE, "Notice: Resolver returned more IP Addresses for host than we can handle,"
-                                       " additional addresses dropped");
+                       Log(LOG_NOTICE,
+                               "Notice: Resolver returned more IP Addresses for host than we can handle, additional addresses dropped.");
                }
                memcpy(&Conf_Server[i].dst_addr, &dest_addrs[1], len);
        }