summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorgeniusdex geniusdex@31f1291d-b8d6-0310-a050-a5561fc1590b <geniusdex geniusdex@31f1291d-b8d6-0310-a050-a5561fc1590b@5417fbe8-f217-4b02-8779-1006273d7864>2005-09-11 18:06:27 +0000
committergeniusdex geniusdex@31f1291d-b8d6-0310-a050-a5561fc1590b <geniusdex geniusdex@31f1291d-b8d6-0310-a050-a5561fc1590b@5417fbe8-f217-4b02-8779-1006273d7864>2005-09-11 18:06:27 +0000
commit78030c9c0ab2aa692b7af5aaabf763397914c23c (patch)
treeae5c190be1cf5f8f9fc5f1628364dbc2ffb81f14 /src
parent46c42cbee471e7fef117881c0b9d62056e8efe67 (diff)
BUILD : 1.7.10 (881) BUGS : NOTES : Added a NickLen directive to make sure bot nicks are not longer than the nets
git-svn-id: svn://svn.anope.org/anope/trunk@881 31f1291d-b8d6-0310-a050-a5561fc1590b git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@628 5417fbe8-f217-4b02-8779-1006273d7864
Diffstat (limited to 'src')
-rw-r--r--src/config.c12
-rw-r--r--src/core/bs_bot.c7
2 files changed, 10 insertions, 9 deletions
diff --git a/src/config.c b/src/config.c
index 3abdc46bd..5f956b229 100644
--- a/src/config.c
+++ b/src/config.c
@@ -44,6 +44,7 @@ static char *temp_userhost;
char *HelpChannel;
char *LogChannel;
char *NetworkName;
+int NickLen;
char *s_NickServ;
char *s_ChanServ;
@@ -517,6 +518,7 @@ Directive directives[] = {
{"NetworkName", {{PARAM_STRING, PARAM_RELOAD, &NetworkName}}},
{"NewsCount", {{PARAM_POSINT, PARAM_RELOAD, &NewsCount}}},
{"NewsDB", {{PARAM_STRING, PARAM_RELOAD, &NewsDBName}}},
+ {"NickLen", {{PARAM_POSINT, 0, &NickLen}}},
{"NickservDB", {{PARAM_STRING, PARAM_RELOAD, &NickDBName}}},
{"Numeric", {{PARAM_STRING, PARAM_RELOAD, &Numeric}}},
{"PreNickServDB", {{PARAM_STRING, PARAM_RELOAD, &PreNickDBName}}},
@@ -945,12 +947,11 @@ int read_config(int reload)
CHECK(RemoteServer);
CHECK(ServerName);
CHECK(ServerDesc);
- }
- if (!reload) {
+ CHECK(NickLen);
+
if (RemoteServer3)
CHECK(RemoteServer2);
- }
- if (!reload) {
+
if (LocalHost && RemoteServer) {
if ((!stricmp(LocalHost, RemoteServer))
&& LocalPort == RemotePort) {
@@ -962,6 +963,9 @@ int read_config(int reload)
retval = 0;
}
}
+
+ if (NickLen >= NICKMAX)
+ NickLen = NICKMAX - 1;
}
CHECK(IRCDModule);
diff --git a/src/core/bs_bot.c b/src/core/bs_bot.c
index af4a587d9..cd826d39d 100644
--- a/src/core/bs_bot.c
+++ b/src/core/bs_bot.c
@@ -84,7 +84,6 @@ int do_bot(User * u)
BotInfo *bi;
char *cmd = strtok(NULL, " ");
char *ch = NULL;
- int len;
if (!cmd)
syntax_error(s_BotServ, u, "BOT", BOT_BOT_SYNTAX);
@@ -100,9 +99,8 @@ int do_bot(User * u)
notice_lang(s_BotServ, u, BOT_BOT_READONLY);
else if (findbot(nick))
notice_lang(s_BotServ, u, BOT_BOT_ALREADY_EXISTS, nick);
- else if((len=strlen(nick))>NICKMAX) {
+ else if (strlen(nick) > NickLen)
notice_lang(s_BotServ, u, BOT_BAD_NICK);
- }
else {
NickAlias *na;
@@ -195,9 +193,8 @@ int do_bot(User * u)
notice_lang(s_BotServ, u, BOT_BOT_READONLY);
else if (!(bi = findbot(oldnick)))
notice_lang(s_BotServ, u, BOT_DOES_NOT_EXIST, oldnick);
- else if((len=strlen(nick))>NICKMAX) {
+ else if (strlen(nick) > NickLen)
notice_lang(s_BotServ, u, BOT_BAD_NICK);
- }
else {
NickAlias *na;