Go to file
thorpej e0acb98b94 Fix an old and obscure TCP bug, brought to my attention by Bill Fenner,
fixed in FreeBSD by John Polstra:

Fix a bug (apparently very old) that can cause a TCP connection to
be dropped when it has an unusual traffic pattern.  For full details
as well as a test case that demonstrates the failure, see the
referenced PR (FreeBSD's kern/3998).

   Under certain circumstances involving the persist state, it is
   possible for the receive side's tp->rcv_nxt to advance beyond its
   tp->rcv_adv.  This causes (tp->rcv_adv - tp->rcv_nxt) to become
   negative.  However, in the code affected by this fix, that difference
   was interpreted as an unsigned number by max().  Since it was
   negative, it was taken as a huge unsigned number.  The effect was
   to cause the receiver to believe that its receive window had negative
   size, thereby rejecting all received segments including ACKs.  As
   the test case shows, this led to fruitless retransmissions and
   eventually to a dropped connection.  Even connections using the
   loopback interface could be dropped.  The fix substitutes the signed
   imax() for the unsigned max() function.

Bill informs me that his research indicates this bug appeared in Reno.
1997-07-06 07:04:34 +00:00
bin Fix problem introduced in yesterday's commit that broke both signed and 1997-07-05 21:25:09 +00:00
distrib add ttymsg.0 & isofs/*.h 1997-07-04 22:33:48 +00:00
etc Run ntalkd as nobody.tty 1997-06-29 19:20:20 +00:00
games Use tbl support from bsd.man.mk instead of having a special rule. 1997-06-30 19:33:34 +00:00
gnu State explicitly that an internal consistency check failed (PR#2660). 1997-07-04 22:15:41 +00:00
include Common sense dictates that the `basegid' paramater of initgroups(3) should 1997-07-04 09:14:52 +00:00
lib Common sense dictates that the `basegid' paramater of initgroups(3) should 1997-07-04 09:14:52 +00:00
libexec Add WARNS=1 1997-07-01 20:49:59 +00:00
regress
sbin NULL => 0 (from Arne Juul; addendum to PR#3237) 1997-07-04 21:48:39 +00:00
share update reference for su(1) special group to read `group wheel' instead 1997-07-02 06:19:54 +00:00
sys Fix an old and obscure TCP bug, brought to my attention by Bill Fenner, 1997-07-06 07:04:34 +00:00
usr.bin NULL => 0 (from Arne Juul; addendum to PR#3237). 1997-07-04 21:54:06 +00:00
usr.sbin Update for new ip_auth.* files. (This should be done BEFORE running 1997-07-06 05:09:04 +00:00
Makefile