diff options
author | Luca Deri <deri@ntop.org> | 2024-02-04 20:23:49 +0100 |
---|---|---|
committer | Luca Deri <deri@ntop.org> | 2024-02-04 20:23:49 +0100 |
commit | b15b877c51ac03df861d2311ee703b69d6ff6985 (patch) | |
tree | 2371566b62b5ec032a6008a668808aed0163c8b3 /src/lib/ndpi_hash.c | |
parent | b59994fa208663dce604ba0b7ee537228bba83a9 (diff) |
Minor hash improvement
Diffstat (limited to 'src/lib/ndpi_hash.c')
-rw-r--r-- | src/lib/ndpi_hash.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/src/lib/ndpi_hash.c b/src/lib/ndpi_hash.c index 426b81605..7302c32a2 100644 --- a/src/lib/ndpi_hash.c +++ b/src/lib/ndpi_hash.c @@ -48,16 +48,15 @@ u_int32_t ndpi_quick_hash(const unsigned char *str, u_int str_len) { /* ******************************************************************** */ -/* Based on Daniel Lemire code */ u_int64_t ndpi_quick_hash64(const char *str, u_int str_len) { - u_int64_t h = 0; + u_int64_t h = 177; u_int i; - + for(i=0; i<str_len; i++) - h = (h * 177) + str[i]; + h = (h * 31) + str[i]; h ^= str_len; - + return h; } @@ -92,7 +91,7 @@ u_int32_t ndpi_rev_hash_string(const char *str) { if(len == 0) return(0); len--; - + for(hash = i = 0; len >= 0; len--) { hash += str[len]; hash += (hash << 10); |