]> jfr.im git - irc/DALnet/bahamut.git/commitdiff
Add new xflag to excempt webirc users
authorKobi Shmueli <redacted>
Wed, 12 Dec 2018 22:38:34 +0000 (00:38 +0200)
committerKobi Shmueli <redacted>
Wed, 12 Dec 2018 22:38:34 +0000 (00:38 +0200)
EXEMPT_WEBIRC - exempt webirc users (on/off)

include/struct.h
src/channel.c
src/m_services.c

index d57baf510b6796d1c03de1ae3a48f1c2dae47127..205fc2a11d93f6c2446bfb48c142ab9b4447bf7a 100644 (file)
@@ -1367,6 +1367,7 @@ struct Channel
 #define XFLAG_SJR               0x2000 /* Services join request */
 #define XFLAG_NO_NICK_CHANGE    0x4000
 #define XFLAG_NO_UTF8           0x8000
+#define XFLAG_EXEMPT_WEBIRC     0x10000
 
 struct FlagList
 {
index 43708540af7a864be86d6e7b982c74769fdf58c8..f27865fa512b453531ebc2c457927781bd6e1835 100644 (file)
@@ -1261,6 +1261,7 @@ int is_xflags_exempted(aClient *sptr, aChannel *chptr)
     }
     if((chptr->xflags & XFLAG_EXEMPT_REGISTERED) && IsRegNick(sptr)) return 1;
     if((chptr->xflags & XFLAG_EXEMPT_IDENTD) && sptr->user && sptr->user->username[0]!='~') return 1;
+    if((chptr->xflags & XFLAG_EXEMPT_WEBIRC) && MyClient(sptr) && sptr->webirc_ip) return 1;
     return 0;
 }
 
index 66bbdc774554c8070c1d460a46e6c7148c5ada79..63a0a892937d73ad8bbd6d2b0bd1ff4d851693d9 100644 (file)
@@ -825,6 +825,7 @@ struct FlagList xflags_list[] =
   { "EXEMPT_IDENTD",     XFLAG_EXEMPT_IDENTD     },
   { "EXEMPT_REGISTERED", XFLAG_EXEMPT_REGISTERED },
   { "EXEMPT_INVITES",    XFLAG_EXEMPT_INVITES    },
+  { "EXEMPT_WEBIRC",     XFLAG_EXEMPT_WEBIRC     },
   { "HIDE_MODE_LISTS",   XFLAG_HIDE_MODE_LISTS   },
   { "NO_NICK_CHANGE",    XFLAG_NO_NICK_CHANGE    },
   { "NO_UTF8",           XFLAG_NO_UTF8           },
@@ -865,6 +866,7 @@ struct FlagList xflags_list[] =
  *   EXEMPT_IDENTD     - exempt users with identd (on/off)
  *   EXEMPT_REGISTERED - exempt users with umode +r (on/off)
  *   EXEMPT_INVITES    - exempt users who are +I'ed (on/off)
+ *   EXEMPT_WEBIRC     - exempt webirc users (on/off)
  *   USER_VERBOSE      - send failed command messages to #channel-relay (on/off)
  *   OPER_VERBOSE      - send failed command messages to +f opers (on/off)
  *