continue;
/* if there is a returned struct ConfItem then kill it */
- if((aconf = find_dline((struct sockaddr *)&client_p->localClient->ip)))
+ if((aconf = find_dline((struct sockaddr *)&client_p->localClient->ip, client_p->localClient->ip.ss_family)))
{
if(aconf->status & CONF_EXEMPTDLINE)
continue;
{
client_p = ptr->data;
- if((aconf = find_dline((struct sockaddr *)&client_p->localClient->ip)))
+ if((aconf = find_dline((struct sockaddr *)&client_p->localClient->ip,client_p->localClient->ip.ss_family)))
{
if(aconf->status & CONF_EXEMPTDLINE)
continue;
if(IsMe(client_p))
continue;
- if((aconf = find_dline((struct sockaddr *)&client_p->localClient->ip)) != NULL)
+ if((aconf = find_dline((struct sockaddr *)&client_p->localClient->ip,client_p->localClient->ip.ss_family)) != NULL)
{
if(aconf->status & CONF_EXEMPTDLINE)
continue;
{
client_p = ptr->data;
- if((aconf = find_dline((struct sockaddr *)&client_p->localClient->ip)) != NULL)
+ if((aconf = find_dline((struct sockaddr *)&client_p->localClient->ip,client_p->localClient->ip.ss_family)) != NULL)
{
if(aconf->status & CONF_EXEMPTDLINE)
continue;
const char *comment)
{
delete_auth_queries(source_p);
+ del_unknown_ip(source_p);
rb_dlinkDelete(&source_p->localClient->tnode, &unknown_list);
if(!IsIOError(source_p))
{
struct server_conf *server_p;
- ServerStats.is_sv++;
- ServerStats.is_sbs += client_p->localClient->sendB;
- ServerStats.is_sbr += client_p->localClient->receiveB;
- ServerStats.is_sks += client_p->localClient->sendK;
- ServerStats.is_skr += client_p->localClient->receiveK;
- ServerStats.is_sti += rb_current_time() - client_p->localClient->firsttime;
- if(ServerStats.is_sbs > 2047)
+ ServerStats->is_sv++;
+ ServerStats->is_sbs += client_p->localClient->sendB;
+ ServerStats->is_sbr += client_p->localClient->receiveB;
+ ServerStats->is_sks += client_p->localClient->sendK;
+ ServerStats->is_skr += client_p->localClient->receiveK;
+ ServerStats->is_sti += rb_current_time() - client_p->localClient->firsttime;
+ if(ServerStats->is_sbs > 2047)
{
- ServerStats.is_sks += (ServerStats.is_sbs >> 10);
- ServerStats.is_sbs &= 0x3ff;
+ ServerStats->is_sks += (ServerStats->is_sbs >> 10);
+ ServerStats->is_sbs &= 0x3ff;
}
- if(ServerStats.is_sbr > 2047)
+ if(ServerStats->is_sbr > 2047)
{
- ServerStats.is_skr += (ServerStats.is_sbr >> 10);
- ServerStats.is_sbr &= 0x3ff;
+ ServerStats->is_skr += (ServerStats->is_sbr >> 10);
+ ServerStats->is_sbr &= 0x3ff;
}
/*
}
else if(IsClient(client_p))
{
- ServerStats.is_cl++;
- ServerStats.is_cbs += client_p->localClient->sendB;
- ServerStats.is_cbr += client_p->localClient->receiveB;
- ServerStats.is_cks += client_p->localClient->sendK;
- ServerStats.is_ckr += client_p->localClient->receiveK;
- ServerStats.is_cti += rb_current_time() - client_p->localClient->firsttime;
- if(ServerStats.is_cbs > 2047)
+ ServerStats->is_cl++;
+ ServerStats->is_cbs += client_p->localClient->sendB;
+ ServerStats->is_cbr += client_p->localClient->receiveB;
+ ServerStats->is_cks += client_p->localClient->sendK;
+ ServerStats->is_ckr += client_p->localClient->receiveK;
+ ServerStats->is_cti += rb_current_time() - client_p->localClient->firsttime;
+ if(ServerStats->is_cbs > 2047)
{
- ServerStats.is_cks += (ServerStats.is_cbs >> 10);
- ServerStats.is_cbs &= 0x3ff;
+ ServerStats->is_cks += (ServerStats->is_cbs >> 10);
+ ServerStats->is_cbs &= 0x3ff;
}
- if(ServerStats.is_cbr > 2047)
+ if(ServerStats->is_cbr > 2047)
{
- ServerStats.is_ckr += (ServerStats.is_cbr >> 10);
- ServerStats.is_cbr &= 0x3ff;
+ ServerStats->is_ckr += (ServerStats->is_cbr >> 10);
+ ServerStats->is_cbr &= 0x3ff;
}
}
else
- ServerStats.is_ni++;
-
- /* XXX ctrlFd was here!!! */
- if(client_p->localClient->F != NULL)\r
- {\r
- /* attempt to flush any pending linebufs. Evil, but .. -- adrian */\r
- if(!IsIOError(client_p))\r
- send_pop_queue(client_p);\r
- del_from_cli_fd_hash(client_p); \r
- rb_close(client_p->localClient->F);\r
- client_p->localClient->F = NULL;\r
+ ServerStats->is_ni++;
+
+ if(client_p->localClient->F)
+ {
+ /* attempt to flush any pending dbufs. Evil, but .. -- adrian */
+ if(!IsIOError(client_p))
+ send_queued(client_p);
+
+ rb_close(client_p->localClient->F);
+ client_p->localClient->F = NULL;
+ }
+
+ if(-1 < client_p->localClient->ctrlfd)
+ {
+ rb_close(client_p->localClient->ctrlfd);
+ client_p->localClient->ctrlfd = -1;
}
rb_linebuf_donebuf(&client_p->localClient->buf_sendq);