From f02551ec2d5b4e65765f3f7b02985f5d702242b8 Mon Sep 17 00:00:00 2001 From: yamt Date: Wed, 10 Aug 2005 13:06:49 +0000 Subject: [PATCH] move {tcp,udp}_do_loopback_cksum back to tcp/udp so that they can be referenced by ipv6. --- sys/netinet/in_offload.h | 18 ++++++++++++++---- sys/netinet/ip_output.c | 6 ++---- sys/netinet/tcp_input.c | 5 +++-- sys/netinet/tcp_subr.c | 5 +++-- sys/netinet/tcp_usrreq.c | 5 +++-- sys/netinet/tcp_var.h | 3 +-- sys/netinet/udp_usrreq.c | 5 +++-- sys/netinet/udp_var.h | 3 +-- sys/netinet6/udp6_usrreq.c | 5 +++-- 9 files changed, 33 insertions(+), 22 deletions(-) diff --git a/sys/netinet/in_offload.h b/sys/netinet/in_offload.h index ff6bdbd5f3af..5ee46c888561 100644 --- a/sys/netinet/in_offload.h +++ b/sys/netinet/in_offload.h @@ -1,4 +1,4 @@ -/* $NetBSD: in_offload.h,v 1.1 2005/04/18 21:55:06 yamt Exp $ */ +/* $NetBSD: in_offload.h,v 1.2 2005/08/10 13:06:49 yamt Exp $ */ /*- * Copyright (c)2005 YAMAMOTO Takashi, @@ -26,13 +26,23 @@ * SUCH DAMAGE. */ +#if !defined(_NETINET_IN_OFFLOAD_H_) +#define _NETINET_IN_OFFLOAD_H_ + /* * subroutines to do software-only equivalent of h/w offloading. */ -#if !defined(_NETINET_IN_OFFLOAD_H_) -#define _NETINET_IN_OFFLOAD_H_ - int tcp4_segment(struct mbuf *, int (*)(void *, struct mbuf *), void *); +/* + * offloading related sysctl variables. + * + * they are here because it violates protocol layering in unusual way. + * ie. while they are TCP/UDP sysctls, they are used by IP layer. + */ + +extern int tcp_do_loopback_cksum; /* do TCP checksum on loopback? */ +extern int udp_do_loopback_cksum; /* do UDP checksum on loopback? */ + #endif /* !defined(_NETINET_IN_OFFLOAD_H_) */ diff --git a/sys/netinet/ip_output.c b/sys/netinet/ip_output.c index 143ecd613628..9d0c58e6740f 100644 --- a/sys/netinet/ip_output.c +++ b/sys/netinet/ip_output.c @@ -1,4 +1,4 @@ -/* $NetBSD: ip_output.c,v 1.153 2005/05/29 21:41:23 christos Exp $ */ +/* $NetBSD: ip_output.c,v 1.154 2005/08/10 13:06:49 yamt Exp $ */ /* * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. @@ -98,7 +98,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: ip_output.c,v 1.153 2005/05/29 21:41:23 christos Exp $"); +__KERNEL_RCSID(0, "$NetBSD: ip_output.c,v 1.154 2005/08/10 13:06:49 yamt Exp $"); #include "opt_pfil_hooks.h" #include "opt_inet.h" @@ -159,8 +159,6 @@ static void ip_mloopback(struct ifnet *, struct mbuf *, struct sockaddr_in *); extern struct pfil_head inet_pfil_hook; /* XXX */ #endif -int udp_do_loopback_cksum = 0; -int tcp_do_loopback_cksum = 0; int ip_do_loopback_cksum = 0; #define IN_NEED_CHECKSUM(ifp, csum_flags) \ diff --git a/sys/netinet/tcp_input.c b/sys/netinet/tcp_input.c index 003e7eb0f075..054c4497b71b 100644 --- a/sys/netinet/tcp_input.c +++ b/sys/netinet/tcp_input.c @@ -1,4 +1,4 @@ -/* $NetBSD: tcp_input.c,v 1.232 2005/08/10 13:05:16 yamt Exp $ */ +/* $NetBSD: tcp_input.c,v 1.233 2005/08/10 13:06:49 yamt Exp $ */ /* * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. @@ -150,7 +150,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: tcp_input.c,v 1.232 2005/08/10 13:05:16 yamt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: tcp_input.c,v 1.233 2005/08/10 13:06:49 yamt Exp $"); #include "opt_inet.h" #include "opt_ipsec.h" @@ -183,6 +183,7 @@ __KERNEL_RCSID(0, "$NetBSD: tcp_input.c,v 1.232 2005/08/10 13:05:16 yamt Exp $") #include #include #include +#include #ifdef INET6 #ifndef INET diff --git a/sys/netinet/tcp_subr.c b/sys/netinet/tcp_subr.c index 6c68070544b8..3800407760bb 100644 --- a/sys/netinet/tcp_subr.c +++ b/sys/netinet/tcp_subr.c @@ -1,4 +1,4 @@ -/* $NetBSD: tcp_subr.c,v 1.194 2005/08/10 13:05:16 yamt Exp $ */ +/* $NetBSD: tcp_subr.c,v 1.195 2005/08/10 13:06:49 yamt Exp $ */ /* * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. @@ -98,7 +98,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: tcp_subr.c,v 1.194 2005/08/10 13:05:16 yamt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: tcp_subr.c,v 1.195 2005/08/10 13:06:49 yamt Exp $"); #include "opt_inet.h" #include "opt_ipsec.h" @@ -200,6 +200,7 @@ int tcp_compat_42 = 0; #endif int tcp_rst_ppslim = 100; /* 100pps */ int tcp_ackdrop_ppslim = 100; /* 100pps */ +int tcp_do_loopback_cksum = 0; int tcp_sack_tp_maxholes = 32; int tcp_sack_globalmaxholes = 1024; int tcp_sack_globalholes = 0; diff --git a/sys/netinet/tcp_usrreq.c b/sys/netinet/tcp_usrreq.c index 20c0b1618c64..c6248bddb9ce 100644 --- a/sys/netinet/tcp_usrreq.c +++ b/sys/netinet/tcp_usrreq.c @@ -1,4 +1,4 @@ -/* $NetBSD: tcp_usrreq.c,v 1.107 2005/08/05 09:21:26 elad Exp $ */ +/* $NetBSD: tcp_usrreq.c,v 1.108 2005/08/10 13:06:49 yamt Exp $ */ /* * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. @@ -100,7 +100,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: tcp_usrreq.c,v 1.107 2005/08/05 09:21:26 elad Exp $"); +__KERNEL_RCSID(0, "$NetBSD: tcp_usrreq.c,v 1.108 2005/08/10 13:06:49 yamt Exp $"); #include "opt_inet.h" #include "opt_ipsec.h" @@ -130,6 +130,7 @@ __KERNEL_RCSID(0, "$NetBSD: tcp_usrreq.c,v 1.107 2005/08/05 09:21:26 elad Exp $" #include #include #include +#include #ifdef INET6 #ifndef INET diff --git a/sys/netinet/tcp_var.h b/sys/netinet/tcp_var.h index 7f9632e55964..7cd8bbcc460f 100644 --- a/sys/netinet/tcp_var.h +++ b/sys/netinet/tcp_var.h @@ -1,4 +1,4 @@ -/* $NetBSD: tcp_var.h,v 1.128 2005/08/05 09:21:26 elad Exp $ */ +/* $NetBSD: tcp_var.h,v 1.129 2005/08/10 13:06:49 yamt Exp $ */ /* * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. @@ -729,7 +729,6 @@ extern int tcp_ack_on_push; /* ACK immediately on PUSH */ extern int tcp_syn_cache_limit; /* max entries for compressed state engine */ extern int tcp_syn_bucket_limit;/* max entries per hash bucket */ extern int tcp_log_refused; /* log refused connections */ -extern int tcp_do_loopback_cksum;/* do TCP checksum on loopback? */ extern int tcp_sack_tp_maxholes; /* Max holes per connection. */ extern int tcp_sack_globalmaxholes; /* Max holes per system. */ extern int tcp_sack_globalholes; /* Number of holes present. */ diff --git a/sys/netinet/udp_usrreq.c b/sys/netinet/udp_usrreq.c index 3f8eb91bfeac..9c1136ad978e 100644 --- a/sys/netinet/udp_usrreq.c +++ b/sys/netinet/udp_usrreq.c @@ -1,4 +1,4 @@ -/* $NetBSD: udp_usrreq.c,v 1.140 2005/08/10 13:05:17 yamt Exp $ */ +/* $NetBSD: udp_usrreq.c,v 1.141 2005/08/10 13:06:49 yamt Exp $ */ /* * Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project. @@ -61,7 +61,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: udp_usrreq.c,v 1.140 2005/08/10 13:05:17 yamt Exp $"); +__KERNEL_RCSID(0, "$NetBSD: udp_usrreq.c,v 1.141 2005/08/10 13:06:49 yamt Exp $"); #include "opt_inet.h" #include "opt_ipsec.h" @@ -146,6 +146,7 @@ int udpcksum = 1; #else int udpcksum = 0; /* XXX */ #endif +int udp_do_loopback_cksum = 0; struct inpcbtable udbtable; struct udpstat udpstat; diff --git a/sys/netinet/udp_var.h b/sys/netinet/udp_var.h index 67680fba4e48..08077dcb4dc7 100644 --- a/sys/netinet/udp_var.h +++ b/sys/netinet/udp_var.h @@ -1,4 +1,4 @@ -/* $NetBSD: udp_var.h,v 1.28 2005/08/05 09:21:26 elad Exp $ */ +/* $NetBSD: udp_var.h,v 1.29 2005/08/10 13:06:49 yamt Exp $ */ /* * Copyright (c) 1982, 1986, 1989, 1993 @@ -87,7 +87,6 @@ struct udpstat { #ifdef _KERNEL extern struct inpcbtable udbtable; extern struct udpstat udpstat; -extern int udp_do_loopback_cksum; #ifdef __NO_STRICT_ALIGNMENT #define UDP_HDR_ALIGNED_P(uh) 1 diff --git a/sys/netinet6/udp6_usrreq.c b/sys/netinet6/udp6_usrreq.c index bb234385641d..7445e3400b22 100644 --- a/sys/netinet6/udp6_usrreq.c +++ b/sys/netinet6/udp6_usrreq.c @@ -1,4 +1,4 @@ -/* $NetBSD: udp6_usrreq.c,v 1.68 2005/05/29 21:43:51 christos Exp $ */ +/* $NetBSD: udp6_usrreq.c,v 1.69 2005/08/10 13:06:49 yamt Exp $ */ /* $KAME: udp6_usrreq.c,v 1.86 2001/05/27 17:33:00 itojun Exp $ */ /* @@ -62,7 +62,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: udp6_usrreq.c,v 1.68 2005/05/29 21:43:51 christos Exp $"); +__KERNEL_RCSID(0, "$NetBSD: udp6_usrreq.c,v 1.69 2005/08/10 13:06:49 yamt Exp $"); #include #include @@ -95,6 +95,7 @@ __KERNEL_RCSID(0, "$NetBSD: udp6_usrreq.c,v 1.68 2005/05/29 21:43:51 christos Ex #include #include #include +#include #include "faith.h" #if defined(NFAITH) && NFAITH > 0