Deleted Added
full compact
tcp_reass.c (125396) tcp_reass.c (125680)
1/*
2 * Copyright (c) 1982, 1986, 1988, 1990, 1993, 1994, 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

--- 17 unchanged lines hidden (view full) ---

26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 * SUCH DAMAGE.
32 *
33 * @(#)tcp_input.c 8.12 (Berkeley) 5/24/95
1/*
2 * Copyright (c) 1982, 1986, 1988, 1990, 1993, 1994, 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

--- 17 unchanged lines hidden (view full) ---

26 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 * SUCH DAMAGE.
32 *
33 * @(#)tcp_input.c 8.12 (Berkeley) 5/24/95
34 * $FreeBSD: head/sys/netinet/tcp_reass.c 125396 2004-02-03 18:20:55Z ume $
34 * $FreeBSD: head/sys/netinet/tcp_reass.c 125680 2004-02-11 04:26:04Z bms $
35 */
36
37#include "opt_ipfw.h" /* for ipfw_fwd */
35 */
36
37#include "opt_ipfw.h" /* for ipfw_fwd */
38#include "opt_inet.h"
38#include "opt_inet6.h"
39#include "opt_ipsec.h"
40#include "opt_mac.h"
41#include "opt_tcpdebug.h"
42#include "opt_tcp_input.h"
43
44#include <sys/param.h>
45#include <sys/kernel.h>

--- 298 unchanged lines hidden (view full) ---

344 int off0;
345{
346 register struct tcphdr *th;
347 register struct ip *ip = NULL;
348 register struct ipovly *ipov;
349 register struct inpcb *inp = NULL;
350 u_char *optp = NULL;
351 int optlen = 0;
39#include "opt_inet6.h"
40#include "opt_ipsec.h"
41#include "opt_mac.h"
42#include "opt_tcpdebug.h"
43#include "opt_tcp_input.h"
44
45#include <sys/param.h>
46#include <sys/kernel.h>

--- 298 unchanged lines hidden (view full) ---

345 int off0;
346{
347 register struct tcphdr *th;
348 register struct ip *ip = NULL;
349 register struct ipovly *ipov;
350 register struct inpcb *inp = NULL;
351 u_char *optp = NULL;
352 int optlen = 0;
352 int len, tlen, off;
353 int len = 0;
354 int tlen, off;
353 int drop_hdrlen;
354 register struct tcpcb *tp = 0;
355 register int thflags;
356 struct socket *so = 0;
357 int todrop, acked, ourfinisacked, needoutput = 0;
358 u_long tiwin;
359 struct tcpopt to; /* options in this segment */
360 struct rmxp_tao tao; /* our TAO cache entry */

--- 2158 unchanged lines hidden (view full) ---

2519 continue;
2520 if (!is_syn)
2521 continue;
2522 to->to_flags |= TOF_CCECHO;
2523 bcopy((char *)cp + 2,
2524 (char *)&to->to_ccecho, sizeof(to->to_ccecho));
2525 to->to_ccecho = ntohl(to->to_ccecho);
2526 break;
355 int drop_hdrlen;
356 register struct tcpcb *tp = 0;
357 register int thflags;
358 struct socket *so = 0;
359 int todrop, acked, ourfinisacked, needoutput = 0;
360 u_long tiwin;
361 struct tcpopt to; /* options in this segment */
362 struct rmxp_tao tao; /* our TAO cache entry */

--- 2158 unchanged lines hidden (view full) ---

2521 continue;
2522 if (!is_syn)
2523 continue;
2524 to->to_flags |= TOF_CCECHO;
2525 bcopy((char *)cp + 2,
2526 (char *)&to->to_ccecho, sizeof(to->to_ccecho));
2527 to->to_ccecho = ntohl(to->to_ccecho);
2528 break;
2529#ifdef TCP_SIGNATURE
2530 /*
2531 * XXX In order to reply to a host which has set the
2532 * TCP_SIGNATURE option in its initial SYN, we have to
2533 * record the fact that the option was observed here
2534 * for the syncache code to perform the correct response.
2535 */
2536 case TCPOPT_SIGNATURE:
2537 if (optlen != TCPOLEN_SIGNATURE)
2538 continue;
2539 to->to_flags |= (TOF_SIGNATURE | TOF_SIGLEN);
2540 break;
2541#endif /* TCP_SIGNATURE */
2527 default:
2528 continue;
2529 }
2530 }
2531}
2532
2533/*
2534 * Pull out of band byte out of a segment so

--- 616 unchanged lines hidden ---
2542 default:
2543 continue;
2544 }
2545 }
2546}
2547
2548/*
2549 * Pull out of band byte out of a segment so

--- 616 unchanged lines hidden ---