/** Holds a complete ban list
*/
-typedef std::vector<BanItem, __single_client_alloc> BanList;
+typedef std::vector<BanItem> BanList;
/** Holds a complete exempt list
*/
-typedef std::vector<ExemptItem, __single_client_alloc> ExemptList;
+typedef std::vector<ExemptItem> ExemptList;
/** Holds a complete invite list
*/
-typedef std::vector<InviteItem, __single_client_alloc> InviteList;
+typedef std::vector<InviteItem> InviteList;
/** Holds all relevent information for a channel.
* This class represents a channel, and contains its name, modes, time created, topic, topic set time,
/** User list (casted to char*'s to stop forward declaration stuff)
* (chicken and egg scenario!)
*/
- std::vector<char*, __single_client_alloc> internal_userlist;
+ std::vector<char*> internal_userlist;
/** Channel topic.
* If this is an empty string, no channel topic is set.
* The resulting pointer to the vector should be considered
* readonly and only modified via AddUser and DelUser.
*/
- std::vector<char*, __single_client_alloc> *GetUsers();
+ std::vector<char*> *GetUsers();
/** Creates a channel record and initialises it with default values
*/
* So for A->B->C, if this was the record for B it would contain A and C
* whilever both servers are connected to B.
*/
- std::vector<std::string, __single_client_alloc> routes;
+ std::vector<std::string> routes;
/** Create an outbound connection to a listening socket
/** With a serverrec, this is a list of all established server connections.
* With a userrec this is unused.
*/
- std::vector<ircd_connector, __single_client_alloc> connectors;
+ std::vector<ircd_connector> connectors;
/** Default constructor
*/
/** Holds a list of users in a channel
*/
-typedef std::deque<userrec*, __single_client_alloc> chanuserlist;
+typedef std::deque<userrec*> chanuserlist;
// This #define allows us to call a method in all
/** Holds a complete list of all channels to which a user has been invited and has not yet joined.
*/
-typedef std::vector<Invited, __single_client_alloc> InvitedList;
+typedef std::vector<Invited> InvitedList;
/** Holds a complete list of all allow and deny tags from the configuration file (connection classes)
*/
-typedef std::vector<ConnectClass, __single_client_alloc> ClassVector;
+typedef std::vector<ConnectClass> ClassVector;
/** Holds all information about a user
* This class stores all information about a user connected to the irc server. Everything about a
#endif
extern int MODCOUNT;
-extern std::vector<Module*, __single_client_alloc> modules;
-extern std::vector<ircd_module*, __single_client_alloc> factory;
+extern std::vector<Module*> modules;
+extern std::vector<ircd_module*> factory;
extern int LogLevel;
extern char ServerName[MAXBUF];
int MaxWhoResults;
extern time_t nb_start;
-extern std::vector<std::string, __single_client_alloc> module_names;
+extern std::vector<std::string> module_names;
extern int boundPortCount;
extern int portCount;
using namespace std;
-std::vector<ModeParameter, __single_client_alloc> custom_mode_params;
+std::vector<ModeParameter> custom_mode_params;
chanrec::chanrec()
{
{
if (custom_mode_params.size())
{
- for (vector<ModeParameter, __single_client_alloc>::iterator i = custom_mode_params.begin(); i < custom_mode_params.end(); i++)
+ for (vector<ModeParameter>::iterator i = custom_mode_params.begin(); i < custom_mode_params.end(); i++)
{
if ((i->mode == mode) && (!strcasecmp(this->name,i->channel)))
{
{
if (custom_mode_params.size())
{
- for (vector<ModeParameter, __single_client_alloc>::iterator i = custom_mode_params.begin(); i < custom_mode_params.end(); i++)
+ for (vector<ModeParameter>::iterator i = custom_mode_params.begin(); i < custom_mode_params.end(); i++)
{
if ((i->mode == mode) && (!strcasecmp(this->name,i->channel)))
{
void chanrec::DelUser(char* castuser)
{
- for (std::vector<char*, __single_client_alloc>::iterator a = internal_userlist.begin(); a < internal_userlist.end(); a++)
+ for (std::vector<char*>::iterator a = internal_userlist.begin(); a < internal_userlist.end(); a++)
{
if (*a == castuser)
{
log(DEBUG,"BUG BUG BUG! Attempt to remove an uncasted user from the internal list of %s!",name);
}
-std::vector<char*, __single_client_alloc> *chanrec::GetUsers()
+std::vector<char*> *chanrec::GetUsers()
{
return &internal_userlist;
}
#endif
extern int MODCOUNT;
-extern std::vector<Module*, __single_client_alloc> modules;
-extern std::vector<ircd_module*, __single_client_alloc> factory;
+extern std::vector<Module*> modules;
+extern std::vector<ircd_module*> factory;
extern int LogLevel;
extern char ServerName[MAXBUF];
extern time_t TIME;
-extern std::vector<std::string, __single_client_alloc> module_names;
+extern std::vector<std::string> module_names;
extern char MyExecutable[1024];
extern int boundPortCount;
const long duration_w = duration_d * 7;
const long duration_y = duration_w * 52;
-typedef nspace::hash_map<std::string, userrec*, nspace::hash<string>, irc::StrHashComp, __single_client_alloc> user_hash;
-typedef nspace::hash_map<std::string, chanrec*, nspace::hash<string>, irc::StrHashComp, __single_client_alloc> chan_hash;
-typedef nspace::hash_map<in_addr,string*, nspace::hash<in_addr>, irc::InAddr_HashComp, __single_client_alloc> address_cache;
-typedef nspace::hash_map<std::string, WhoWasUser*, nspace::hash<string>, irc::StrHashComp, __single_client_alloc> whowas_hash;
-typedef std::deque<command_t, __single_client_alloc> command_table;
+typedef nspace::hash_map<std::string, userrec*, nspace::hash<string>, irc::StrHashComp> user_hash;
+typedef nspace::hash_map<std::string, chanrec*, nspace::hash<string>, irc::StrHashComp> chan_hash;
+typedef nspace::hash_map<in_addr,string*, nspace::hash<in_addr>, irc::InAddr_HashComp> address_cache;
+typedef nspace::hash_map<std::string, WhoWasUser*, nspace::hash<string>, irc::StrHashComp> whowas_hash;
+typedef std::deque<command_t> command_table;
extern user_hash clientlist;
extern file_cache RULES;
extern address_cache IP;
-extern std::vector<userrec*, __single_client_alloc> all_opers;
+extern std::vector<userrec*> all_opers;
// This table references users by file descriptor.
// its an array to make it VERY fast, as all lookups are referenced
{
if ((!strcmp(parameters[0],"0")) || (!strcmp(parameters[0],"*")) && (!strcmp(parameters[1],"o")))
{
- for (std::vector<userrec*, __single_client_alloc>::iterator i = all_opers.begin(); i != all_opers.end(); i++)
+ for (std::vector<userrec*>::iterator i = all_opers.begin(); i != all_opers.end(); i++)
{
// If i were a rich man.. I wouldn't need to me making these bugfixes..
// But i'm a poor bastard with nothing better to do.
{
if (me[i] != NULL)
{
- for (vector<ircd_connector, __single_client_alloc>::iterator j = me[i]->connectors.begin(); j != me[i]->connectors.end(); j++)
+ for (vector<ircd_connector>::iterator j = me[i]->connectors.begin(); j != me[i]->connectors.end(); j++)
{
if (!strcasecmp(j->GetServerName().c_str(),params))
{
#include "helperfuncs.h"
-extern std::vector<Module*, __single_client_alloc> modules;
-extern std::vector<ircd_module*, __single_client_alloc> factory;
+extern std::vector<Module*> modules;
+extern std::vector<ircd_module*> factory;
-std::deque<std::string, __single_client_alloc> xsums;
+std::deque<std::string> xsums;
extern int MODCOUNT;
extern int MaxWhoResults;
-extern std::vector<Module*, __single_client_alloc> modules;
-extern std::vector<std::string, __single_client_alloc> module_names;
-extern std::vector<ircd_module*, __single_client_alloc> factory;
-extern std::vector<int, __single_client_alloc> fd_reap;
+extern std::vector<Module*> modules;
+extern std::vector<std::string> module_names;
+extern std::vector<ircd_module*> factory;
extern int MODCOUNT;
-typedef nspace::hash_map<std::string, userrec*, nspace::hash<string>, irc::StrHashComp, __single_client_alloc> user_hash;
-typedef nspace::hash_map<std::string, chanrec*, nspace::hash<string>, irc::StrHashComp, __single_client_alloc> chan_hash;
-typedef nspace::hash_map<in_addr,string*, nspace::hash<in_addr>, irc::InAddr_HashComp, __single_client_alloc> address_cache;
-typedef nspace::hash_map<std::string, WhoWasUser*, nspace::hash<string>, irc::StrHashComp, __single_client_alloc> whowas_hash;
-typedef std::deque<command_t, __single_client_alloc> command_table;
+typedef nspace::hash_map<std::string, userrec*, nspace::hash<string>, irc::StrHashComp> user_hash;
+typedef nspace::hash_map<std::string, chanrec*, nspace::hash<string>, irc::StrHashComp> chan_hash;
+typedef nspace::hash_map<in_addr,string*, nspace::hash<in_addr>, irc::InAddr_HashComp> address_cache;
+typedef nspace::hash_map<std::string, WhoWasUser*, nspace::hash<string>, irc::StrHashComp> whowas_hash;
+typedef std::deque<command_t> command_table;
extern user_hash clientlist;
extern chan_hash chanlist;
#include "hashcomp.h"
extern int MODCOUNT;
-extern std::vector<Module*, __single_client_alloc> modules;
+extern std::vector<Module*> modules;
extern time_t TIME;
extern bool nofork;
extern int statsAccept, statsRefused, statsUnknown, statsCollisions, statsDns, statsDnsGood, statsDnsBad, statsConnects, statsSent, statsRecv;
static char already_sent[65536];
-extern std::vector<userrec*, __single_client_alloc> all_opers;
+extern std::vector<userrec*> all_opers;
extern ClassVector Classes;
-typedef nspace::hash_map<std::string, userrec*, nspace::hash<string>, irc::StrHashComp, __single_client_alloc> user_hash;
-typedef nspace::hash_map<std::string, chanrec*, nspace::hash<string>, irc::StrHashComp, __single_client_alloc> chan_hash;
-typedef std::deque<command_t, __single_client_alloc> command_table;
+typedef nspace::hash_map<std::string, userrec*, nspace::hash<string>, irc::StrHashComp> user_hash;
+typedef nspace::hash_map<std::string, chanrec*, nspace::hash<string>, irc::StrHashComp> chan_hash;
+typedef std::deque<command_t> command_table;
extern user_hash clientlist;
extern chan_hash chanlist;
vsnprintf(textbuffer, MAXBUF, text, argsPtr);
va_end(argsPtr);
- std::vector<char*, __single_client_alloc> *ulist = Ptr->GetUsers();
+ std::vector<char*> *ulist = Ptr->GetUsers();
for (int j = 0; j < ulist->size(); j++)
{
char* o = (*ulist)[j];
vsnprintf(textbuffer, MAXBUF, text, argsPtr);
va_end(argsPtr);
- std::vector<char*, __single_client_alloc> *ulist = Ptr->GetUsers();
+ std::vector<char*> *ulist = Ptr->GetUsers();
for (int j = 0; j < ulist->size(); j++)
{
char* o = (*ulist)[j];
va_end(argsPtr);
- std::vector<char*, __single_client_alloc> *ulist = Ptr->GetUsers();
+ std::vector<char*> *ulist = Ptr->GetUsers();
for (int j = 0; j < ulist->size(); j++)
{
char* o = (*ulist)[j];
vsnprintf(textbuffer, MAXBUF, text, argsPtr);
va_end(argsPtr);
- std::vector<char*, __single_client_alloc> *ulist = Ptr->GetUsers();
+ std::vector<char*> *ulist = Ptr->GetUsers();
for (int j = 0; j < ulist->size(); j++)
{
char* o = (*ulist)[j];
{
if (u->chans[i].channel)
{
- std::vector<char*, __single_client_alloc> *ulist = u->chans[i].channel->GetUsers();
+ std::vector<char*> *ulist = u->chans[i].channel->GetUsers();
for (int j = 0; j < ulist->size(); j++)
{
char* o = (*ulist)[j];
{
if (u->chans[i].channel)
{
- std::vector<char*, __single_client_alloc> *ulist = u->chans[i].channel->GetUsers();
+ std::vector<char*> *ulist = u->chans[i].channel->GetUsers();
for (int j = 0; j < ulist->size(); j++)
{
char* o = (*ulist)[j];
vsnprintf(textbuffer, MAXBUF, text, argsPtr);
va_end(argsPtr);
- for (std::vector<userrec*, __single_client_alloc>::iterator i = all_opers.begin(); i != all_opers.end(); i++)
+ for (std::vector<userrec*>::iterator i = all_opers.begin(); i != all_opers.end(); i++)
{
userrec* a = *i;
if ((a) && (a->fd != FD_MAGIC_NUMBER))
vsnprintf(textbuffer, MAXBUF, text, argsPtr);
va_end(argsPtr);
- for (std::vector<userrec*,__single_client_alloc>::iterator i = all_opers.begin(); i != all_opers.end(); i++)
+ for (std::vector<userrec*>::iterator i = all_opers.begin(); i != all_opers.end(); i++)
{
userrec* a = *i;
if ((a) && (a->fd != FD_MAGIC_NUMBER))
{
log(DEBUG,"ChanAnyOnThisServer");
- std::vector<char*, __single_client_alloc> *ulist = c->GetUsers();
+ std::vector<char*> *ulist = c->GetUsers();
for (int j = 0; j < ulist->size(); j++)
{
char* o = (*ulist)[j];
{
if (u->chans[i].channel)
{
- std::vector<char*, __single_client_alloc> *ulist = u->chans[i].channel->GetUsers();
+ std::vector<char*> *ulist = u->chans[i].channel->GetUsers();
for (int j = 0; j < ulist->size(); j++)
{
char* o = (*ulist)[j];
snprintf(list,MAXBUF,"353 %s = %s :", user->nick, c->name);
- std::vector<char*, __single_client_alloc> *ulist = c->GetUsers();
+ std::vector<char*> *ulist = c->GetUsers();
for (int i = 0; i < ulist->size(); i++)
{
char* o = (*ulist)[i];
bool AllowProtect = true;
bool AllowFounder = true;
-extern std::vector<Module*, __single_client_alloc> modules;
-std::vector<std::string, __single_client_alloc> module_names;
-extern std::vector<ircd_module*, __single_client_alloc> factory;
+extern std::vector<Module*> modules;
+std::vector<std::string> module_names;
+extern std::vector<ircd_module*> factory;
extern int MODCOUNT;
int openSockfd[MAXSOCKS];
int kq, lkq, skq;
#endif
-typedef nspace::hash_map<std::string, userrec*, nspace::hash<string>, irc::StrHashComp, __single_client_alloc> user_hash;
-typedef nspace::hash_map<std::string, chanrec*, nspace::hash<string>, irc::StrHashComp, __single_client_alloc> chan_hash;
-typedef nspace::hash_map<in_addr,string*, nspace::hash<in_addr>, irc::InAddr_HashComp, __single_client_alloc> address_cache;
-typedef nspace::hash_map<std::string, WhoWasUser*, nspace::hash<string>, irc::StrHashComp, __single_client_alloc> whowas_hash;
-typedef std::deque<command_t, __single_client_alloc> command_table;
+typedef nspace::hash_map<std::string, userrec*, nspace::hash<string>, irc::StrHashComp> user_hash;
+typedef nspace::hash_map<std::string, chanrec*, nspace::hash<string>, irc::StrHashComp> chan_hash;
+typedef nspace::hash_map<in_addr,string*, nspace::hash<in_addr>, irc::InAddr_HashComp> address_cache;
+typedef nspace::hash_map<std::string, WhoWasUser*, nspace::hash<string>, irc::StrHashComp> whowas_hash;
+typedef std::deque<command_t> command_table;
// This table references users by file descriptor.
// its an array to make it VERY fast, as all lookups are referenced
std::vector<long> auth_cookies;
std::stringstream config_f(stringstream::in | stringstream::out);
-std::vector<userrec*, __single_client_alloc> all_opers;
+std::vector<userrec*> all_opers;
char lowermap[255];
void DeleteOper(userrec* user)
{
- for (std::vector<userrec*, __single_client_alloc>::iterator a = all_opers.begin(); a < all_opers.end(); a++)
+ for (std::vector<userrec*>::iterator a = all_opers.begin(); a < all_opers.end(); a++)
{
if (*a == user)
{
{
log(DEFAULT,"Adding and removing modules due to rehash...");
- std::vector<std::string, __single_client_alloc> old_module_names, new_module_names, added_modules, removed_modules;
+ std::vector<std::string> old_module_names, new_module_names, added_modules, removed_modules;
// store the old module names
- for (std::vector<std::string, __single_client_alloc>::iterator t = module_names.begin(); t != module_names.end(); t++)
+ for (std::vector<std::string>::iterator t = module_names.begin(); t != module_names.end(); t++)
{
old_module_names.push_back(*t);
}
// now create a list of new modules that are due to be loaded
// and a seperate list of modules which are due to be unloaded
- for (std::vector<std::string, __single_client_alloc>::iterator _new = new_module_names.begin(); _new != new_module_names.end(); _new++)
+ for (std::vector<std::string>::iterator _new = new_module_names.begin(); _new != new_module_names.end(); _new++)
{
bool added = true;
- for (std::vector<std::string, __single_client_alloc>::iterator old = old_module_names.begin(); old != old_module_names.end(); old++)
+ for (std::vector<std::string>::iterator old = old_module_names.begin(); old != old_module_names.end(); old++)
{
if (*old == *_new)
added = false;
if (added)
added_modules.push_back(*_new);
}
- for (std::vector<std::string, __single_client_alloc>::iterator oldm = old_module_names.begin(); oldm != old_module_names.end(); oldm++)
+ for (std::vector<std::string>::iterator oldm = old_module_names.begin(); oldm != old_module_names.end(); oldm++)
{
bool removed = true;
- for (std::vector<std::string, __single_client_alloc>::iterator newm = new_module_names.begin(); newm != new_module_names.end(); newm++)
+ for (std::vector<std::string>::iterator newm = new_module_names.begin(); newm != new_module_names.end(); newm++)
{
if (*newm == *oldm)
removed = false;
// to be removed.
int rem = 0, add = 0;
if (!removed_modules.empty())
- for (std::vector<std::string, __single_client_alloc>::iterator removing = removed_modules.begin(); removing != removed_modules.end(); removing++)
+ for (std::vector<std::string>::iterator removing = removed_modules.begin(); removing != removed_modules.end(); removing++)
{
if (UnloadModule(removing->c_str()))
{
}
}
if (!added_modules.empty())
- for (std::vector<std::string, __single_client_alloc>::iterator adding = added_modules.begin(); adding != added_modules.end(); adding++)
+ for (std::vector<std::string>::iterator adding = added_modules.begin(); adding != added_modules.end(); adding++)
{
if (LoadModule(adding->c_str()))
{
{
if (me[i] != NULL)
{
- for (vector<ircd_connector, __single_client_alloc>::iterator j = me[i]->connectors.begin(); j != me[i]->connectors.end(); j++)
+ for (vector<ircd_connector>::iterator j = me[i]->connectors.begin(); j != me[i]->connectors.end(); j++)
{
if (strcasecmp(j->GetServerName().c_str(),ServerName))
{
{
if (me[i] != NULL)
{
- for (vector<ircd_connector, __single_client_alloc>::iterator j = me[i]->connectors.begin(); j != me[i]->connectors.end(); j++)
+ for (vector<ircd_connector>::iterator j = me[i]->connectors.begin(); j != me[i]->connectors.end(); j++)
{
if (!strcasecmp(j->GetServerName().c_str(),params))
{
{
if (me[i] != NULL)
{
- for (vector<ircd_connector, __single_client_alloc>::iterator j = me[i]->connectors.begin(); j != me[i]->connectors.end(); j++)
+ for (vector<ircd_connector>::iterator j = me[i]->connectors.begin(); j != me[i]->connectors.end(); j++)
{
if (!strcasecmp(j->GetServerName().c_str(),name))
{
void erase_factory(int j)
{
int v = 0;
- for (std::vector<ircd_module*, __single_client_alloc>::iterator t = factory.begin(); t != factory.end(); t++)
+ for (std::vector<ircd_module*>::iterator t = factory.begin(); t != factory.end(); t++)
{
if (v == j)
{
void erase_module(int j)
{
int v1 = 0;
- for (std::vector<Module*, __single_client_alloc>::iterator m = modules.begin(); m!= modules.end(); m++)
+ for (std::vector<Module*>::iterator m = modules.begin(); m!= modules.end(); m++)
{
if (v1 == j)
{
v1++;
}
int v2 = 0;
- for (std::vector<std::string, __single_client_alloc>::iterator v = module_names.begin(); v != module_names.end(); v++)
+ for (std::vector<std::string>::iterator v = module_names.begin(); v != module_names.end(); v++)
{
if (v2 == j)
{
#include "helperfuncs.h"
extern int MODCOUNT;
-extern std::vector<Module*, __single_client_alloc> modules;
-extern std::vector<ircd_module*, __single_client_alloc> factory;
+extern std::vector<Module*> modules;
+extern std::vector<ircd_module*> factory;
extern char ServerName[MAXBUF];
#include "helperfuncs.h"
extern int MODCOUNT;
-extern std::vector<Module*, __single_client_alloc> modules;
-extern std::vector<ircd_module*, __single_client_alloc> factory;
-extern std::vector<std::string, __single_client_alloc> module_names;
+extern std::vector<Module*> modules;
+extern std::vector<ircd_module*> factory;
+extern std::vector<std::string> module_names;
extern int LogLevel;
#endif
extern int MODCOUNT;
-extern std::vector<Module*, __single_client_alloc> modules;
-extern std::vector<ircd_module*, __single_client_alloc> factory;
+extern std::vector<Module*> modules;
+extern std::vector<ircd_module*> factory;
extern time_t TIME;
extern int MaxWhoResults;
extern time_t nb_start;
-extern std::vector<std::string, __single_client_alloc> module_names;
+extern std::vector<std::string> module_names;
extern int boundPortCount;
extern int portCount;
extern userrec* fd_ref_table[65536];
-typedef nspace::hash_map<std::string, userrec*, nspace::hash<string>, irc::StrHashComp, __single_client_alloc> user_hash;
-typedef nspace::hash_map<std::string, chanrec*, nspace::hash<string>, irc::StrHashComp, __single_client_alloc> chan_hash;
-typedef nspace::hash_map<in_addr,string*, nspace::hash<in_addr>, irc::InAddr_HashComp, __single_client_alloc> address_cache;
-typedef nspace::hash_map<std::string, WhoWasUser*, nspace::hash<string>, irc::StrHashComp, __single_client_alloc> whowas_hash;
-typedef std::deque<command_t, __single_client_alloc> command_table;
+typedef nspace::hash_map<std::string, userrec*, nspace::hash<string>, irc::StrHashComp> user_hash;
+typedef nspace::hash_map<std::string, chanrec*, nspace::hash<string>, irc::StrHashComp> chan_hash;
+typedef nspace::hash_map<in_addr,string*, nspace::hash<in_addr>, irc::InAddr_HashComp> address_cache;
+typedef nspace::hash_map<std::string, WhoWasUser*, nspace::hash<string>, irc::StrHashComp> whowas_hash;
+typedef std::deque<command_t> command_table;
extern user_hash clientlist;
ExtMode(char mc, int ty, bool oper, int p_on, int p_off) : modechar(mc), type(ty), needsoper(oper), params_when_on(p_on), params_when_off(p_off) { };
};
-typedef std::vector<ExtMode, __single_client_alloc> ExtModeList;
+typedef std::vector<ExtMode> ExtModeList;
typedef ExtModeList::iterator ExtModeListIter;
{
chanuserlist userl;
userl.clear();
- std::vector<char*, __single_client_alloc> *list = chan->GetUsers();
- for (std::vector<char*, __single_client_alloc>::iterator i = list->begin(); i != list->end(); i++)
+ std::vector<char*> *list = chan->GetUsers();
+ for (std::vector<char*>::iterator i = list->begin(); i != list->end(); i++)
{
char* o = *i;
userl.push_back((userrec*)o);
}
-std::vector<Module*, __single_client_alloc> modules(255);
-std::vector<ircd_module*, __single_client_alloc> factory(255);
+std::vector<Module*> modules(255);
+std::vector<ircd_module*> factory(255);
int MODCOUNT = -1;
#include "hashcomp.h"
extern int MODCOUNT;
-extern std::vector<Module*, __single_client_alloc> modules;
-extern std::vector<ircd_module*, __single_client_alloc> factory;
+extern std::vector<Module*> modules;
+extern std::vector<ircd_module*> factory;
extern int LogLevel;
extern char ServerName[MAXBUF];
extern int NetBufferSize;
extern time_t nb_start;
-extern std::vector<std::string, __single_client_alloc> module_names;
+extern std::vector<std::string> module_names;
extern int boundPortCount;
extern int portCount;
extern FILE *log_file;
-typedef nspace::hash_map<std::string, userrec*, nspace::hash<string>, irc::StrHashComp, __single_client_alloc> user_hash;
-typedef nspace::hash_map<std::string, chanrec*, nspace::hash<string>, irc::StrHashComp, __single_client_alloc> chan_hash;
-typedef nspace::hash_map<in_addr,string*, nspace::hash<in_addr>, irc::InAddr_HashComp, __single_client_alloc> address_cache;
-typedef nspace::hash_map<std::string, WhoWasUser*, nspace::hash<string>, irc::StrHashComp, __single_client_alloc> whowas_hash;
-typedef std::deque<command_t, __single_client_alloc> command_table;
+typedef nspace::hash_map<std::string, userrec*, nspace::hash<string>, irc::StrHashComp> user_hash;
+typedef nspace::hash_map<std::string, chanrec*, nspace::hash<string>, irc::StrHashComp> chan_hash;
+typedef nspace::hash_map<in_addr,string*, nspace::hash<in_addr>, irc::InAddr_HashComp> address_cache;
+typedef nspace::hash_map<std::string, WhoWasUser*, nspace::hash<string>, irc::StrHashComp> whowas_hash;
+typedef std::deque<command_t> command_table;
extern user_hash clientlist;