diff options
| author | David Greenman <dg@FreeBSD.org> | 1996-04-15 03:46:33 +0000 | 
|---|---|---|
| committer | David Greenman <dg@FreeBSD.org> | 1996-04-15 03:46:33 +0000 | 
| commit | 2d8266af5c74bbd814181607b9e0964bfabfec7f (patch) | |
| tree | 23e9180b2017e68c98a6dd8cf7c6a16c1f71c157 | |
| parent | 68159c890151b0448048bc44123970be9f55fafe (diff) | |
Notes
| -rw-r--r-- | sys/netinet/tcp_output.c | 13 | ||||
| -rw-r--r-- | sys/netinet/tcp_timer.c | 4 | 
2 files changed, 10 insertions, 7 deletions
| diff --git a/sys/netinet/tcp_output.c b/sys/netinet/tcp_output.c index adfe5a09be17..f4d03f170a2e 100644 --- a/sys/netinet/tcp_output.c +++ b/sys/netinet/tcp_output.c @@ -31,7 +31,7 @@   * SUCH DAMAGE.   *   *	@(#)tcp_output.c	8.4 (Berkeley) 5/24/95 - *	$Id: tcp_output.c,v 1.18 1996/01/17 09:35:23 olah Exp $ + *	$Id: tcp_output.c,v 1.19 1996/03/11 15:13:32 davidg Exp $   */  #include <sys/param.h> @@ -186,15 +186,18 @@ again:  		 * but we haven't been called to retransmit,  		 * len will be -1.  Otherwise, window shrank  		 * after we sent into it.  If window shrank to 0, -		 * cancel pending retransmit and pull snd_nxt -		 * back to (closed) window.  We will enter persist -		 * state below.  If the window didn't close completely, -		 * just wait for an ACK. +		 * cancel pending retransmit, pull snd_nxt back +		 * to (closed) window, and set the persist timer +		 * if it isn't already going.  If the window didn't +		 * close completely, just wait for an ACK.  		 */  		len = 0;  		if (win == 0) {  			tp->t_timer[TCPT_REXMT] = 0; +			tp->t_rxtshift = 0;  			tp->snd_nxt = tp->snd_una; +			if (tp->t_timer[TCPT_PERSIST] == 0) +				tcp_setpersist(tp);  		}  	}  	if (len > tp->t_maxseg) { diff --git a/sys/netinet/tcp_timer.c b/sys/netinet/tcp_timer.c index f9c89b7b6f97..776d076130d9 100644 --- a/sys/netinet/tcp_timer.c +++ b/sys/netinet/tcp_timer.c @@ -31,7 +31,7 @@   * SUCH DAMAGE.   *   *	@(#)tcp_timer.c	8.2 (Berkeley) 5/24/95 - *	$Id: tcp_timer.c,v 1.14 1996/03/11 15:13:35 davidg Exp $ + *	$Id: tcp_timer.c,v 1.15 1996/04/04 11:17:04 phk Exp $   */  #ifndef TUBA_INCLUDE @@ -320,7 +320,7 @@ tcp_timers(tp, timer)  			goto dropit;  		if ((always_keepalive ||  		    tp->t_inpcb->inp_socket->so_options & SO_KEEPALIVE) && -		    tp->t_state <= TCPS_CLOSE_WAIT) { +		    tp->t_state <= TCPS_CLOSING) {  		    	if (tp->t_idle >= tcp_keepidle + tcp_maxidle)  				goto dropit;  			/* | 
