1 /* 2 * Userlist functions and definitions. 3 * Copyright Colten Edwards 1996 4 * 5 */ 6 7 #ifndef _user_list_h 8 #define _user_list_h 9 10 void add_shit (char *, char *, char *, char *); 11 void add_user (char *, char *, char *, char *); 12 void showuserlist (char *, char *, char *, char *); 13 void change_user (char *, char *, char *, char *); 14 void savelists (char *, char *, char *, char *); 15 16 void add_to_a_list (char *, int, char *, char *, char *, int); 17 void showlist (NickList *, char *); 18 UserList *lookup_userlevelc (char *, char *, char *, char *); 19 20 UserList *nickinuser (char *, char *); 21 ShitList *nickinshit (char *, char *); 22 23 int find_user_level (char *, char *, char *); 24 int find_shit_level (char *, char *, char *); 25 26 NickList *check_auto (char *, NickList *, ChannelList *); 27 int check_prot (char *, char *, ChannelList *, BanList *, NickList *); 28 void check_shit (ChannelList *); 29 void check_hack (char *, ChannelList *, NickList *, char *); 30 int check_channel_match (char *, char *); 31 int delay_check_auto (char *); 32 33 34 extern ShitList *shitlist_list; 35 extern LameList *lame_list; 36 extern WordKickList *ban_words; 37 38 #define USERLIST_REMOVE 0 39 #define USERLIST_ADD 1 40 #define SHITLIST_ADD 11 41 #define SHITLIST_REMOVE 12 42 43 #define ADD_VOICE 0x00000001 44 #define ADD_OPS 0x00000002 45 #define ADD_BAN 0x00000004 46 #define ADD_UNBAN 0x00000008 47 #define ADD_INVITE 0x00000010 48 #define ADD_DCC 0x00000020 49 #define ADD_TCL 0x00000040 50 #define ADD_IOPS 0x00000080 51 #define ADD_FLOOD 0x00000100 52 #define ADD_BOT 0x00000200 53 54 #define PROT_REOP 0x00000400 55 #define PROT_DEOP 0x00000800 56 #define PROT_KICK 0x00001000 57 #define PROT_BAN 0x00002000 58 #define PROT_INVITE 0x00004000 59 #define USER_FLAG_OPS 0x00008000 60 #define USER_FLAG_PROT 0x00010000 61 #define ADD_CTCP 0x00100000 62 63 #define ADD_FRIEND (ADD_VOICE|ADD_OPS|ADD_UNBAN|ADD_INVITE) 64 #define ADD_MASTER (ADD_VOICE|ADD_OPS|ADD_BAN|ADD_UNBAN|ADD_INVITE|ADD_DCC|ADD_FLOOD) 65 #define ADD_OWNER (ADD_MASTER|ADD_BOT|ADD_CTCP) 66 #define PROT_ALL (PROT_REOP|PROT_DEOP|PROT_KICK|PROT_BAN|PROT_INVITE) 67 68 #define SHIT_NOOP 0x0001 69 #define SHIT_KICK 0x0002 70 #define SHIT_KICKBAN 0x0004 71 #define SHIT_PERMBAN 0x0008 72 #define SHIT_IGNORE 0x0010 73 74 /* user.c functions for dealing with hashed userlist */ 75 UserList *find_bestmatch(char *, char *, char *, char *); 76 char * convert_flags(unsigned long flags); 77 UserList *find_userlist(char *, char *, int); 78 void add_userlist(UserList *); 79 UserList *next_userlist(UserList *, int *, void **); 80 void destroy_sorted_userlist(UserList **); 81 UserList *create_sorted_userlist(void); 82 char *convert_flags_to_str(unsigned long); 83 unsigned long convert_str_to_flags(char *); 84 int change_pass(char *, char *); 85 86 #endif 87 88