summaryrefslogtreecommitdiffstats
path: root/sys/netinet/tcp_output.c
diff options
context:
space:
mode:
authordg <dg@FreeBSD.org>1995-01-23 17:58:27 +0000
committerdg <dg@FreeBSD.org>1995-01-23 17:58:27 +0000
commitb9115b6cb83a28a3a48b2136b0771208d0f6e650 (patch)
tree35b57fa0d33c7bf858739cb11dd220748e232d84 /sys/netinet/tcp_output.c
parentdab339cb4e166565a0437c1672668011f8655831 (diff)
downloadFreeBSD-src-b9115b6cb83a28a3a48b2136b0771208d0f6e650.zip
FreeBSD-src-b9115b6cb83a28a3a48b2136b0771208d0f6e650.tar.gz
Applied fix from Andreas Schulz with a different comment by me. Fixes a
bug where TCP connections are closed prematurely. Submitted by: Andreas Schulz
Diffstat (limited to 'sys/netinet/tcp_output.c')
-rw-r--r--sys/netinet/tcp_output.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/sys/netinet/tcp_output.c b/sys/netinet/tcp_output.c
index 797a496..829fcea 100644
--- a/sys/netinet/tcp_output.c
+++ b/sys/netinet/tcp_output.c
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)tcp_output.c 8.3 (Berkeley) 12/30/93
- * $Id: tcp_output.c,v 1.2 1994/08/02 07:49:03 davidg Exp $
+ * $Id: tcp_output.c,v 1.3 1994/09/15 10:36:55 davidg Exp $
*/
#include <sys/param.h>
@@ -322,6 +322,11 @@ send:
* bump the packet length beyond the t_maxseg length.
*/
if (len > tp->t_maxseg - optlen) {
+ /*
+ * If there is still more to send, don't close the connection.
+ */
+ flags &= ~TH_FIN;
+
len = tp->t_maxseg - optlen;
sendalot = 1;
}
OpenPOWER on IntegriCloud