summaryrefslogtreecommitdiff
path: root/slirp/main.h
diff options
context:
space:
mode:
authorFabien Chouteau <chouteau@adacore.com>2011-08-01 18:18:37 +0200
committerJan Kiszka <jan.kiszka@siemens.com>2011-08-03 12:57:11 +0200
commit1ab74cea060d776b19857c3babc64d729bbdba5c (patch)
tree024f3b1df329cc1cbf5cd0069df0e585e5ffe957 /slirp/main.h
parent1a0ca1e1f6011a8623ec0653a1b35bbfc3f576c9 (diff)
downloadqemu-1ab74cea060d776b19857c3babc64d729bbdba5c.tar.gz
qemu-1ab74cea060d776b19857c3babc64d729bbdba5c.tar.bz2
qemu-1ab74cea060d776b19857c3babc64d729bbdba5c.zip
Delayed IP packets
In the current implementation, if Slirp tries to send an IP packet to a client with an unknown hardware address, the packet is simply dropped and an ARP request is sent (if_encap in slirp/slirp.c). With this patch, Slirp will send the ARP request, re-queue the packet and try to send it later. The packet is dropped after one second if the ARP reply is not received. Signed-off-by: Fabien Chouteau <chouteau@adacore.com> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Diffstat (limited to 'slirp/main.h')
-rw-r--r--slirp/main.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/slirp/main.h b/slirp/main.h
index 0dd8d81ce4..028df4b361 100644
--- a/slirp/main.h
+++ b/slirp/main.h
@@ -42,5 +42,5 @@ extern int tcp_keepintvl;
#define PROTO_PPP 0x2
#endif
-void if_encap(Slirp *slirp, const uint8_t *ip_data, int ip_data_len);
+int if_encap(Slirp *slirp, struct mbuf *ifm);
ssize_t slirp_send(struct socket *so, const void *buf, size_t len, int flags);