summary refs log tree commit diff stats
path: root/slirp/ip_input.c
diff options
context:
space:
mode:
authorJan Kiszka <jan.kiszka@siemens.com>2012-02-29 19:14:23 +0100
committerJan Kiszka <jan.kiszka@siemens.com>2012-03-13 14:05:49 +0100
commita68adc220603baffc355ecea8865b3ea9707ab00 (patch)
treef2f2c89ddcae603aff1cb0bd44ab169f4d06f4c4 /slirp/ip_input.c
parentf37343197708d90f119007ce5ecc2503be9c04c1 (diff)
downloadfocaccia-qemu-a68adc220603baffc355ecea8865b3ea9707ab00.tar.gz
focaccia-qemu-a68adc220603baffc355ecea8865b3ea9707ab00.zip
slirp: Cleanup resources on instance removal
Close & free sockets when shutting down a slirp instance, also release
all buffers.

CC: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Diffstat (limited to 'slirp/ip_input.c')
-rw-r--r--slirp/ip_input.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/slirp/ip_input.c b/slirp/ip_input.c
index c7b3eb4806..ce24faf165 100644
--- a/slirp/ip_input.c
+++ b/slirp/ip_input.c
@@ -61,6 +61,13 @@ ip_init(Slirp *slirp)
     icmp_init(slirp);
 }
 
+void ip_cleanup(Slirp *slirp)
+{
+    udp_cleanup(slirp);
+    tcp_cleanup(slirp);
+    icmp_cleanup(slirp);
+}
+
 /*
  * Ip input routine.  Checksum and byte swap header.  If fragmented
  * try to reassemble.  Process options.  Pass to next level.