Changeset View
Changeset View
Standalone View
Standalone View
sys/netinet6/in6_proto.c
Show First 20 Lines • Show All 63 Lines • ▼ Show 20 Lines | |||||
#include <sys/cdefs.h> | #include <sys/cdefs.h> | ||||
__FBSDID("$FreeBSD$"); | __FBSDID("$FreeBSD$"); | ||||
#include "opt_inet.h" | #include "opt_inet.h" | ||||
#include "opt_inet6.h" | #include "opt_inet6.h" | ||||
#include "opt_ipsec.h" | #include "opt_ipsec.h" | ||||
#include "opt_ipstealth.h" | #include "opt_ipstealth.h" | ||||
#include "opt_sctp.h" | |||||
#include "opt_mpath.h" | #include "opt_mpath.h" | ||||
#include "opt_route.h" | #include "opt_route.h" | ||||
#include <sys/param.h> | #include <sys/param.h> | ||||
#include <sys/socket.h> | #include <sys/socket.h> | ||||
#include <sys/socketvar.h> | #include <sys/socketvar.h> | ||||
#include <sys/proc.h> | #include <sys/proc.h> | ||||
#include <sys/protosw.h> | #include <sys/protosw.h> | ||||
Show All 29 Lines | |||||
#include <netinet/udp.h> | #include <netinet/udp.h> | ||||
#include <netinet/udp_var.h> | #include <netinet/udp_var.h> | ||||
#include <netinet6/tcp6_var.h> | #include <netinet6/tcp6_var.h> | ||||
#include <netinet6/raw_ip6.h> | #include <netinet6/raw_ip6.h> | ||||
#include <netinet6/udp6_var.h> | #include <netinet6/udp6_var.h> | ||||
#include <netinet6/pim6_var.h> | #include <netinet6/pim6_var.h> | ||||
#include <netinet6/nd6.h> | #include <netinet6/nd6.h> | ||||
#ifdef SCTP | |||||
#include <netinet/in_pcb.h> | |||||
#include <netinet/sctp_pcb.h> | |||||
#include <netinet/sctp.h> | |||||
#include <netinet/sctp_var.h> | |||||
#include <netinet6/sctp6_var.h> | |||||
#endif /* SCTP */ | |||||
#include <netinet6/ip6protosw.h> | #include <netinet6/ip6protosw.h> | ||||
/* | /* | ||||
* TCP/IP protocol family: IP6, ICMP6, UDP, TCP. | * TCP/IP protocol family: IP6, ICMP6, UDP, TCP. | ||||
*/ | */ | ||||
FEATURE(inet6, "Internet Protocol version 6"); | FEATURE(inet6, "Internet Protocol version 6"); | ||||
extern struct domain inet6domain; | extern struct domain inet6domain; | ||||
▲ Show 20 Lines • Show All 43 Lines • ▼ Show 20 Lines | #endif | ||||
.pr_ctloutput = tcp_ctloutput, | .pr_ctloutput = tcp_ctloutput, | ||||
#ifndef INET /* don't call initialization and timeout routines twice */ | #ifndef INET /* don't call initialization and timeout routines twice */ | ||||
.pr_init = tcp_init, | .pr_init = tcp_init, | ||||
.pr_slowtimo = tcp_slowtimo, | .pr_slowtimo = tcp_slowtimo, | ||||
#endif | #endif | ||||
.pr_drain = tcp_drain, | .pr_drain = tcp_drain, | ||||
.pr_usrreqs = &tcp6_usrreqs, | .pr_usrreqs = &tcp6_usrreqs, | ||||
}, | }, | ||||
#ifdef SCTP | |||||
{ | { | ||||
.pr_type = SOCK_SEQPACKET, | |||||
.pr_domain = &inet6domain, | |||||
.pr_protocol = IPPROTO_SCTP, | |||||
.pr_flags = PR_WANTRCVD|PR_LASTHDR, | |||||
.pr_input = sctp6_input, | |||||
.pr_ctlinput = sctp6_ctlinput, | |||||
.pr_ctloutput = sctp_ctloutput, | |||||
.pr_drain = sctp_drain, | |||||
#ifndef INET /* Do not call initialization twice. */ | |||||
.pr_init = sctp_init, | |||||
#endif | |||||
.pr_usrreqs = &sctp6_usrreqs | |||||
}, | |||||
{ | |||||
.pr_type = SOCK_STREAM, | |||||
.pr_domain = &inet6domain, | |||||
.pr_protocol = IPPROTO_SCTP, | |||||
.pr_flags = PR_CONNREQUIRED|PR_WANTRCVD|PR_LASTHDR, | |||||
.pr_input = sctp6_input, | |||||
.pr_ctlinput = sctp6_ctlinput, | |||||
.pr_ctloutput = sctp_ctloutput, | |||||
.pr_drain = sctp_drain, | |||||
.pr_usrreqs = &sctp6_usrreqs | |||||
}, | |||||
#endif /* SCTP */ | |||||
{ | |||||
.pr_type = SOCK_DGRAM, | .pr_type = SOCK_DGRAM, | ||||
.pr_domain = &inet6domain, | .pr_domain = &inet6domain, | ||||
.pr_protocol = IPPROTO_UDPLITE, | .pr_protocol = IPPROTO_UDPLITE, | ||||
.pr_flags = PR_ATOMIC|PR_ADDR, | .pr_flags = PR_ATOMIC|PR_ADDR, | ||||
.pr_input = udp6_input, | .pr_input = udp6_input, | ||||
.pr_ctlinput = udplite6_ctlinput, | .pr_ctlinput = udplite6_ctlinput, | ||||
.pr_ctloutput = udp_ctloutput, | .pr_ctloutput = udp_ctloutput, | ||||
#ifndef INET /* Do not call initialization twice. */ | #ifndef INET /* Do not call initialization twice. */ | ||||
▲ Show 20 Lines • Show All 206 Lines • ▼ Show 20 Lines | |||||
SYSCTL_NODE(_net, PF_INET6, inet6, CTLFLAG_RW, 0, | SYSCTL_NODE(_net, PF_INET6, inet6, CTLFLAG_RW, 0, | ||||
"Internet6 Family"); | "Internet6 Family"); | ||||
/* net.inet6 */ | /* net.inet6 */ | ||||
SYSCTL_NODE(_net_inet6, IPPROTO_IPV6, ip6, CTLFLAG_RW, 0, "IP6"); | SYSCTL_NODE(_net_inet6, IPPROTO_IPV6, ip6, CTLFLAG_RW, 0, "IP6"); | ||||
SYSCTL_NODE(_net_inet6, IPPROTO_ICMPV6, icmp6, CTLFLAG_RW, 0, "ICMP6"); | SYSCTL_NODE(_net_inet6, IPPROTO_ICMPV6, icmp6, CTLFLAG_RW, 0, "ICMP6"); | ||||
SYSCTL_NODE(_net_inet6, IPPROTO_UDP, udp6, CTLFLAG_RW, 0, "UDP6"); | SYSCTL_NODE(_net_inet6, IPPROTO_UDP, udp6, CTLFLAG_RW, 0, "UDP6"); | ||||
SYSCTL_NODE(_net_inet6, IPPROTO_TCP, tcp6, CTLFLAG_RW, 0, "TCP6"); | SYSCTL_NODE(_net_inet6, IPPROTO_TCP, tcp6, CTLFLAG_RW, 0, "TCP6"); | ||||
#ifdef SCTP | |||||
SYSCTL_NODE(_net_inet6, IPPROTO_SCTP, sctp6, CTLFLAG_RW, 0, "SCTP6"); | |||||
#endif | |||||
#if defined(IPSEC) || defined(IPSEC_SUPPORT) | #if defined(IPSEC) || defined(IPSEC_SUPPORT) | ||||
SYSCTL_NODE(_net_inet6, IPPROTO_ESP, ipsec6, CTLFLAG_RW, 0, "IPSEC6"); | SYSCTL_NODE(_net_inet6, IPPROTO_ESP, ipsec6, CTLFLAG_RW, 0, "IPSEC6"); | ||||
#endif /* IPSEC */ | #endif /* IPSEC */ | ||||
/* net.inet6.ip6 */ | /* net.inet6.ip6 */ | ||||
static int | static int | ||||
sysctl_ip6_temppltime(SYSCTL_HANDLER_ARGS) | sysctl_ip6_temppltime(SYSCTL_HANDLER_ARGS) | ||||
{ | { | ||||
▲ Show 20 Lines • Show All 170 Lines • Show Last 20 Lines |