Initial import
[sliver-openvswitch.git] / lib / hash.c
1 #include "hash.h"
2
3 uint32_t
4 hash_fnv(const void *p_, size_t n, uint32_t basis)
5 {
6     const uint8_t *p = p_;
7     uint32_t hash = basis;
8     while (n--) {
9         hash *= HASH_FNV_PRIME;
10         hash ^= *p++;
11     }
12     return hash;
13 }