qemu-e2k/slirp
Steven Luo 6625d83a6e slirp: handle deferred ECONNREFUSED on non-blocking TCP sockets
slirp currently only handles ECONNREFUSED in the case where connect()
returns immediately with that error; since we use non-blocking sockets,
most of the time we won't receive the error until we later try to read
from the socket.  Ensure that we deliver the appropriate RST to the
guest in this case.

Signed-off-by: Steven Luo <steven+qemu@steven676.net>
Reviewed-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
2016-04-07 13:02:05 +02:00
..
COPYRIGHT Remove the advertising clause from the slirp license 2009-01-26 19:37:41 +00:00
Makefile.objs slirp: Adding IPv6 UDP support 2016-03-15 10:35:08 +01: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
debug.h slirp: Cleanup and basic reanimation of debug code 2009-06-29 08:52:46 -05:00
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
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 Fix breakage by obsolete _P() for good 2009-07-01 19:11:17 +00:00
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: handle deferred ECONNREFUSED on non-blocking TCP sockets 2016-04-07 13:02:05 +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 deferred ECONNREFUSED on non-blocking TCP sockets 2016-04-07 13:02:05 +02: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 Fix breakage by obsolete _P() for good 2009-07-01 19:11:17 +00:00
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