libowfat/cdb/cdb_hash.c

20 lines
276 B
C
Raw Normal View History

2005-11-25 15:02:31 +00:00
#include "cdb.h"
uint32 cdb_hashadd(uint32 h,unsigned char c) {
h += (h << 5);
return h ^ c;
}
uint32 cdb_hash(const unsigned char *buf,size_t len) {
2005-11-25 15:02:31 +00:00
uint32 h;
h = CDB_HASHSTART;
while (len) {
h = cdb_hashadd(h,*buf);
++buf;
--len;
}
return h;
}