Changeset 38999

Timestamp:
2013-12-06T16:42:35+01:00 (4 years ago)
Author:
jow
Message:

generic: workaround arptables arpt_arp structure padding issue (#14577)

Linaro GCC 4.6-2013.05 incorrectly pads the arpt_arp structure on
at least the ar71xx target, resulting in a two bytes shorter struct
in the kernel compared to what arptables userspace expects.

When comparing sizeof(struct arpt_arp) in kernel and userspace, the
former yields 162 byte, while the latter is 164 byte.

As a consequence, the subsequent target_offset and next_offset
members of the parent arpt_entry structure contain invalid values
when processed by the arptables binary, leading to bad memory
accesses in the populate_cache() procedure, subsequently causing a
segfault.

Signed-off-by: Jo-Philipp Wich <jow@…>

File:
1 added

Note: See TracChangeset for help on using the changeset viewer.