]> arthur.barton.de Git - ngircd-alex.git/blobdiff - src/ngircd/irc-mode.c
First check if channel has mode "N", then check membership
[ngircd-alex.git] / src / ngircd / irc-mode.c
index ec7d53c488a788be68eba3033100047ce77ea008..99255df14a5433f60b3ad56e35f7e8f802175916 100644 (file)
@@ -580,6 +580,7 @@ Channel_Mode(CLIENT *Client, REQUEST *Req, CLIENT *Origin, CHANNEL *Channel)
                case 'M': /* Only identified nicks can write */
                case 'm': /* Moderated */
                case 'n': /* Only members can write */
+               case 'N': /* Can't change nick while on this channel */
                case 'Q': /* No kicks */
                case 't': /* Topic locked */
                        if(is_oper || is_machine || is_owner ||
@@ -1017,15 +1018,15 @@ Add_To_List(char what, CLIENT *Prefix, CLIENT *Client, CHANNEL *Channel,
 
        switch (what) {
                case 'I':
-                       if (!Channel_AddInvite(Channel, mask, false))
+                       if (!Channel_AddInvite(Channel, mask, false, Client_ID(Client)))
                                return CONNECTED;
                        break;
                case 'b':
-                       if (!Channel_AddBan(Channel, mask))
+                       if (!Channel_AddBan(Channel, mask, Client_ID(Client)))
                                return CONNECTED;
                        break;
                case 'e':
-                       if (!Channel_AddExcept(Channel, mask))
+                       if (!Channel_AddExcept(Channel, mask, Client_ID(Client)))
                                return CONNECTED;
                        break;
        }