diff options
| author | Alexander Barton <alex@barton.de> | 2012-10-06 19:23:05 +0200 |
|---|---|---|
| committer | Alexander Barton <alex@barton.de> | 2012-10-06 19:23:05 +0200 |
| commit | 9ac94339dca746d830a877944e30d1cc9c45c47f (patch) | |
| tree | b84d0775d3ed9684460c2f83394f868a15785bc4 /src | |
| parent | d3ae351236e605b400b94fcfa8e7670e26e19c89 (diff) | |
| download | ngircd-9ac94339dca746d830a877944e30d1cc9c45c47f.tar.gz ngircd-9ac94339dca746d830a877944e30d1cc9c45c47f.zip | |
KICK-protect IRC services
Diffstat (limited to 'src')
| -rw-r--r-- | src/ngircd/channel.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/ngircd/channel.c b/src/ngircd/channel.c index c679daeb..f3c74dc6 100644 --- a/src/ngircd/channel.c +++ b/src/ngircd/channel.c @@ -330,7 +330,8 @@ Channel_Kick(CLIENT *Peer, CLIENT *Target, CLIENT *Origin, const char *Name, /* Channel mode 'Q' and user mode 'q' on target: nobody but * IRC Operators and servers can kick the target user */ if ((strchr(Channel_Modes(chan), 'Q') - || Client_HasMode(Target, 'q')) + || Client_HasMode(Target, 'q') + || Client_Type(Target) == CLIENT_SERVICE) && !Client_HasMode(Origin, 'o')) { IRC_WriteStrClient(Origin, ERR_KICKDENY_MSG, Client_ID(Origin), Name, |