IPv6 support (hopefully with fewer future transition pains)
[ircu2.10.12-pk.git] / include / ircd_chattr.h
index 3421fb6b4d12a91883db2b388f445e10846b52c6..31b8b98e2acbe872844399dd775a080146de77c8 100644 (file)
@@ -61,6 +61,7 @@
 #define NTL_EOL    0x10000  /* \r\n                                */
 #define NTL_KTIME  0x20000  /* Valid character for a k:line time   */
 #define NTL_CHPFX  0x40000  /* channel prefix char # & +           */
+#define NTL_IRCIP6 0x80000  /* Numeric IPv6 character (hex or colon) */
 
 /*
  * Tables used for translation and classification macros
@@ -98,6 +99,7 @@ extern const unsigned int  IRCD_CharAttrTab[];
 #define IsUserChar(c)      (IRCD_CharAttrTab[(c) - CHAR_MIN] & NTL_IRCUI)
 #define IsHostChar(c)      (IRCD_CharAttrTab[(c) - CHAR_MIN] & NTL_IRCHN)
 #define IsIPChar(c)        (IRCD_CharAttrTab[(c) - CHAR_MIN] & NTL_IRCIP)
+#define IsIP6Char(c)       (IRCD_CharAttrTab[(c) - CHAR_MIN] & NTL_IRCIP6)
 #define IsEol(c)           (IRCD_CharAttrTab[(c) - CHAR_MIN] & NTL_EOL)
 #define IsKTimeChar(c)     (IRCD_CharAttrTab[(c) - CHAR_MIN] & NTL_KTIME)