diff options
author | Jan Moskyto Matejka <mq@ucw.cz> | 2016-02-19 15:51:16 +0100 |
---|---|---|
committer | Jan Moskyto Matejka <mq@ucw.cz> | 2016-02-19 16:33:07 +0100 |
commit | a815d62d5902fb84c28c77726dbe94fc7528bf36 (patch) | |
tree | 1855611655b573ef3a96ff8f7e5cd22477a98a17 | |
parent | 9a74622ca1994669cdb3bac0bb2f6df2febd2744 (diff) |
Hash: typecast error fix
-rw-r--r-- | lib/hash.h | 3 | ||||
-rw-r--r-- | nest/rt-attr.c | 2 |
2 files changed, 3 insertions, 2 deletions
@@ -184,7 +184,8 @@ mem_hash(void *p, int s) const char *pp = p; const u64 multiplier = 0xb38bc09a61202731ULL; u64 value = 0x001047d54778bcafULL; - for (int i=0;i<s;i++) + int i; + for (i=0;i<s;i++) value = value*multiplier + pp[i]; return ((value >> 32) ^ (value & 0xffffffff)); diff --git a/nest/rt-attr.c b/nest/rt-attr.c index 9777a2d2..7d9605c2 100644 --- a/nest/rt-attr.c +++ b/nest/rt-attr.c @@ -946,7 +946,7 @@ rta_alloc_hash(void) static inline uint rta_hash(rta *a) { - return mem_hash(a + offsetof(rta, src), sizeof(rta) - offsetof(rta, src)) ^ + return mem_hash(((void *)a) + offsetof(rta, src), sizeof(rta) - offsetof(rta, src)) ^ mpnh_hash(a->nexthops) ^ ea_hash(a->eattrs); } |