aboutsummaryrefslogtreecommitdiff
path: root/src/arp_table.c
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2019-10-13 20:24:18 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2019-10-13 20:43:23 +0200
commitdb65c3cb3e18b15b49a47662f6fc656d16d93ad1 (patch)
tree04983ac467bd81dfcafcd62344edc1a39c521d02 /src/arp_table.c
parentad36c04a3ef961a2dbb6dc78dd5322318a7f10b6 (diff)
downloadslirp-db65c3cb3e18b15b49a47662f6fc656d16d93ad1.zip
slirp-db65c3cb3e18b15b49a47662f6fc656d16d93ad1.tar.gz
slirp-db65c3cb3e18b15b49a47662f6fc656d16d93ad1.tar.bz2
arp: Allow 0.0.0.0 destination address
That can show up with DHCP packets. Fixes #9 Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Diffstat (limited to 'src/arp_table.c')
-rw-r--r--src/arp_table.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/arp_table.c b/src/arp_table.c
index 022a52e..054fbf5 100644
--- a/src/arp_table.c
+++ b/src/arp_table.c
@@ -71,7 +71,7 @@ bool arp_table_search(Slirp *slirp, uint32_t ip_addr,
DEBUG_ARG("ip = %s", inet_ntoa((struct in_addr){ .s_addr = ip_addr }));
/* If broadcast address */
- if (ip_addr == 0xffffffff || ip_addr == broadcast_addr) {
+ if (ip_addr == 0 || ip_addr == 0xffffffff || ip_addr == broadcast_addr) {
/* return Ethernet broadcast address */
memset(out_ethaddr, 0xff, ETH_ALEN);
return 1;