summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/bahamut.h38
-rw-r--r--include/dreamforge.h25
-rw-r--r--include/extern.h51
-rw-r--r--include/hybrid.h48
-rw-r--r--include/ptlink.h14
-rw-r--r--include/services.h12
-rw-r--r--include/ultimate3.h15
-rw-r--r--include/unreal32.h44
8 files changed, 187 insertions, 60 deletions
diff --git a/include/bahamut.h b/include/bahamut.h
index e04729463..78cefe1f9 100644
--- a/include/bahamut.h
+++ b/include/bahamut.h
@@ -16,7 +16,7 @@
#ifdef IRC_BAHAMUT
#define PROTECT_SET_MODE "+"
-#define PROTECT_UNSET_MODE "+"
+#define PROTECT_UNSET_MODE "-"
#define CS_CMD_PROTECT "PROTECT"
#define CS_CMD_DEPROTECT "DEPROTECT"
#define FANT_PROTECT_ADD "!protect"
@@ -25,15 +25,33 @@
#define LEVELINFO_PROTECT_WORD "PROTECT"
#define LEVELINFO_PROTECTME_WORD "PROTECTME"
-
-#define UMODE_a 0x00000001
-#define UMODE_h 0x00000002
-#define UMODE_i 0x00000004
-#define UMODE_o 0x00000008
-#define UMODE_r 0x00000010
-#define UMODE_w 0x00000020
-#define UMODE_A 0x00000040
-#define UMODE_R 0x80000000
+#define UMODE_a 0x00000001 /* umode +a - Services Admin */
+#define UMODE_h 0x00000002 /* umode +h - Helper */
+#define UMODE_i 0x00000004 /* umode +i - Invisible */
+#define UMODE_o 0x00000008 /* umode +o - Oper */
+#define UMODE_r 0x00000010 /* umode +r - registered nick */
+#define UMODE_w 0x00000020 /* umode +w - Get wallops */
+#define UMODE_A 0x00000040 /* umode +A - Server Admin */
+#define UMODE_x 0x00000080 /* umode +x - Squelch with notice */
+#define UMODE_X 0x00000100 /* umode +X - Squelch without notice */
+#define UMODE_F 0x00000200 /* umode +F - no cptr->since message rate throttle */
+#define UMODE_j 0x00000400 /* umode +j - client rejection notices */
+#define UMODE_K 0x00000800 /* umode +K - U: lined server kill messages */
+#define UMODE_O 0x00001000 /* umode +O - Local Oper */
+#define UMODE_s 0x00002000 /* umode +s - Server notices */
+#define UMODE_c 0x00004000 /* umode +c - Client connections/exits */
+#define UMODE_k 0x00008000 /* umode +k - Server kill messages */
+#define UMODE_f 0x00010000 /* umode +f - Server flood messages */
+#define UMODE_y 0x00020000 /* umode +y - Stats/links */
+#define UMODE_d 0x00040000 /* umode +d - Debug info */
+#define UMODE_g 0x00080000 /* umode +g - Globops */
+#define UMODE_b 0x00100000 /* umode +b - Chatops */
+#define UMODE_n 0x00200000 /* umode +n - Routing Notices */
+#define UMODE_m 0x00400000 /* umode +m - spambot notices */
+#define UMODE_e 0x00800000 /* umode +e - oper notices for the above +D */
+#define UMODE_D 0x01000000 /* umode +D - Hidden dccallow umode */
+#define UMODE_I 0x02000000 /* umode +I - invisible oper (masked) */
+#define UMODE_R 0x80000000 /* unmode +R - No non registered msgs */
#define CMODE_i 0x00000001
#define CMODE_m 0x00000002
diff --git a/include/dreamforge.h b/include/dreamforge.h
index f5f3c755f..414e0639c 100644
--- a/include/dreamforge.h
+++ b/include/dreamforge.h
@@ -13,10 +13,8 @@
#ifdef IRC_DREAMFORGE
-#define OWNER_SET_MODE "+"
-#define OWNER_UNSET_MODE "+"
#define PROTECT_SET_MODE "+"
-#define PROTECT_UNSET_MODE "+"
+#define PROTECT_UNSET_MODE "-"
#define CS_CMD_PROTECT "PROTECT"
#define CS_CMD_DEPROTECT "DEPROTECT"
#define FANT_PROTECT_ADD "!protect"
@@ -25,14 +23,19 @@
#define LEVELINFO_PROTECT_WORD "PROTECT"
#define LEVELINFO_PROTECTME_WORD "PROTECTME"
-#define UMODE_a 0x00000001
-#define UMODE_h 0x00000002
-#define UMODE_i 0x00000004
-#define UMODE_o 0x00000008
-#define UMODE_r 0x00000010
-#define UMODE_w 0x00000020
-#define UMODE_A 0x00000040
-#define UMODE_g 0x80000000
+#define UMODE_a 0x00000001 /* Services Admin */
+#define UMODE_h 0x00000002 /* Help system operator */
+#define UMODE_i 0x00000004 /* makes user invisible */
+#define UMODE_o 0x00000008 /* Operator */
+#define UMODE_r 0x00000010 /* Nick set by services as registered */
+#define UMODE_w 0x00000020 /* send wallops to them */
+#define UMODE_A 0x00000040 /* Admin */
+#define UMODE_O 0x00000080 /* Local operator */
+#define UMODE_s 0x00000100 /* server notices such as kill */
+#define UMODE_k 0x00000200 /* Show server-kills... */
+#define UMODE_c 0x00000400 /* Show client information */
+#define UMODE_f 0x00000800 /* Receive flood warnings */
+#define UMODE_g 0x80000000 /* Shows some global messages */
#define CMODE_i 0x00000001
#define CMODE_m 0x00000002
diff --git a/include/extern.h b/include/extern.h
index 7fb46ed25..d20e8060a 100644
--- a/include/extern.h
+++ b/include/extern.h
@@ -59,13 +59,14 @@ E CMMode cmmodes[128];
E unsigned long umodes[128];
E char csmodes[128];
-extern void do_mass_mode(char *modes);
extern void add_ban(Channel * chan, char *mask);
extern void chan_adduser2(User * user, Channel * c);
+extern void add_invite(Channel * chan, char *mask);
extern void chan_delete(Channel * c);
extern void del_ban(Channel * chan, char *mask);
extern void set_key(Channel * chan, char *value);
extern void set_limit(Channel * chan, char *value);
+extern void del_invite(Channel * chan, char *mask);
extern char *get_key(Channel * chan);
extern char *get_limit(Channel * chan);
extern Channel *chan_create(char *chan);
@@ -291,7 +292,9 @@ E int DumpCore;
E int LogUsers;
E int NickRegDelay;
E int UseSVSHOLD;
+E int UseSVS2MODE;
E int RestrictOperNicks;
+E int UseTokens;
E char **HostSetters;
E int HostNumber;
@@ -508,6 +511,8 @@ E void helpserv_init(void);
/**** hostserv.c ****/
E void hostserv_init(void);
E void addHostCore(char *nick, char *vIdent, char *vhost, char *creator, int32 tmp_time);
+E char *getvIdent(char *nick);
+E char *getvHost(char *nick);
/**** init.c ****/
@@ -642,9 +647,10 @@ E char *myStrGetOnlyToken(const char *str, const char dilim,
E char *myStrSubString(const char *src, int start, int end);
E char *myStrGetTokenRemainder(const char *str, const char dilim,
int token_number);
+E int myNumToken(const char *str, const char dilim);
E void doCleanBuffer(char *str);
E void EnforceQlinedNick(char *nick, char *killer);
-E int nickIsServices(char *nick);
+E int nickIsServices(char *nick, int bot);
E void add_entropy_userkeys(void);
E void rand_init(void);
@@ -705,6 +711,8 @@ E void nsStartNickTracking(User * u);
E void nsStopNickTracking(User * u);
E int nsCheckNickTracking(User *u);
+E int group_identified(User * u, NickCore * nc);
+E int is_on_access(User * u, NickCore * nc);
/**** operserv.c ****/
@@ -800,13 +808,14 @@ E Server *first_server(int flags);
E Server *next_server(int flags);
E Server *new_server(Server * uplink, const char *name, const char *desc,
- uint16 flags);
+ uint16 flags, char *suid);
E Server *findserver(Server *s, const char *name);
-E void do_server(const char *source, int ac, char **av);
+E void do_server(const char *source, char *servername, char *hops, char *descript, char *numeric);
E void do_squit(const char *source, int ac, char **av);
E void capab_parse(int ac, char **av);
+E int anope_check_sync(const char *name);
/**** sessions.c ****/
@@ -864,6 +873,7 @@ E User *do_nick(const char *source, char *nick, char *username, char *host,
char *server, char *realname, time_t ts, uint32 svid, uint32 ip, char *vhost, char *uid);
E void do_umode(const char *source, int ac, char **av);
+E void do_umode2(const char *source, int ac, char **av);
E void do_quit(const char *source, int ac, char **av);
E void do_kill(char *source, char *reason);
@@ -874,6 +884,7 @@ E int is_excepted(ChannelInfo * ci, User * user);
E int is_excepted_mask(ChannelInfo * ci, char *mask);
E int match_usermask(const char *mask, User * user);
+E int match_userip(const char *mask, User * user, char *host);
E void split_usermask(const char *mask, char **nick, char **user,
char **host);
E char *create_mask(User * u);
@@ -978,19 +989,27 @@ extern void anope_cmd_sqline(char *mask, char *reason);
extern void anope_cmd_szline(char *mask, char *reason); /* SZLINE */
extern void anope_cmd_squit(char *servname, char *message); /* SQUIT */
extern void anope_cmd_svinfo(); /* SVINFO */
+extern void anope_cmd_svsadmin(char *server, int set); /* SVSADMIN */
extern void anope_cmd_svshold(char *nick); /* SVSHOLD */
extern void anope_cmd_release_svshold(char *nick); /* SVSHOLD */
extern void anope_cmd_svsinfo(); /* SVSINFO */
+extern void anope_cmd_svsjoin(char *source, char *nick,char *chan); /* SVSJOIN */
extern void anope_cmd_svskill(char *source,char *user, const char *fmt, ...); /* SVSKILL */
extern void anope_cmd_svsmode(User * u, int ac, char **av); /* SVSMODE */
extern void anope_cmd_svsnick(char *nick,char *newnick, time_t when); /* SVSNICK */
extern void anope_cmd_svsnoop(char *server, int set); /* SVSNOOP */
extern void anope_cmd_svso(char *source,char *nick, char *flag); /* SVSO */
+extern void anope_cmd_svspart(char *source, char *nick,char *chan); /* SVSPART */
+extern void anope_cmd_swhois(char *source, char *who, char *mask); /* SWHOIS */
extern void anope_cmd_topic(char *whosets, char *chan, char *whosetit, char *topic, time_t when); /* TOPIC */
extern void anope_cmd_unsgline(char *mask); /* UNSGLINE */
extern void anope_cmd_unsqline(char *user); /* UNSQLINE */
extern void anope_cmd_unszline(char *mask); /* UNSZLINE */
+extern void anope_cmd_eob(); /* EOB - end of burst */
+extern void anope_cmd_burst(); /* BURST - use eob to send burst 0 */
+extern void anope_cmd_svswatch(char *sender, char *nick, char *parm);
+extern int anope_event_482(char *source, int ac, char **av);
extern int anope_event_436(char *source, int ac, char **av);
extern int anope_event_away(char *source, int ac, char **av);
extern int anope_event_ping(char *source, int ac, char **av);
@@ -1028,27 +1047,51 @@ extern int anope_event_snick(char *source, int ac, char **av);
extern int anope_event_vhost(char *source, int ac, char **av);
extern int anope_event_tkl(char *source, int ac, char **av);
extern int anope_event_eos(char *source, int ac, char **av);
+extern int anope_event_eob(char *source, int ac, char **av);
extern int anope_event_pass(char *source, int ac, char **av);
extern int anope_event_netinfo(char *source, int ac, char **av);
extern int anope_event_error(char *source, int ac, char **av);
extern int anope_event_eb(char *source, int ac, char **av);
extern int anope_event_netctrl(char *source, int ac, char **av);
extern int anope_event_notice(char *source, int ac, char **av);
+extern int anope_event_snotice(char *source, int ac, char **av);
extern int anope_event_sqline(char *source, int ac, char **av);
extern int anope_event_error(char *source, int ac, char **av);
extern int anope_event_smo(char *source, int ac, char **av);
extern int anope_event_myid(char *source, int ac, char **av);
extern int anope_event_vctrl(char *source, int ac, char **av);
+extern int anope_event_tctrl(char *source, int ac, char **av);
extern int anope_event_netinfo(char *source, int ac, char **av);
extern int anope_event_snetinfo(char *source, int ac, char **av);
+extern int anope_event_umode2(char *source, int ac, char **av);
+extern int anope_event_globops(char *source, int ac, char **av);
+extern int anope_event_swhois(char *source, int ac, char **av);
+extern int anope_event_burst(char *source, int ac, char **av);
+extern int anope_event_luserslock(char *source, int ac, char **av);
+extern int anope_event_admin(char *source, int ac, char **av);
+extern int anope_event_credits(char *source, int ac, char **av);
+extern int anope_event_rehash(char *source, int ac, char **av);
+extern int anope_event_sdesc(char *source, int ac, char **av);
+extern int anope_event_netglobal(char *source, int ac, char **av);
+extern int anope_event_invite(char *source, int ac, char **av);
extern void anope_set_umode(User * user, int ac, char **av);
extern void anope_cmd_svid_umode(char *nick, time_t ts);
extern void anope_cmd_svid_umode2(User *u, char *ts);
extern void anope_cmd_svid_umode3(User *u, char *ts);
extern void anope_cmd_nc_change(User *u);
+extern int anope_flood_mode_check(char *value);
extern char *common_get_vident(User *u);
extern char *common_get_vhost(User *u);
+extern char *send_token(char *token1, char *token2);
+extern char *base64enc(long i);
+extern long base64dec(char *b64);
+extern long base64dects(char *ts);
+
+#define Anope_Free(x) if ((x) != NULL) free(x)
+
+extern char *host_resolve(char *host);
+
#endif /* EXTERN_H */
diff --git a/include/hybrid.h b/include/hybrid.h
index 58664e01a..74c69c3a1 100644
--- a/include/hybrid.h
+++ b/include/hybrid.h
@@ -14,7 +14,7 @@
#ifdef IRC_HYBRID
#define PROTECT_SET_MODE "+"
-#define PROTECT_UNSET_MODE "+"
+#define PROTECT_UNSET_MODE "-"
#define CS_CMD_PROTECT "PROTECT"
#define CS_CMD_DEPROTECT "DEPROTECT"
#define FANT_PROTECT_ADD "!protect"
@@ -23,23 +23,35 @@
#define LEVELINFO_PROTECT_WORD "PROTECT"
#define LEVELINFO_PROTECTME_WORD "PROTECTME"
-#define UMODE_a 0x00000001
-#define UMODE_h 0x00000002
-#define UMODE_i 0x00000004
-#define UMODE_o 0x00000008
-#define UMODE_r 0x00000010
-#define UMODE_w 0x00000020
-#define UMODE_A 0x00000040
-
-#define CMODE_i 0x00000001
-#define CMODE_m 0x00000002
-#define CMODE_n 0x00000004
-#define CMODE_p 0x00000008
-#define CMODE_s 0x00000010
-#define CMODE_t 0x00000020
-#define CMODE_k 0x00000040 /* These two used only by ChanServ */
-#define CMODE_l 0x00000080
-#define CMODE_a 0x00000400
+#define UMODE_a 0x00000001 /* Admin status */
+#define UMODE_b 0x00000080 /* See bot and drone flooding notices */
+#define UMODE_c 0x00000100 /* Client connection/quit notices */
+#define UMODE_d 0x00000200 /* See debugging notices */
+#define UMODE_f 0x00000400 /* See I: line full notices */
+#define UMODE_g 0x00000800 /* Server Side Ignore */
+#define UMODE_i 0x00000004 /* Not shown in NAMES or WHO unless you share a channel */
+#define UMODE_k 0x00001000 /* See server generated KILL messages */
+#define UMODE_l 0x00002000 /* See LOCOPS messages */
+#define UMODE_n 0x00004000 /* See client nick changes */
+#define UMODE_o 0x00000008 /* Operator status */
+#define UMODE_r 0x00000010 /* See rejected client notices */
+#define UMODE_s 0x00008000 /* See general server notices */
+#define UMODE_u 0x00010000 /* See unauthorized client notices */
+#define UMODE_w 0x00000020 /* See server generated WALLOPS */
+#define UMODE_x 0x00020000 /* See remote server connection and split notices */
+#define UMODE_y 0x00040000 /* See LINKS, STATS (if configured), TRACE notices */
+#define UMODE_z 0x00080000 /* See oper generated WALLOPS */
+
+#define CMODE_i 0x00000001 /* Invite only */
+#define CMODE_m 0x00000002 /* Users without +v/h/o cannot send text to the channel */
+#define CMODE_n 0x00000004 /* Users must be in the channel to send text to it */
+#define CMODE_p 0x00000008 /* Private is obsolete, this now restricts KNOCK */
+#define CMODE_s 0x00000010 /* The channel does not show up on NAMES or LIST */
+#define CMODE_t 0x00000020 /* Only chanops can change the topic */
+#define CMODE_k 0x00000040 /* Key/password for the channel. */
+#define CMODE_l 0x00000080 /* Limit the number of users in a channel */
+#define CMODE_a 0x00000400 /* Anonymous ops, chanops are hidden */
+
#define DEFAULT_MLOCK CMODE_n | CMODE_t
diff --git a/include/ptlink.h b/include/ptlink.h
index 7091add18..8e61f52bf 100644
--- a/include/ptlink.h
+++ b/include/ptlink.h
@@ -30,6 +30,19 @@
#define UMODE_r 0x00000010
#define UMODE_w 0x00000020
#define UMODE_A 0x00000040
+#define UMODE_B 0x00000080
+#define UMODE_H 0x00000100
+#define UMODE_N 0x00000200
+#define UMODE_O 0x00000400
+#define UMODE_p 0x00000800
+#define UMODE_R 0x00001000
+#define UMODE_s 0x00002000
+#define UMODE_S 0x00004000
+#define UMODE_T 0x00008000
+#define UMODE_v 0x00001000
+#define UMODE_y 0x00002000
+#define UMODE_z 0x00004000
+
#define CMODE_i 0x00000001
@@ -52,6 +65,7 @@
#define CMODE_N 0x00080000
#define CMODE_R 0x00000100 /* Only identified users can join */
#define CMODE_r 0x00000200 /* Set for all registered channels */
+#define CMODE_C 0x00100000
#define DEFAULT_MLOCK CMODE_n | CMODE_t | CMODE_r
diff --git a/include/services.h b/include/services.h
index 4c7ddcb4e..81c1b2017 100644
--- a/include/services.h
+++ b/include/services.h
@@ -245,7 +245,11 @@ struct ircdvars_ {
uint32 chan_lmode; /* Mode */
int check_nick_id; /* On nick change check if they could be identified */
int knock_needs_i; /* Check if we needed +i when setting NOKNOCK */
- char *chanmodes; /* If the ircd sends CHANMODE in CAPAB this is where we store it */
+ char *chanmodes; /* If the ircd sends CHANMODE in CAPAB this is where we store it */
+ int token; /* Does Anope support the tokens for the ircd */
+ int tokencaseless; /* TOKEN are not case senstive - most its Unreal that is case senstive */
+ int sjb64; /* Base 64 encode TIMESTAMP */
+ int invitemode; /* +I */
};
struct ircdcapab_ {
@@ -278,6 +282,7 @@ struct ircdcapab_ {
uint32 dodkey;
uint32 dozip;
uint32 chanmodes;
+ uint32 sjb64;
};
/*************************************************************************/
@@ -658,6 +663,7 @@ struct server_ {
char *desc; /* Server description */
uint16 flags; /* Some info flags, as defined below */
char *suid; /* Server Univeral ID */
+ int sync; /* Whether is synced or not */
Server *links; /* Linked list head for linked servers */
Server *uplink; /* Server which pretends to be the uplink */
@@ -800,6 +806,8 @@ struct channel_ {
char **bans;
int32 exceptcount, exceptsize;
char **excepts;
+ int32 invitecount, invitesize;
+ char **invite;
struct c_userlist {
struct c_userlist *next, *prev;
User *user;
@@ -1072,7 +1080,7 @@ struct hostcache_ {
#define CAPAB_VL 0x04000000
#define CAPAB_TLKEXT 0x08000000
#define CAPAB_CHANMODE 0x10000000
-
+#define CAPAB_SJB64 0x20000000
/*************************************************************************/
diff --git a/include/ultimate3.h b/include/ultimate3.h
index 511037144..0aafffa87 100644
--- a/include/ultimate3.h
+++ b/include/ultimate3.h
@@ -30,11 +30,17 @@
#define UMODE_r 0x00000010
#define UMODE_w 0x00000020
#define UMODE_A 0x00000040
+#define UMODE_0 0x00000080
+#define UMODE_Z 0x00000100 /* umode +Z - Services Root Admin */
+#define UMODE_S 0x00000200 /* umode +S - Services Client */
+#define UMODE_D 0x00000400 /* umode +D - has seen dcc warning message */
+#define UMODE_d 0x00000800 /* umode +d - user is deaf to channel messages */
+#define UMODE_W 0x00001000 /* umode +d - user is deaf to channel messages */
#define UMODE_p 0x04000000
-#define UMODE_Z 0x08000000
-#define UMODE_P 0x20000000
-#define UMODE_R 0x80000000
+#define UMODE_P 0x20000000 /* umode +P - Services Admin */
#define UMODE_x 0x40000000
+#define UMODE_R 0x80000000
+
#define CMODE_i 0x00000001
#define CMODE_m 0x00000002
@@ -49,7 +55,8 @@
#define CMODE_S 0x00002000
#define CMODE_K 0x00004000
#define CMODE_c 0x00000400 /* Colors can't be used */
-#define CMODE_M 0x00000800 /* Non-regged nicks can't send messages */
+#define CMODE_M 0x00000800 /* Non-regged nicks can't send messages */
+#define CMODE_q 0x00001000 /* No Quit Reason */
#define CMODE_O 0x00008000 /* Only opers can join */
#define CMODE_R 0x00000100 /* Only identified users can join */
#define CMODE_r 0x00000200 /* Set for all registered channels */
diff --git a/include/unreal32.h b/include/unreal32.h
index b94c82395..4970b6772 100644
--- a/include/unreal32.h
+++ b/include/unreal32.h
@@ -16,16 +16,34 @@
/*************************************************************************/
/* User Modes */
-#define UMODE_a 0x00000001
-#define UMODE_h 0x00000002
-#define UMODE_i 0x00000004
-#define UMODE_o 0x00000008
-#define UMODE_r 0x00000010
-#define UMODE_w 0x00000020
-#define UMODE_A 0x00000040
-#define UMODE_g 0x80000000
-#define UMODE_x 0x40000000
-#define UMODE_R 0x80000000
+#define UMODE_a 0x00000001 /* a Services Admin */
+#define UMODE_h 0x00000002 /* h Available for help (HelpOp) */
+#define UMODE_i 0x00000004 /* i Invisible (not shown in /who) */
+#define UMODE_o 0x00000008 /* o Global IRC Operator */
+#define UMODE_r 0x00000010 /* r Identifies the nick as being registered */
+#define UMODE_w 0x00000020 /* w Can listen to wallop messages */
+#define UMODE_A 0x00000040 /* A Server Admin */
+#define UMODE_N 0x00000080 /* N Network Administrator */
+#define UMODE_O 0x00000100 /* O Local IRC Operator */
+#define UMODE_C 0x00000200 /* C Co-Admin */
+#define UMODE_d 0x00000400 /* d Makes it so you can not receive channel PRIVMSGs */
+#define UMODE_p 0x00000800 /* Hides the channels you are in in a /whois reply */
+#define UMODE_q 0x00001000 /* q Only U:Lines can kick you (Services Admins Only) */
+#define UMODE_s 0x00002000 /* s Can listen to server notices */
+#define UMODE_t 0x00004000 /* t Says you are using a /vhost */
+#define UMODE_v 0x00008000 /* v Receives infected DCC Send Rejection notices */
+#define UMODE_z 0x00010000 /* z Indicates that you are an SSL client */
+#define UMODE_B 0x00020000 /* B Marks you as being a Bot */
+#define UMODE_G 0x00040000 /* G Filters out all the bad words per configuration */
+#define UMODE_H 0x00080000 /* H Hide IRCop Status (IRCop Only) */
+#define UMODE_S 0x00100000 /* S services client */
+#define UMODE_V 0x00200000 /* V Marks you as a WebTV user */
+#define UMODE_W 0x00400000 /* W Lets you see when people do a /whois on you */
+#define UMODE_T 0x00800000 /* T Prevents you from receiving CTCPs */
+#define UMODE_g 0x20000000 /* g Can send & read globops and locops */
+#define UMODE_x 0x40000000 /* x Gives user a hidden hostname */
+#define UMODE_R 0x80000000 /* Allows you to only receive PRIVMSGs/NOTICEs from registered (+r) users */
+
/*************************************************************************/
@@ -43,7 +61,7 @@
#define CMODE_r 0x00000200 /* Set for all registered channels */
#define CMODE_c 0x00000400
#define CMODE_A 0x00000800
-#define CMODE_H 0x00001000
+/* #define CMODE_H 0x00001000 Was now +I may not join, but Unreal Removed it and it will not set in 3.2 */
#define CMODE_K 0x00002000
#define CMODE_L 0x00004000
#define CMODE_O 0x00008000
@@ -57,6 +75,7 @@
#define CMODE_z 0x00800000
#define CMODE_N 0x01000000
#define CMODE_T 0x02000000
+#define CMODE_M 0x04000000
/*************************************************************************/
@@ -78,4 +97,7 @@
#define DEFAULT_MLOCK CMODE_n | CMODE_t | CMODE_r
+#define SJOINBANNCHAR '&'
+#define SJOINEXCEPTIONCHAR '\"'
+
#endif