X-Git-Url: http://git.pk910.de/?a=blobdiff_plain;f=UserNode.h;h=f905437aae542a80341aafa035dafb29f4d625a4;hb=795115bf680185ae01043bd1222b78bfed8c1d87;hp=49ae8e16edbc331012e5bbdfd7f0380bf5d9e668;hpb=c4e966cae4c6e425644769a0d6ee61b5c2535091;p=NeonServV5.git diff --git a/UserNode.h b/UserNode.h index 49ae8e1..f905437 100644 --- a/UserNode.h +++ b/UserNode.h @@ -2,14 +2,21 @@ #define _UserNode_h #include "main.h" -#define USERFLAG_ISBOT 0x0001 -#define USERFLAG_ISAUTHED 0x0002 -#define USERFLAG_ISIRCOP 0x0004 -#define USERFLAG_ISTMPUSER 0x0008 -#define USERFLAG_ISSERVER 0x0010 -#define USERFLAG_FREETMPUSER 0x0020 +#define USERFLAG_ISBOT 0x0001 +#define USERFLAG_ISAUTHED 0x0002 +#define USERFLAG_ISIRCOP 0x0004 +#define USERFLAG_ISTMPUSER 0x0008 +#define USERFLAG_ISSERVER 0x0010 +#define USERFLAG_FREETMPUSER 0x0020 +#define USERFLAG_LOADED_SETTINGS 0x0040 +#define USERFLAG_REPLY_PRIVMSG 0x0080 +#define USERFLAG_GOD_MODE 0x0100 + +#define USERFLAG_SCRIPTFLAG1 0x40000000 +#define USERFLAG_SCRIPTFLAG2 0x80000000 struct ChanUser; +struct language; struct UserNode { char nick[NICKLEN+1]; @@ -20,15 +27,23 @@ struct UserNode { unsigned int flags; time_t created; struct ChanUser *channel; + struct language *language; struct UserNode *next; }; +#define isNetworkService(USER) (USER->flags & (USERFLAG_ISBOT | USERFLAG_ISIRCOP)) + 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); +int countUsersWithHost(char *host); +char *getAuthFakehost(char *auth); struct UserNode* searchUserByNick(const char *nick); +struct UserNode* getAllUsers(struct UserNode *last); +int getUserCount(); struct UserNode* addUser(const char *nick); struct UserNode* addUserMask(const char *mask); struct UserNode* createTempUser(const char *mask);