Source-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[src/trunk]: src Make FAST_IPSEC the default IPSEC implementation which is built
details: https://anonhg.NetBSD.org/src/rev/a2dd3dc3fdbb
branches: trunk
changeset: 772592:a2dd3dc3fdbb
user: drochner <drochner%NetBSD.org@localhost>
date: Mon Jan 09 15:16:30 2012 +0000
description:
Make FAST_IPSEC the default IPSEC implementation which is built
into the kernel if the "IPSEC" kernel option is given.
The old implementation is still available as KAME_IPSEC.
Do some minimal manpage adjustment -- kame_ipsec(4) is a copy
of the old ipsec(4) and the latter is now a copy of fast_ipsec(4).
diffstat:
distrib/sets/lists/man/mi | 4 +-
share/man/man4/Makefile | 4 +-
share/man/man4/fast_ipsec.4 | 7 +-
share/man/man4/ipsec.4 | 464 +++++++++----------------------------------
share/man/man4/kame_ipsec.4 | 394 +++++++++++++++++++++++++++++++++++++
share/man/man4/options.4 | 18 +-
sys/netinet6/files.ipsec | 3 +-
sys/netipsec/files.netipsec | 5 +-
8 files changed, 517 insertions(+), 382 deletions(-)
diffs (truncated from 1039 to 300 lines):
diff -r 31f0266034f6 -r a2dd3dc3fdbb distrib/sets/lists/man/mi
--- a/distrib/sets/lists/man/mi Mon Jan 09 15:15:40 2012 +0000
+++ b/distrib/sets/lists/man/mi Mon Jan 09 15:16:30 2012 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: mi,v 1.1363 2012/01/04 16:25:15 yamt Exp $
+# $NetBSD: mi,v 1.1364 2012/01/09 15:16:30 drochner Exp $
#
# Note: don't delete entries from here - mark them as "obsolete" instead.
#
@@ -1236,6 +1236,7 @@
./usr/share/man/cat4/jme.0 man-sys-catman .cat
./usr/share/man/cat4/jmide.0 man-sys-catman .cat
./usr/share/man/cat4/joy.0 man-sys-catman .cat
+./usr/share/man/cat4/kame_ipsec.0 man-sys-catman .cat
./usr/share/man/cat4/kloader.0 man-sys-catman .cat
./usr/share/man/cat4/kse.0 man-sys-catman .cat
./usr/share/man/cat4/ksyms.0 man-sys-catman .cat
@@ -6719,6 +6720,7 @@
./usr/share/man/man4/jme.4 man-sys-man .man
./usr/share/man/man4/jmide.4 man-sys-man .man
./usr/share/man/man4/joy.4 man-sys-man .man
+./usr/share/man/man4/kame_ipsec.4 man-sys-man .man
./usr/share/man/man4/kloader.4 man-sys-man .man
./usr/share/man/man4/kse.4 man-sys-man .man
./usr/share/man/man4/ksyms.4 man-sys-man .man
diff -r 31f0266034f6 -r a2dd3dc3fdbb share/man/man4/Makefile
--- a/share/man/man4/Makefile Mon Jan 09 15:15:40 2012 +0000
+++ b/share/man/man4/Makefile Mon Jan 09 15:16:30 2012 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.576 2012/01/04 16:25:16 yamt Exp $
+# $NetBSD: Makefile,v 1.577 2012/01/09 15:16:31 drochner Exp $
# @(#)Makefile 8.1 (Berkeley) 6/18/93
MAN= aac.4 ac97.4 acardide.4 aceride.4 acphy.4 \
@@ -35,7 +35,7 @@
ioasic.4 ioat.4 iop.4 iophy.4 iopsp.4 ip.4 ipkdb.4 ipmi.4 ipw.4 \
irmce.4 iso.4 isp.4 isv.4 itesio.4 iteide.4 iwi.4 iwn.4 ixg.4 ixpide.4 \
jme.4 jmide.4 joy.4 \
- kloader.4 kse.4 ksyms.4 kttcp.4 \
+ kame_ipsec.4 kloader.4 kse.4 ksyms.4 kttcp.4 \
lc.4 ld.4 lii.4 lo.4 lxtphy.4 \
mainbus.4 makphy.4 mbe.4 mca.4 mcclock.4 md.4 mfb.4 mfi.4 mhzc.4 \
midi.4 mii.4 mk48txx.4 mlx.4 mly.4 mpls.4 mpt.4 mpu.4 mtd.4 \
diff -r 31f0266034f6 -r a2dd3dc3fdbb share/man/man4/fast_ipsec.4
--- a/share/man/man4/fast_ipsec.4 Mon Jan 09 15:15:40 2012 +0000
+++ b/share/man/man4/fast_ipsec.4 Mon Jan 09 15:16:30 2012 +0000
@@ -1,4 +1,4 @@
-.\" $NetBSD: fast_ipsec.4,v 1.9 2010/09/21 13:47:41 degroote Exp $
+.\" $NetBSD: fast_ipsec.4,v 1.10 2012/01/09 15:16:31 drochner Exp $
.\" $FreeBSD: fast_ipsec.4,v 1.2 2003/03/03 11:51:30 ru Exp $
.\"
.\" Copyright (c) 2004
@@ -28,17 +28,16 @@
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.Dd April 24, 2007
+.Dd January 9, 2012
.Dt FAST_IPSEC 4
.Os
.Sh NAME
.Nm fast_ipsec
.Nd Fast IPsec hardware-accelerated IP Security Protocols
.Sh SYNOPSIS
-.Cd "options FAST_IPSEC"
+.Cd "options IPSEC"
.Cd "options IPSEC_DEBUG"
.Cd "options IPSEC_NAT_T"
-.Cd "pseudo-device crypto"
.Sh DESCRIPTION
.Tn IPsec
is a set of protocols,
diff -r 31f0266034f6 -r a2dd3dc3fdbb share/man/man4/ipsec.4
--- a/share/man/man4/ipsec.4 Mon Jan 09 15:15:40 2012 +0000
+++ b/share/man/man4/ipsec.4 Mon Jan 09 15:16:30 2012 +0000
@@ -1,8 +1,11 @@
-.\" $NetBSD: ipsec.4,v 1.31 2009/05/17 02:22:43 fair Exp $
-.\" $KAME: ipsec.4,v 1.17 2001/06/27 15:25:10 itojun Exp $
+.\" $NetBSD: ipsec.4,v 1.32 2012/01/09 15:16:31 drochner Exp $
+.\" $FreeBSD: fast_ipsec.4,v 1.2 2003/03/03 11:51:30 ru Exp $
.\"
-.\" Copyright (C) 1995, 1996, 1997, and 1998 WIDE Project.
-.\" All rights reserved.
+.\" Copyright (c) 2004
+.\" Jonathan Stone <jonathan%dsg.stanford.edu@localhost>. All rights reserved.
+.\"
+.\" Copyright (c) 2003
+.\" Sam Leffler <sam%errno.com@localhost>. All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
@@ -12,383 +15,112 @@
.\" 2. Redistributions in binary form must reproduce the above copyright
.\" notice, this list of conditions and the following disclaimer in the
.\" documentation and/or other materials provided with the distribution.
-.\" 3. Neither the name of the project nor the names of its contributors
-.\" may be used to endorse or promote products derived from this software
-.\" without specific prior written permission.
.\"
-.\" THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND
+.\" THIS SOFTWARE IS PROVIDED BY Sam Leffler AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-.\" ARE DISCLAIMED. IN NO EVENT SHALL THE PROJECT OR CONTRIBUTORS BE LIABLE
-.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
-.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
-.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
-.\" SUCH DAMAGE.
+.\" ARE DISCLAIMED. IN NO EVENT SHALL Bill Paul OR THE VOICES IN HIS HEAD
+.\" BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+.\" CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+.\" SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+.\" INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+.\" CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+.\" THE POSSIBILITY OF SUCH DAMAGE.
.\"
-.Dd May 16, 2009
-.Dt IPSEC 4
+.Dd January 9, 2012
+.Dt FAST_IPSEC 4
.Os
.Sh NAME
-.Nm ipsec
-.Nd IP security protocol
+.Nm fast_ipsec
+.Nd Fast IPsec hardware-accelerated IP Security Protocols
.Sh SYNOPSIS
-.In sys/types.h
-.In netinet/in.h
-.In netinet6/ipsec.h
-.Pp
-.Cd options IPSEC
-.Cd options IPSEC_ESP
-.Cd options IPSEC_NAT_T
-.Cd options IPSEC_DEBUG
+.Cd "options IPSEC"
+.Cd "options IPSEC_DEBUG"
+.Cd "options IPSEC_NAT_T"
.Sh DESCRIPTION
-.Nm
-is a security protocol in Internet Protocol (IP) layer.
-.Nm
-is defined for both IPv4 and IPv6
-.Po
-.Xr inet 4
-and
-.Xr inet6 4
-.Pc .
-.Nm
-consists of two sub-protocols:
-.Pp
-.Bl -hang
-.It Em Encapsulated Security Payload Pq ESP
-protects IP payload from wire-tapping (interception) by encrypting it with
-secret key cryptography algorithms.
-.It Em Authentication Header Pq AH
-guarantees integrity of IP packet
-and protects it from intermediate alteration or impersonation,
-by attaching cryptographic checksum computed by one-way hash functions.
-.El
-.Pp
-.Nm
-has two operation modes:
-.Pp
-.Bl -hang
-.It Em Transport mode
-is for protecting peer-to-peer communication between end nodes.
-.It Em Tunnel mode
-includes IP-in-IP encapsulation operation
-and is designed for security gateways, as in Virtual Private Network
-.Pq Tn VPN
-configurations.
-.El
-.Pp
-The following kernel options are available:
-.Bl -ohang
-.It Cd options IPSEC
-Includes support for the
.Tn IPsec
-protocol.
-.Em IPSEC
-will enable
-secret key management part,
-policy management part,
-.Tn AH
-and
-.Tn IPComp .
-Kernel binary will not be subject to export control in most of countries,
-even if compiled with
-.Em IPSEC .
-For example, it should be okay to export it from the United States of America.
-.Em INET6
-and
-.Em IPSEC
-are orthogonal so you can get IPv4-only kernel with IPsec support,
-IPv4/v6 dual support kernel without IPsec, and so forth.
-This option requires
-.Em INET
-at this moment, but it should not.
-.It Cd options IPSEC_DEBUG
-Enables debugging code in
-.Tn IPsec
-stack.
-This option assumes
-.Em IPSEC .
-.It Cd options IPSEC_ESP
-Includes support for
-.Tn IPsec
+is a set of protocols,
.Tn ESP
-protocol.
-.Em IPSEC_ESP
-will enable source code that is subject to export control in some countries
-.Pq including the United States ,
-and compiled kernel binary will be subject to certain restriction.
-This option assumes
-.Em IPSEC .
-.It Cd options IPSEC_NAT_T
-Includes support for
-.Tn IPsec
-Network Address Translator Traversal (NAT-T), as described in RFCs 3947
-and 3948.
-This feature might be patent-encumbered in some countries.
-This option assumes
-.Em IPSEC
-and
-.Em IPSEC_ESP .
-.El
-.\"
-.Ss Kernel interface
-.Nm
-is controlled by key management engine and policy engine,
-in the operating system kernel.
-.Pp
-Key management engine can be accessed from the userland by using
-.Dv PF_KEY
-sockets.
-The
-.Dv PF_KEY
-socket API is defined in RFC2367.
-.Pp
-Policy engine can be controlled by extended part of
-.Dv PF_KEY
-API,
-.Xr setsockopt 2
-operations, and
-.Xr sysctl 3
-interface.
-The kernel implements
-extended version of
-.Dv PF_KEY
-interface, and allows you to define IPsec policy like per-packet filters.
-.Xr setsockopt 2
-interface is used to define per-socket behavior, and
-.Xr sysctl 3
-interface is used to define host-wide default behavior.
-.Pp
-The kernel code does not implement dynamic encryption key exchange protocol
-like IKE
-.Pq Internet Key Exchange .
-That should be implemented as userland programs
-.Pq usually as daemons ,
-by using the above described APIs.
-.\"
-.Ss Policy management
-The kernel implements experimental policy management code.
-You can manage the IPsec policy in two ways.
-One is to configure per-socket policy using
-.Xr setsockopt 2 .
-The other is to configure kernel packet filter-based policy using
-.Dv PF_KEY
-interface, via
-.Xr setkey 8 .
-In both cases, IPsec policy must be specified with syntax described in
-.Xr ipsec_set_policy 3 .
-.Pp
-With
-.Xr setsockopt 2 ,
-you can define IPsec policy in per-socket basis.
-You can enforce particular IPsec policy onto packets that go through
-particular socket.
-.Pp
-With
-.Xr setkey 8
-you can define IPsec policy against packets,
-using sort of packet filtering rule.
-Refer to
-.Xr setkey 8
-on how to use it.
-.Pp
-In the latter case,
-.Dq Li default
-policy is allowed for use with
-.Xr setkey 8 .
-By configuring policy to
-.Li default ,
Home |
Main Index |
Thread Index |
Old Index