qemu-e2k/slirp
Samuel Thibault ea64d5f088 slirp: Fix access to freed memory
if_start() goes through the slirp->if_fastq and slirp->if_batchq
list of pending messages, and accesses ifm->ifq_so->so_nqueued of its
elements if ifm->ifq_so != NULL.  When freeing a socket, we thus need
to make sure that any pending message for this socket does not refer
to the socket any more.

Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Tested-by: Brian Candler <b.candler@pobox.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
2016-11-14 17:36:33 +01:00
..
COPYRIGHT Remove the advertising clause from the slirp license 2009-01-26 19:37:41 +00:00
Makefile.objs slirp: Add support for stateless DHCPv6 2016-07-03 23:59:42 +02:00
arp_table.c slirp: Clean up includes 2016-02-04 17:41:30 +00:00
bootp.c Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00
bootp.h Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
cksum.c Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00
debug.h slirp: Cleanup and basic reanimation of debug code 2009-06-29 08:52:46 -05:00
dhcpv6.c slirp: Add support for stateless DHCPv6 2016-07-03 23:59:42 +02:00
dhcpv6.h slirp: Add support for stateless DHCPv6 2016-07-03 23:59:42 +02:00
dnssearch.c slirp: Use DIV_ROUND_UP 2016-06-07 18:19:25 +03:00
if.c Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00
if.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
ip.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
ip6.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
ip6_icmp.c slirp: Add RDNSS advertisement 2016-07-03 23:31:12 +02:00
ip6_icmp.h Clean up header guards that don't match their file name 2016-07-12 16:19:16 +02:00
ip6_input.c slirp: Allow disabling IPv4 or IPv6 2016-04-01 17:51:55 +02:00
ip6_output.c slirp: Adding IPv6, ICMPv6 Echo and NDP autoconfiguration 2016-03-15 10:35:00 +01:00
ip_icmp.c slirp: fix guest network access with darwin host 2016-04-28 18:12:08 +01:00
ip_icmp.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
ip_input.c Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00
ip_output.c Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00
libslirp.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
main.h Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
mbuf.c Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00
mbuf.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
misc.c Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00
misc.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
ndp_table.c slirp: Adding IPv6, ICMPv6 Echo and NDP autoconfiguration 2016-03-15 10:35:00 +01:00
sbuf.c Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00
sbuf.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
slirp.c hw: replace most use of qemu_chr_fe_write with qemu_chr_fe_write_all 2016-09-13 19:09:42 +02:00
slirp.h slirp: Rename "struct arphdr" to "struct slirp_arphdr" 2016-08-16 12:17:36 +01:00
slirp_config.h slirp: Remove obsolete backward-compatibility cruft 2016-05-16 20:58:47 +02:00
socket.c slirp: Fix access to freed memory 2016-11-14 17:36:33 +01:00
socket.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
tcp.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
tcp_input.c Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00
tcp_output.c Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00
tcp_subr.c Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00
tcp_timer.c Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00
tcp_timer.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
tcp_var.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
tcpip.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
tftp.c Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00
tftp.h Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
udp.c Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00
udp.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
udp6.c slirp: Add support for stateless DHCPv6 2016-07-03 23:59:42 +02:00