🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.bugs.4bsd
Article #46

What happens when someone says they want a TCP MSS=0?

#46
From: Eric S. Johnson
Date: Fri, 28 Jul 1989 20:30
50 lines
1800 bytes
(BSD box below means any BSDish machine with the Van Jacobson
TCP routines posted to comp.bugs.4bsd.ucb-fixes last year)

We have a PC here which runs a TCP/IP package which comes from
a 3 letter company. When used to FTP to a BSD box, a get command
causes it to reply to the SYN (sent from BSD box) on FTP-DATA with
a SYN/ACK TCP packet with a option of MSS=0. To me this means the 
PC and its TCP/IP software is broken. 

But... BSD, upon receipt of this SYN/ACK, option MSS=0 packet, proceeds
to start sending continuous ACK packets, with no data (the third part of
the handshake). This continual ACKing will lock up the UNIX box in question,
and wreck havoc on gateways between PC and victim.

A quick look through tcp_output.c shows these code segments to be 
the *apparent* cause:

tcp_output(tp)
	register struct tcpcb *tp;
{
.
.
.
again:
	sendalot = 0;
.
.
.
	if (len > tp->t_maxseg) {
		len = tp->t_maxseg;
		sendalot = 1;
	}
.
.
.
	if (sendalot)
		goto again;
	return (0);
}


I am not a BSD TCP/IP wiz, but if len is >0 when some dopey PC has
requested a tcp mss=0, then packet flooding is what would be expected
from this code eh? Not terribly robust.

So, if I am misunderstanding the cause of the problem, please correct me.
And in any case, how do I fix it?

Ej
Technical Details
Message-ID: <20651@bikini.cis.ufl.EDU>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!uflorida!bikini!manatee.cis.ufl.edu!esj

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!uflorida!bikini!manatee.cis.ufl.edu!esj
From: esj@manatee.cis.ufl.edu (Eric S. Johnson)
Newsgroups: comp.bugs.4bsd
Subject: What happens when someone says they want a TCP MSS=0?
Summary: In Berkeley 4.3+VJ TCP code
Message-ID: <20651@bikini.cis.ufl.EDU>
Date: 28 Jul 89 20:30:35 GMT
Sender: news@bikini.cis.ufl.EDU
Reply-To: esj@manatee.cis.ufl.edu (Eric S. Johnson)
Organization: UF CIS Department
Lines: 50