aboutsummaryrefslogtreecommitdiff
path: root/sys/netinet/in_proto.c
diff options
context:
space:
mode:
authorSam Leffler <sam@FreeBSD.org>2002-10-16 02:25:05 +0000
committerSam Leffler <sam@FreeBSD.org>2002-10-16 02:25:05 +0000
commitb9234fafa0783687e83b2fa646e3ee137d87913a (patch)
treeae7276b550c8f6a3436b1985ff4cb31e8a826d66 /sys/netinet/in_proto.c
parentc919ec4b66ba21c791971b35d7d26d15cb730768 (diff)
downloadsrc-b9234fafa0783687e83b2fa646e3ee137d87913a.tar.gz
src-b9234fafa0783687e83b2fa646e3ee137d87913a.zip
Notes
Diffstat (limited to 'sys/netinet/in_proto.c')
-rw-r--r--sys/netinet/in_proto.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/sys/netinet/in_proto.c b/sys/netinet/in_proto.c
index 876d8b667788..5ecbe65f9f75 100644
--- a/sys/netinet/in_proto.c
+++ b/sys/netinet/in_proto.c
@@ -76,6 +76,14 @@
#include <netinet6/ipcomp.h>
#endif /* IPSEC */
+#ifdef FAST_IPESC
+#include <netipsec/ipsec.h>
+#define ah4_input ipsec4_common_input
+#define esp4_input ipsec4_common_input
+#define ipcomp4_input ipsec4_common_input
+#define IPSEC
+#endif /* FAST_IPSEC */
+
#ifdef IPXIP
#include <netipx/ipx_ip.h>
#endif
@@ -232,9 +240,18 @@ SYSCTL_NODE(_net_inet, IPPROTO_ICMP, icmp, CTLFLAG_RW, 0, "ICMP");
SYSCTL_NODE(_net_inet, IPPROTO_UDP, udp, CTLFLAG_RW, 0, "UDP");
SYSCTL_NODE(_net_inet, IPPROTO_TCP, tcp, CTLFLAG_RW, 0, "TCP");
SYSCTL_NODE(_net_inet, IPPROTO_IGMP, igmp, CTLFLAG_RW, 0, "IGMP");
+#ifdef FAST_IPSEC
+/* XXX no protocol # to use, pick something "reserved" */
+SYSCTL_NODE(_net_inet, 253, ipsec, CTLFLAG_RW, 0, "IPSEC");
+SYSCTL_NODE(_net_inet, IPPROTO_AH, ah, CTLFLAG_RW, 0, "AH");
+SYSCTL_NODE(_net_inet, IPPROTO_ESP, esp, CTLFLAG_RW, 0, "ESP");
+SYSCTL_NODE(_net_inet, IPPROTO_IPCOMP, ipcomp, CTLFLAG_RW, 0, "IPCOMP");
+SYSCTL_NODE(_net_inet, IPPROTO_IPIP, ipip, CTLFLAG_RW, 0, "IPIP");
+#else
#ifdef IPSEC
SYSCTL_NODE(_net_inet, IPPROTO_AH, ipsec, CTLFLAG_RW, 0, "IPSEC");
#endif /* IPSEC */
+#endif /* !FAST_IPSEC */
SYSCTL_NODE(_net_inet, IPPROTO_RAW, raw, CTLFLAG_RW, 0, "RAW");
#ifdef IPDIVERT
SYSCTL_NODE(_net_inet, IPPROTO_DIVERT, divert, CTLFLAG_RW, 0, "DIVERT");