diff options
author | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2006-08-29 18:26:55 +0000 |
---|---|---|
committer | brain <brain@e03df62e-2008-0410-955e-edbf42e46eb7> | 2006-08-29 18:26:55 +0000 |
commit | b9e99da4dafd836e995970216835cefe3716a01a (patch) | |
tree | 3e1a53384d20e350adf6a23ac964b9429e735e6b /src/modes | |
parent | e7aac9ee56d7bfff83287e3068ac18f60d43a1f9 (diff) |
Snomask support cometh! and it leave a sticky white mess all over the floor :(
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5062 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'src/modes')
-rw-r--r-- | src/modes/umode_n.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/modes/umode_n.cpp b/src/modes/umode_n.cpp index e3370fa56..7bb8dbbf0 100644 --- a/src/modes/umode_n.cpp +++ b/src/modes/umode_n.cpp @@ -15,12 +15,18 @@ ModeAction ModeUserServerNoticeMask::OnModeChange(userrec* source, userrec* dest return MODEACTION_DENY; /* Set the bitfields */ - if (dest->modes[UM_SERVERNOTICE] != adding) + if (adding) { - dest->modes[UM_SERVERNOTICE] = adding; + parameter = dest->ProcessNoticeMasks(parameter.c_str()); + return MODEACTION_ALLOW; + } + else if (dest->modes[UM_SNOMASK] != false) + { + dest->modes[UM_SNOMASK] = false; return MODEACTION_ALLOW; } /* Allow the change */ return MODEACTION_DENY; } + |