repo: ngircd action: commit revision: path_from: revision_from: 23b07bdf50ef5cc7b57c057b6088e4f5e4d7d6da: path_to: revision_to:
commit 23b07bdf50ef5cc7b57c057b6088e4f5e4d7d6da Author: DNSDate: Sat Oct 6 19:52:00 2012 +0200 Allow channel admins to "de-admin" channel members This patch fixes unsetting of channel user mode "+a" (channel admin) and adds a better error message: without this patch, a channel admin is unable to unset this mode. This closes bug #142. diff --git a/src/ngircd/irc-mode.c b/src/ngircd/irc-mode.c
--- a/src/ngircd/irc-mode.c
+++ b/src/ngircd/irc-mode.c
@@ -697,9 +697,9 @@ Channel_Mode(CLIENT *Client, REQUEST *Req, CLIENT *Origin, CHANNEL *Channel)
/* --- Channel user modes --- */
case 'q': /* Owner */
case 'a': /* Channel admin */
- if(!is_oper && !is_machine && !is_owner) {
+ if(!is_oper && !is_machine && !is_owner && !is_admin) {
connected = IRC_WriteStrClient(Origin,
- ERR_CHANOPRIVSNEEDED_MSG,
+ ERR_CHANOPPRIVTOOLOW_MSG,
Client_ID(Origin),
Channel_Name(Channel));
goto chan_exit;
-----END OF PAGE-----