summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2005-12-22 12:34:57 +0000
committerbrain <brain@e03df62e-2008-0410-955e-edbf42e46eb7>2005-12-22 12:34:57 +0000
commit4c65d06850f4440498ee37387d7b578478a619aa (patch)
treea8792dc35c6d8bd657c1235226db1c7142354407 /src
parent826aebdb72feceeb1acdf670f46f2975a11083bc (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.cpp6
-rw-r--r--src/inspircd_io.cpp10
-rw-r--r--src/users.cpp20
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;