#include "ircd_defs.h"
#include "channel.h"
-#include "res.h"
+#include "dns.h"
#include "snomask.h"
#include "match.h"
#include "ircd.h"
struct Client *servptr; /* Points to server this Client is on */
struct Client *from; /* == self, if Local Client, *NEVER* NULL! */
- struct Whowas *whowas; /* Pointers to whowas structs */
+ rb_dlink_list whowas_clist;
+
time_t tsinfo; /* TS on the nick, SVINFO on server */
unsigned int umodes; /* opers, normal users subset */
unsigned int flags; /* client flags */
/* time challenge response is valid for */
time_t chal_time;
- struct DNSQuery *dnsquery; /* for outgoing server's name lookup */
-
time_t next_away; /* Don't allow next away before... */
time_t last;
uint32_t connid;
struct ListClient
{
- unsigned int hash_indice;
+ char *chname;
unsigned int users_min, users_max;
time_t created_min, created_max, topic_min, topic_max;
int operspy;
/* overflow flags */
/* EARLIER FLAGS ARE IN s_newconf.h */
+#define FLAGS2_EXTENDCHANS 0x00200000
#define FLAGS2_EXEMPTRESV 0x00400000
#define FLAGS2_EXEMPTKLINE 0x00800000
#define FLAGS2_EXEMPTFLOOD 0x01000000
UMODE_WALLOP | UMODE_LOCOPS)
#define DEFAULT_OPER_SNOMASK SNO_GENERAL
-#define CLICAP_MULTI_PREFIX 0x0001
-#define CLICAP_SASL 0x0002
-#define CLICAP_ACCOUNT_NOTIFY 0x0004
-#define CLICAP_EXTENDED_JOIN 0x0008
-#define CLICAP_AWAY_NOTIFY 0x0010
-#define CLICAP_TLS 0x0020
-#define CLICAP_USERHOST_IN_NAMES 0x0040
-#define CLICAP_CAP_NOTIFY 0x0080
-#define CLICAP_CHGHOST 0x0100
-
/*
* flags macros.
*/
#define SetExemptResv(x) ((x)->flags2 |= FLAGS2_EXEMPTRESV)
#define IsIPSpoof(x) ((x)->flags2 & FLAGS2_IP_SPOOFING)
#define SetIPSpoof(x) ((x)->flags2 |= FLAGS2_IP_SPOOFING)
+#define IsExtendChans(x) ((x)->flags2 & FLAGS2_EXTENDCHANS)
+#define SetExtendChans(x) ((x)->flags2 |= FLAGS2_EXTENDCHANS)
/* for local users: flood grace period is over
* for servers: mentioned in networknotice.c notice