fe81d9f618
When calculating ancestor_size with IPv6 enabled, simply using
sizeof(struct ipv6_pinfo) doesn't account for extra bytes needed for
alignment in the struct sctp6_sock. On x86, there aren't any extra
bytes, but on ARM the ipv6_pinfo structure is aligned on an 8-byte
boundary so there were 4 pad bytes that were omitted from the
ancestor_size calculation. This would lead to corruption of the
pd_lobby pointers, causing an oops when trying to free the sctp
structure on socket close.
Fixes:
|
||
---|---|---|
.. | ||
auth.h | ||
checksum.h | ||
command.h | ||
constants.h | ||
sctp.h | ||
sm.h | ||
stream_interleave.h | ||
stream_sched.h | ||
structs.h | ||
tsnmap.h | ||
ulpevent.h | ||
ulpqueue.h |