diff options
author | kcwu <kcwu@63ad8ddf-47c3-0310-b6dd-a9e9d9715204> | 2005-03-15 04:33:47 +0800 |
---|---|---|
committer | kcwu <kcwu@63ad8ddf-47c3-0310-b6dd-a9e9d9715204> | 2005-03-15 04:33:47 +0800 |
commit | 026329f85c6ebcbec743d526a0c46bd1c0aab8bb (patch) | |
tree | 6f76835cc10bfa49f943a50f5c3db9d36c6c2459 /mbbsd/cache.c | |
parent | b26fbc65ed9d7cbca50f8758712a9b9b6b2bf853 (diff) | |
download | pttbbs-026329f85c6ebcbec743d526a0c46bd1c0aab8bb.tar pttbbs-026329f85c6ebcbec743d526a0c46bd1c0aab8bb.tar.gz pttbbs-026329f85c6ebcbec743d526a0c46bd1c0aab8bb.tar.bz2 pttbbs-026329f85c6ebcbec743d526a0c46bd1c0aab8bb.tar.lz pttbbs-026329f85c6ebcbec743d526a0c46bd1c0aab8bb.tar.xz pttbbs-026329f85c6ebcbec743d526a0c46bd1c0aab8bb.tar.zst pttbbs-026329f85c6ebcbec743d526a0c46bd1c0aab8bb.zip |
warning: searchuser() getuser() API change, don't change query string implicitly.
git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@2627 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
Diffstat (limited to 'mbbsd/cache.c')
-rw-r--r-- | mbbsd/cache.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/mbbsd/cache.c b/mbbsd/cache.c index 09116154..98a06563 100644 --- a/mbbsd/cache.c +++ b/mbbsd/cache.c @@ -192,7 +192,7 @@ remove_from_uhash(int n) #warning "searchuser() average chaining MAX_USERS/(1<<HASH_BITS) times." #endif int -searchuser(char *userid) +searchuser(const char *userid, char *rightid) { int h, p, times; h = StringHash(userid)%(1<<HASH_BITS); @@ -200,7 +200,7 @@ searchuser(char *userid) for (times = 0; times < MAX_USERS && p != -1 && p < MAX_USERS ; ++times) { if (strcasecmp(SHM->userid[p], userid) == 0) { - if(userid[0]) strcpy(userid, SHM->userid[p]); + if(userid[0] && rightid) strcpy(rightid, SHM->userid[p]); return p + 1; } p = SHM->next_in_hash[p]; @@ -214,7 +214,7 @@ getuser(char *userid, userec_t *xuser) { int uid; - if ((uid = searchuser(userid))) { + if ((uid = searchuser(userid, NULL))) { passwd_query(uid, xuser); xuser->money = moneyof(uid); } @@ -795,7 +795,7 @@ void buildBMcache(int bid) /* bid starts from 1 */ for( ptr = strtok(s, " "), i = 0 ; i < MAX_BMs && ptr != NULL ; ptr = strtok(NULL, " "), ++i ) - if( (uid = searchuser(ptr)) != 0 ) + if( (uid = searchuser(ptr, NULL)) != 0 ) SHM->BMcache[bid-1][i] = uid; for( ; i < MAX_BMs ; ++i ) SHM->BMcache[bid-1][i] = -1; @@ -1006,7 +1006,7 @@ hbflreload(int bid) break; } if (strcasecmp("guest", buf) == 0 || - (uid = searchuser(buf)) == 0) { + (uid = searchuser(buf, NULL)) == 0) { --num; continue; } |