u_int32_t hash2(const void *key, size_t len) { u_int32_t h; u_int8_t *e, c, *k; k = (u_int8_t *)key; e = k + len; for (h = 0; k != e;) { c = *k++; if (!c && k > e) break; dcharhash(h, c); } return (h); }
unsigned int hash2(HDBMDATUM hkey) { register u_char *e, c; register int h; register u_char *key = (u_char *)hkey.dat_ptr; register int len = hkey.dat_len; e = key + len; for (h = 0; key != e;) { c = *key++; if (!c && key > e) break; dcharhash(h, c); } return ((unsigned int) h); }
static u_int32_t hash2(const void *keyarg, size_t len) { const u_char *e, *key; u_int32_t h; u_char c; key = keyarg; e = key + len; for (h = 0; key != e;) { c = *key++; if (!c && key > e) break; dcharhash(h, c); } return (h); }
static uint32 hash2(const void *keyarg, size_t len) { register const uint8 *e, *key; register uint32 h; register uint8 c; key = (const uint8 *)keyarg; e = key + len; for (h = 0; key != e;) { c = *key++; if (!c && key > e) break; dcharhash(h, c); } return (h); }