Files
bitchx/include/whowas.h
Kevin Easton 3f87eb31b1 Standardise header include guards
Tokens that begin with two underscores __* or an underscore and an uppercase letter _X* are reserved,
so we should avoid those for our own include guards.  The standard I'm settling on for foo.h is FOO_H_.
2017-05-10 23:30:11 +10:00

63 lines
1.8 KiB
C

#ifndef WHOWAS_H_
#define WHOWAS_H_
#define WHOWAS_USERLIST_MAX 300
#define WHOWAS_REG_MAX 500
#define WHOWAS_CHAN_MAX 20
#include "hash.h"
typedef struct _whowaschan_str {
struct _whowaschan_str *next;
char *channel;
int refnum;
ChannelList *channellist;
time_t time;
} WhowasChanList;
typedef struct _whowaswrapchan_str {
HashEntry NickListTable[WHOWASLIST_HASHSIZE];
} WhowasWrapChanList;
typedef struct _whowas_str {
struct _whowas_str *next;
int has_ops; /* true is user split away with opz */
char *channel; /* name of channel */
time_t time; /* time of split/leave */
char *server1;
char *server2;
NickList *nicklist; /* pointer to nicklist */
ShitList *shitlist; /* pointer to shitlist */
ChannelList *channellist;
} WhowasList;
typedef struct _whowas_wrap_str {
unsigned long total_hits;
unsigned long total_links;
unsigned long total_unlinks;
HashEntry NickListTable[WHOWASLIST_HASHSIZE];
} WhowasWrapList;
WhowasList *check_whowas_buffer (char *, char *, char *);
WhowasList *check_whowas_nick_buffer(const char *, const char *);
WhowasList *check_whosplitin_buffer (char *, char *, char *, int);
void add_to_whowas_buffer (NickList *, char *, char *, char *);
void add_to_whosplitin_buffer (NickList *, char *, char *, char *);
int remove_oldest_whowas (WhowasWrapList *, time_t, int);
void clean_whowas_list (void);
void sync_whowas_adduser (UserList *);
void sync_whowas_unuser (UserList *);
void sync_whowas_addshit (ShitList *);
void sync_whowas_unshit (ShitList *);
WhowasChanList *check_whowas_chan_buffer (char *, int, int);
void add_to_whowas_chan_buffer (ChannelList *);
int remove_oldest_chan_whowas (WhowasChanList **, time_t, int);
void clean_whowas_chan_list (void);
void show_whowas (void);
void show_wholeft (char *);
extern WhowasWrapList whowas_splitin_list;
#endif