#include "balloc.h"
#include "event.h"
#include "sprintf_irc.h"
+#include "irc_dictionary.h"
dlink_list shared_conf_list;
dlink_list cluster_conf_list;
{ OPER_GLINE, 'G', 'g' },
{ OPER_KLINE, 'K', 'k' },
{ OPER_XLINE, 'X', 'x' },
+ { OPER_RESV, 'Q', 'q' },
{ OPER_GLOBKILL, 'O', 'o' },
{ OPER_LOCKILL, 'C', 'c' },
{ OPER_REMOTE, 'R', 'r' },
return(dlink_list_length(&nd_list));
}
-
void
add_nd_entry(const char *name)
{
struct nd_entry *nd;
- if(hash_find_nd(name) != NULL)
+ if(irc_dictionary_find(nd_dict, name) != NULL)
return;
nd = BlockHeapAlloc(nd_heap);
/* this list is ordered */
dlinkAddTail(nd, &nd->lnode, &nd_list);
- add_to_nd_hash(name, nd);
+
+ irc_dictionary_add(nd_dict, nd->name, nd);
}
void
free_nd_entry(struct nd_entry *nd)
{
+ irc_dictionary_delete(nd_dict, nd->name);
+
dlinkDelete(&nd->lnode, &nd_list);
- dlinkDelete(&nd->hnode, &ndTable[nd->hashv]);
BlockHeapFree(nd_heap, nd);
}