]>
jfr.im git - irc/quakenet/newserv.git/blob - authext/authext.h
4 #include "../irc/irc_config.h"
5 #include "../lib/flags.h"
9 #define MAXAUTHNAMEEXTS 5
13 typedef struct authname
{
18 struct authname
*next
, *nextbyname
;
19 unsigned int namebucket
;
21 char name
[ACCOUNTLEN
+1];
22 /* These are extensions only used by other modules */
23 void *exts
[MAXAUTHNAMEEXTS
];
26 #define AUTHNAMEHASHSIZE 60000
28 extern authname
*authnametable
[AUTHNAMEHASHSIZE
];
31 authname
*newauthname(void);
32 void freeauthname (authname
*hp
);
35 int registerauthnameext(const char *name
, int persistant
);
36 int findauthnameext(const char *name
);
37 void releaseauthnameext(int index
);
39 /* Actual user commands */
40 authname
*findauthname(unsigned long userid
);
41 authname
*findauthnamebyname(const char *name
);
42 authname
*findorcreateauthname(unsigned long userid
, const char *name
);
43 void releaseauthname(authname
*anp
);
46 unsigned int nextauthnamemarker(void);
48 authname
*getauthbyname(const char *name
);