X-Git-Url: http://git.pk910.de/?a=blobdiff_plain;f=include%2Fchannel.h;h=6984250e62ea1dd9143d7df2abeaf3843b151dae;hb=275e1f928a44325a7ea1f0803d0ad23dc4e92d93;hp=6bbf821519ef0c3690b69233447900582451dcea;hpb=6b49deb63fcbb99794833c38df7feb358e8e6b61;p=ircu2.10.12-pk.git diff --git a/include/channel.h b/include/channel.h index 6bbf821..6984250 100644 --- a/include/channel.h +++ b/include/channel.h @@ -97,45 +97,45 @@ typedef signed long long long64; /* Channel Visibility macros */ -#define MODE_CHANOP CHFL_CHANOP /**< +o Chanop */ -#define MODE_VOICE CHFL_VOICE /**< +v Voice */ -#define MODE_PRIVATE 0x0004 /**< +p Private */ -#define MODE_SECRET 0x0008 /**< +s Secret */ -#define MODE_MODERATED 0x0010 /**< +m Moderated */ -#define MODE_TOPICLIMIT 0x0020 /**< +t Topic Limited */ -#define MODE_INVITEONLY 0x0040 /**< +i Invite only */ -#define MODE_NOPRIVMSGS 0x0080 /**< +n No Private Messages */ -#define MODE_KEY 0x0100 /**< +k Keyed */ -#define MODE_BAN 0x0200 /**< +b Ban */ -#define MODE_LIMIT 0x0400 /**< +l Limit */ -#define MODE_REGONLY 0x0800 /**< Only +r users may join */ -#define MODE_DELJOINS 0x1000 /**< New join messages are delayed */ -#define MODE_REGISTERED 0x2000 /**< Channel marked as registered - * (for future semantic expansion) */ -#define MODE_PERSIST 0x4000 /**< +z persistant channel */ -#define MODE_NOCOLOUR 0x8000 /**< no ANSI color codes */ -#define MODE_NOCTCP 0x10000 /**< no channel CTCPs */ -#define MODE_SAVE 0x20000 /**< save this mode-with-arg 'til - * later */ -#define MODE_FREE 0x40000 /**< string needs to be passed to - * MyFree() */ -#define MODE_BURSTADDED 0x80000 /**< channel was created by a BURST */ -#define MODE_UPASS 0x100000 -#define MODE_APASS 0x200000 -#define MODE_WASDELJOINS 0x400000 /**< Not DELJOINS, but some joins - * pending */ -#define MODE_EXCEPTION 0x800000 /**< ban exceptions */ -#define MODE_NOAMSGS 0x1000000 /**< No multi target messages */ -#define MODE_NONOTICE 0x2000000 /**< No channel notices */ -#define MODE_QUARANTINE 0x4000000 /**< No channel notices */ -#define MODE_ALTCHAN 0x8000000 /**< Alternative channel */ -#define MODE_ACCESS 0x10000000 /**< ChanServ access */ +#define MODE_NULL 0 +#define MODE_CHANOP CHFL_CHANOP /**< +o Chanop */ +#define MODE_VOICE CHFL_VOICE /**< +v Voice */ +#define MODE_PRIVATE 0x00004 /**< +p Private */ +#define MODE_SECRET 0x00008 /**< +s Secret */ +#define MODE_MODERATED 0x00010 /**< +m Moderated */ +#define MODE_TOPICLIMIT 0x00020 /**< +t Topic Limited */ +#define MODE_INVITEONLY 0x00040 /**< +i Invite only */ +#define MODE_NOPRIVMSGS 0x00080 /**< +n No Private Messages */ +#define MODE_KEY 0x00100 /**< +k Keyed */ +#define MODE_BAN 0x00200 /**< +b Ban */ +#define MODE_LIMIT 0x00400 /**< +l Limit */ +#define MODE_REGONLY 0x00800 /**< Only +r users may join */ +#define MODE_DELJOINS 0x01000 /**< New join messages are delayed */ +#define MODE_REGISTERED 0x02000 /**< Channel marked as registered (for future semantic expansion) */ +#define MODE_PERSIST 0x04000 /**< +z persistant channel */ +#define MODE_NOCOLOUR 0x08000 /**< no ANSI color codes */ +#define MODE_NOCTCP 0x10000 /**< no channel CTCPs */ +#define MODE_SAVE 0x20000 /**< save this mode-with-arg 'til later */ +#define MODE_FREE 0x40000 /**< string needs to be passed to MyFree() */ +#define MODE_BURSTADDED 0x80000 /**< channel was created by a BURST */ +#define MODE_UPASS 0x100000 +#define MODE_APASS 0x200000 +#define MODE_WASDELJOINS 0x400000 /**< Not DELJOINS, but some joins pending */ +#define MODE_EXCEPTION 0x800000 /**< ban exceptions */ +#define MODE_NOAMSGS 0x1000000 /**< No multi target messages */ +#define MODE_NONOTICE 0x2000000 /**< No channel notices */ +#define MODE_QUARANTINE 0x4000000 /**< No channel notices */ +#define MODE_ALTCHAN 0x8000000 /**< Alternative channel */ +#define MODE_DEL 0x20000000 +#define MODE_ADD 0x40000000 +#define MODE_ACCESS 0x100000000LLU /**< ChanServ access */ +#define MODE_AUDITORIUM 0x200000000LLU /**< +u Auditorium */ /** mode flags which take another parameter (With PARAmeterS) */ #define MODE_WPARAS (MODE_CHANOP|MODE_VOICE|MODE_BAN|MODE_KEY|MODE_LIMIT|MODE_APASS|MODE_UPASS|MODE_EXCEPTION|MODE_ALTCHAN|MODE_ACCESS) /** Available Channel modes */ -#define infochanmodes feature_bool(FEAT_OPLEVELS) ? "AcCbiklmMnNopstUvrDRzQ" : "cCbiklmMnNopstvrDRzQ" +#define infochanmodes feature_bool(FEAT_OPLEVELS) ? "AcCbiklmMnNopstuUvrDRzQu" : "cCbiklmMnNopstuvrDRzQu" /** Available Channel modes that take parameters */ #define infochanmodeswithparams feature_bool(FEAT_OPLEVELS) ? "AbkloUvFa" : "bklovFa" @@ -158,12 +158,6 @@ typedef enum ChannelGetType { CGT_CREATE } ChannelGetType; -/* used in SetMode() in channel.c and m_umode() in s_msg.c */ - -#define MODE_NULL 0 -#define MODE_ADD 0x40000000 -#define MODE_DEL 0x20000000 - /* used in ListingArgs.flags */ #define LISTARG_TOPICLIMITS 0x0001 @@ -431,6 +425,7 @@ extern void list_set_default(void); /* this belongs elsewhere! */ extern void RevealDelayedJoinIfNeeded(struct Client *sptr, struct Channel *chptr); extern void RevealDelayedJoin(struct Membership *member); extern void CheckDelayedJoins(struct Channel *chan); +extern void CheckEnableDelayedJoins(struct Channel *chan); extern void modebuf_init(struct ModeBuf *mbuf, struct Client *source, struct Client *connect, struct Channel *chan,