diff options
author | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2005-12-22 12:34:57 +0000 |
---|---|---|
committer | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2005-12-22 12:34:57 +0000 |
commit | 4c65d06850f4440498ee37387d7b578478a619aa (patch) | |
tree | a8792dc35c6d8bd657c1235226db1c7142354407 /src | |
parent | 826aebdb72feceeb1acdf670f46f2975a11083bc (diff) |
Changed two fields in ConnectClass to strings, moved constructor stuff to init-list
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@2632 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src')
-rw-r--r-- | src/helperfuncs.cpp | 6 | ||||
-rw-r--r-- | src/inspircd_io.cpp | 10 | ||||
-rw-r--r-- | src/users.cpp | 20 |
3 files changed, 13 insertions, 23 deletions
diff --git a/src/helperfuncs.cpp b/src/helperfuncs.cpp index 037a7a3af..3bc2bb79a 100644 --- a/src/helperfuncs.cpp +++ b/src/helperfuncs.cpp @@ -922,9 +922,9 @@ char* Passwd(userrec *user) { for (ClassVector::iterator i = Config->Classes.begin(); i != Config->Classes.end(); i++) { - if ((i->type == CC_ALLOW) && match(user->host,i->host)) + if ((i->type == CC_ALLOW) && match(user->host,i->host.c_str())) { - return i->pass; + return (char*)i->pass.c_str(); } } return ""; @@ -934,7 +934,7 @@ bool IsDenied(userrec *user) { for (ClassVector::iterator i = Config->Classes.begin(); i != Config->Classes.end(); i++) { - if ((i->type == CC_DENY) && match(user->host,i->host)) + if ((i->type == CC_DENY) && match(user->host,i->host.c_str())) { return true; } diff --git a/src/inspircd_io.cpp b/src/inspircd_io.cpp index aa6c8e33a..1308a8dc9 100644 --- a/src/inspircd_io.cpp +++ b/src/inspircd_io.cpp @@ -211,7 +211,7 @@ void ServerConfig::Read(bool bail, userrec* user) Classes.clear(); for (int i = 0; i < ConfValueEnum("connect",&Config->config_f); i++) { - strcpy(Value,""); + *Value = 0; ConfValue("connect","allow",i,Value,&Config->config_f); ConfValue("connect","timeout",i,timeout,&Config->config_f); ConfValue("connect","flood",i,flood,&Config->config_f); @@ -221,11 +221,11 @@ void ServerConfig::Read(bool bail, userrec* user) ConfValue("connect","recvq",i,rqmax,&Config->config_f); if (*Value) { - strlcpy(c.host,Value,MAXBUF); + c.host = Value; c.type = CC_ALLOW; strlcpy(Value,"",MAXBUF); ConfValue("connect","password",i,Value,&Config->config_f); - strlcpy(c.pass,Value,MAXBUF); + c.pass = Value; c.registration_timeout = 90; // default is 2 minutes c.pingtime = 120; c.flood = atoi(flood); @@ -257,10 +257,10 @@ void ServerConfig::Read(bool bail, userrec* user) else { ConfValue("connect","deny",i,Value,&Config->config_f); - strlcpy(c.host,Value,MAXBUF); + c.host = Value; c.type = CC_DENY; Classes.push_back(c); - log(DEBUG,"Read connect class type DENY, host=%s",c.host); + log(DEBUG,"Read connect class type DENY, host=%s",c.host.c_str()); } } diff --git a/src/users.cpp b/src/users.cpp index 6706e8fef..2993b31bb 100644 --- a/src/users.cpp +++ b/src/users.cpp @@ -63,23 +63,13 @@ template<typename T> inline string ConvToStr(const T &in) userrec::userrec() { // the PROPER way to do it, AVOID bzero at *ALL* costs - strcpy(nick,""); + *nick = *ident = *host = *dhost = *fullname = *modes = *awaymsg = *oper = 0; strcpy(ip,"127.0.0.1"); - timeout = 0; - strcpy(ident,""); - strcpy(host,""); - strcpy(dhost,""); - strcpy(fullname,""); - strcpy(modes,""); server = (char*)FindServerNamePtr(Config->ServerName); - strcpy(awaymsg,""); - strcpy(oper,""); reset_due = TIME; - lines_in = 0; - fd = lastping = signon = idle_lastmsg = nping = registered = 0; - flood = port = bytes_in = bytes_out = cmds_in = cmds_out = 0; - haspassed = false; - dns_done = false; + lines_in = fd = lastping = signon = idle_lastmsg = nping = registered = 0; + timeout = flood = port = bytes_in = bytes_out = cmds_in = cmds_out = 0; + haspassed = dns_done = false; recvq = ""; sendq = ""; chans.clear(); @@ -578,7 +568,7 @@ void AddClient(int socket, char* host, int port, bool iscached, char* ip) for (ClassVector::iterator i = Config->Classes.begin(); i != Config->Classes.end(); i++) { - if (match(clientlist[tempnick]->host,i->host) && (i->type == CC_ALLOW)) + if (match(clientlist[tempnick]->host,i->host.c_str()) && (i->type == CC_ALLOW)) { class_regtimeout = (unsigned long)i->registration_timeout; class_flood = i->flood; |