summaryrefslogtreecommitdiff
path: root/src/chanserv.c
diff options
context:
space:
mode:
authordane dane@31f1291d-b8d6-0310-a050-a5561fc1590b <dane dane@31f1291d-b8d6-0310-a050-a5561fc1590b@5417fbe8-f217-4b02-8779-1006273d7864>2004-09-07 17:29:07 +0000
committerdane dane@31f1291d-b8d6-0310-a050-a5561fc1590b <dane dane@31f1291d-b8d6-0310-a050-a5561fc1590b@5417fbe8-f217-4b02-8779-1006273d7864>2004-09-07 17:29:07 +0000
commitb0c19c6702c281fd3604356c2533329777b2702c (patch)
treeb20c40a9b164e257ff12a4817fc583a9432268ea /src/chanserv.c
parenteb0d83719b0e43b198d18af2885a378f90822c83 (diff)
BUILD : 1.7.5 (340) BUGS : none NOTES : Applied patch 830 provided by Trystan to resolve several issues.
git-svn-id: svn://svn.anope.org/anope/trunk@340 31f1291d-b8d6-0310-a050-a5561fc1590b git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@216 5417fbe8-f217-4b02-8779-1006273d7864
Diffstat (limited to 'src/chanserv.c')
-rw-r--r--src/chanserv.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/chanserv.c b/src/chanserv.c
index b18c492fd..dddfdd2b1 100644
--- a/src/chanserv.c
+++ b/src/chanserv.c
@@ -2605,9 +2605,14 @@ static int do_register(User * u)
uc->chan = ci;
/* Implement new mode lock */
check_modes(c);
+ /* On most ircds you do not receive the admin/owner mode till its registered */
if (ircd->admin) {
anope_cmd_mode(s_ChanServ, chan, "+a %s", u->nick);
}
+ if (ircd->owner && ircd->ownerset) {
+ anope_cmd_mode(s_ChanServ, chan, "%s %s", ircd->ownerset,
+ u->nick);
+ }
}
return MOD_CONT;
}
@@ -3149,8 +3154,9 @@ static int do_set_mlock(User * u, ChannelInfo * ci, char *param)
}
}
- /* We can't mlock +K if +i is not mlocked as well. */
- if (ircd->noknock) {
+ /* Some ircd we can't set NOKNOCK without INVITE */
+ /* So check if we need there is a NOKNOCK MODE and that we need INVITEONLY */
+ if (ircd->noknock && ircd->knock_needs_i) {
if ((ci->mlock_on & ircd->noknock) && !(ci->mlock_on & CMODE_i)) {
ci->mlock_on &= ~ircd->noknock;
notice_lang(s_ChanServ, u, CHAN_SET_MLOCK_K_REQUIRED);