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