linux_dsm_epyc7002/include
Jason Gunthorpe 9302d7bb0c sctp: Fix mangled IPv4 addresses on a IPv6 listening socket
sctp_v4_map_v6 was subtly writing and reading from members
of a union in a way the clobbered data it needed to read before
it read it.

Zeroing the v6 flowinfo overwrites the v4 sin_addr with 0, meaning
that every place that calls sctp_v4_map_v6 gets ::ffff:0.0.0.0 as the
result.

Reorder things to guarantee correct behaviour no matter what the
union layout is.

This impacts user space clients that open an IPv6 SCTP socket and
receive IPv4 connections. Prior to 299ee user space would see a
sockaddr with AF_INET and a correct address, after 299ee the sockaddr
is AF_INET6, but the address is wrong.

Fixes: 299ee123e1 (sctp: Fixup v4mapped behaviour to comply with Sock API)
Signed-off-by: Jason Gunthorpe <jgunthorpe@obsidianresearch.com>
Acked-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Neil Horman <nhorman@tuxdriver.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2015-05-27 14:15:26 -04:00
..
acpi ACPICA: remove duplicate u8 typedef 2015-04-28 23:58:54 +02:00
asm-generic
clocksource
crypto
drm drm/radeon: add new bonaire pci id 2015-05-12 13:42:46 -04:00
dt-bindings
keys
kvm
linux net: phy: bcm7xxx: Fix 7425 PHY ID and flags 2015-05-25 00:16:07 -04:00
math-emu
media
memory
misc
net sctp: Fix mangled IPv4 addresses on a IPv6 listening socket 2015-05-27 14:15:26 -04:00
pcmcia
ras
rdma IB/core: Fix unaligned accesses 2015-05-05 13:21:27 -04:00
rxrpc
scsi SCSI: add 1024 max sectors black list flag 2015-04-27 09:38:06 -07:00
soc
sound ASoC: Fixes for v4.1 2015-04-30 19:08:06 +02:00
target
trace
uapi Merge git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf 2015-05-16 16:40:22 -04:00
video
xen xen/events: don't bind non-percpu VIRQs with percpu chip 2015-05-19 19:55:36 +01:00
Kbuild