xref: /OK3568_Linux_fs/kernel/drivers/net/ppp/Kconfig (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1*4882a593Smuzhiyun# SPDX-License-Identifier: GPL-2.0-only
2*4882a593Smuzhiyun#
3*4882a593Smuzhiyun# PPP network device configuration
4*4882a593Smuzhiyun#
5*4882a593Smuzhiyun
6*4882a593Smuzhiyunconfig PPP
7*4882a593Smuzhiyun	tristate "PPP (point-to-point protocol) support"
8*4882a593Smuzhiyun	select SLHC
9*4882a593Smuzhiyun	help
10*4882a593Smuzhiyun	  PPP (Point to Point Protocol) is a newer and better SLIP.  It serves
11*4882a593Smuzhiyun	  the same purpose: sending Internet traffic over telephone (and other
12*4882a593Smuzhiyun	  serial) lines.  Ask your access provider if they support it, because
13*4882a593Smuzhiyun	  otherwise you can't use it; most Internet access providers these
14*4882a593Smuzhiyun	  days support PPP rather than SLIP.
15*4882a593Smuzhiyun
16*4882a593Smuzhiyun	  To use PPP, you need an additional program called pppd as described
17*4882a593Smuzhiyun	  in the PPP-HOWTO, available at
18*4882a593Smuzhiyun	  <http://www.tldp.org/docs.html#howto>.  Make sure that you have
19*4882a593Smuzhiyun	  the version of pppd recommended in <file:Documentation/Changes>.
20*4882a593Smuzhiyun	  The PPP option enlarges your kernel by about 16 KB.
21*4882a593Smuzhiyun
22*4882a593Smuzhiyun	  There are actually two versions of PPP: the traditional PPP for
23*4882a593Smuzhiyun	  asynchronous lines, such as regular analog phone lines, and
24*4882a593Smuzhiyun	  synchronous PPP which can be used over digital ISDN lines for
25*4882a593Smuzhiyun	  example.  If you want to use PPP over phone lines or other
26*4882a593Smuzhiyun	  asynchronous serial lines, you need to say Y (or M) here and also to
27*4882a593Smuzhiyun	  the next option, "PPP support for async serial ports".  For PPP over
28*4882a593Smuzhiyun	  synchronous lines, you should say Y (or M) here and to "Support
29*4882a593Smuzhiyun	  synchronous PPP", below.
30*4882a593Smuzhiyun
31*4882a593Smuzhiyun	  If you said Y to "Version information on all symbols" above, then
32*4882a593Smuzhiyun	  you cannot compile the PPP driver into the kernel; you can then only
33*4882a593Smuzhiyun	  compile it as a module. To compile this driver as a module, choose M
34*4882a593Smuzhiyun	  here. The module will be called ppp_generic.
35*4882a593Smuzhiyun
36*4882a593Smuzhiyunif PPP
37*4882a593Smuzhiyun
38*4882a593Smuzhiyunconfig PPP_BSDCOMP
39*4882a593Smuzhiyun	tristate "PPP BSD-Compress compression"
40*4882a593Smuzhiyun	depends on PPP
41*4882a593Smuzhiyun	help
42*4882a593Smuzhiyun	  Support for the BSD-Compress compression method for PPP, which uses
43*4882a593Smuzhiyun	  the LZW compression method to compress each PPP packet before it is
44*4882a593Smuzhiyun	  sent over the wire. The machine at the other end of the PPP link
45*4882a593Smuzhiyun	  (usually your ISP) has to support the BSD-Compress compression
46*4882a593Smuzhiyun	  method as well for this to be useful. Even if they don't support it,
47*4882a593Smuzhiyun	  it is safe to say Y here.
48*4882a593Smuzhiyun
49*4882a593Smuzhiyun	  The PPP Deflate compression method ("PPP Deflate compression",
50*4882a593Smuzhiyun	  above) is preferable to BSD-Compress, because it compresses better
51*4882a593Smuzhiyun	  and is patent-free.
52*4882a593Smuzhiyun
53*4882a593Smuzhiyun	  Note that the BSD compression code will always be compiled as a
54*4882a593Smuzhiyun	  module; it is called bsd_comp and will show up in the directory
55*4882a593Smuzhiyun	  modules once you have said "make modules". If unsure, say N.
56*4882a593Smuzhiyun
57*4882a593Smuzhiyunconfig PPP_DEFLATE
58*4882a593Smuzhiyun	tristate "PPP Deflate compression"
59*4882a593Smuzhiyun	depends on PPP
60*4882a593Smuzhiyun	select ZLIB_INFLATE
61*4882a593Smuzhiyun	select ZLIB_DEFLATE
62*4882a593Smuzhiyun	help
63*4882a593Smuzhiyun	  Support for the Deflate compression method for PPP, which uses the
64*4882a593Smuzhiyun	  Deflate algorithm (the same algorithm that gzip uses) to compress
65*4882a593Smuzhiyun	  each PPP packet before it is sent over the wire.  The machine at the
66*4882a593Smuzhiyun	  other end of the PPP link (usually your ISP) has to support the
67*4882a593Smuzhiyun	  Deflate compression method as well for this to be useful.  Even if
68*4882a593Smuzhiyun	  they don't support it, it is safe to say Y here.
69*4882a593Smuzhiyun
70*4882a593Smuzhiyun	  To compile this driver as a module, choose M here.
71*4882a593Smuzhiyun
72*4882a593Smuzhiyunconfig PPP_FILTER
73*4882a593Smuzhiyun	bool "PPP filtering"
74*4882a593Smuzhiyun	depends on PPP
75*4882a593Smuzhiyun	help
76*4882a593Smuzhiyun	  Say Y here if you want to be able to filter the packets passing over
77*4882a593Smuzhiyun	  PPP interfaces.  This allows you to control which packets count as
78*4882a593Smuzhiyun	  activity (i.e. which packets will reset the idle timer or bring up
79*4882a593Smuzhiyun	  a demand-dialed link) and which packets are to be dropped entirely.
80*4882a593Smuzhiyun	  You need to say Y here if you wish to use the pass-filter and
81*4882a593Smuzhiyun	  active-filter options to pppd.
82*4882a593Smuzhiyun
83*4882a593Smuzhiyun	  If unsure, say N.
84*4882a593Smuzhiyun
85*4882a593Smuzhiyunconfig PPP_MPPE
86*4882a593Smuzhiyun	tristate "PPP MPPE compression (encryption)"
87*4882a593Smuzhiyun	depends on PPP
88*4882a593Smuzhiyun	select CRYPTO
89*4882a593Smuzhiyun	select CRYPTO_SHA1
90*4882a593Smuzhiyun	select CRYPTO_LIB_ARC4
91*4882a593Smuzhiyun	help
92*4882a593Smuzhiyun	  Support for the MPPE Encryption protocol, as employed by the
93*4882a593Smuzhiyun	  Microsoft Point-to-Point Tunneling Protocol.
94*4882a593Smuzhiyun
95*4882a593Smuzhiyun	  See http://pptpclient.sourceforge.net/ for information on
96*4882a593Smuzhiyun	  configuring PPTP clients and servers to utilize this method.
97*4882a593Smuzhiyun
98*4882a593Smuzhiyunconfig PPP_MULTILINK
99*4882a593Smuzhiyun	bool "PPP multilink support"
100*4882a593Smuzhiyun	depends on PPP
101*4882a593Smuzhiyun	help
102*4882a593Smuzhiyun	  PPP multilink is a protocol (defined in RFC 1990) which allows you
103*4882a593Smuzhiyun	  to combine several (logical or physical) lines into one logical PPP
104*4882a593Smuzhiyun	  connection, so that you can utilize your full bandwidth.
105*4882a593Smuzhiyun
106*4882a593Smuzhiyun	  This has to be supported at the other end as well and you need a
107*4882a593Smuzhiyun	  version of the pppd daemon which understands the multilink protocol.
108*4882a593Smuzhiyun
109*4882a593Smuzhiyun	  If unsure, say N.
110*4882a593Smuzhiyun
111*4882a593Smuzhiyunconfig PPPOATM
112*4882a593Smuzhiyun	tristate "PPP over ATM"
113*4882a593Smuzhiyun	depends on ATM && PPP
114*4882a593Smuzhiyun	help
115*4882a593Smuzhiyun	  Support PPP (Point to Point Protocol) encapsulated in ATM frames.
116*4882a593Smuzhiyun	  This implementation does not yet comply with section 8 of RFC2364,
117*4882a593Smuzhiyun	  which can lead to bad results if the ATM peer loses state and
118*4882a593Smuzhiyun	  changes its encapsulation unilaterally.
119*4882a593Smuzhiyun
120*4882a593Smuzhiyunconfig PPPOE
121*4882a593Smuzhiyun	tristate "PPP over Ethernet"
122*4882a593Smuzhiyun	depends on PPP
123*4882a593Smuzhiyun	help
124*4882a593Smuzhiyun	  Support for PPP over Ethernet.
125*4882a593Smuzhiyun
126*4882a593Smuzhiyun	  This driver requires the latest version of pppd from the CVS
127*4882a593Smuzhiyun	  repository at cvs.samba.org.  Alternatively, see the
128*4882a593Smuzhiyun	  RoaringPenguin package (<http://www.roaringpenguin.com/pppoe>)
129*4882a593Smuzhiyun	  which contains instruction on how to use this driver (under
130*4882a593Smuzhiyun	  the heading "Kernel mode PPPoE").
131*4882a593Smuzhiyun
132*4882a593Smuzhiyunconfig PPTP
133*4882a593Smuzhiyun	tristate "PPP over IPv4 (PPTP)"
134*4882a593Smuzhiyun	depends on PPP && NET_IPGRE_DEMUX
135*4882a593Smuzhiyun	help
136*4882a593Smuzhiyun	  Support for PPP over IPv4.(Point-to-Point Tunneling Protocol)
137*4882a593Smuzhiyun
138*4882a593Smuzhiyun	  This driver requires pppd plugin to work in client mode or
139*4882a593Smuzhiyun	  modified pptpd (poptop) to work in server mode.
140*4882a593Smuzhiyun	  See http://accel-pptp.sourceforge.net/ for information how to
141*4882a593Smuzhiyun	  utilize this module.
142*4882a593Smuzhiyun
143*4882a593Smuzhiyunconfig PPPOL2TP
144*4882a593Smuzhiyun	tristate "PPP over L2TP"
145*4882a593Smuzhiyun	depends on L2TP && PPP
146*4882a593Smuzhiyun	help
147*4882a593Smuzhiyun	  Support for PPP-over-L2TP socket family. L2TP is a protocol
148*4882a593Smuzhiyun	  used by ISPs and enterprises to tunnel PPP traffic over UDP
149*4882a593Smuzhiyun	  tunnels. L2TP is replacing PPTP for VPN uses.
150*4882a593Smuzhiyunif TTY
151*4882a593Smuzhiyun
152*4882a593Smuzhiyunconfig PPP_ASYNC
153*4882a593Smuzhiyun	tristate "PPP support for async serial ports"
154*4882a593Smuzhiyun	depends on PPP
155*4882a593Smuzhiyun	select CRC_CCITT
156*4882a593Smuzhiyun	help
157*4882a593Smuzhiyun	  Say Y (or M) here if you want to be able to use PPP over standard
158*4882a593Smuzhiyun	  asynchronous serial ports, such as COM1 or COM2 on a PC.  If you use
159*4882a593Smuzhiyun	  a modem (not a synchronous or ISDN modem) to contact your ISP, you
160*4882a593Smuzhiyun	  need this option.
161*4882a593Smuzhiyun
162*4882a593Smuzhiyun	  To compile this driver as a module, choose M here.
163*4882a593Smuzhiyun
164*4882a593Smuzhiyun	  If unsure, say Y.
165*4882a593Smuzhiyun
166*4882a593Smuzhiyunconfig PPP_SYNC_TTY
167*4882a593Smuzhiyun	tristate "PPP support for sync tty ports"
168*4882a593Smuzhiyun	depends on PPP
169*4882a593Smuzhiyun	help
170*4882a593Smuzhiyun	  Say Y (or M) here if you want to be able to use PPP over synchronous
171*4882a593Smuzhiyun	  (HDLC) tty devices, such as the SyncLink adapter. These devices
172*4882a593Smuzhiyun	  are often used for high-speed leased lines like T1/E1.
173*4882a593Smuzhiyun
174*4882a593Smuzhiyun	  To compile this driver as a module, choose M here.
175*4882a593Smuzhiyun
176*4882a593Smuzhiyunendif # TTY
177*4882a593Smuzhiyun
178*4882a593Smuzhiyunendif # PPP
179