#include "portab.h"
#include "io.h"
-static char UNUSED id[] = "$Id: conn.c,v 1.195 2006/05/10 21:24:01 alex Exp $";
+static char UNUSED id[] = "$Id: conn.c,v 1.197 2006/07/23 15:22:56 alex Exp $";
#include "imp.h"
#include <assert.h>
if( ! Init_Socket( sock )) return -1;
- if (bind(sock, (struct sockaddr *)&addr, (int)sizeof(addr)) != 0) {
+ if (bind(sock, (struct sockaddr *)&addr, (socklen_t)sizeof(addr)) != 0) {
Log( LOG_CRIT, "Can't bind socket: %s!", strerror( errno ));
close( sock );
return -1;
}
assert( My_Connections[Idx].sock > NONE );
- LogDebug("Handle_Write() called for connection %d ...", Idx);
-
wdatalen = array_bytes(&My_Connections[Idx].wbuf );
+
#ifdef ZLIB
if (wdatalen == 0 && !array_bytes(&My_Connections[Idx].zip.wbuf)) {
io_event_del(My_Connections[Idx].sock, IO_WANTWRITE );
}
#endif
- /* Zip_Flush() may have changed the write buffer ... */
+ /* Zip_Flush() may have changed the write buffer ... */
wdatalen = array_bytes(&My_Connections[Idx].wbuf);
+ LogDebug
+ ("Handle_Write() called for connection %d, %ld bytes pending ...",
+ Idx, wdatalen);
len = write(My_Connections[Idx].sock,
array_start(&My_Connections[Idx].wbuf), wdatalen );