summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/botserv.c4
-rw-r--r--src/chanserv.c8
-rw-r--r--src/memoserv.c2
3 files changed, 11 insertions, 3 deletions
diff --git a/src/botserv.c b/src/botserv.c
index f7507ffef..c903f43d0 100644
--- a/src/botserv.c
+++ b/src/botserv.c
@@ -1612,6 +1612,10 @@ static int do_info(User * u)
notice_lang(s_BotServ, u, PERMISSION_DENIED);
return MOD_CONT;
}
+ if (ci->flags & CI_VERBOTEN) {
+ notice_lang(s_BotServ, u, CHAN_X_FORBIDDEN, query);
+ return MOD_CONT;
+ }
notice_lang(s_BotServ, u, BOT_INFO_CHAN_HEADER, ci->name);
if (ci->bi)
diff --git a/src/chanserv.c b/src/chanserv.c
index 5329964e3..46c06b930 100644
--- a/src/chanserv.c
+++ b/src/chanserv.c
@@ -3118,9 +3118,13 @@ static int do_set_successor(User * u, ChannelInfo * ci, char *param)
static int do_set_password(User * u, ChannelInfo * ci, char *param)
{
-#ifdef USE_ENCRYPTION
int len = strlen(param);
+ if (stricmp(u->nick, param) == 0 || (StrictPasswords && len < 5)) {
+ notice_lang(s_ChanServ, u, MORE_OBSCURE_PASSWORD);
+ return MOD_CONT;
+ }
+#ifdef USE_ENCRYPTION
if (len > PASSMAX) {
len = PASSMAX;
param[len] = 0;
@@ -5918,7 +5922,7 @@ static int do_clear(User * u)
/* to prevent the internals from complaining send -k, -L, -f by themselves if we need
to send them - TSL */
if (c->key) {
- anope_cmd_mode(s_ChanServ, c->name, "-k %s", c->key);
+ anope_cmd_mode(whosends(ci), c->name, "-k %s", c->key);
argv[0] = sstrdup("-k");
argv[1] = c->key;
chan_set_modes(whosends(ci), c, 2, argv, 0);
diff --git a/src/memoserv.c b/src/memoserv.c
index e9e86f66c..4c7d40463 100644
--- a/src/memoserv.c
+++ b/src/memoserv.c
@@ -1093,7 +1093,7 @@ static int do_info(User * u)
else if (count == 0)
notice_lang(s_MemoServ, u, MEMO_INFO_X_MEMOS, name,
mi->memocount);
- else if (count == 0)
+ else if (count == 1)
notice_lang(s_MemoServ, u, MEMO_INFO_X_MEMOS_ONE_UNREAD,
name, mi->memocount);
else