tcp_timewait.c (136151) | tcp_timewait.c (136682) |
---|---|
1/* 2 * Copyright (c) 1982, 1986, 1988, 1990, 1993, 1995 3 * The Regents of the University of California. All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 13 unchanged lines hidden (view full) --- 22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27 * SUCH DAMAGE. 28 * 29 * @(#)tcp_subr.c 8.2 (Berkeley) 5/24/95 | 1/* 2 * Copyright (c) 1982, 1986, 1988, 1990, 1993, 1995 3 * The Regents of the University of California. All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 1. Redistributions of source code must retain the above copyright --- 13 unchanged lines hidden (view full) --- 22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27 * SUCH DAMAGE. 28 * 29 * @(#)tcp_subr.c 8.2 (Berkeley) 5/24/95 |
30 * $FreeBSD: head/sys/netinet/tcp_timewait.c 136151 2004-10-05 18:36:24Z ps $ | 30 * $FreeBSD: head/sys/netinet/tcp_timewait.c 136682 2004-10-18 22:19:43Z rwatson $ |
31 */ 32 33#include "opt_compat.h" 34#include "opt_inet.h" 35#include "opt_inet6.h" 36#include "opt_ipsec.h" 37#include "opt_mac.h" 38#include "opt_tcpdebug.h" --- 1636 unchanged lines hidden (view full) --- 1675 /* For T/TCP client, force ACK now. */ 1676 acknow = 1; 1677 } else { 1678 tw_time = 2 * tcp_msl; 1679 acknow = tp->t_flags & TF_ACKNOW; 1680 } 1681 tcp_discardcb(tp); 1682 so = inp->inp_socket; | 31 */ 32 33#include "opt_compat.h" 34#include "opt_inet.h" 35#include "opt_inet6.h" 36#include "opt_ipsec.h" 37#include "opt_mac.h" 38#include "opt_tcpdebug.h" --- 1636 unchanged lines hidden (view full) --- 1675 /* For T/TCP client, force ACK now. */ 1676 acknow = 1; 1677 } else { 1678 tw_time = 2 * tcp_msl; 1679 acknow = tp->t_flags & TF_ACKNOW; 1680 } 1681 tcp_discardcb(tp); 1682 so = inp->inp_socket; |
1683 ACCEPT_LOCK(); |
|
1683 SOCK_LOCK(so); 1684 so->so_pcb = NULL; 1685 tw->tw_cred = crhold(so->so_cred); 1686 tw->tw_so_options = so->so_options; 1687 sotryfree(so); 1688 inp->inp_socket = NULL; 1689 if (acknow) 1690 tcp_twrespond(tw, TH_ACK); --- 431 unchanged lines hidden --- | 1684 SOCK_LOCK(so); 1685 so->so_pcb = NULL; 1686 tw->tw_cred = crhold(so->so_cred); 1687 tw->tw_so_options = so->so_options; 1688 sotryfree(so); 1689 inp->inp_socket = NULL; 1690 if (acknow) 1691 tcp_twrespond(tw, TH_ACK); --- 431 unchanged lines hidden --- |