Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
[linux-2.6] / net / ipv6 / Kconfig
1 #
2 # IPv6 configuration
3 #
4
5 #   IPv6 as module will cause a CRASH if you try to unload it
6 config IPV6
7         tristate "The IPv6 protocol"
8         default m
9         ---help---
10           This is complemental support for the IP version 6.
11           You will still be able to do traditional IPv4 networking as well.
12
13           For general information about IPv6, see
14           <http://playground.sun.com/pub/ipng/html/ipng-main.html>.
15           For Linux IPv6 development information, see <http://www.linux-ipv6.org>.
16           For specific information about IPv6 under Linux, read the HOWTO at
17           <http://www.bieringer.de/linux/IPv6/>.
18
19           To compile this protocol support as a module, choose M here: the 
20           module will be called ipv6.
21
22 config IPV6_PRIVACY
23         bool "IPv6: Privacy Extensions support"
24         depends on IPV6
25         ---help---
26           Privacy Extensions for Stateless Address Autoconfiguration in IPv6
27           support.  With this option, additional periodically-alter 
28           pseudo-random global-scope unicast address(es) will assigned to
29           your interface(s).
30         
31           We use our standard pseudo random algorithm to generate randomized
32           interface identifier, instead of one described in RFC 3041.
33
34           By default, kernel do not generate temporary addresses.
35           To use temporary addresses, do
36         
37                 echo 2 >/proc/sys/net/ipv6/conf/all/use_tempaddr 
38
39           See <file:Documentation/networking/ip-sysctl.txt> for details.
40
41 config IPV6_ROUTER_PREF
42         bool "IPv6: Router Preference (RFC 4191) support"
43         depends on IPV6
44         ---help---
45           Router Preference is an optional extension to the Router
46           Advertisement message to improve the ability of hosts
47           to pick more appropriate router, especially when the hosts
48           is placed in a multi-homed network.
49
50           If unsure, say N.
51
52 config IPV6_ROUTE_INFO
53         bool "IPv6: Route Information (RFC 4191) support (EXPERIMENTAL)"
54         depends on IPV6_ROUTER_PREF && EXPERIMENTAL
55         ---help---
56           This is experimental support of Route Information.
57
58           If unsure, say N.
59
60 config IPV6_OPTIMISTIC_DAD
61         bool "IPv6: Enable RFC 4429 Optimistic DAD (EXPERIMENTAL)"
62         depends on IPV6 && EXPERIMENTAL
63         ---help---
64           This is experimental support for optimistic Duplicate
65           Address Detection.  It allows for autoconfigured addresses
66           to be used more quickly.
67
68           If unsure, say N.
69
70 config INET6_AH
71         tristate "IPv6: AH transformation"
72         depends on IPV6
73         select XFRM
74         select CRYPTO
75         select CRYPTO_HMAC
76         select CRYPTO_MD5
77         select CRYPTO_SHA1
78         ---help---
79           Support for IPsec AH.
80
81           If unsure, say Y.
82
83 config INET6_ESP
84         tristate "IPv6: ESP transformation"
85         depends on IPV6
86         select XFRM
87         select CRYPTO
88         select CRYPTO_AUTHENC
89         select CRYPTO_HMAC
90         select CRYPTO_MD5
91         select CRYPTO_CBC
92         select CRYPTO_SHA1
93         select CRYPTO_DES
94         ---help---
95           Support for IPsec ESP.
96
97           If unsure, say Y.
98
99 config INET6_IPCOMP
100         tristate "IPv6: IPComp transformation"
101         depends on IPV6
102         select XFRM
103         select INET6_XFRM_TUNNEL
104         select CRYPTO
105         select CRYPTO_DEFLATE
106         ---help---
107           Support for IP Payload Compression Protocol (IPComp) (RFC3173),
108           typically needed for IPsec.
109
110           If unsure, say Y.
111
112 config IPV6_MIP6
113         tristate "IPv6: Mobility (EXPERIMENTAL)"
114         depends on IPV6 && EXPERIMENTAL
115         select XFRM
116         ---help---
117           Support for IPv6 Mobility described in RFC 3775.
118
119           If unsure, say N.
120
121 config INET6_XFRM_TUNNEL
122         tristate
123         select INET6_TUNNEL
124         default n
125
126 config INET6_TUNNEL
127         tristate
128         default n
129
130 config INET6_XFRM_MODE_TRANSPORT
131         tristate "IPv6: IPsec transport mode"
132         depends on IPV6
133         default IPV6
134         select XFRM
135         ---help---
136           Support for IPsec transport mode.
137
138           If unsure, say Y.
139
140 config INET6_XFRM_MODE_TUNNEL
141         tristate "IPv6: IPsec tunnel mode"
142         depends on IPV6
143         default IPV6
144         select XFRM
145         ---help---
146           Support for IPsec tunnel mode.
147
148           If unsure, say Y.
149
150 config INET6_XFRM_MODE_BEET
151         tristate "IPv6: IPsec BEET mode"
152         depends on IPV6
153         default IPV6
154         select XFRM
155         ---help---
156           Support for IPsec BEET mode.
157
158           If unsure, say Y.
159
160 config INET6_XFRM_MODE_ROUTEOPTIMIZATION
161         tristate "IPv6: MIPv6 route optimization mode (EXPERIMENTAL)"
162         depends on IPV6 && EXPERIMENTAL
163         select XFRM
164         ---help---
165           Support for MIPv6 route optimization mode.
166
167 config IPV6_SIT
168         tristate "IPv6: IPv6-in-IPv4 tunnel (SIT driver)"
169         depends on IPV6
170         select INET_TUNNEL
171         default y
172         ---help---
173           Tunneling means encapsulating data of one protocol type within
174           another protocol and sending it over a channel that understands the
175           encapsulating protocol. This driver implements encapsulation of IPv6
176           into IPv4 packets. This is useful if you want to connect two IPv6
177           networks over an IPv4-only path.
178
179           Saying M here will produce a module called sit.ko. If unsure, say Y.
180
181 config IPV6_TUNNEL
182         tristate "IPv6: IP-in-IPv6 tunnel (RFC2473)"
183         select INET6_TUNNEL
184         depends on IPV6
185         ---help---
186           Support for IPv6-in-IPv6 and IPv4-in-IPv6 tunnels described in
187           RFC 2473.
188
189           If unsure, say N.
190
191 config IPV6_MULTIPLE_TABLES
192         bool "IPv6: Multiple Routing Tables"
193         depends on IPV6 && EXPERIMENTAL
194         select FIB_RULES
195         ---help---
196           Support multiple routing tables.
197
198 config IPV6_SUBTREES
199         bool "IPv6: source address based routing"
200         depends on IPV6_MULTIPLE_TABLES
201         ---help---
202           Enable routing by source address or prefix.
203
204           The destination address is still the primary routing key, so mixing
205           normal and source prefix specific routes in the same routing table
206           may sometimes lead to unintended routing behavior.  This can be
207           avoided by defining different routing tables for the normal and
208           source prefix specific routes.
209
210           If unsure, say N.
211