X-Git-Url: http://git.pk910.de/?a=blobdiff_plain;f=include%2Fchannel.h;h=57ed5dc4a91bc37424653c0970de12f06230891c;hb=refs%2Fheads%2Fupstream;hp=f14bd784fbdceaa17996d6bbd7aab6b843c21e53;hpb=5c1c1b577823ab730cc8232ef89b0c291dbccb83;p=ircu2.10.12-pk.git diff --git a/include/channel.h b/include/channel.h index f14bd78..57ed5dc 100644 --- a/include/channel.h +++ b/include/channel.h @@ -101,6 +101,8 @@ struct Client; #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_SAVE 0x20000 /**< save this mode-with-arg 'til * later */ #define MODE_FREE 0x40000 /**< string needs to be passed to @@ -115,7 +117,7 @@ struct Client; #define MODE_WPARAS (MODE_CHANOP|MODE_VOICE|MODE_BAN|MODE_KEY|MODE_LIMIT|MODE_APASS|MODE_UPASS) /** Available Channel modes */ -#define infochanmodes feature_bool(FEAT_OPLEVELS) ? "AbiklmnopstUvrD" : "biklmnopstvrD" +#define infochanmodes feature_bool(FEAT_OPLEVELS) ? "AbiklmnopstUvrDdR" : "biklmnopstvrDdR" /** Available Channel modes that take parameters */ #define infochanmodeswithparams feature_bool(FEAT_OPLEVELS) ? "AbkloUv" : "bklov" @@ -149,6 +151,7 @@ typedef enum ChannelGetType { #define LISTARG_TOPICLIMITS 0x0001 #define LISTARG_SHOWSECRET 0x0002 #define LISTARG_NEGATEWILDCARD 0x0004 +#define LISTARG_SHOWMODES 0x0008 /** * Maximum acceptable lag time in seconds: A channel younger than @@ -163,15 +166,6 @@ typedef enum ChannelGetType { */ #define TS_LAG_TIME 86400 -/** - * A Magic TS that is used for channels that are created by JOIN, - * a channel with this TS accepts all TS without complaining that - * it might receive later via MODE or CREATE. - * - * Part of the P9 compatibility, shouldn't occur on a P10 network. - */ -#define MAGIC_REMOTE_JOIN_TS 1270080000 - extern const char* const PartFmt1; @@ -258,7 +252,7 @@ struct Mode { /** A single ban for a channel. */ struct Ban { struct Ban* next; /**< next ban in the channel */ - struct irc_in_addr address; /**< addres for BAN_IPMASK bans */ + struct irc_in_addr address; /**< address for BAN_IPMASK bans */ time_t when; /**< timestamp when ban was added */ unsigned short flags; /**< modifier flags for the ban */ unsigned char nu_len; /**< length of nick!user part of banstr */ @@ -411,6 +405,7 @@ extern char *pretty_mask(char *mask); extern void del_invite(struct Client *cptr, struct Channel *chptr); 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);