00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef _EGG_IRCMASKS_H_
00023 #define _EGG_IRCMASKS_H_
00024
00025 typedef struct ircmask_list_entry {
00026 struct ircmask_list_entry *next;
00027 char *ircmask;
00028 int len, hash1, hash2;
00029 void *data;
00030 } ircmask_list_entry_t;
00031
00032 typedef struct {
00033 ircmask_list_entry_t *head;
00034 } ircmask_list_t;
00035
00036 int ircmask_list_add(ircmask_list_t *list, const char *ircmask, void *data);
00037 int ircmask_list_del(ircmask_list_t *list, const char *ircmask, void *data);
00038 int ircmask_list_find(ircmask_list_t *list, const char *irchost, void *dataptr);
00039 int ircmask_list_clear(ircmask_list_t *list);
00040 char *ircmask_create_separate(int type, const char *nick, const char *user, const char *host);
00041 char *ircmask_create(int type, const char *nick, const char *uhost);
00042 char *ircmask_create_full(int type, const char *nuhost);
00043
00044 #endif