repo: ngircd
action: commit
revision: 
path_from: 
revision_from: 3600dc60fc54e4317b04ca5896515cf9913910c0:
path_to: 
revision_to: 
git.thebackupbox.net
ngircd
git clone git://git.thebackupbox.net/ngircd
commit 3600dc60fc54e4317b04ca5896515cf9913910c0
Author: Alexander Barton 
Date:   Fri Sep 10 21:11:25 2010 +0200

    Output connection status when dumping the internal server state

diff --git a/src/ngircd/conn.c b/src/ngircd/conn.c
index e4851a933b42950b5b0cfcd7022a8403cc345057..
index ..d74f2511e4414e97a38a9d4f4a45fa9cdd518b58 100644
--- a/src/ngircd/conn.c
+++ b/src/ngircd/conn.c
@@ -2184,4 +2184,28 @@ Conn_UsesSSL(CONN_ID Idx)
 #endif


+#ifdef DEBUG
+
+GLOBAL void
+Conn_DebugDump(void)
+{
+	int i;
+
+	Log(LOG_DEBUG, "Connection status:");
+	for (i = 0; i < Pool_Size; i++) {
+		if (My_Connections[i].sock == NONE)
+			continue;
+		Log(LOG_DEBUG,
+		    " - %d: host=%s, lastdata=%ld, lastping=%ld, delaytime=%ld, flag=%d, options=%d, bps=%d, client=%s",
+		    My_Connections[i].sock, My_Connections[i].host,
+		    My_Connections[i].lastdata, My_Connections[i].lastping,
+		    My_Connections[i].delaytime, My_Connections[i].flag,
+		    My_Connections[i].options, My_Connections[i].bps,
+		    My_Connections[i].client ? Client_ID(My_Connections[i].client) : "-");
+	}
+} /* Conn_DumpClients */
+
+#endif
+
+
 /* -eof- */
diff --git a/src/ngircd/conn.h b/src/ngircd/conn.h
index a0bddaac95d090735bf652e3d3829e9436c4a376..
index ..1e938ada5578794f065ad81ffa130d507937184d 100644
--- a/src/ngircd/conn.h
+++ b/src/ngircd/conn.h
@@ -129,6 +129,10 @@ GLOBAL long Conn_Count PARAMS((void));
 GLOBAL long Conn_CountMax PARAMS((void));
 GLOBAL long Conn_CountAccepted PARAMS((void));

+#ifdef DEBUG
+GLOBAL void Conn_DebugDump PARAMS((void));
+#endif
+
 #endif


diff --git a/src/ngircd/sighandlers.c b/src/ngircd/sighandlers.c
index cb12a84ddeee42dee71d88d9961a205ff44e7ca2..
index ..57bf80f58de384fda219f8167026282cc3cfa5d5 100644
--- a/src/ngircd/sighandlers.c
+++ b/src/ngircd/sighandlers.c
@@ -46,6 +46,7 @@ Dump_State(void)
 	    Client_ID(Client_ThisServer()));
 	Log(LOG_DEBUG, "time()=%ld", time(NULL));
 	Conf_DebugDump();
+	Conn_DebugDump();
 	Client_DebugDump();
 	Log(LOG_DEBUG, "--- End of state dump ---");
 } /* Dump_State */

-----END OF PAGE-----