#
 
 #   IPv6 as module will cause a CRASH if you try to unload it
-config IPV6
+menuconfig IPV6
        tristate "The IPv6 protocol"
        default m
        ---help---
          To compile this protocol support as a module, choose M here: the 
          module will be called ipv6.
 
+if IPV6
+
 config IPV6_PRIVACY
        bool "IPv6: Privacy Extensions support"
-       depends on IPV6
        ---help---
          Privacy Extensions for Stateless Address Autoconfiguration in IPv6
          support.  With this option, additional periodically-alter 
 
 config IPV6_ROUTER_PREF
        bool "IPv6: Router Preference (RFC 4191) support"
-       depends on IPV6
        ---help---
          Router Preference is an optional extension to the Router
          Advertisement message to improve the ability of hosts
 
 config IPV6_OPTIMISTIC_DAD
        bool "IPv6: Enable RFC 4429 Optimistic DAD (EXPERIMENTAL)"
-       depends on IPV6 && EXPERIMENTAL
+       depends on EXPERIMENTAL
        ---help---
          This is experimental support for optimistic Duplicate
          Address Detection.  It allows for autoconfigured addresses
 
 config INET6_AH
        tristate "IPv6: AH transformation"
-       depends on IPV6
        select XFRM
        select CRYPTO
        select CRYPTO_HMAC
 
 config INET6_ESP
        tristate "IPv6: ESP transformation"
-       depends on IPV6
        select XFRM
        select CRYPTO
        select CRYPTO_AUTHENC
 
 config INET6_IPCOMP
        tristate "IPv6: IPComp transformation"
-       depends on IPV6
        select XFRM
        select INET6_XFRM_TUNNEL
        select CRYPTO
 
 config IPV6_MIP6
        tristate "IPv6: Mobility (EXPERIMENTAL)"
-       depends on IPV6 && EXPERIMENTAL
+       depends on EXPERIMENTAL
        select XFRM
        ---help---
          Support for IPv6 Mobility described in RFC 3775.
 
 config INET6_XFRM_MODE_TRANSPORT
        tristate "IPv6: IPsec transport mode"
-       depends on IPV6
        default IPV6
        select XFRM
        ---help---
 
 config INET6_XFRM_MODE_TUNNEL
        tristate "IPv6: IPsec tunnel mode"
-       depends on IPV6
        default IPV6
        select XFRM
        ---help---
 
 config INET6_XFRM_MODE_BEET
        tristate "IPv6: IPsec BEET mode"
-       depends on IPV6
        default IPV6
        select XFRM
        ---help---
 
 config INET6_XFRM_MODE_ROUTEOPTIMIZATION
        tristate "IPv6: MIPv6 route optimization mode (EXPERIMENTAL)"
-       depends on IPV6 && EXPERIMENTAL
+       depends on EXPERIMENTAL
        select XFRM
        ---help---
          Support for MIPv6 route optimization mode.
 
 config IPV6_SIT
        tristate "IPv6: IPv6-in-IPv4 tunnel (SIT driver)"
-       depends on IPV6
        select INET_TUNNEL
        select IPV6_NDISC_NODETYPE
        default y
 config IPV6_TUNNEL
        tristate "IPv6: IP-in-IPv6 tunnel (RFC2473)"
        select INET6_TUNNEL
-       depends on IPV6
        ---help---
          Support for IPv6-in-IPv6 and IPv4-in-IPv6 tunnels described in
          RFC 2473.
 
 config IPV6_MULTIPLE_TABLES
        bool "IPv6: Multiple Routing Tables"
-       depends on IPV6 && EXPERIMENTAL
+       depends on EXPERIMENTAL
        select FIB_RULES
        ---help---
          Support multiple routing tables.
          Support for IPv6 PIM multicast routing protocol PIM-SMv2.
          If unsure, say N.
 
+endif # IPV6