summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsommerfe <none@none>2005-10-18 14:50:42 -0700
committersommerfe <none@none>2005-10-18 14:50:42 -0700
commit3c04777e760a0ff56ed78e3cd151f923a271e8df (patch)
treef0154ec226d81b7a1d6c6a717ca970e9c3379e76
parentdc36087fa16452a8712ccd300aca994d51793978 (diff)
downloadillumos-joyent-3c04777e760a0ff56ed78e3cd151f923a271e8df.tar.gz
6338289 poor sadb hash distribution for IPv6 addresses
-rw-r--r--usr/src/uts/common/inet/sadb.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/usr/src/uts/common/inet/sadb.h b/usr/src/uts/common/inet/sadb.h
index 167ac4232f..c68cfd46e3 100644
--- a/usr/src/uts/common/inet/sadb.h
+++ b/usr/src/uts/common/inet/sadb.h
@@ -296,8 +296,8 @@ typedef struct ipsa_s {
#define INBOUND_HASH(sadb, spi) ((spi) % ((sadb)->sdb_hashsize))
#define OUTBOUND_HASH_V4(sadb, v4addr) ((v4addr) % ((sadb)->sdb_hashsize))
#define OUTBOUND_HASH_V6(sadb, v6addr) OUTBOUND_HASH_V4((sadb), \
- (*(uint32_t *)&(v6addr)) ^ (*((uint32_t *)&(v6addr)) + 1) ^ \
- (*((uint32_t *)&(v6addr)) + 2) ^ (*((uint32_t *)&(v6addr)) + 3))
+ (*(uint32_t *)&(v6addr)) ^ (*(((uint32_t *)&(v6addr)) + 1)) ^ \
+ (*(((uint32_t *)&(v6addr)) + 2)) ^ (*(((uint32_t *)&(v6addr)) + 3)))
/*
* Syntactic sugar to find the appropriate hash bucket directly.