0001 # SPDX-License-Identifier: GPL-2.0-only
0002 #
0003 # PPP network device configuration
0004 #
0005
0006 config PPP
0007 tristate "PPP (point-to-point protocol) support"
0008 select SLHC
0009 help
0010 PPP (Point to Point Protocol) is a newer and better SLIP. It serves
0011 the same purpose: sending Internet traffic over telephone (and other
0012 serial) lines. Ask your access provider if they support it, because
0013 otherwise you can't use it; most Internet access providers these
0014 days support PPP rather than SLIP.
0015
0016 To use PPP, you need an additional program called pppd as described
0017 in the PPP-HOWTO, available at
0018 <http://www.tldp.org/docs.html#howto>. Make sure that you have
0019 the version of pppd recommended in <file:Documentation/Changes>.
0020 The PPP option enlarges your kernel by about 16 KB.
0021
0022 There are actually two versions of PPP: the traditional PPP for
0023 asynchronous lines, such as regular analog phone lines, and
0024 synchronous PPP which can be used over digital ISDN lines for
0025 example. If you want to use PPP over phone lines or other
0026 asynchronous serial lines, you need to say Y (or M) here and also to
0027 the next option, "PPP support for async serial ports". For PPP over
0028 synchronous lines, you should say Y (or M) here and to "Support
0029 synchronous PPP", below.
0030
0031 If you said Y to "Version information on all symbols" above, then
0032 you cannot compile the PPP driver into the kernel; you can then only
0033 compile it as a module. To compile this driver as a module, choose M
0034 here. The module will be called ppp_generic.
0035
0036 if PPP
0037
0038 config PPP_BSDCOMP
0039 tristate "PPP BSD-Compress compression"
0040 depends on PPP
0041 help
0042 Support for the BSD-Compress compression method for PPP, which uses
0043 the LZW compression method to compress each PPP packet before it is
0044 sent over the wire. The machine at the other end of the PPP link
0045 (usually your ISP) has to support the BSD-Compress compression
0046 method as well for this to be useful. Even if they don't support it,
0047 it is safe to say Y here.
0048
0049 The PPP Deflate compression method ("PPP Deflate compression",
0050 above) is preferable to BSD-Compress, because it compresses better
0051 and is patent-free.
0052
0053 Note that the BSD compression code will always be compiled as a
0054 module; it is called bsd_comp and will show up in the directory
0055 modules once you have said "make modules". If unsure, say N.
0056
0057 config PPP_DEFLATE
0058 tristate "PPP Deflate compression"
0059 depends on PPP
0060 select ZLIB_INFLATE
0061 select ZLIB_DEFLATE
0062 help
0063 Support for the Deflate compression method for PPP, which uses the
0064 Deflate algorithm (the same algorithm that gzip uses) to compress
0065 each PPP packet before it is sent over the wire. The machine at the
0066 other end of the PPP link (usually your ISP) has to support the
0067 Deflate compression method as well for this to be useful. Even if
0068 they don't support it, it is safe to say Y here.
0069
0070 To compile this driver as a module, choose M here.
0071
0072 config PPP_FILTER
0073 bool "PPP filtering"
0074 depends on PPP
0075 help
0076 Say Y here if you want to be able to filter the packets passing over
0077 PPP interfaces. This allows you to control which packets count as
0078 activity (i.e. which packets will reset the idle timer or bring up
0079 a demand-dialed link) and which packets are to be dropped entirely.
0080 You need to say Y here if you wish to use the pass-filter and
0081 active-filter options to pppd.
0082
0083 If unsure, say N.
0084
0085 config PPP_MPPE
0086 tristate "PPP MPPE compression (encryption)"
0087 depends on PPP
0088 select CRYPTO
0089 select CRYPTO_SHA1
0090 select CRYPTO_LIB_ARC4
0091 help
0092 Support for the MPPE Encryption protocol, as employed by the
0093 Microsoft Point-to-Point Tunneling Protocol.
0094
0095 See http://pptpclient.sourceforge.net/ for information on
0096 configuring PPTP clients and servers to utilize this method.
0097
0098 config PPP_MULTILINK
0099 bool "PPP multilink support"
0100 depends on PPP
0101 help
0102 PPP multilink is a protocol (defined in RFC 1990) which allows you
0103 to combine several (logical or physical) lines into one logical PPP
0104 connection, so that you can utilize your full bandwidth.
0105
0106 This has to be supported at the other end as well and you need a
0107 version of the pppd daemon which understands the multilink protocol.
0108
0109 If unsure, say N.
0110
0111 config PPPOATM
0112 tristate "PPP over ATM"
0113 depends on ATM && PPP
0114 help
0115 Support PPP (Point to Point Protocol) encapsulated in ATM frames.
0116 This implementation does not yet comply with section 8 of RFC2364,
0117 which can lead to bad results if the ATM peer loses state and
0118 changes its encapsulation unilaterally.
0119
0120 config PPPOE
0121 tristate "PPP over Ethernet"
0122 depends on PPP
0123 help
0124 Support for PPP over Ethernet.
0125
0126 This driver requires the latest version of pppd from the CVS
0127 repository at cvs.samba.org. Alternatively, see the
0128 RoaringPenguin package (<http://www.roaringpenguin.com/pppoe>)
0129 which contains instruction on how to use this driver (under
0130 the heading "Kernel mode PPPoE").
0131
0132 config PPTP
0133 tristate "PPP over IPv4 (PPTP)"
0134 depends on PPP && NET_IPGRE_DEMUX
0135 help
0136 Support for PPP over IPv4.(Point-to-Point Tunneling Protocol)
0137
0138 This driver requires pppd plugin to work in client mode or
0139 modified pptpd (poptop) to work in server mode.
0140 See http://accel-pptp.sourceforge.net/ for information how to
0141 utilize this module.
0142
0143 config PPPOL2TP
0144 tristate "PPP over L2TP"
0145 depends on L2TP && PPP
0146 help
0147 Support for PPP-over-L2TP socket family. L2TP is a protocol
0148 used by ISPs and enterprises to tunnel PPP traffic over UDP
0149 tunnels. L2TP is replacing PPTP for VPN uses.
0150 if TTY
0151
0152 config PPP_ASYNC
0153 tristate "PPP support for async serial ports"
0154 depends on PPP
0155 select CRC_CCITT
0156 help
0157 Say Y (or M) here if you want to be able to use PPP over standard
0158 asynchronous serial ports, such as COM1 or COM2 on a PC. If you use
0159 a modem (not a synchronous or ISDN modem) to contact your ISP, you
0160 need this option.
0161
0162 To compile this driver as a module, choose M here.
0163
0164 If unsure, say Y.
0165
0166 config PPP_SYNC_TTY
0167 tristate "PPP support for sync tty ports"
0168 depends on PPP
0169 help
0170 Say Y (or M) here if you want to be able to use PPP over synchronous
0171 (HDLC) tty devices, such as the SyncLink adapter. These devices
0172 are often used for high-speed leased lines like T1/E1.
0173
0174 To compile this driver as a module, choose M here.
0175
0176 endif # TTY
0177
0178 endif # PPP