multipath: Zero padding bytes in fields before hashing.
authorBen Pfaff <blp@nicira.com>
Wed, 29 Dec 2010 06:23:43 +0000 (22:23 -0800)
committerBen Pfaff <blp@nicira.com>
Wed, 29 Dec 2010 06:32:13 +0000 (22:32 -0800)
Otherwise the hash includes 3 bytes of trailing indeterminate data.

Reported-by: Pankaj Thakkar <thakkar@nicira.com>
lib/multipath.c

index 7d4b541ed42922bcdd8be0d32ee23b81debd0130..13f88ff023474151156a6abd69c32a12a13ef6b2 100644 (file)
@@ -99,6 +99,7 @@ hash_symmetric_l4(const struct flow *flow, uint16_t basis)
 
     int i;
 
+    memset(&fields, 0, sizeof fields);
     for (i = 0; i < ETH_ADDR_LEN; i++) {
         fields.eth_addr[i] = flow->dl_src[i] ^ flow->dl_dst[i];
     }