summaryrefslogtreecommitdiff
path: root/configure
diff options
context:
space:
mode:
authorBeniamino Galvani <b.galvani@gmail.com>2018-02-22 18:09:33 +0100
committerLennart Poettering <lennart@poettering.net>2018-02-22 18:09:33 +0100
commit6afe9046d570fd86dbc04526b5685c64d7958086 (patch)
treec9463728c39ba2200ca70fe75f3c6f6dafce9c58 /configure
parentd156d1d2c9afcc501f7f888623914ea497ceb8ce (diff)
downloadsystemd-6afe9046d570fd86dbc04526b5685c64d7958086.tar.gz
libsystemd-network: fix endianness in ARP BPF filter (#8255)
Commit f11cba7479fe ("libsystemd-network: fix unaligned loads (issue #7654)") changed the way in which the MAC address is read to use native endiannes: htobe32(*((uint32_t *)x) -> unaligned_read_ne32(x) This is wrong because loads done with BPF_LD + BPF_ABS are big-endian, as it can be seen for the ethertype and arp-operation loads above in the filter. Also, the same commit changed: htobe32(*((unsigned int *)x) -> unaligned_read_be32(x) in _bind_raw_socket(), which is the correct form. The commit broke IPv4LL in presence of loops, as the sender now considers its own packets as conflicting. Fixes: f11cba7479fe29a9dab9e3151bbca4302d173811
Diffstat (limited to 'configure')
0 files changed, 0 insertions, 0 deletions