summaryrefslogtreecommitdiffstats
path: root/cdb_hash.c
diff options
context:
space:
mode:
authormanuel <manuel@mausz.at>2013-02-04 00:08:53 +0100
committermanuel <manuel@mausz.at>2013-02-04 00:08:53 +0100
commit69aec538b456402170dc723af417ba5c05389c32 (patch)
treee6f34c543f17c6392447ea337b2e2868212424d1 /cdb_hash.c
downloadqmail-69aec538b456402170dc723af417ba5c05389c32.tar.gz
qmail-69aec538b456402170dc723af417ba5c05389c32.tar.bz2
qmail-69aec538b456402170dc723af417ba5c05389c32.zip
qmail 1.03 import
Diffstat (limited to 'cdb_hash.c')
-rw-r--r--cdb_hash.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/cdb_hash.c b/cdb_hash.c
new file mode 100644
index 0000000..8238020
--- /dev/null
+++ b/cdb_hash.c
@@ -0,0 +1,16 @@
1#include "cdb.h"
2
3uint32 cdb_hash(buf,len)
4unsigned char *buf;
5unsigned int len;
6{
7 uint32 h;
8
9 h = 5381;
10 while (len) {
11 --len;
12 h += (h << 5);
13 h ^= (uint32) *buf++;
14 }
15 return h;
16}