]> jfr.im git - irc/quakenet/newserv.git/blobdiff - authext/authext.h
Merge.
[irc/quakenet/newserv.git] / authext / authext.h
index ddc09c4f8d789d3be41036bcb204545d7919d187..b5614d5d87fb9eaa49cf7133a9b3b716b412e207 100644 (file)
@@ -10,7 +10,8 @@ typedef struct authname {
   int usercount;
   unsigned int marker;
   struct nick *nicks;
-  struct authname *next;
+  struct authname *next, *nextbyname;
+  unsigned int namebucket;
   /* These are extensions only used by other modules */
   void *exts[MAXAUTHNAMEEXTS];
 } authname;
@@ -20,7 +21,7 @@ typedef struct authname {
 extern authname *authnametable[AUTHNAMEHASHSIZE];
 
 /* Allocators */
-authname *newauthname();
+authname *newauthname(void);
 void freeauthname (authname *hp);
 
 /* EXT management */
@@ -30,10 +31,13 @@ void releaseauthnameext(int index);
 
 /* Actual user commands */
 authname *findauthname(unsigned long userid);
-authname *findorcreateauthname(unsigned long userid);
+authname *findauthnamebyname(const char *name);
+authname *findorcreateauthname(unsigned long userid, const char *name);
 void releaseauthname(authname *anp);
 
 /* Marker */
-unsigned int nextauthnamemarker();
+unsigned int nextauthnamemarker(void);
+
+authname *getauthbyname(const char *name);
 
 #endif