diff options
author | kcwu <kcwu@63ad8ddf-47c3-0310-b6dd-a9e9d9715204> | 2007-12-12 09:42:23 +0800 |
---|---|---|
committer | kcwu <kcwu@63ad8ddf-47c3-0310-b6dd-a9e9d9715204> | 2007-12-12 09:42:23 +0800 |
commit | 9a12adf6d29cdefc98afe2566a9e5479489f111b (patch) | |
tree | 6e2b911398cb6dcb08b183ab645817e098182968 /util/uhash_loader.c | |
parent | 3d16ea67c380607528e7c8df0b2cc5a2f2636b9f (diff) | |
download | pttbbs-9a12adf6d29cdefc98afe2566a9e5479489f111b.tar pttbbs-9a12adf6d29cdefc98afe2566a9e5479489f111b.tar.gz pttbbs-9a12adf6d29cdefc98afe2566a9e5479489f111b.tar.bz2 pttbbs-9a12adf6d29cdefc98afe2566a9e5479489f111b.tar.lz pttbbs-9a12adf6d29cdefc98afe2566a9e5479489f111b.tar.xz pttbbs-9a12adf6d29cdefc98afe2566a9e5479489f111b.tar.zst pttbbs-9a12adf6d29cdefc98afe2566a9e5479489f111b.zip |
* extract common functions as library.
git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@3673 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
Diffstat (limited to 'util/uhash_loader.c')
-rw-r--r-- | util/uhash_loader.c | 29 |
1 files changed, 2 insertions, 27 deletions
diff --git a/util/uhash_loader.c b/util/uhash_loader.c index fe90a545..8696b3c4 100644 --- a/util/uhash_loader.c +++ b/util/uhash_loader.c @@ -3,7 +3,6 @@ #include "bbs.h" #include "fnv_hash.h" -unsigned string_hash(unsigned char *s); void userec_add_to_uhash(int n, userec_t *id, int onfly); void fill_uhash(int onfly); void load_uhash(void); @@ -72,7 +71,7 @@ void checkhash(int h) while(*p != -1) { if(*p <-1 || *p >= MAX_USERS) {*p=-1; return;} - ch = string_hash( SHM->userid[*p])%(1<<HASH_BITS); + ch = StringHash( SHM->userid[*p])%(1<<HASH_BITS); if(ch!=h) { printf("remove %d %d!=%d %d [%s] next:%d\n", @@ -131,30 +130,6 @@ void fill_uhash(int onfly) printf("total %d names %s.\n", usernumber, onfly ? "checked":"loaded"); } -unsigned string_hash(unsigned char *s) -{ - return fnv1a_32_strcase(s, FNV1_32_INIT); -} - -// TODO share code with mbbsd/stuff.c -int is_validuserid(const char *id) -{ - int len, i; - if(id==NULL) - return 0; - len = strlen(id); - - if (len < 2 || len>IDLEN) - return 0; - - if (not_alpha(id[0])) - return 0; - for (i = 1; i < len; i++) - if (not_alnum(id[i])) - return 0; - return 1; -} - void userec_add_to_uhash(int n, userec_t *user, int onfly) { int *p, h, l=0; @@ -170,7 +145,7 @@ void userec_add_to_uhash(int n, userec_t *user, int onfly) return; } - h = string_hash(user->userid)%(1<<HASH_BITS); + h = StringHash(user->userid)%(1<<HASH_BITS); p = &(SHM->hash_head[h]); if(!onfly || SHM->userid[n][0] != user->userid[0] || |