qemu/slirp
Steven Luo bfb1ac1402 slirp: avoid use-after-free in slirp_pollfds_poll() if soread() returns an error
Samuel Thibault pointed out that it's possible that slirp_pollfds_poll()
will try to use a socket even after soread() returns an error, resulting
in an use-after-free if the socket was removed while handling the error.
Avoid this by refusing to continue to work with the socket in this case.

Signed-off-by: Steven Luo <steven+qemu@steven676.net>
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
2016-04-07 10:27:42 +02:00
..
arp_table.c slirp: Clean up includes 2016-02-04 17:41:30 +00:00
bootp.c slirp: Clean up includes 2016-02-04 17:41:30 +00:00
bootp.h janitor: add guards to headers 2012-12-19 08:31:31 +01:00
cksum.c slirp: Adding IPv6, ICMPv6 Echo and NDP autoconfiguration 2016-03-15 10:35:00 +01:00
COPYRIGHT
debug.h
dnssearch.c slirp: Clean up includes 2016-02-04 17:41:30 +00:00
if.c Avoid embedding struct mbuf in other structures 2016-03-23 00:57:01 +01:00
if.h slirp: Factorizing tcpiphdr structure with an union 2016-03-15 10:35:11 +01:00
ip.h slirp: Avoid statements without effect on Big Endian host 2012-05-28 22:31:07 +02:00
ip6.h slirp: Adding IPv6 address for DNS relay 2016-03-15 10:35:22 +01:00
ip6_icmp.c slirp: Allow disabling IPv4 or IPv6 2016-04-01 17:51:55 +02:00
ip6_icmp.h slirp: Adding ICMPv6 error sending 2016-03-15 10:35:04 +01: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 ICMP error sending 2016-03-15 10:35:02 +01:00
ip_icmp.h slirp: Fix ICMP error sending 2016-03-15 10:35:02 +01:00
ip_input.c slirp: Allow disabling IPv4 or IPv6 2016-04-01 17:51:55 +02:00
ip_output.c slirp: Clean up includes 2016-02-04 17:41:30 +00:00
libslirp.h slirp: Allow disabling IPv4 or IPv6 2016-04-01 17:51:55 +02:00
main.h slirp: switch to GPollFD 2013-02-21 16:17:31 -06:00
Makefile.objs slirp: Adding IPv6 UDP support 2016-03-15 10:35:08 +01:00
mbuf.c Avoid embedding struct mbuf in other structures 2016-03-23 00:57:01 +01:00
mbuf.h Use C99 flexible array instead of 1-byte trailing array 2016-03-29 01:15:02 +02:00
misc.c Avoid embedding struct mbuf in other structures 2016-03-23 00:57:01 +01:00
misc.h Avoid embedding struct mbuf in other structures 2016-03-23 00:57:01 +01:00
ndp_table.c slirp: Adding IPv6, ICMPv6 Echo and NDP autoconfiguration 2016-03-15 10:35:00 +01:00
sbuf.c slirp: Clean up includes 2016-02-04 17:41:30 +00:00
sbuf.h
slirp.c slirp: avoid use-after-free in slirp_pollfds_poll() if soread() returns an error 2016-04-07 10:27:42 +02:00
slirp.h slirp: Allow disabling IPv4 or IPv6 2016-04-01 17:51:55 +02:00
slirp_config.h slirp/misc: Use the GLib memory allocation APIs 2014-08-24 13:16:32 +04:00
socket.c slirp: avoid use-after-free in slirp_pollfds_poll() if soread() returns an error 2016-04-07 10:27:42 +02:00
socket.h slirp: avoid use-after-free in slirp_pollfds_poll() if soread() returns an error 2016-04-07 10:27:42 +02:00
tcp.h slirp: Handle IPv6 in TCP functions 2016-03-15 10:35:19 +01:00
tcp_input.c slirp: Handle IPv6 in TCP functions 2016-03-15 10:35:19 +01:00
tcp_output.c slirp: Handle IPv6 in TCP functions 2016-03-15 10:35:19 +01:00
tcp_subr.c slirp: don't crash when tcp_sockclosed() is called with a NULL tp 2016-04-07 10:27:22 +02:00
tcp_timer.c slirp: Generalizing and neutralizing various TCP functions before adding IPv6 stuff 2016-03-15 10:35:14 +01:00
tcp_timer.h
tcp_var.h slirp: Replace u_int8_t, u_int16_t, u_int32_t, u_int64_t by standard int types 2010-07-25 16:59:41 +02:00
tcpip.h slirp: Handle IPv6 in TCP functions 2016-03-15 10:35:19 +01:00
tftp.c util: move declarations out of qemu-common.h 2016-03-22 22:20:17 +01:00
tftp.h slirp: Add IPv6 support to the TFTP code 2016-03-15 17:05:34 +01:00
udp.c slirp: Add IPv6 support to the TFTP code 2016-03-15 17:05:34 +01:00
udp.h slirp: Adding IPv6 UDP support 2016-03-15 10:35:08 +01:00
udp6.c slirp: send icmp6 errors when UDP send failed 2016-03-22 22:52:09 +01:00