#include "stdinc.h"
#include "ircd_defs.h"
-#include "tools.h"
#include "s_conf.h"
#include "channel.h"
#include "client.h"
#include "ircd.h"
#include "numeric.h"
#include "send.h"
-#include "memory.h"
#include "msg.h"
#include "cache.h"
#include "s_newconf.h"
void
init_hash(void)
{
- clientTable = MyMalloc(sizeof(rb_dlink_list) * U_MAX);
- idTable = MyMalloc(sizeof(rb_dlink_list) * U_MAX);
- channelTable = MyMalloc(sizeof(rb_dlink_list) * CH_MAX);
- hostTable = MyMalloc(sizeof(rb_dlink_list) * HOST_MAX);
- resvTable = MyMalloc(sizeof(rb_dlink_list) * R_MAX);
+ clientTable = rb_malloc(sizeof(rb_dlink_list) * U_MAX);
+ idTable = rb_malloc(sizeof(rb_dlink_list) * U_MAX);
+ channelTable = rb_malloc(sizeof(rb_dlink_list) * CH_MAX);
+ hostTable = rb_malloc(sizeof(rb_dlink_list) * HOST_MAX);
+ resvTable = rb_malloc(sizeof(rb_dlink_list) * R_MAX);
}
#ifndef RICER_HASHING
hashv = hash_id(name);
- DLINK_FOREACH(ptr, idTable[hashv].head)
+ RB_DLINK_FOREACH(ptr, idTable[hashv].head)
{
target_p = ptr->data;
hashv = hash_nick(name);
- DLINK_FOREACH(ptr, clientTable[hashv].head)
+ RB_DLINK_FOREACH(ptr, clientTable[hashv].head)
{
target_p = ptr->data;
hashv = hash_nick(name);
- DLINK_FOREACH(ptr, clientTable[hashv].head)
+ RB_DLINK_FOREACH(ptr, clientTable[hashv].head)
{
target_p = ptr->data;
hashv = hash_nick(name);
- DLINK_FOREACH(ptr, clientTable[hashv].head)
+ RB_DLINK_FOREACH(ptr, clientTable[hashv].head)
{
target_p = ptr->data;
hashv = hash_channel(name);
- DLINK_FOREACH(ptr, channelTable[hashv].head)
+ RB_DLINK_FOREACH(ptr, channelTable[hashv].head)
{
chptr = ptr->data;
hashv = hash_channel(s);
- DLINK_FOREACH(ptr, channelTable[hashv].head)
+ RB_DLINK_FOREACH(ptr, channelTable[hashv].head)
{
chptr = ptr->data;
rb_dlinkAdd(chptr, &chptr->node, &global_channel_list);
- chptr->channelts = CurrentTime; /* doesn't hurt to set it here */
+ chptr->channelts = rb_current_time(); /* doesn't hurt to set it here */
rb_dlinkAddAlloc(chptr, &channelTable[hashv]);
hashv = hash_resv(name);
- DLINK_FOREACH(ptr, resvTable[hashv].head)
+ RB_DLINK_FOREACH(ptr, resvTable[hashv].head)
{
aconf = ptr->data;
{
unsigned long total = 0;
int i;
+ char buf[128];
sendto_one_numeric(source_p, RPL_STATSDEBUG,
"B :%s Hash Statistics", name);
- sendto_one_numeric(source_p, RPL_STATSDEBUG,
- "B :Size: %d Empty: %d (%.3f%%)",
- length, counts[0],
+ snprintf(buf, sizeof buf, "%.3f%%",
(float) ((counts[0]*100) / (float) length));
+ sendto_one_numeric(source_p, RPL_STATSDEBUG,
+ "B :Size: %d Empty: %d (%s)",
+ length, counts[0], buf);
for(i = 1; i < 11; i++)
{
/* dont want to divide by 0! --fl */
if(counts[0] != length)
- sendto_one_numeric(source_p, RPL_STATSDEBUG,
- "B :Average depth: %.3f/%.3f Highest depth: %d",
+ {
+ snprintf(buf, sizeof buf, "%.3f/%.3f",
(float) (total / (length - counts[0])),
- (float) (total / length), deepest);
+ (float) (total / length));
+ sendto_one_numeric(source_p, RPL_STATSDEBUG,
+ "B :Average depth: %s Highest depth: %d",
+ buf, deepest);
+ }
for(i = 0; i < 11; i++)
{