dpif-netdev: Unwildcard entire odp_port in dpif_netdev_mask_from_nlattrs().
authorBen Pfaff <blp@nicira.com>
Sat, 5 Apr 2014 17:27:05 +0000 (10:27 -0700)
committerBen Pfaff <blp@nicira.com>
Sat, 5 Apr 2014 17:27:05 +0000 (10:27 -0700)
commitf3f750e5ae470142a64e9c1e69bfbd4e6e91a4e9
tree53c01521a49743c3b89f3f4ce525d82f41360e95
parentc70a77673cfc9e70d4e7e1633bdfa461fbd154f3
dpif-netdev: Unwildcard entire odp_port in dpif_netdev_mask_from_nlattrs().

One case in the dpif_netdev_mask_from_nlattrs() function accidentally
wildcarded only a 16-bit subset of the mask's odp_port.  On little-endian
machines this subset was the lower bits, which happened to work out OK,
but on big-endian machines this subset was the upper bits, which doesn't
work and causes a test failure.  (The problem was actually visible in the
test expected results on little-endian machines, but we had not noticed.)

This commit unwildcards the whole field, fixing the problem, and updates
the test expected results to match.

This fixes the failure of test 732 seen here:
https://buildd.debian.org/status/fetch.php?pkg=openvswitch&arch=sparc&ver=2.1.0%2Bgit20140325-1&stamp=1396438624

Signed-off-by: Ben Pfaff <blp@nicira.com>
Acked-by: Jarno Rajahalme <jrajahalme@nicira.com>
lib/dpif-netdev.c
tests/ofproto-dpif.at