mirror of
https://github.com/torvalds/linux.git
synced 2026-04-18 06:44:00 -04:00
Maintaining a modular IPv6 stack offers image size savings for specific setups, this benefit is outweighed by the architectural burden it imposes on the subsystems on implementation and maintenance. Therefore, drop it. Change CONFIG_IPV6 from tristate to bool. Remove all Kconfig dependencies across the tree that explicitly checked for IPV6=m. In addition, remove MODULE_DESCRIPTION(), MODULE_ALIAS(), MODULE_AUTHOR() and MODULE_LICENSE(). This is also replacing module_init() by device_initcall(). It is not possible to use fs_initcall() as IPv4 does because that creates a race condition on IPv6 addrconf. Finally, modify the default configs from CONFIG_IPV6=m to CONFIG_IPV6=y except for m68k as according to the bloat-o-meter the image is increasing by 330KB~ and that isn't acceptable. Instead, disable IPv6 on this architecture by default. This is aligned with m68k RAM requirements and recommendations [1]. [1] http://www.linux-m68k.org/faq/ram.html Signed-off-by: Fernando Fernandez Mancera <fmancera@suse.de> Tested-by: Ricardo B. Marlière <rbm@suse.com> Acked-by: Krzysztof Kozlowski <krzk@kernel.org> # arm64 Link: https://patch.msgid.link/20260325120928.15848-2-fmancera@suse.de Signed-off-by: Jakub Kicinski <kuba@kernel.org>
110 lines
3.6 KiB
Plaintext
110 lines
3.6 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0-only
|
|
#
|
|
# Layer Two Tunneling Protocol (L2TP)
|
|
#
|
|
|
|
menuconfig L2TP
|
|
tristate "Layer Two Tunneling Protocol (L2TP)"
|
|
depends on INET
|
|
select NET_UDP_TUNNEL
|
|
help
|
|
Layer Two Tunneling Protocol
|
|
|
|
From RFC 2661 <http://www.ietf.org/rfc/rfc2661.txt>.
|
|
|
|
L2TP facilitates the tunneling of packets across an
|
|
intervening network in a way that is as transparent as
|
|
possible to both end-users and applications.
|
|
|
|
L2TP is often used to tunnel PPP traffic over IP
|
|
tunnels. One IP tunnel may carry thousands of individual PPP
|
|
connections. L2TP is also used as a VPN protocol, popular
|
|
with home workers to connect to their offices.
|
|
|
|
L2TPv3 allows other protocols as well as PPP to be carried
|
|
over L2TP tunnels. L2TPv3 is defined in RFC 3931
|
|
<http://www.ietf.org/rfc/rfc3931.txt>.
|
|
|
|
The kernel component handles only L2TP data packets: a
|
|
userland daemon handles L2TP the control protocol (tunnel
|
|
and session setup). One such daemon is OpenL2TP
|
|
(http://openl2tp.org/).
|
|
|
|
If you don't need L2TP, say N. To compile all L2TP code as
|
|
modules, choose M here.
|
|
|
|
config L2TP_DEBUGFS
|
|
tristate "L2TP debugfs support"
|
|
depends on L2TP && DEBUG_FS
|
|
help
|
|
Support for l2tp directory in debugfs filesystem. This may be
|
|
used to dump internal state of the l2tp drivers for problem
|
|
analysis.
|
|
|
|
If unsure, say 'Y'.
|
|
|
|
To compile this driver as a module, choose M here. The module
|
|
will be called l2tp_debugfs.
|
|
|
|
config L2TP_V3
|
|
bool "L2TPv3 support"
|
|
depends on L2TP
|
|
help
|
|
Layer Two Tunneling Protocol Version 3
|
|
|
|
From RFC 3931 <http://www.ietf.org/rfc/rfc3931.txt>.
|
|
|
|
The Layer Two Tunneling Protocol (L2TP) provides a dynamic
|
|
mechanism for tunneling Layer 2 (L2) "circuits" across a
|
|
packet-oriented data network (e.g., over IP). L2TP, as
|
|
originally defined in RFC 2661, is a standard method for
|
|
tunneling Point-to-Point Protocol (PPP) [RFC1661] sessions.
|
|
L2TP has since been adopted for tunneling a number of other
|
|
L2 protocols, including ATM, Frame Relay, HDLC and even raw
|
|
ethernet frames.
|
|
|
|
If you are connecting to L2TPv3 equipment, or you want to
|
|
tunnel raw ethernet frames using L2TP, say Y here. If
|
|
unsure, say N.
|
|
|
|
config L2TP_IP
|
|
tristate "L2TP IP encapsulation for L2TPv3"
|
|
depends on L2TP_V3
|
|
help
|
|
Support for L2TP-over-IP socket family.
|
|
|
|
The L2TPv3 protocol defines two possible encapsulations for
|
|
L2TP frames, namely UDP and plain IP (without UDP). This
|
|
driver provides a new L2TPIP socket family with which
|
|
userspace L2TPv3 daemons may create L2TP/IP tunnel sockets
|
|
when UDP encapsulation is not required. When L2TP is carried
|
|
in IP packets, it used IP protocol number 115, so this port
|
|
must be enabled in firewalls.
|
|
|
|
To compile this driver as a module, choose M here. The module
|
|
will be called l2tp_ip.
|
|
|
|
config L2TP_ETH
|
|
tristate "L2TP ethernet pseudowire support for L2TPv3"
|
|
depends on L2TP_V3
|
|
help
|
|
Support for carrying raw ethernet frames over L2TPv3.
|
|
|
|
From RFC 4719 <http://www.ietf.org/rfc/rfc4719.txt>.
|
|
|
|
The Layer 2 Tunneling Protocol, Version 3 (L2TPv3) can be
|
|
used as a control protocol and for data encapsulation to set
|
|
up Pseudowires for transporting layer 2 Packet Data Units
|
|
across an IP network [RFC3931].
|
|
|
|
This driver provides an ethernet virtual interface for each
|
|
L2TP ethernet pseudowire instance. Standard Linux tools may
|
|
be used to assign an IP address to the local virtual
|
|
interface, or add the interface to a bridge.
|
|
|
|
If you are using L2TPv3, you will almost certainly want to
|
|
enable this option.
|
|
|
|
To compile this driver as a module, choose M here. The module
|
|
will be called l2tp_eth.
|