5 #define USERFLAG_ISBOT 0x0001
6 #define USERFLAG_ISAUTHED 0x0002
7 #define USERFLAG_ISIRCOP 0x0004
8 #define USERFLAG_ISTMPUSER 0x0008
9 #define USERFLAG_ISSERVER 0x0010
10 #define USERFLAG_FREETMPUSER 0x0020
11 #define USERFLAG_LOADED_SETTINGS 0x0040
12 #define USERFLAG_REPLY_PRIVMSG 0x0080
13 #define USERFLAG_GOD_MODE 0x0100
15 #define USERFLAG_SCRIPTFLAG1 0x40000000
16 #define USERFLAG_SCRIPTFLAG2 0x80000000
23 char ident[USERLEN+1];
25 char realname[REALLEN+1];
29 struct ChanUser *channel;
30 struct language *language;
32 struct UserNode *next;
35 #define isNetworkService(USER) (USER->flags & (USERFLAG_ISBOT | USERFLAG_ISIRCOP))
39 int is_valid_nick(const char *nick);
40 struct UserNode* getUserByNick(const char *nick);
41 struct UserNode* getUserByMask(const char *mask);
42 int countUsersWithHost(char *host);
43 char *getAuthFakehost(char *auth);
44 struct UserNode* searchUserByNick(const char *nick);
45 struct UserNode* getAllUsers(struct UserNode *last);
47 struct UserNode* addUser(const char *nick);
48 struct UserNode* addUserMask(const char *mask);
49 struct UserNode* createTempUser(const char *mask);
50 int renameUser(struct UserNode* user, const char *new_nick);
51 void delUser(struct UserNode* user, int freeUser);
52 void clearTempUsers();