--- cdb_hash.c.orig 1998-06-15
+++ cdb_hash.c 2007-03-21
--- .././qmail-1.03/cdb_hash.c Mon Jun 15 12:53:16 1998
+++ ../qmail-1.03.2418/cdb_hash.c Sun Jan 15 16:10:10 2006
@@ -1,16 +1,21 @@
+/* Public domain. */
+
#include "cdb.h"
-uint32 cdb_hash(buf,len)
-unsigned char *buf;
-unsigned int len;
+uint32 cdb_hashadd(uint32 h,unsigned char c)
+{
+ h += (h << 5);
+ return h ^ c;
+}
+
+uint32 cdb_hash(char *buf,unsigned int len)
{
uint32 h;
- h = 5381;
+ h = CDB_HASHSTART;
while (len) {
+ h = cdb_hashadd(h,*buf++);
--len;
- h += (h << 5);
- h ^= (uint32) *buf++;
}
return h;
}
syntax highlighted by Code2HTML, v. 0.9.1