#define _UserNode_h
#include "main.h"
-#define USERFLAG_ISBOT 0x01;
+#define USERFLAG_ISBOT 0x0001
+#define USERFLAG_ISAUTHED 0x0002
+#define USERFLAG_ISIRCOP 0x0004
+#define USERFLAG_ISTMPUSER 0x0008
+#define USERFLAG_ISSERVER 0x0010
+#define USERFLAG_FREETMPUSER 0x0020
+
struct ChanUser;
struct UserNode {
char ident[USERLEN+1];
char host[HOSTLEN+1];
char realname[REALLEN+1];
- char flags;
+ char auth[AUTHLEN+1];
+ unsigned int flags;
+ time_t created;
struct ChanUser *channel;
struct UserNode *next;
};
void init_UserNode();
+void free_UserNode();
int is_valid_nick(const char *nick);
struct UserNode* getUserByNick(const char *nick);
struct UserNode* getUserByMask(const char *mask);
struct UserNode* searchUserByNick(const char *nick);
struct UserNode* addUser(const char *nick);
struct UserNode* addUserMask(const char *mask);
+struct UserNode* createTempUser(const char *mask);
int renameUser(struct UserNode* user, const char *new_nick);
void delUser(struct UserNode* user, int freeUser);
+void clearTempUsers();
#endif