aboutsummaryrefslogtreecommitdiff
path: root/src/lib/ndpi_hash.c
diff options
context:
space:
mode:
authorLuca Deri <deri@ntop.org>2024-02-04 20:23:49 +0100
committerLuca Deri <deri@ntop.org>2024-02-04 20:23:49 +0100
commitb15b877c51ac03df861d2311ee703b69d6ff6985 (patch)
tree2371566b62b5ec032a6008a668808aed0163c8b3 /src/lib/ndpi_hash.c
parentb59994fa208663dce604ba0b7ee537228bba83a9 (diff)
Minor hash improvement
Diffstat (limited to 'src/lib/ndpi_hash.c')
-rw-r--r--src/lib/ndpi_hash.c11
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);