Blame view

net/Kconfig 10.9 KB
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
1
2
3
  #
  # Network configuration
  #
031cf19e6   Robert P. J. Day   net: Make "networ...
4
  menuconfig NET
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
5
  	bool "Networking support"
e9cc8bdda   Geert Uytterhoeven   netlink: Move net...
6
  	select NLATTR
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
7
8
9
10
  	---help---
  	  Unless you really know what you are doing, you should say Y here.
  	  The reason is that some programs need kernel networking support even
  	  when running on a stand-alone machine that isn't connected to any
d5950b435   Sam Ravnborg   [NET]: add a top-...
11
12
13
  	  other computer.
  	  
  	  If you are upgrading from an older kernel, you
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
14
15
16
17
18
19
20
21
  	  should consider updating your networking tools too because changes
  	  in the kernel and the tools often go hand in hand. The tools are
  	  contained in the package net-tools, the location and version number
  	  of which are given in <file:Documentation/Changes>.
  
  	  For a general introduction to Linux networking, it is highly
  	  recommended to read the NET-HOWTO, available from
  	  <http://www.tldp.org/docs.html#howto>.
6a2e9b738   Sam Ravnborg   [NET]: move confi...
22
  if NET
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
23

1dacc76d0   Johannes Berg   net/compat/wext: ...
24
25
26
27
28
29
30
31
32
  config WANT_COMPAT_NETLINK_MESSAGES
  	bool
  	help
  	  This option can be selected by other options that need compat
  	  netlink messages.
  
  config COMPAT_NETLINK_MESSAGES
  	def_bool y
  	depends on COMPAT
40b53d8a4   David S. Miller   wireless: Make CO...
33
  	depends on WEXT_CORE || WANT_COMPAT_NETLINK_MESSAGES
1dacc76d0   Johannes Berg   net/compat/wext: ...
34
35
36
37
38
39
40
41
42
  	help
  	  This option makes it possible to send different netlink messages
  	  to tasks depending on whether the task is a compat task or not. To
  	  achieve this, you need to set skb_shinfo(skb)->frag_list to the
  	  compat skb before sending the skb, the netlink code will sort out
  	  which message to actually pass to the task.
  
  	  Newly written code should NEVER need this option but do
  	  compat-independent messages instead!
6a2e9b738   Sam Ravnborg   [NET]: move confi...
43
  menu "Networking options"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
44

6a2e9b738   Sam Ravnborg   [NET]: move confi...
45
46
47
  source "net/packet/Kconfig"
  source "net/unix/Kconfig"
  source "net/xfrm/Kconfig"
2356f4cb1   Martin Schwidefsky   [S390]: Rewrite o...
48
  source "net/iucv/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
49
50
51
52
53
54
  
  config INET
  	bool "TCP/IP networking"
  	---help---
  	  These are the protocols used on the Internet and on most local
  	  Ethernets. It is highly recommended to say Y here (this will enlarge
cf80efc27   YOSHIFUJI Hideaki   [IPV4]: Fix size ...
55
  	  your kernel by about 400 KB), since some programs (e.g. the X window
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
  	  system) use TCP/IP even if your machine is not connected to any
  	  other computer. You will get the so-called loopback device which
  	  allows you to ping yourself (great fun, that!).
  
  	  For an excellent introduction to Linux networking, please read the
  	  Linux Networking HOWTO, available from
  	  <http://www.tldp.org/docs.html#howto>.
  
  	  If you say Y here and also to "/proc file system support" and
  	  "Sysctl support" below, you can change various aspects of the
  	  behavior of the TCP/IP code by writing to the (virtual) files in
  	  /proc/sys/net/ipv4/*; the options are explained in the file
  	  <file:Documentation/networking/ip-sysctl.txt>.
  
  	  Short answer: say Y.
6a2e9b738   Sam Ravnborg   [NET]: move confi...
71
  if INET
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
72
  source "net/ipv4/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
73
  source "net/ipv6/Kconfig"
38c94377a   Paul Moore   [NETLABEL]: Fix b...
74
  source "net/netlabel/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
75

6a2e9b738   Sam Ravnborg   [NET]: move confi...
76
  endif # if INET
984bc16cc   James Morris   [SECMARK]: Add se...
77
78
79
80
81
82
  config NETWORK_SECMARK
  	bool "Security Marking"
  	help
  	  This enables security marking of network packets, similar
  	  to nfmark, but designated for security purposes.
  	  If you are unsure how to answer this question, answer N.
c1f19b51d   Richard Cochran   net: support time...
83
84
85
86
87
88
89
90
91
  config NETWORK_PHY_TIMESTAMPING
  	bool "Timestamping in PHY devices"
  	depends on EXPERIMENTAL
  	help
  	  This allows timestamping of network packets by PHYs with
  	  hardware timestamping capabilities. This option adds some
  	  overhead in the transmit and receive paths.
  
  	  If you are unsure how to answer this question, answer N.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
92
  menuconfig NETFILTER
ef91fd522   Pablo Neira Ayuso   [NETFILTER]: remo...
93
  	bool "Network packet filtering framework (Netfilter)"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
  	---help---
  	  Netfilter is a framework for filtering and mangling network packets
  	  that pass through your Linux box.
  
  	  The most common use of packet filtering is to run your Linux box as
  	  a firewall protecting a local network from the Internet. The type of
  	  firewall provided by this kernel support is called a "packet
  	  filter", which means that it can reject individual network packets
  	  based on type, source, destination etc. The other kind of firewall,
  	  a "proxy-based" one, is more secure but more intrusive and more
  	  bothersome to set up; it inspects the network traffic much more
  	  closely, modifies it and has knowledge about the higher level
  	  protocols, which a packet filter lacks. Moreover, proxy-based
  	  firewalls often require changes to the programs running on the local
  	  clients. Proxy-based firewalls don't need support by the kernel, but
  	  they are often combined with a packet filter, which only works if
  	  you say Y here.
  
  	  You should also say Y here if you intend to use your Linux box as
  	  the gateway to the Internet for a local network of machines without
  	  globally valid IP addresses. This is called "masquerading": if one
  	  of the computers on your local network wants to send something to
  	  the outside, your box can "masquerade" as that computer, i.e. it
  	  forwards the traffic to the intended outside destination, but
  	  modifies the packets to make it look like they came from the
  	  firewall box itself. It works both ways: if the outside host
  	  replies, the Linux box will silently forward the traffic to the
  	  correct local computer. This way, the computers on your local net
  	  are completely invisible to the outside world, even though they can
  	  reach the outside and can receive replies. It is even possible to
  	  run globally visible servers from within a masqueraded local network
  	  using a mechanism called portforwarding. Masquerading is also often
  	  called NAT (Network Address Translation).
  
  	  Another use of Netfilter is in transparent proxying: if a machine on
  	  the local network tries to connect to an outside host, your Linux
  	  box can transparently forward the traffic to a local server,
  	  typically a caching proxy server.
  
  	  Yet another use of Netfilter is building a bridging firewall. Using
  	  a bridge with Network packet filtering enabled makes iptables "see"
  	  the bridged traffic. For filtering on the lower network and Ethernet
  	  protocols over the bridge, use ebtables (under bridge netfilter
  	  configuration).
  
  	  Various modules exist for netfilter which replace the previous
  	  masquerading (ipmasqadm), packet filtering (ipchains), transparent
  	  proxying, and portforwarding mechanisms. Please see
  	  <file:Documentation/Changes> under "iptables" for the location of
  	  these packages.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
144
145
146
147
148
149
150
151
  if NETFILTER
  
  config NETFILTER_DEBUG
  	bool "Network packet filtering debugging"
  	depends on NETFILTER
  	help
  	  You can say Y here if you want to get additional messages useful in
  	  debugging the netfilter code.
33b8e7760   Patrick McHardy   [NETFILTER]: Add ...
152
153
154
155
156
157
  config NETFILTER_ADVANCED
  	bool "Advanced netfilter configuration"
  	depends on NETFILTER
  	default y
  	help
  	  If you say Y here you can select between all the netfilter modules.
692105b8a   Matt LaPlante   trivial: fix typo...
158
  	  If you say N the more unusual ones will not be shown and the
33b8e7760   Patrick McHardy   [NETFILTER]: Add ...
159
160
161
  	  basic ones needed by most people will default to 'M'.
  
  	  If unsure, say Y.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
162
163
164
  config BRIDGE_NETFILTER
  	bool "Bridged IP/ARP packets filtering"
  	depends on BRIDGE && NETFILTER && INET
33b8e7760   Patrick McHardy   [NETFILTER]: Add ...
165
  	depends on NETFILTER_ADVANCED
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
166
167
168
169
170
171
172
173
174
  	default y
  	---help---
  	  Enabling this option will let arptables resp. iptables see bridged
  	  ARP resp. IP traffic. If you want a bridging firewall, you probably
  	  want this option enabled.
  	  Enabling or disabling this option doesn't enable or disable
  	  ebtables.
  
  	  If unsure, say N.
9eb0eec74   Harald Welte   [NETFILTER] move ...
175
  source "net/netfilter/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
176
177
178
179
180
181
  source "net/ipv4/netfilter/Kconfig"
  source "net/ipv6/netfilter/Kconfig"
  source "net/decnet/netfilter/Kconfig"
  source "net/bridge/netfilter/Kconfig"
  
  endif
7c657876b   Arnaldo Carvalho de Melo   [DCCP]: Initial i...
182
  source "net/dccp/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
183
  source "net/sctp/Kconfig"
fe17f84f5   Andy Grover   RDS: Kconfig and ...
184
  source "net/rds/Kconfig"
1e63e681e   Per Liden   [TIPC] Group prot...
185
  source "net/tipc/Kconfig"
6a2e9b738   Sam Ravnborg   [NET]: move confi...
186
  source "net/atm/Kconfig"
fd558d186   James Chapman   l2tp: Split pppol...
187
  source "net/l2tp/Kconfig"
a19800d70   Patrick McHardy   net: Add STP demu...
188
  source "net/802/Kconfig"
6a2e9b738   Sam Ravnborg   [NET]: move confi...
189
  source "net/bridge/Kconfig"
91da11f87   Lennert Buytenhek   net: Distributed ...
190
  source "net/dsa/Kconfig"
6a2e9b738   Sam Ravnborg   [NET]: move confi...
191
  source "net/8021q/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
192
  source "net/decnet/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
193
  source "net/llc/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
194
  source "net/ipx/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
195
  source "drivers/net/appletalk/Kconfig"
6a2e9b738   Sam Ravnborg   [NET]: move confi...
196
197
  source "net/x25/Kconfig"
  source "net/lapb/Kconfig"
6a2e9b738   Sam Ravnborg   [NET]: move confi...
198
  source "net/wanrouter/Kconfig"
5075138d6   remi.denis-courmont@nokia   Phonet: move to N...
199
  source "net/phonet/Kconfig"
9ec767160   Sergey Lapin   net: add IEEE 802...
200
  source "net/ieee802154/Kconfig"
1010f5401   alex.bluesman.smirnov@gmail.com   mac802154: alloca...
201
  source "net/mac802154/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
202
  source "net/sched/Kconfig"
2f90b8657   Alexander Duyck   ixgbe: this patch...
203
  source "net/dcb/Kconfig"
1a4240f47   Wang Lei   DNS: Separate out...
204
  source "net/dns_resolver/Kconfig"
c6c8fea29   Sven Eckelmann   net: Add batman-a...
205
  source "net/batman-adv/Kconfig"
ccb1352e7   Jesse Gross   net: Add Open vSw...
206
  source "net/openvswitch/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
207

df3345457   Eric Dumazet   rps: add CONFIG_RPS
208
209
  config RPS
  	boolean
6dcbc1229   David S. Miller   net: RPS needs to...
210
  	depends on SMP && SYSFS && USE_GENERIC_SMP_HELPERS
df3345457   Eric Dumazet   rps: add CONFIG_RPS
211
  	default y
c445477d7   Ben Hutchings   net: RPS: Enable ...
212
213
214
215
216
  config RFS_ACCEL
  	boolean
  	depends on RPS && GENERIC_HARDIRQS
  	select CPU_RMAP
  	default y
bf2641451   Tom Herbert   xps: Add CONFIG_XPS
217
218
219
220
  config XPS
  	boolean
  	depends on SMP && SYSFS && USE_GENERIC_SMP_HELPERS
  	default y
5bc1421e3   Neil Horman   net: add network ...
221
222
223
224
225
226
  config NETPRIO_CGROUP
  	tristate "Network priority cgroup"
  	depends on CGROUPS
  	---help---
  	  Cgroup subsystem for use in assigning processes to network priorities on
  	  a per-interface basis
114cf5802   Tom Herbert   bql: Byte queue l...
227
228
229
230
231
  config BQL
  	boolean
  	depends on SYSFS
  	select DQL
  	default y
0a14842f5   Eric Dumazet   net: filter: Just...
232
233
234
  config BPF_JIT
  	bool "enable BPF Just In Time compiler"
  	depends on HAVE_BPF_JIT
b6202f978   Eric Dumazet   bpf: depends on M...
235
  	depends on MODULES
0a14842f5   Eric Dumazet   net: filter: Just...
236
237
238
239
240
241
  	---help---
  	  Berkeley Packet Filter filtering capabilities are normally handled
  	  by an interpreter. This option allows kernel to generate a native
  	  code when filter is loaded in memory. This should speedup
  	  packet sniffing (libpcap/tcpdump). Note : Admin should enable
  	  this feature changing /proc/sys/net/core/bpf_jit_enable
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
  menu "Network testing"
  
  config NET_PKTGEN
  	tristate "Packet Generator (USE WITH CAUTION)"
  	depends on PROC_FS
  	---help---
  	  This module will inject preconfigured packets, at a configurable
  	  rate, out of a given interface.  It is used for network interface
  	  stress testing and performance analysis.  If you don't understand
  	  what was just said, you don't need it: say N.
  
  	  Documentation on how to use the packet generator can be found
  	  at <file:Documentation/networking/pktgen.txt>.
  
  	  To compile this code as a module, choose M here: the
  	  module will be called pktgen.
a42e9d6ce   Stephen Hemminger   [TCP]: TCP Probe ...
258
259
260
261
262
  config NET_TCPPROBE
  	tristate "TCP connection probing"
  	depends on INET && EXPERIMENTAL && PROC_FS && KPROBES
  	---help---
  	This module allows for capturing the changes to TCP connection
9dadaa19c   Dave Jones   [NET]: NET_TCPPRO...
263
  	state in response to incoming packets. It is used for debugging
a42e9d6ce   Stephen Hemminger   [TCP]: TCP Probe ...
264
265
  	TCP congestion avoidance modules. If you don't understand
  	what was just said, you don't need it: say N.
82fe7c924   Grant Grundler   [NET] Kconfig: fi...
266
  	Documentation on how to use TCP connection probing can be found
c996d8b9a   Michael Witten   Docs/Kconfig: Upd...
267
268
269
  	at:
  	
  	  http://www.linuxfoundation.org/collaborate/workgroups/networking/tcpprobe
a42e9d6ce   Stephen Hemminger   [TCP]: TCP Probe ...
270
271
272
  
  	To compile this code as a module, choose M here: the
  	module will be called tcp_probe.
273ae44b9   Neil Horman   Network Drop Moni...
273
  config NET_DROP_MONITOR
cad456d5a   Neil Horman   drop_monitor: con...
274
  	tristate "Network packet drop alerting service"
273ae44b9   Neil Horman   Network Drop Moni...
275
276
277
278
279
280
281
282
  	depends on INET && EXPERIMENTAL && TRACEPOINTS
  	---help---
  	This feature provides an alerting service to userspace in the
  	event that packets are discarded in the network stack.  Alerts
  	are broadcast via netlink socket to any listening user space
  	process.  If you don't need network drop alerts, or if you are ok
  	just checking the various proc files and other utilities for
  	drop statistics, say N here.
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
283
284
285
  endmenu
  
  endmenu
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
286
  source "net/ax25/Kconfig"
0d66548a1   Oliver Hartkopp   [CAN]: Add PF_CAN...
287
  source "net/can/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
288
  source "net/irda/Kconfig"
1da177e4c   Linus Torvalds   Linux-2.6.12-rc2
289
  source "net/bluetooth/Kconfig"
17926a793   David Howells   [AF_RXRPC]: Provi...
290
  source "net/rxrpc/Kconfig"
d86b5e0e6   Adrian Bunk   [PATCH] net/: fix...
291

14c0b97dd   Thomas Graf   [NET]: Protocol I...
292
293
  config FIB_RULES
  	bool
5442060c0   Robert P. J. Day   WIRELESS: Make wi...
294
295
  menuconfig WIRELESS
  	bool "Wireless"
f54bfc0e3   Martin Schwidefsky   [S390] Kconfig: n...
296
  	depends on !S390
5442060c0   Robert P. J. Day   WIRELESS: Make wi...
297
298
299
  	default y
  
  if WIRELESS
2a5e1c0eb   Johannes Berg   [WIRELESS]: Refac...
300
301
  
  source "net/wireless/Kconfig"
f0706e828   Jiri Benc   [MAC80211]: Add m...
302
  source "net/mac80211/Kconfig"
2a5e1c0eb   Johannes Berg   [WIRELESS]: Refac...
303

5442060c0   Robert P. J. Day   WIRELESS: Make wi...
304
  endif # WIRELESS
2a5e1c0eb   Johannes Berg   [WIRELESS]: Refac...
305

b0c83ae1d   Inaky Perez-Gonzalez   wimax: Makefile, ...
306
  source "net/wimax/Kconfig"
cf4328cd9   Ivo van Doorn   [NET]: rfkill: ad...
307
  source "net/rfkill/Kconfig"
bd238fb43   Latchesar Ionkov   9p: Reorganizatio...
308
  source "net/9p/Kconfig"
3908c6902   Sjur Braendeland   net-caif: add CAI...
309
  source "net/caif/Kconfig"
3d14c5d2b   Yehuda Sadeh   ceph: factor out ...
310
  source "net/ceph/Kconfig"
3e256b8f8   Lauro Ramos Venancio   NFC: add nfc subs...
311
  source "net/nfc/Kconfig"
3908c6902   Sjur Braendeland   net-caif: add CAI...
312

cf4328cd9   Ivo van Doorn   [NET]: rfkill: ad...
313

6a2e9b738   Sam Ravnborg   [NET]: move confi...
314
  endif   # if NET
e47b65b03   Sam Ravnborg   net: drop NET dep...
315
316
317
318
  
  # Used by archs to tell that they support BPF_JIT
  config HAVE_BPF_JIT
  	bool