summaryrefslogtreecommitdiff
path: root/net/core
diff options
context:
space:
mode:
authorGerhard Stenzel <gstenzel@linux.vnet.ibm.com>2014-08-22 21:34:16 +0200
committerDavid S. Miller <davem@davemloft.net>2014-08-22 19:54:56 -0700
commita45e92a599e77ee6a850eabdd0141633fde03915 (patch)
tree36329f9c70cdf5195169fed20ba811293a56a913 /net/core
parent451fd72219dd6f3355e2d036c598544c760ee532 (diff)
vxlan: fix incorrect initializer in union vxlan_addr
The first initializer in the following union vxlan_addr ipa = { .sin.sin_addr.s_addr = tip, .sa.sa_family = AF_INET, }; is optimised away by the compiler, due to the second initializer, therefore initialising .sin.sin_addr.s_addr always to 0. This results in netlink messages indicating a L3 miss never contain the missed IP address. This was observed with GCC 4.8 and 4.9. I do not know about previous versions. The problem affects user space programs relying on an IP address being sent as part of a netlink message indicating a L3 miss. Changing .sa.sa_family = AF_INET, to .sin.sin_family = AF_INET, fixes the problem. Signed-off-by: Gerhard Stenzel <gerhard.stenzel@de.ibm.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/core')
0 files changed, 0 insertions, 0 deletions