diff options
| author | Alexander Barton <alex@barton.de> | 2017-09-30 16:48:28 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2017-09-30 16:48:28 +0200 |
| commit | 05640f9285e28ce64180833d39f7ceda88d3915a (patch) | |
| tree | fbbb2985439eb718fd996183f13ff81a74326534 /src | |
| parent | e009fc87d54602cc2a4d9b60257f40bad14fc081 (diff) | |
| download | ngircd-05640f9285e28ce64180833d39f7ceda88d3915a.tar.gz ngircd-05640f9285e28ce64180833d39f7ceda88d3915a.zip | |
Allow IRC Ops and remote servers to KILL service clients (#242)
In the end, service clients behave like regular users, therefore IRC operators and servers should be able to KILL them: for example to resolve nick collisions. This is related to #238.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ngircd/irc.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/ngircd/irc.c b/src/ngircd/irc.c index a6f04cba..7acd84ee 100644 --- a/src/ngircd/irc.c +++ b/src/ngircd/irc.c @@ -362,7 +362,8 @@ IRC_KillClient(CLIENT *Client, CLIENT *From, const char *Nick, const char *Reaso return CONNECTED; } - if (Client_Type(c) != CLIENT_USER && Client_Type(c) != CLIENT_GOTNICK) { + if (Client_Type(c) != CLIENT_USER && Client_Type(c) != CLIENT_GOTNICK + && Client_Type(c) != CLIENT_SERVICE) { /* Target of this KILL is not a regular user, this is * invalid! So we ignore this case if we received a * regular KILL from the network and try to kill the |