diff options
| author | Adam- <Adam-@5417fbe8-f217-4b02-8779-1006273d7864> | 2010-02-12 19:51:16 +0000 |
|---|---|---|
| committer | Adam- <Adam-@5417fbe8-f217-4b02-8779-1006273d7864> | 2010-02-12 19:51:16 +0000 |
| commit | 84ecd1866c69d63067804c2baac564118dfdf306 (patch) | |
| tree | c3aab21b9ed987c7e39d4865708e650e715d9741 /src/protocol | |
| parent | 2eb2cb7650e78612d8096b13f7cf075b1ec82a07 (diff) | |
Added generic support for unknown modes told to Anope at runtime by the IRCd
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@2790 5417fbe8-f217-4b02-8779-1006273d7864
Diffstat (limited to 'src/protocol')
| -rw-r--r-- | src/protocol/inspircd11.c | 9 | ||||
| -rw-r--r-- | src/protocol/inspircd12.cpp | 10 | ||||
| -rw-r--r-- | src/protocol/unreal32.c | 8 |
3 files changed, 27 insertions, 0 deletions
diff --git a/src/protocol/inspircd11.c b/src/protocol/inspircd11.c index 59f7710a7..a7335daf7 100644 --- a/src/protocol/inspircd11.c +++ b/src/protocol/inspircd11.c @@ -920,6 +920,8 @@ int anope_event_capab(const char *source, int ac, const char **av) case 'I': ModeManager::AddChannelMode(new ChannelModeInvite('I')); continue; + default: + ModeManager::AddChannelMode(new ChannelModeList(CMODE_END, modebuf[t])); } } @@ -931,6 +933,9 @@ int anope_event_capab(const char *source, int ac, const char **av) case 'k': ModeManager::AddChannelMode(new ChannelModeKey('k')); continue; + default: + ModeManager::AddChannelMode(new ChannelModeParam(CMODE_END, modebuf[t])); + } } @@ -948,6 +953,8 @@ int anope_event_capab(const char *source, int ac, const char **av) case 'L': ModeManager::AddChannelMode(new ChannelModeParam(CMODE_REDIRECT, 'L', true)); continue; + default: + ModeManager::AddChannelMode(new ChannelModeParam(CMODE_END, modebuf[t], true)); } } @@ -1016,6 +1023,8 @@ int anope_event_capab(const char *source, int ac, const char **av) case 'V': ModeManager::AddChannelMode(new ChannelMode(CMODE_NOINVITE, 'V')); continue; + default: + ModeManager::AddChannelMode(new ChannelMode(CMODE_END, modebuf[t])); } } } diff --git a/src/protocol/inspircd12.cpp b/src/protocol/inspircd12.cpp index 98d993eec..ae78b1ee7 100644 --- a/src/protocol/inspircd12.cpp +++ b/src/protocol/inspircd12.cpp @@ -1011,6 +1011,8 @@ int anope_event_capab(const char *source, int ac, const char **av) case 'I': ModeManager::AddChannelMode(new ChannelModeInvite('I')); continue; + default: + ModeManager::AddChannelMode(new ChannelModeList(CMODE_END, modebuf[t])); } } @@ -1022,6 +1024,8 @@ int anope_event_capab(const char *source, int ac, const char **av) case 'k': ModeManager::AddChannelMode(new ChannelModeKey('k')); continue; + default: + ModeManager::AddChannelMode(new ChannelModeParam(CMODE_END, modebuf[t])); } } @@ -1048,6 +1052,8 @@ int anope_event_capab(const char *source, int ac, const char **av) case 'l': ModeManager::AddChannelMode(new ChannelModeParam(CMODE_LIMIT, 'l', true)); continue; + default: + ModeManager::AddChannelMode(new ChannelModeParam(CMODE_END, modebuf[t], true)); } } @@ -1125,6 +1131,8 @@ int anope_event_capab(const char *source, int ac, const char **av) case 'z': ModeManager::AddChannelMode(new ChannelMode(CMODE_SSL, 'z')); continue; + default: + ModeManager::AddChannelMode(new ChannelMode(CMODE_END, modebuf[t])); } } } @@ -1194,6 +1202,8 @@ int anope_event_capab(const char *source, int ac, const char **av) case 'd': ModeManager::AddUserMode(new UserMode(UMODE_DEAF, 'd')); continue; + default: + ModeManager::AddUserMode(new UserMode(UMODE_END, modebuf[t])); } } } diff --git a/src/protocol/unreal32.c b/src/protocol/unreal32.c index 35ced626c..1e22c109f 100644 --- a/src/protocol/unreal32.c +++ b/src/protocol/unreal32.c @@ -465,6 +465,8 @@ int anope_event_capab(const char *source, int ac, const char **av) case 'I': ModeManager::AddChannelMode(new ChannelModeInvite('I')); continue; + default: + ModeManager::AddChannelMode(new ChannelModeList(CMODE_END, modebuf[t])); } } @@ -482,6 +484,8 @@ int anope_event_capab(const char *source, int ac, const char **av) case 'L': ModeManager::AddChannelMode(new ChannelModeParam(CMODE_REDIRECT, 'L')); continue; + default: + ModeManager::AddChannelMode(new ChannelModeParam(CMODE_END, modebuf[t])); } } @@ -496,6 +500,8 @@ int anope_event_capab(const char *source, int ac, const char **av) case 'j': ModeManager::AddChannelMode(new ChannelModeParam(CMODE_JOINFLOOD, 'j', true)); continue; + default: + ModeManager::AddChannelMode(new ChannelModeParam(CMODE_END, modebuf[t], true)); } } @@ -570,6 +576,8 @@ int anope_event_capab(const char *source, int ac, const char **av) case 'G': ModeManager::AddChannelMode(new ChannelMode(CMODE_FILTER, 'G')); continue; + default: + ModeManager::AddChannelMode(new ChannelMode(CMODE_END, modebuf[t])); } } } |
