summary refs log tree commit diff stats
path: root/net/slirp.c
diff options
context:
space:
mode:
authorMarc-André Lureau <marcandre.lureau@redhat.com>2018-11-10 17:45:36 +0400
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2019-01-14 00:40:54 +0100
commit62c1d2c4833f53897098f945f504f5ec3022d35b (patch)
tree69006dccce299b57a6df93c06362fa86fbc245d2 /net/slirp.c
parent27df21ca3886fff4dd3d70e515517667963a52f1 (diff)
downloadfocaccia-qemu-62c1d2c4833f53897098f945f504f5ec3022d35b.tar.gz
focaccia-qemu-62c1d2c4833f53897098f945f504f5ec3022d35b.zip
slirp: associate slirp_output callback with the Slirp context
Let's make the slirp interface a bit more library-like.
Associate the slirp_output() with a Slirp context.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Diffstat (limited to 'net/slirp.c')
-rw-r--r--net/slirp.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/net/slirp.c b/net/slirp.c
index 38ae65e4a9..dd06b0189e 100644
--- a/net/slirp.c
+++ b/net/slirp.c
@@ -99,7 +99,7 @@ static void slirp_smb_cleanup(SlirpState *s);
 static inline void slirp_smb_cleanup(SlirpState *s) { }
 #endif
 
-void slirp_output(void *opaque, const uint8_t *pkt, int pkt_len)
+static void net_slirp_output(void *opaque, const uint8_t *pkt, int pkt_len)
 {
     SlirpState *s = opaque;
 
@@ -378,7 +378,8 @@ static int net_slirp_init(NetClientState *peer, const char *model,
                           ipv6, ip6_prefix, vprefix6_len, ip6_host,
                           vhostname, tftp_server_name,
                           tftp_export, bootfile, dhcp,
-                          dns, ip6_dns, dnssearch, vdomainname, s);
+                          dns, ip6_dns, dnssearch, vdomainname,
+                          net_slirp_output, s);
     QTAILQ_INSERT_TAIL(&slirp_stacks, s, entry);
 
     for (config = slirp_configs; config; config = config->next) {