1
0
mirror of https://github.com/anope/anope.git synced 2026-06-29 22:26:38 +02:00

Backport of bugfix for bug #1004 from SVN r2003, Modechanges from ulined server are no longer being blocked by SECUREOPS.

git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/stable@2253 5417fbe8-f217-4b02-8779-1006273d7864
This commit is contained in:
jantje_85
2009-04-03 19:45:24 +00:00
parent 1dec3ee8fb
commit 74c5d989bc
3 changed files with 14 additions and 7 deletions
+11 -6
View File
@@ -302,6 +302,11 @@ void chan_set_modes(const char *source, Channel * chan, int ac, char **av,
}
}
/* Don't bounce modes from u:lined clients or servers, bug #1004. */
user = finduser(source);
if ((user && is_ulined(user->server->name)) || is_ulined((char *)source))
return;
if (check > 0) {
check_modes(chan);
@@ -312,12 +317,12 @@ void chan_set_modes(const char *source, Channel * chan, int ac, char **av,
real_ac--;
real_av++;
for (i = 0; i < real_ac; i++) {
if ((user = finduser(*real_av)) && is_on_chan(chan, user)) {
if (check < 2)
chan_set_correct_modes(user, chan, 0);
else if ((chan->ci->flags) && (chan->ci->flags & CI_SECUREOPS))
chan_set_correct_modes(user, chan, 0);
}
if ((user = finduser(*real_av)) && is_on_chan(chan, user)) {
if (check < 2)
chan_set_correct_modes(user, chan, 0);
else if ((chan->ci->flags) && (chan->ci->flags & CI_SECUREOPS))
chan_set_correct_modes(user, chan, 0);
}
real_av++;
}
}