mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/
synced 2026-09-28 19:20:30 +00:00
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:
|
History
|
|
|---|---|---|
| .. | ||
| 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 | ||