commit - 0a3f562f365c9836f8f46d4218801895994a8136
commit + dd3a3bc6039bc1fd1a89ffb834f08665c8035b6a
blob - 14092b6a16d522dd585cdcb5025a2763f2b2b195
blob + 0c85a2938ea28960502a35757f1e7ab8e2304cf0
--- src/ngircd/conf.c
+++ src/ngircd/conf.c
#include "portab.h"
-static char UNUSED id[] = "$Id: conf.c,v 1.90 2006/02/08 15:20:21 fw Exp $";
+static char UNUSED id[] = "$Id: conf.c,v 1.91 2006/05/10 21:24:01 alex Exp $";
#include "imp.h"
#include <assert.h>
static void
ports_puts(array *a)
{
- unsigned int len;
+ size_t len;
UINT16 *ports;
len = array_length(a, sizeof(UINT16));
if (len--) {
puts( "[SERVER]" );
printf( " Name = %s\n", Conf_Server[i].name );
printf( " Host = %s\n", Conf_Server[i].host );
- printf( " Port = %d\n", Conf_Server[i].port );
+ printf( " Port = %u\n", (unsigned int)Conf_Server[i].port );
printf( " MyPassword = %s\n", Conf_Server[i].pwd_in );
printf( " PeerPassword = %s\n", Conf_Server[i].pwd_out );
printf( " Group = %d\n\n", Conf_Server[i].group );
blob - b70d68999a02ebc25b2279f5dc228034ff2dd09c
blob + f2e903f4b3311daba2e0090fad7b13827f55d480
--- src/ngircd/conf.h
+++ src/ngircd/conf.h
* (at your option) any later version.
* Please read the file COPYING, README and AUTHORS for more information.
*
- * $Id: conf.h,v 1.39 2006/02/08 15:20:21 fw Exp $
+ * $Id: conf.h,v 1.40 2006/05/10 21:24:01 alex Exp $
*
* Configuration management (header)
*/
GLOBAL char Conf_ListenAddress[16];
/* User and group ID the server should run with */
-GLOBAL unsigned int Conf_UID;
-GLOBAL unsigned int Conf_GID;
+GLOBAL uid_t Conf_UID;
+GLOBAL gid_t Conf_GID;
/* A directory to chroot() in */
GLOBAL char Conf_Chroot[FNAME_LEN];
blob - 6aaf26e458a1931ff380ed6fb6687c76f4b519ef
blob + 6170a8cd58ae1d4c44d5aaad877dabdaf41e9708
--- src/ngircd/conn-func.c
+++ src/ngircd/conn-func.c
#include "portab.h"
-static char UNUSED id[] = "$Id: conn-func.c,v 1.9 2006/04/23 10:37:27 fw Exp $";
+static char UNUSED id[] = "$Id: conn-func.c,v 1.10 2006/05/10 21:24:01 alex Exp $";
#include "imp.h"
#include <assert.h>
} /* Conn_Next */
-GLOBAL int
+GLOBAL UINT16
Conn_Options( CONN_ID Idx )
{
assert( Idx > NONE );
} /* Conn_StartTime */
-GLOBAL int
+GLOBAL size_t
Conn_SendQ( CONN_ID Idx )
{
/* Laenge der Daten im Schreibbuffer liefern */
} /* Conn_SendBytes */
-GLOBAL int
+GLOBAL size_t
Conn_RecvQ( CONN_ID Idx )
{
/* Laenge der Daten im Lesebuffer liefern */
blob - 217ee3ec77767fde5849a1fa81da5a4e825d3e09
blob + 9da3dfb80418591d247c39b3adff6d031177d0ae
--- src/ngircd/conn-func.h
+++ src/ngircd/conn-func.h
* (at your option) any later version.
* Please read the file COPYING, README and AUTHORS for more information.
*
- * $Id: conn-func.h,v 1.4 2005/04/25 18:37:16 fw Exp $
+ * $Id: conn-func.h,v 1.5 2006/05/10 21:24:01 alex Exp $
*
* Connection management: Global functions (header)
*/
GLOBAL time_t Conn_GetIdle PARAMS(( CONN_ID Idx ));
GLOBAL time_t Conn_LastPing PARAMS(( CONN_ID Idx ));
GLOBAL time_t Conn_StartTime PARAMS(( CONN_ID Idx ));
-GLOBAL int Conn_SendQ PARAMS(( CONN_ID Idx ));
-GLOBAL int Conn_RecvQ PARAMS(( CONN_ID Idx ));
+GLOBAL size_t Conn_SendQ PARAMS(( CONN_ID Idx ));
+GLOBAL size_t Conn_RecvQ PARAMS(( CONN_ID Idx ));
GLOBAL long Conn_SendMsg PARAMS(( CONN_ID Idx ));
GLOBAL long Conn_RecvMsg PARAMS(( CONN_ID Idx ));
GLOBAL long Conn_SendBytes PARAMS(( CONN_ID Idx ));
GLOBAL CONN_ID Conn_First PARAMS(( void ));
GLOBAL CONN_ID Conn_Next PARAMS(( CONN_ID Idx ));
-GLOBAL int Conn_Options PARAMS(( CONN_ID Idx ));
+GLOBAL UINT16 Conn_Options PARAMS(( CONN_ID Idx ));
GLOBAL void Conn_ResetWCounter PARAMS(( void ));
GLOBAL long Conn_WCounter PARAMS(( void ));
blob - 46cb47ac3d803fbfdf50d17744d1e1840d2e504b
blob + ad397e00f05e61605b6010bb42eb22665ca09ee6
--- src/ngircd/conn-zip.c
+++ src/ngircd/conn-zip.c
#ifdef ZLIB
-static char UNUSED id[] = "$Id: conn-zip.c,v 1.9 2005/08/02 22:48:57 alex Exp $";
+static char UNUSED id[] = "$Id: conn-zip.c,v 1.10 2006/05/10 21:24:01 alex Exp $";
#include "imp.h"
#include <assert.h>
GLOBAL bool
-Zip_Buffer( CONN_ID Idx, char *Data, int Len )
+Zip_Buffer( CONN_ID Idx, char *Data, size_t Len )
{
/* Daten zum Komprimieren im "Kompressions-Puffer" sammeln.
* Es wird true bei Erfolg, sonst false geliefert. */
assert( Len > 0 );
assert( Len <= ZWRITEBUFFER_LEN );
- if (Len < 0 || Len > ZWRITEBUFFER_LEN) return false;
+ if (Len > ZWRITEBUFFER_LEN)
+ return false;
if ( array_bytes( &My_Connections[Idx].zip.wbuf ) >= ZWRITEBUFFER_LEN ) {
/* compression buffer is full, flush */
if( ! Zip_Flush( Idx )) return false;
}
- return array_catb( &My_Connections[Idx].zip.wbuf, Data, Len );
+ return array_catb(&My_Connections[Idx].zip.wbuf, Data, Len);
} /* Zip_Buffer */
int result;
unsigned char zipbuf[WRITEBUFFER_LEN];
- unsigned int zipbuf_used = 0;
+ int zipbuf_used = 0;
z_stream *out;
out = &My_Connections[Idx].zip.out;
out->next_in = array_start(&My_Connections[Idx].zip.wbuf);
- assert(out->next_in);
if (!out->next_in)
return false;
- out->avail_in = array_bytes(&My_Connections[Idx].zip.wbuf);
+ out->avail_in = (uInt)array_bytes(&My_Connections[Idx].zip.wbuf);
out->next_out = zipbuf;
- out->avail_out = sizeof zipbuf;
+ out->avail_out = (uInt)sizeof zipbuf;
Log(LOG_DEBUG, "out->avail_in %d, out->avail_out %d", out->avail_in, out->avail_out);
result = deflate( out, Z_SYNC_FLUSH );
assert(out->avail_out <= WRITEBUFFER_LEN);
zipbuf_used = WRITEBUFFER_LEN - out->avail_out;
Log(LOG_DEBUG, "zipbuf_used: %d", zipbuf_used);
- if (!array_catb( &My_Connections[Idx].wbuf, (char*) zipbuf, zipbuf_used ))
+ if (!array_catb(&My_Connections[Idx].wbuf,
+ (char *)zipbuf, (size_t) zipbuf_used))
return false;
My_Connections[Idx].bytes_out += zipbuf_used;
int result;
unsigned char unzipbuf[READBUFFER_LEN];
- unsigned int unzipbuf_used = 0;
+ int unzipbuf_used = 0;
unsigned int z_rdatalen;
unsigned int in_len;
assert( Idx > NONE );
- z_rdatalen = array_bytes(&My_Connections[Idx].zip.rbuf);
+ z_rdatalen = (unsigned int)array_bytes(&My_Connections[Idx].zip.rbuf);
if (z_rdatalen == 0)
return true;
in = &My_Connections[Idx].zip.in;
in->next_in = array_start(&My_Connections[Idx].zip.rbuf);
- assert(in->next_in);
if (!in->next_in)
return false;
in->avail_in = z_rdatalen;
in->next_out = unzipbuf;
- in->avail_out = sizeof unzipbuf;
+ in->avail_out = (uInt)sizeof unzipbuf;
Log(LOG_DEBUG, "in->avail_in %d, in->avail_out %d", in->avail_in, in->avail_out);
result = inflate( in, Z_SYNC_FLUSH );
unzipbuf_used = READBUFFER_LEN - in->avail_out;
Log(LOG_DEBUG, "unzipbuf_used: %d - %d = %d", READBUFFER_LEN, in->avail_out, unzipbuf_used);
assert(unzipbuf_used <= READBUFFER_LEN);
- if (!array_catb(&My_Connections[Idx].rbuf, (char*) unzipbuf, unzipbuf_used))
+ if (!array_catb(&My_Connections[Idx].rbuf, (char*) unzipbuf,
+ (size_t)unzipbuf_used))
return false;
if( in->avail_in > 0 ) {
blob - c6518b1402f3ddd3fc9b18eeab25725b78e5e1de
blob + 6458a4e2d12a90991cc53c7f5f4fecaf291c2b54
--- src/ngircd/conn-zip.h
+++ src/ngircd/conn-zip.h
* (at your option) any later version.
* Please read the file COPYING, README and AUTHORS for more information.
*
- * $Id: conn-zip.h,v 1.3 2005/03/19 18:43:48 fw Exp $
+ * $Id: conn-zip.h,v 1.4 2006/05/10 21:24:01 alex Exp $
*
* Connection compression using ZLIB (header)
*/
GLOBAL bool Zip_InitConn PARAMS(( CONN_ID Idx ));
-GLOBAL bool Zip_Buffer PARAMS(( CONN_ID Idx, char *Data, int Len ));
+GLOBAL bool Zip_Buffer PARAMS(( CONN_ID Idx, char *Data, size_t Len ));
GLOBAL bool Zip_Flush PARAMS(( CONN_ID Idx ));
GLOBAL bool Unzip_Buffer PARAMS(( CONN_ID Idx ));
blob - 13c8085524bf36aba2061202663fc1f32a6654ca
blob + 530be7cfec8d4288919f5d6aa97a0859b42cf8f2
--- src/ngircd/conn.c
+++ src/ngircd/conn.c
#include "portab.h"
#include "io.h"
-static char UNUSED id[] = "$Id: conn.c,v 1.194 2006/05/09 14:49:08 alex Exp $";
+static char UNUSED id[] = "$Id: conn.c,v 1.195 2006/05/10 21:24:01 alex Exp $";
#include "imp.h"
#include <assert.h>
if( Pool_Size > Conf_MaxConnections ) Pool_Size = Conf_MaxConnections;
}
- if (!array_alloc(&My_ConnArray, sizeof(CONNECTION), Pool_Size)) {
+ if (!array_alloc(&My_ConnArray, sizeof(CONNECTION), (size_t)Pool_Size)) {
Log( LOG_EMERG, "Can't allocate memory! [Conn_Init]" );
exit( 1 );
}
- /* XXX: My_Connetions/Pool_Size are needed by other parts of the code; remove them */
+ /* FIXME: My_Connetions/Pool_Size is needed by other parts of the
+ * code; remove them! */
My_Connections = (CONNECTION*) array_start(&My_ConnArray);
LogDebug("Allocated connection pool for %d items (%ld bytes).",
} /* Conn_Exit */
-static unsigned int
+static int
ports_initlisteners(array *a, void (*func)(int,short))
{
- unsigned int created = 0, len;
+ int created = 0;
+ size_t len;
int fd;
UINT16 *port;
{
/* Initialize ports on which the server should accept connections */
- unsigned int created;
+ int created;
if (!io_library_init(CONNECTION_POOL)) {
Log(LOG_EMERG, "Cannot initialize IO routines: %s", strerror(errno));
Log( LOG_INFO, "Shutting down all listening sockets (%d total)...", arraylen );
fd = array_start(&My_Listeners);
while(arraylen--) {
- assert(fd);
+ assert(fd != NULL);
assert(*fd >= 0);
io_close(*fd);
LogDebug("Listening socket %d closed.", *fd );
/* Server-"Listen"-Socket initialisieren */
memset( &addr, 0, sizeof( addr ));
memset( &inaddr, 0, sizeof( inaddr ));
- addr.sin_family = AF_INET;
+ addr.sin_family = (sa_family_t)AF_INET;
addr.sin_port = htons( Port );
if( Conf_ListenAddress[0] )
{
if( ! Init_Socket( sock )) return -1;
- if( bind( sock, (struct sockaddr *)&addr, (socklen_t)sizeof( addr )) != 0 ) {
+ if (bind(sock, (struct sockaddr *)&addr, (int)sizeof(addr)) != 0) {
Log( LOG_CRIT, "Can't bind socket: %s!", strerror( errno ));
close( sock );
return -1;
}
/* Add port number to description if non-standard */
- if( Port != 6667 ) snprintf( name, sizeof( name ), "%s (port %u)", info, Port );
- else strlcpy( name, info, sizeof( name ));
+ if (Port != 6667)
+ snprintf(name, sizeof name, "%s (port %u)", info,
+ (unsigned int)Port);
+ else
+ strlcpy(name, info, sizeof name);
/* Register service */
Rendezvous_Register( name, MDNS_TYPE, Port );
if ( My_Connections[i].sock <= NONE )
continue;
- wdatalen = array_bytes(&My_Connections[i].wbuf);
+ wdatalen = (unsigned int)array_bytes(&My_Connections[i].wbuf);
#ifdef ZLIB
if (( wdatalen > 0 ) || ( array_bytes(&My_Connections[i].zip.wbuf)> 0 ))
GLOBAL bool
-Conn_Write( CONN_ID Idx, char *Data, unsigned int Len )
+Conn_Write( CONN_ID Idx, char *Data, size_t Len )
{
/* Daten in Socket schreiben. Bei "fatalen" Fehlern wird
* der Client disconnectiert und false geliefert. */
} /* SyncServerStruct */
+/**
+ * Send out data of write buffer; connect new sockets.
+ */
static bool
Handle_Write( CONN_ID Idx )
{
- /* Daten aus Schreibpuffer versenden bzw. Connection aufbauen */
+ ssize_t len;
+ size_t wdatalen;
- int len;
- unsigned int wdatalen;
-
assert( Idx > NONE );
if ( My_Connections[Idx].sock < 0 ) {
LogDebug("Handle_Write() on closed socket, connection %d", Idx);
}
/* move any data not yet written to beginning */
- array_moveleft(&My_Connections[Idx].wbuf, 1, len);
+ array_moveleft(&My_Connections[Idx].wbuf, 1, (size_t)len);
return true;
} /* Handle_Write */
assert( Sock > NONE );
/* Connection auf Listen-Socket annehmen */
- new_sock_len = sizeof( new_addr );
- new_sock = accept( Sock, (struct sockaddr *)&new_addr, (socklen_t *)&new_sock_len );
- if( new_sock < 0 )
- {
- Log( LOG_CRIT, "Can't accept connection: %s!", strerror( errno ));
+ new_sock_len = (int)sizeof new_addr;
+ new_sock = accept(Sock, (struct sockaddr *)&new_addr,
+ (socklen_t *)&new_sock_len);
+ if (new_sock < 0) {
+ Log(LOG_CRIT, "Can't accept connection: %s!", strerror(errno));
return -1;
}
return -1;
}
- if (!array_alloc(&My_ConnArray, sizeof( CONNECTION ), new_sock)) {
+ if (!array_alloc(&My_ConnArray, sizeof(CONNECTION),
+ (size_t)new_sock)) {
Log( LOG_EMERG, "Can't allocate memory! [New_Connection]" );
Simple_Message( new_sock, "ERROR: Internal error" );
close( new_sock );
/* Daten von Socket einlesen und entsprechend behandeln.
* Tritt ein Fehler auf, so wird der Socket geschlossen. */
- int len;
+ ssize_t len;
char readbuf[1024];
CLIENT *c;
return;
}
#ifdef ZLIB
- if ( Conn_OPTION_ISSET( &My_Connections[Idx], CONN_ZIP )) {
- if (!array_catb( &My_Connections[Idx].zip.rbuf, readbuf, len)) {
- Log( LOG_ERR, "Could not append recieved data to zip input buffer (connn %d): %d bytes!", Idx, len );
- Conn_Close( Idx, "Receive buffer overflow!", NULL, false );
+ if (Conn_OPTION_ISSET(&My_Connections[Idx], CONN_ZIP)) {
+ if (!array_catb(&My_Connections[Idx].zip.rbuf, readbuf,
+ (size_t) len)) {
+ Log(LOG_ERR,
+ "Could not append recieved data to zip input buffer (connn %d): %d bytes!",
+ Idx, len);
+ Conn_Close(Idx, "Receive buffer overflow!", NULL,
+ false);
return;
}
} else
char *ptr1, *ptr2;
#endif
char *ptr;
- int len, delta;
+ size_t len, delta;
bool result;
time_t starttime;
#ifdef ZLIB
len = ( ptr - (char*) array_start(&My_Connections[Idx].rbuf)) + delta;
- if( len < 0 || len > ( COMMAND_LEN - 1 )) {
+ if( len > ( COMMAND_LEN - 1 )) {
/* Request must not exceed 512 chars (incl. CR+LF!), see
* RFC 2812. Disconnect Client if this happens. */
Log( LOG_ERR, "Request too long (connection %d): %d bytes (max. %d expected)!",
}
memset( &new_addr, 0, sizeof( new_addr ));
- new_addr.sin_family = AF_INET;
+ new_addr.sin_family = (sa_family_t)AF_INET;
new_addr.sin_addr = inaddr;
new_addr.sin_port = htons( Conf_Server[Server].port );
if( ! Init_Socket( new_sock )) return;
- res = connect( new_sock, (struct sockaddr *)&new_addr, sizeof( new_addr ));
+ res = connect(new_sock, (struct sockaddr *)&new_addr,
+ (socklen_t)sizeof(new_addr));
if(( res != 0 ) && ( errno != EINPROGRESS )) {
Log( LOG_CRIT, "Can't connect socket: %s!", strerror( errno ));
close( new_sock );
return;
}
- if (!array_alloc(&My_ConnArray, sizeof(CONNECTION), new_sock)) {
- Log( LOG_ALERT, "Cannot allocate memory for server connection (socket %d)", new_sock);
+ if (!array_alloc(&My_ConnArray, sizeof(CONNECTION), (size_t)new_sock)) {
+ Log(LOG_ALERT,
+ "Cannot allocate memory for server connection (socket %d)",
+ new_sock);
close( new_sock );
return;
}
CONNECTION *c;
assert( Idx >= 0 );
- c = array_get(&My_ConnArray, sizeof (CONNECTION), Idx);
+ c = array_get(&My_ConnArray, sizeof (CONNECTION), (size_t)Idx);
assert(c != NULL);
blob - d061d8358d8dbfaa66fc786e2af445f50bb568e6
blob + b1e158e0266a6771b89accac0cde5e66a0c8df1a
--- src/ngircd/conn.h
+++ src/ngircd/conn.h
* (at your option) any later version.
* Please read the file COPYING, README and AUTHORS for more information.
*
- * $Id: conn.h,v 1.41 2006/04/23 10:37:27 fw Exp $
+ * $Id: conn.h,v 1.42 2006/05/10 21:24:01 alex Exp $
*
* Connection management (header)
*/
GLOBAL void Conn_Handler PARAMS(( void ));
-GLOBAL bool Conn_Write PARAMS(( CONN_ID Idx, char *Data, unsigned int Len ));
+GLOBAL bool Conn_Write PARAMS(( CONN_ID Idx, char *Data, size_t Len ));
GLOBAL bool Conn_WriteStr PARAMS(( CONN_ID Idx, char *Format, ... ));
GLOBAL void Conn_Close PARAMS(( CONN_ID Idx, char *LogMsg, char *FwdMsg, bool InformClient ));
blob - 48d447ca4fb1f1124bb38b0d47e02f975775be03
blob + 37afbd3c8da11e9fbf7fdc5e146dfe1a12d49abe
--- src/ngircd/irc-info.c
+++ src/ngircd/irc-info.c
#include "portab.h"
-static char UNUSED id[] = "$Id: irc-info.c,v 1.32 2006/04/23 10:37:27 fw Exp $";
+static char UNUSED id[] = "$Id: irc-info.c,v 1.33 2006/05/10 21:24:01 alex Exp $";
#include "imp.h"
#include <assert.h>
if (!Show_MOTD_Start( Client ))
return DISCONNECTED;
- while (fgets( line, sizeof( line ), fd )) {
+ while (fgets( line, (int)sizeof line, fd )) {
ngt_TrimLastChr( line, '\n');
if( ! Show_MOTD_Sendline( Client, line)) {
blob - a62022378503e8d49c91899edfe706d4a1c76f1b
blob + 1bfa9e15622c2999a86624992010e52a32777921
--- src/ngircd/irc-mode.c
+++ src/ngircd/irc-mode.c
#include "portab.h"
-static char UNUSED id[] = "$Id: irc-mode.c,v 1.44 2005/07/31 20:13:08 alex Exp $";
+static char UNUSED id[] = "$Id: irc-mode.c,v 1.45 2006/05/10 21:24:01 alex Exp $";
#include "imp.h"
#include <assert.h>
else origin = Client;
/* Channel or user mode? */
- cl = chan = NULL;
- if( Client_IsValidNick( Req->argv[0] )) cl = Client_Search( Req->argv[0] );
- if( Channel_IsValidName( Req->argv[0] )) chan = Channel_Search( Req->argv[0] );
+ cl = NULL; chan = NULL;
+ if (Client_IsValidNick(Req->argv[0]))
+ cl = Client_Search(Req->argv[0]);
+ if (Channel_IsValidName(Req->argv[0]))
+ chan = Channel_Search(Req->argv[0]);
- if( cl ) return Client_Mode( Client, Req, origin, cl );
- if( chan ) return Channel_Mode( Client, Req, origin, chan );
+ if (cl)
+ return Client_Mode(Client, Req, origin, cl);
+ if (chan)
+ return Channel_Mode(Client, Req, origin, chan);
/* No target found! */
- return IRC_WriteStrClient( Client, ERR_NOSUCHNICK_MSG, Client_ID( Client ), Req->argv[0] );
+ return IRC_WriteStrClient(Client, ERR_NOSUCHNICK_MSG,
+ Client_ID(Client), Req->argv[0]);
} /* IRC_MODE */
blob - 2baa6d3d5f811e6fe003f56b9be5023878ba9118
blob + c9241b345b2d726df041302680abbe60e29bcef7
--- src/ngircd/irc-oper.c
+++ src/ngircd/irc-oper.c
#include "portab.h"
-static char UNUSED id[] = "$Id: irc-oper.c,v 1.25 2006/04/23 10:37:27 fw Exp $";
+static char UNUSED id[] = "$Id: irc-oper.c,v 1.26 2006/05/10 21:24:01 alex Exp $";
#include "imp.h"
#include <assert.h>
} /* IRC_RESTART */
+/**
+ * Connect configured or new server.
+ */
GLOBAL bool
-IRC_CONNECT(CLIENT *Client, REQUEST *Req )
+IRC_CONNECT(CLIENT * Client, REQUEST * Req)
{
- /* Connect configured or new server */
- assert( Client != NULL );
- assert( Req != NULL );
+ assert(Client != NULL);
+ assert(Req != NULL);
/* Not a local IRC operator? */
- if(( ! Client_HasMode( Client, 'o' )) || ( ! Client_OperByMe( Client ))) return IRC_WriteStrClient( Client, ERR_NOPRIVILEGES_MSG, Client_ID( Client ));
+ if ((!Client_HasMode(Client, 'o')) || (!Client_OperByMe(Client)))
+ return IRC_WriteStrClient(Client, ERR_NOPRIVILEGES_MSG,
+ Client_ID(Client));
/* Bad number of parameters? */
- if(( Req->argc != 2 ) && ( Req->argc != 5 )) return IRC_WriteStrClient( Client, ERR_NEEDMOREPARAMS_MSG, Client_ID( Client ), Req->command );
+ if ((Req->argc != 2) && (Req->argc != 5))
+ return IRC_WriteStrClient(Client, ERR_NEEDMOREPARAMS_MSG,
+ Client_ID(Client), Req->command);
/* Invalid port number? */
- if( atoi( Req->argv[1] ) < 1 ) return IRC_WriteStrClient( Client, ERR_NEEDMOREPARAMS_MSG, Client_ID( Client ), Req->command );
+ if (atoi(Req->argv[1]) < 1)
+ return IRC_WriteStrClient(Client, ERR_NEEDMOREPARAMS_MSG,
+ Client_ID(Client), Req->command);
- Log( LOG_NOTICE|LOG_snotice, "Got CONNECT command from \"%s\" for \"%s\".", Client_Mask( Client ), Req->argv[0]);
+ Log(LOG_NOTICE | LOG_snotice,
+ "Got CONNECT command from \"%s\" for \"%s\".", Client_Mask(Client),
+ Req->argv[0]);
- if( Req->argc == 2 )
- {
+ if (Req->argc == 2) {
/* Connect configured server */
- if( ! Conf_EnableServer( Req->argv[0], atoi( Req->argv[1] ))) return IRC_WriteStrClient( Client, ERR_NOSUCHSERVER_MSG, Client_ID( Client ), Req->argv[0] );
- }
- else
- {
+ if (!Conf_EnableServer
+ (Req->argv[0], (UINT16) atoi(Req->argv[1])))
+ return IRC_WriteStrClient(Client, ERR_NOSUCHSERVER_MSG,
+ Client_ID(Client),
+ Req->argv[0]);
+ } else {
/* Add server */
- if( ! Conf_AddServer( Req->argv[0], atoi( Req->argv[1] ), Req->argv[2], Req->argv[3], Req->argv[4] )) return IRC_WriteStrClient( Client, ERR_NOSUCHSERVER_MSG, Client_ID( Client ), Req->argv[0] );
+ if (!Conf_AddServer
+ (Req->argv[0], (UINT16) atoi(Req->argv[1]), Req->argv[2],
+ Req->argv[3], Req->argv[4]))
+ return IRC_WriteStrClient(Client, ERR_NOSUCHSERVER_MSG,
+ Client_ID(Client),
+ Req->argv[0]);
}
+
return CONNECTED;
} /* IRC_CONNECT */
blob - fbfa90332b90ec6f89490161c304cfb8ae490d51
blob + ddb307e32ec48adbc73dcfdbe50ec869a64b8495
--- src/ngircd/irc-write.c
+++ src/ngircd/irc-write.c
#include "portab.h"
-static char UNUSED id[] = "$Id: irc-write.c,v 1.19 2005/07/31 20:13:08 alex Exp $";
+static char UNUSED id[] = "$Id: irc-write.c,v 1.20 2006/05/10 21:24:01 alex Exp $";
#include "imp.h"
#include <assert.h>
GLOBAL void
-IRC_SetPenalty( CLIENT *Client, int Seconds )
+IRC_SetPenalty( CLIENT *Client, time_t Seconds )
{
CONN_ID c;
if( Client_Type( Client ) == CLIENT_SERVER ) return;
c = Client_Conn( Client );
- if( c > NONE ) Conn_SetPenalty( c, Seconds );
+ if (c > NONE)
+ Conn_SetPenalty(c, Seconds);
} /* IRC_SetPenalty */
blob - d7d742c54b460ec3e9fb130ad423156a928b3bd7
blob + 40169b19117b67011878ecb5bda6cc753806034b
--- src/ngircd/irc-write.h
+++ src/ngircd/irc-write.h
* (at your option) any later version.
* Please read the file COPYING, README and AUTHORS for more information.
*
- * $Id: irc-write.h,v 1.7 2005/03/19 18:43:49 fw Exp $
+ * $Id: irc-write.h,v 1.8 2006/05/10 21:24:01 alex Exp $
*
* Sending IRC commands over the network (header)
*/
GLOBAL bool IRC_WriteStrRelatedPrefix PARAMS(( CLIENT *Client, CLIENT *Prefix, bool Remote, char *Format, ... ));
-GLOBAL void IRC_SetPenalty PARAMS(( CLIENT *Client, int Seconds ));
+GLOBAL void IRC_SetPenalty PARAMS(( CLIENT *Client, time_t Seconds ));
#endif
blob - 33ee22684be0dd9165a5626f2cd9d0e0f32909e2
blob + 6889cff2758f035d67eaa6dffb820e8ff39d018e
--- src/ngircd/irc.c
+++ src/ngircd/irc.c
#include "portab.h"
-static char UNUSED id[] = "$Id: irc.c,v 1.129 2006/04/23 10:37:27 fw Exp $";
+static char UNUSED id[] = "$Id: irc.c,v 1.130 2006/05/10 21:24:01 alex Exp $";
#include "imp.h"
#include <assert.h>
Option_String( CONN_ID Idx )
{
static char option_txt[8];
- int options;
-
- options = Conn_Options( Idx );
+ UINT16 options;
- strcpy( option_txt, "F" ); /* No idea what this means but the original ircd sends it ... */
+ options = Conn_Options(Idx);
+
+ strcpy(option_txt, "F"); /* No idea what this means, but the
+ * original ircd sends it ... */
#ifdef ZLIB
- if( options & CONN_ZIP ) strcat( option_txt, "z" );
+ if(options & CONN_ZIP) /* zlib compression supported. */
+ strcat(option_txt, "z");
#endif
return option_txt;
blob - 57d1f76fdfcb6cfad9ffdc0a595c7290b9ec93c9
blob + 7f79471ab77010bb19f8402c2ffa0376c3789f5d
--- src/ngircd/ngircd.c
+++ src/ngircd/ngircd.c
#include "portab.h"
-static char UNUSED id[] = "$Id: ngircd.c,v 1.111 2005/11/21 16:31:30 alex Exp $";
+static char UNUSED id[] = "$Id: ngircd.c,v 1.112 2006/05/10 21:24:01 alex Exp $";
/**
* @file
static void Show_Version PARAMS(( void ));
static void Show_Help PARAMS(( void ));
-static void Pidfile_Create PARAMS(( long ));
+static void Pidfile_Create PARAMS(( pid_t pid ));
static void Pidfile_Delete PARAMS(( void ));
static void Fill_Version PARAMS(( void ));
* @param pid The process ID to be stored in this file.
*/
static void
-Pidfile_Create( long pid )
+Pidfile_Create(pid_t pid)
{
int pidfd;
char pidbuf[64];
return;
}
- len = snprintf( pidbuf, sizeof pidbuf, "%ld\n", pid );
- if (len < 0|| len < (int)sizeof pid) {
+ len = snprintf(pidbuf, sizeof pidbuf, "%ld\n", (long)pid);
+ if (len < 0 || len >= (int)sizeof pidbuf) {
Log( LOG_ERR, "Error converting pid");
return;
}
- if( write( pidfd, pidbuf, len) != len)
+ if (write(pidfd, pidbuf, (size_t)len) != (ssize_t)len)
Log( LOG_ERR, "Can't write PID file (%s): %s", Conf_PidFile, strerror( errno ));
if( close(pidfd) != 0 )
static bool
-NGIRCd_getNobodyID(unsigned int *uid, unsigned int *gid )
+NGIRCd_getNobodyID(uid_t *uid, gid_t *gid )
{
struct passwd *pwd;
struct passwd *pwd;
struct group *grp;
int real_errno;
- long pid;
+ pid_t pid;
if (initialized)
return true;
* connected to ther controlling terminal. Use "--nodaemon"
* to disable this "daemon mode" (useful for debugging). */
if ( ! NGIRCd_NoDaemon ) {
- pid = (long)fork( );
+ pid = fork( );
if( pid > 0 ) {
/* "Old" process: exit. */
exit( 0 );
blob - e056e726ce8589eef6706cd024c5d159d9dae1dc
blob + 7c106292b068dfa5c68fd7dc2dd38f368446dbe0
--- src/ngircd/rendezvous.c
+++ src/ngircd/rendezvous.c
#ifdef ZEROCONF
-static char UNUSED id[] = "$Id: rendezvous.c,v 1.7 2005/07/31 20:13:08 alex Exp $";
+static char UNUSED id[] = "$Id: rendezvous.c,v 1.8 2006/05/10 21:24:01 alex Exp $";
#include "imp.h"
#include <assert.h>
} /* Rendezvous_Exit */
-GLOBAL bool Rendezvous_Register( char *Name, char *Type, unsigned int Port )
+GLOBAL bool Rendezvous_Register( char *Name, char *Type, UINT16 Port )
{
/* Register new service */
strcpy( txt, "name conflict!" );
break;
default:
- sprintf( txt, "error code %ld!", (long)ErrCode );
+ snprintf(txt, sizeof txt, "error code %ld!",
+ (long)ErrCode);
}
Log( LOG_INFO, "Can't register \"%s\" with Rendezvous: %s", s->Desc, txt );
strcpy( txt, "name conflict!" );
break;
default:
- sprintf( txt, "error code %ld!", (long)Status );
+ snprintf(txt, sizeof txt, "error code %ld!",
+ (long)Status);
}
Log( LOG_INFO, "Can't register \"%s\" with Rendezvous: %s", s->Desc, txt );
blob - 4f1f06ad2fbb355bf899ba0dd8e29b7c0aee9bf9
blob + 3e65f8e9df8feeaded22d9b1b7771c4d1632e86b
--- src/ngircd/rendezvous.h
+++ src/ngircd/rendezvous.h
* (at your option) any later version.
* Please read the file COPYING, README and AUTHORS for more information.
*
- * $Id: rendezvous.h,v 1.3 2005/07/08 16:18:39 alex Exp $
+ * $Id: rendezvous.h,v 1.4 2006/05/10 21:24:01 alex Exp $
*
* "Rendezvous" functions (Header)
*/
GLOBAL void Rendezvous_Init( void );
GLOBAL void Rendezvous_Exit( void );
-GLOBAL bool Rendezvous_Register( char *Name, char *Type, unsigned int Port );
+GLOBAL bool Rendezvous_Register( char *Name, char *Type, UINT16 Port );
GLOBAL bool Rendezvous_Unregister( char *Name );
GLOBAL void Rendezvous_UnregisterListeners( void );
blob - e46e4823b31792a83f198a540e6ef15e065888b0
blob + 7f10698d3aab9437e9f71947343753b154c37660
--- src/ngircd/resolve.c
+++ src/ngircd/resolve.c
#include "portab.h"
-static char UNUSED id[] = "$Id: resolve.c,v 1.23 2006/02/08 15:24:10 fw Exp $";
+static char UNUSED id[] = "$Id: resolve.c,v 1.24 2006/05/10 21:24:01 alex Exp $";
#include "imp.h"
#include <assert.h>
static char *Get_Error PARAMS(( int H_Error ));
#endif
-static int
+static pid_t
Resolver_fork(int *pipefds)
{
- int pid;
+ pid_t pid;
+
if (pipe(pipefds) != 0) {
Log( LOG_ALERT, "Resolver: Can't create output pipe: %s!", strerror( errno ));
return -1;
}
+/**
+ * Resolve IP (asynchronous!).
+ */
GLOBAL bool
-Resolve_Addr( RES_STAT *s, struct sockaddr_in *Addr, int identsock, void (*cbfunc)(int, short))
+Resolve_Addr(RES_STAT * s, struct sockaddr_in *Addr, int identsock,
+ void (*cbfunc) (int, short))
{
- /* Resolve IP (asynchronous!). */
- int pid, pipefd[2];
+ int pipefd[2];
+ pid_t pid;
+
assert(s != NULL);
pid = Resolver_fork(pipefd);
} /* Resolve_Addr */
+/**
+ * Resolve hostname (asynchronous!).
+ */
GLOBAL bool
Resolve_Name( RES_STAT *s, const char *Host, void (*cbfunc)(int, short))
{
- /* Resolve hostname (asynchronous!). */
- int pid, pipefd[2];
+ int pipefd[2];
+ pid_t pid;
+
assert(s != NULL);
pid = Resolver_fork(pipefd);
char ip[16];
struct hostent *h;
struct in_addr *addr;
- int len;
+ size_t len;
Log_Resolver( LOG_DEBUG, "Now resolving \"%s\" ...", Host );
#endif
/* Write result into pipe to parent */
len = strlen( ip );
- if( write( w_fd, ip, len ) != len) {
+ if ((size_t)write( w_fd, ip, len ) != len) {
Log_Resolver( LOG_CRIT, "Resolver: Can't write to parent: %s!", strerror( errno ));
close( w_fd );
}
static bool
register_callback( RES_STAT *s, void (*cbfunc)(int, short))
{
- assert(cbfunc);
+ assert(cbfunc != NULL);
assert(s != NULL);
assert(s->resolver_fd >= 0);
}
+/**
+ * Read result of resolver sub-process from pipe
+ */
GLOBAL size_t
Resolve_Read( RES_STAT *s, void* readbuf, size_t buflen)
{
- /* Read result of resolver sub-process from pipe */
- int err, bytes_read;
+ int err;
+ ssize_t bytes_read;
+
assert(buflen > 0);
/* Read result from pipe */
return 0;
}
- return bytes_read;
+ return (size_t)bytes_read;
}
/* -eof- */
blob - 47153bbdb855c47b6f8741604ce1ef6283822af4
blob + ad8ebad0d3fc5589598aacf836b8b9071708d7ed
--- src/ngircd/resolve.h
+++ src/ngircd/resolve.h
* (at your option) any later version.
* Please read the file COPYING, README and AUTHORS for more information.
*
- * $Id: resolve.h,v 1.12 2006/02/08 15:24:10 fw Exp $
+ * $Id: resolve.h,v 1.13 2006/05/10 21:24:02 alex Exp $
*
* Asynchronous resolver (header)
*/
/* This struct must not be accessed directly */
typedef struct _Res_Stat {
- int pid; /* PID of resolver process */
+ pid_t pid; /* PID of resolver process */
int resolver_fd; /* pipe fd for lookup result. */
} RES_STAT;