commit - 5b2364b236ce3027ff5fcf93cad8cb75034d3838
commit + e9f3e69f36ca64f8945677bc72ccb7bbb57842e1
blob - 57bfb16854d39b26aba0b00e9c8dda9567eaeafe
blob + 7be5d0a18e8026dd44375fe23644643df16f047f
--- src/ngircd/conn.c
+++ src/ngircd/conn.c
#include "portab.h"
#include "io.h"
-static char UNUSED id[] = "$Id: conn.c,v 1.181 2005/09/12 19:10:20 fw Exp $";
+static char UNUSED id[] = "$Id: conn.c,v 1.182 2005/09/24 02:20:00 fw Exp $";
#include "imp.h"
#include <assert.h>
{
/* Close down all listening sockets */
int *fd;
- unsigned int arraylen;
+ size_t arraylen;
#ifdef ZEROCONF
Rendezvous_UnregisterListeners( );
#endif
arraylen = array_length(&My_Listeners, sizeof (int));
- Log( LOG_INFO, "Shutting down all listening sockets (%d)...", arraylen );
+ Log( LOG_INFO, "Shutting down all listening sockets (%d total)...", arraylen );
+ fd = array_start(&My_Listeners);
while(arraylen--) {
- fd = (int*) array_get(&My_Listeners, sizeof (int), arraylen);
- if (fd) {
- close(*fd);
-#ifdef DEBUG
- Log( LOG_DEBUG, "Listening socket %d closed.", *fd );
- } else {
- Log( LOG_DEBUG, "array_get pos %d returned NULL", arraylen );
+ assert(fd);
+ assert(*fd >= 0);
+ io_close(*fd);
+#ifdef DEBUG
+ Log( LOG_DEBUG, "Listening socket %d closed.", *fd );
#endif
- }
+ fd++;
}
array_free(&My_Listeners);
} /* Conn_ExitListeners */