diff options
author | Jo-Philipp Wich <jow@openwrt.org> | 2013-12-06 15:42:35 +0000 |
---|---|---|
committer | Jo-Philipp Wich <jow@openwrt.org> | 2013-12-06 15:42:35 +0000 |
commit | bfb6e025dc47c294deb14cf2bb6f59254d335416 (patch) | |
tree | 921ad3c1ed219364b5d180213c4cbe115ca9343f /target/linux/lantiq | |
parent | a2f91b864fc563cd94144e0b136322a21c50bbeb (diff) | |
download | upstream-bfb6e025dc47c294deb14cf2bb6f59254d335416.tar.gz upstream-bfb6e025dc47c294deb14cf2bb6f59254d335416.tar.bz2 upstream-bfb6e025dc47c294deb14cf2bb6f59254d335416.zip |
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@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@38999 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/lantiq')
0 files changed, 0 insertions, 0 deletions