patch-2.3.32 linux/net/core/datagram.c

Next file: linux/net/decnet/Makefile
Previous file: linux/mm/swapfile.c
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.3.31/linux/net/core/datagram.c linux/net/core/datagram.c
@@ -20,6 +20,7 @@
  *		Alan Cox	:	Datagram iovec handling
  *		Darryl Miles	:	Fixed non-blocking SOCK_STREAM.
  *		Alan Cox	:	POSIXisms
+ *		Pete Wyckoff    :       Unconnected accept() fix.
  *
  */
 
@@ -82,7 +83,7 @@
 
 	/* Sequenced packets can come disconnected. If so we report the problem */
 	error = -ENOTCONN;
-	if(connection_based(sk) && sk->state!=TCP_ESTABLISHED)
+	if(connection_based(sk) && !(sk->state==TCP_ESTABLISHED || sk->state==TCP_LISTEN))
 		goto out;
 
 	/* handle signals */

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)