From 5c48d7e9c7f0181772c14b133030a3c0e978fdc5 Mon Sep 17 00:00:00 2001 From: LucentW Date: Mon, 11 May 2015 22:05:08 +0200 Subject: [PATCH] IRC operators w/OperCanMode can kick anyone Closes #202. (cherry picked from commit 10c7ba99e73b42ec8c4c191ccdae60bdd35bba7d) --- src/ngircd/channel.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/ngircd/channel.c b/src/ngircd/channel.c index 6d8dde3e..e74cd6eb 100644 --- a/src/ngircd/channel.c +++ b/src/ngircd/channel.c @@ -359,6 +359,11 @@ Channel_Kick(CLIENT *Peer, CLIENT *Target, CLIENT *Origin, const char *Name, !Channel_UserHasMode(chan, Target, 'a') && !Channel_UserHasMode(chan, Target, 'o')) can_kick = true; + + /* IRC operators & IRCd with OperCanMode enabled + * can kick anyways regardless of privilege */ + else if(Client_HasMode(Origin, 'o') && Conf_OperCanMode) + can_kick = true; if(!can_kick) { IRC_WriteErrClient(Origin, ERR_CHANOPPRIVTOOLOW_MSG,