netstat: introduce -W: wide, ipv6-friendly output
[oweals/busybox.git] / networking / Config.in
1 #
2 # For a description of the syntax of this configuration file,
3 # see scripts/kbuild/config-language.txt.
4 #
5
6 menu "Networking Utilities"
7
8 config FEATURE_IPV6
9         bool "Enable IPv6 support"
10         default n
11         help
12           Enable IPv6 support in busybox.
13           This adds IPv6 support in the networking applets.
14
15 config VERBOSE_RESOLUTION_ERRORS
16         bool "Verbose resolution errors"
17         default n
18         help
19           Enable if you are not satisfied with simplistic
20           "can't resolve 'hostname.com'" and want to know more.
21           This may increase size of your executable a bit.
22
23 config ARP
24         bool "arp"
25         default n
26         help
27           Manipulate the system ARP cache
28
29 config ARPING
30         bool "arping"
31         default n
32         help
33           Ping hosts by ARP packets
34
35 config DNSD
36         bool "dnsd"
37         default n
38         help
39           Small and static DNS server daemon.
40
41 config ETHER_WAKE
42         bool "ether-wake"
43         default n
44         help
45           Send a magic packet to wake up sleeping machines.
46
47 config FAKEIDENTD
48         bool "fakeidentd"
49         default n
50         select FEATURE_SYSLOG
51         help
52           fakeidentd listens on the ident port and returns a predefined
53           fake value on any query.
54
55 config FTPGET
56         bool "ftpget"
57         default n
58         help
59           Retrieve a remote file via FTP.
60
61 config FTPPUT
62         bool "ftpput"
63         default n
64         help
65           Store a remote file via FTP.
66
67 config FEATURE_FTPGETPUT_LONG_OPTIONS
68         bool "Enable long options in ftpget/ftpput"
69         default n
70         depends on GETOPT_LONG && (FTPGET || FTPPUT)
71         help
72           Support long options for the ftpget/ftpput applet.
73
74 config HOSTNAME
75         bool "hostname"
76         default n
77         help
78           Show or set the system's host name
79
80 config HTTPD
81         bool "httpd"
82         default n
83         help
84           Serve web pages via an HTTP server.
85
86 config FEATURE_HTTPD_RELOAD_CONFIG_SIGHUP
87         bool "Support reloading the global config file using hup signal"
88         default n
89         depends on HTTPD
90         help
91           This option enables processing of SIGHUP to reload cached
92           configuration settings.
93
94 config FEATURE_HTTPD_SETUID
95         bool "Enable -u <user> option"
96         default n
97         depends on HTTPD
98         help
99           This option allows the server to run as a specific user
100           rather than defaulting to the user that starts the server.
101           Use of this option requires special privileges to change to a
102           different user.
103
104 config FEATURE_HTTPD_BASIC_AUTH
105         bool "Enable Basic http Authentication"
106         default y
107         depends on HTTPD
108         help
109           Utilizes password settings from /etc/httpd.conf for basic
110           authentication on a per url basis.
111
112 config FEATURE_HTTPD_AUTH_MD5
113         bool "Support MD5 crypted passwords for http Authentication"
114         default n
115         depends on FEATURE_HTTPD_BASIC_AUTH
116         help
117           Enables basic per URL authentication from /etc/httpd.conf
118           using md5 passwords.
119
120 config FEATURE_HTTPD_CONFIG_WITH_MIME_TYPES
121         bool "Support loading additional MIME types at run-time"
122         default n
123         depends on HTTPD
124         help
125           This option enables support for additional MIME types at
126           run-time to be specified in the configuration file.
127
128 config FEATURE_HTTPD_CGI
129         bool "Support Common Gateway Interface (CGI)"
130         default y
131         depends on HTTPD
132         help
133           This option allows scripts and executables to be invoked
134           when specific URLs are requested.
135
136 config FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR
137         bool "Enable support for running scripts through an interpreter"
138         default n
139         depends on FEATURE_HTTPD_CGI
140         help
141           This option enables support for running scripts through an
142           interpreter. Turn this on if you want PHP scripts to work
143           properly. You need to supply an addition line in your httpd
144           config file:
145           *.php:/path/to/your/php
146
147 config FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV
148         bool "Support the REMOTE_PORT environment variable for CGI"
149         default n
150         depends on FEATURE_HTTPD_CGI
151         help
152           Use of this option can assist scripts in generating
153           references that contain a unique port number.
154
155 config FEATURE_HTTPD_ENCODE_URL_STR
156         bool "Enable the -e option for shell script CGI simplification."
157         default y
158         depends on HTTPD
159         help
160           This option allows html encoding arbitrary
161           strings for display of the browser.  Output goes to stdout.
162           For example, httpd -e "<Hello World>" as
163           "&#60Hello&#32World&#62".
164
165 config IFCONFIG
166         bool "ifconfig"
167         default n
168         help
169           Ifconfig is used to configure the kernel-resident network interfaces.
170
171 config FEATURE_IFCONFIG_STATUS
172         bool "Enable status reporting output (+7k)"
173         default y
174         depends on IFCONFIG
175         help
176           If ifconfig is called with no arguments it will display the status
177           of the currently active interfaces.
178
179 config FEATURE_IFCONFIG_SLIP
180         bool "Enable slip-specific options \"keepalive\" and \"outfill\""
181         default n
182         depends on IFCONFIG
183         help
184           Allow "keepalive" and "outfill" support for SLIP.  If you're not
185           planning on using serial lines, leave this unchecked.
186
187 config FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ
188         bool "Enable options \"mem_start\", \"io_addr\", and \"irq\""
189         default n
190         depends on IFCONFIG
191         help
192           Allow the start address for shared memory, start address for I/O,
193           and/or the interrupt line used by the specified device.
194
195 config FEATURE_IFCONFIG_HW
196         bool "Enable option \"hw\" (ether only)"
197         default y
198         depends on IFCONFIG
199         help
200           Set the hardware address of this interface, if the device driver
201           supports  this  operation.  Currently, we only support the 'ether'
202           class.
203
204 config FEATURE_IFCONFIG_BROADCAST_PLUS
205         bool "Set the broadcast automatically"
206         default n
207         depends on IFCONFIG
208         help
209           Setting this will make ifconfig attempt to find the broadcast
210           automatically if the value '+' is used.
211
212 config IFUPDOWN
213         bool "ifupdown"
214         default n
215         help
216           Activate or deactivate the specified interfaces.  This applet makes
217           use of either "ifconfig" and "route" or the "ip" command to actually
218           configure network interfaces.  Therefore, you will probably also want
219           to enable either IFCONFIG and ROUTE, or enable
220           FEATURE_IFUPDOWN_IP and the various IP options.  Of
221           course you could use non-busybox versions of these programs, so
222           against my better judgement (since this will surely result in plenty
223           of support questions on the mailing list), I do not force you to
224           enable these additional options.  It is up to you to supply either
225           "ifconfig", "route" and "run-parts" or the "ip" command, either
226           via busybox or via standalone utilities.
227
228 config FEATURE_IFUPDOWN_IP
229         bool "Use ip applet"
230         default n
231         depends on IFUPDOWN
232         help
233           Use the iproute "ip" command to implement "ifup" and "ifdown", rather
234           than the default of using the older 'ifconfig' and 'route' utilities.
235
236 config FEATURE_IFUPDOWN_IP_BUILTIN
237         bool "Use busybox ip applet"
238         default y
239         depends on FEATURE_IFUPDOWN_IP
240         select IP
241         select FEATURE_IP_ADDRESS
242         select FEATURE_IP_LINK
243         select FEATURE_IP_ROUTE
244         help
245           Use the busybox iproute "ip" applet to implement "ifupdown".
246
247           If left disabled, you must install the full-blown iproute2
248           utility or the  "ifup" and "ifdown" applets will not work.
249
250 config FEATURE_IFUPDOWN_IFCONFIG_BUILTIN
251         bool "Use busybox ifconfig and route applets"
252         default y
253         depends on IFUPDOWN && !FEATURE_IFUPDOWN_IP
254         select IFCONFIG
255         select ROUTE
256         help
257           Use the busybox iproute "ifconfig" and "route" applets to
258           implement the "ifup" and "ifdown" utilities.
259
260           If left disabled, you must install the full-blown ifconfig
261           and route utilities, or the  "ifup" and "ifdown" applets will not
262           work.
263
264 config FEATURE_IFUPDOWN_IPV4
265         bool "Enable support for IPv4"
266         default y
267         depends on IFUPDOWN
268         help
269           If you want ifup/ifdown to talk IPv4, leave this on.
270
271 config FEATURE_IFUPDOWN_IPV6
272         bool "Enable support for IPv6"
273         default n
274         depends on IFUPDOWN && FEATURE_IPV6
275         help
276           If you need support for IPv6, turn this option on.
277
278 ### UNUSED
279 ### config FEATURE_IFUPDOWN_IPX
280 ###     bool "Enable support for IPX"
281 ###     default n
282 ###     depends on IFUPDOWN
283 ###     help
284 ###       If this option is selected you can use busybox to work with IPX
285 ###       networks.
286
287 config FEATURE_IFUPDOWN_MAPPING
288         bool "Enable mapping support"
289         default n
290         depends on IFUPDOWN
291         help
292           This enables support for the "mapping" stanza, unless you have
293           a weird network setup you don't need it.
294
295 config FEATURE_IFUPDOWN_EXTERNAL_DHCP
296         bool "Enable support for external dhcp clients"
297         default n
298         depends on IFUPDOWN
299         help
300           This enables support for the external dhcp clients. Clients are
301           tried in the following order: dhcpcd, dhclient, pump and udhcpc.
302           Otherwise, if udhcpc applet is enabled, it is used.
303           Otherwise, ifup/ifdown will have no support for DHCP.
304
305 config INETD
306         bool "inetd"
307         default n
308         select FEATURE_SYSLOG
309         help
310           Internet superserver daemon
311
312 config FEATURE_INETD_SUPPORT_BUILTIN_ECHO
313         bool "Support echo service"
314         default y
315         depends on INETD
316         help
317           Echo received data internal inetd service
318
319 config FEATURE_INETD_SUPPORT_BUILTIN_DISCARD
320         bool "Support discard service"
321         default y
322         depends on INETD
323         help
324           Internet /dev/null internal inetd service
325
326 config FEATURE_INETD_SUPPORT_BUILTIN_TIME
327         bool "Support time service"
328         default y
329         depends on INETD
330         help
331           Return 32 bit time since 1900 internal inetd service
332
333 config FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME
334         bool "Support daytime service"
335         default y
336         depends on INETD
337         help
338           Return human-readable time internal inetd service
339
340 config FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN
341         bool "Support chargen service"
342         default y
343         depends on INETD
344         help
345           Familiar character generator internal inetd service
346
347 config FEATURE_INETD_RPC
348         bool "Support RPC services"
349         default n
350         depends on INETD && FEATURE_HAVE_RPC
351         help
352           Support Sun-RPC based services
353
354 config IP
355         bool "ip"
356         default n
357         help
358           The "ip" applet is a TCP/IP interface configuration and routing
359           utility.  You generally don't need "ip" to use busybox with
360           TCP/IP.
361
362 config FEATURE_IP_ADDRESS
363         bool "ip address"
364         default y
365         depends on IP
366         help
367           Address manipulation support for the "ip" applet.
368
369 config FEATURE_IP_LINK
370         bool "ip link"
371         default y
372         depends on IP
373         help
374           Configure network devices with "ip".
375
376 config FEATURE_IP_ROUTE
377         bool "ip route"
378         default y
379         depends on IP
380         help
381           Add support for routing table management to "ip".
382
383 config FEATURE_IP_TUNNEL
384         bool "ip tunnel"
385         default n
386         depends on IP
387         help
388           Add support for tunneling commands to "ip".
389
390 config FEATURE_IP_RULE
391         bool "ip rule"
392         default n
393         depends on IP
394         help
395           Add support for rule commands to "ip".
396
397 config FEATURE_IP_SHORT_FORMS
398         bool "Support short forms of ip commands."
399         default n
400         depends on IP
401         help
402           Also support short-form of ip <OBJECT> commands:
403           ip addr   -> ipaddr
404           ip link   -> iplink
405           ip route  -> iproute
406           ip tunnel -> iptunnel
407           ip rule   -> iprule
408
409           Say N unless you desparately need the short form of the ip
410           object commands.
411
412 config IPADDR
413         bool
414         default y
415         depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_ADDRESS
416
417 config IPLINK
418         bool
419         default y
420         depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_LINK
421
422 config IPROUTE
423         bool
424         default y
425         depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_ROUTE
426
427 config IPTUNNEL
428         bool
429         default y
430         depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_TUNNEL
431
432 config IPRULE
433         bool
434         default y
435         depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_RULE
436
437 config IPCALC
438         bool "ipcalc"
439         default n
440         help
441           ipcalc takes an IP address and netmask and calculates the
442           resulting broadcast, network, and host range.
443
444 config FEATURE_IPCALC_FANCY
445         bool "Fancy IPCALC, more options, adds 1 kbyte"
446         default y
447         depends on IPCALC
448         help
449           Adds the options hostname, prefix and silent to the output of "ipcalc".
450
451 config FEATURE_IPCALC_LONG_OPTIONS
452         bool "Enable long options"
453         default n
454         depends on IPCALC && GETOPT_LONG
455         help
456           Support long options for the ipcalc applet.
457
458 config NAMEIF
459         bool "nameif"
460         default n
461         select FEATURE_SYSLOG
462         help
463           nameif is used to rename network interface by its MAC address.
464           Renamed interfaces MUST be in the down state.
465           It is possible to use a file (default: /etc/mactab)
466           with list of new interface names and MACs.
467           Maximum interface name length: IF_NAMESIZE = 16
468           File fields are separated by space or tab.
469           File format:
470           # Comment
471           new_interface_name    XX:XX:XX:XX:XX:XX
472
473 config NC
474         bool "nc"
475         default n
476         help
477           A simple Unix utility which reads and writes data across network
478           connections.
479
480 config NC_SERVER
481         bool "Netcat server options (-l)"
482         default n
483         depends on NC
484         help
485           Allow netcat to act as a server.
486
487 config NC_EXTRA
488         bool "Netcat extensions (-eiw and filename)"
489         default n
490         depends on NC
491         help
492           Add -e (support for executing the rest of the command line after
493           making or receiving a successful connection), -i (delay interval for
494           lines sent), -w (timeout for initial connection).
495
496 config NETSTAT
497         bool "netstat"
498         default n
499         help
500           netstat prints information about the Linux networking subsystem.
501
502 config FEATURE_NETSTAT_WIDE
503         bool "  Enable wide netstat output"
504         default n
505         depends on NETSTAT
506         help
507           Add support for wide columns. Useful when displaying IPv6 addresses
508           (-W option).
509
510 config NSLOOKUP
511         bool "nslookup"
512         default n
513         help
514           nslookup is a tool to query Internet name servers.
515
516 config PING
517         bool "ping"
518         default n
519         help
520           ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to
521           elicit an ICMP ECHO_RESPONSE from a host or gateway.
522
523 config PING6
524         bool "ping6"
525         default n
526         depends on FEATURE_IPV6 && PING
527         help
528           This will give you a ping that can talk IPv6.
529
530 config FEATURE_FANCY_PING
531         bool "Enable fancy ping output"
532         default y
533         depends on PING
534         help
535           Make the output from the ping applet include statistics, and at the
536           same time provide full support for ICMP packets.
537
538 config ROUTE
539         bool "route"
540         default n
541         help
542           Route displays or manipulates the kernel's IP routing tables.
543
544 config TELNET
545         bool "telnet"
546         default n
547         help
548           Telnet is an interface to the TELNET protocol, but is also commonly
549           used to test other simple protocols.
550
551 config FEATURE_TELNET_TTYPE
552         bool "Pass TERM type to remote host"
553         default y
554         depends on TELNET
555         help
556           Setting this option will forward the TERM environment variable to the
557           remote host you are connecting to.  This is useful to make sure that
558           things like ANSI colors and other control sequences behave.
559
560 config FEATURE_TELNET_AUTOLOGIN
561         bool "Pass USER type to remote host"
562         default y
563         depends on TELNET
564         help
565           Setting this option will forward the USER environment variable to the
566           remote host you are connecting to. This is useful when you need to
567           log into a machine without telling the username (autologin). This
568           option enables `-a' and `-l USER' arguments.
569
570 config TELNETD
571         bool "telnetd"
572         default n
573         select FEATURE_SYSLOG
574         help
575           A daemon for the TELNET protocol, allowing you to log onto the host
576           running the daemon.  Please keep in mind that the TELNET protocol
577           sends passwords in plain text.  If you can't afford the space for an
578           SSH daemon and you trust your network, you may say 'y' here.  As a
579           more secure alternative, you should seriously consider installing the
580           very small Dropbear SSH daemon instead:
581                 http://matt.ucc.asn.au/dropbear/dropbear.html
582
583           Note that for busybox telnetd to work you need several things:
584           First of all, your kernel needs:
585                   UNIX98_PTYS=y
586                   DEVPTS_FS=y
587
588           Next, you need a /dev/pts directory on your root filesystem:
589
590                   $ ls -ld /dev/pts
591                   drwxr-xr-x  2 root root 0 Sep 23 13:21 /dev/pts/
592
593           Next you need the pseudo terminal master multiplexer /dev/ptmx:
594
595                   $ ls -la /dev/ptmx
596                   crw-rw-rw-  1 root tty 5, 2 Sep 23 13:55 /dev/ptmx
597
598           Any /dev/ttyp[0-9]* files you may have can be removed.
599           Next, you need to mount the devpts filesystem on /dev/pts using:
600
601                   mount -t devpts devpts /dev/pts
602
603           You need to be sure that Busybox has LOGIN and
604           FEATURE_SUID enabled.  And finally, you should make
605           certain that Busybox has been installed setuid root:
606
607                 chown root.root /bin/busybox
608                 chmod 4755 /bin/busybox
609
610           with all that done, telnetd _should_ work....
611
612
613 config FEATURE_TELNETD_STANDALONE
614         bool "Support standalone telnetd (not inetd only)"
615         default n
616         depends on TELNETD
617         help
618           Selecting this will make telnetd able to run standalone.
619
620 config TFTP
621         bool "tftp"
622         default n
623         help
624           This enables the Trivial File Transfer Protocol client program.  TFTP
625           is usually used for simple, small transfers such as a root image
626           for a network-enabled bootloader.
627
628 config FEATURE_TFTP_GET
629         bool "Enable \"get\" command"
630         default y
631         depends on TFTP
632         help
633           Add support for the GET command within the TFTP client.  This allows
634           a client to retrieve a file from a TFTP server.
635
636 config FEATURE_TFTP_PUT
637         bool "Enable \"put\" command"
638         default y
639         depends on TFTP
640         help
641           Add support for the PUT command within the TFTP client.  This allows
642           a client to transfer a file to a TFTP server.
643
644 config FEATURE_TFTP_BLOCKSIZE
645         bool "Enable \"blocksize\" command"
646         default n
647         depends on TFTP
648         help
649           Allow the client to specify the desired block size for transfers.
650
651 config DEBUG_TFTP
652         bool "Enable debug"
653         default n
654         depends on TFTP
655         help
656           Enable debug settings for tftp.  This is useful if you're running
657           into problems with tftp as the protocol doesn't help you much when
658           you run into problems.
659
660 config TRACEROUTE
661         bool "traceroute"
662         default n
663         help
664           Utility to trace the route of IP packets
665
666 config FEATURE_TRACEROUTE_VERBOSE
667         bool "Enable verbose output"
668         default n
669         depends on TRACEROUTE
670         help
671           Add some verbosity to traceroute.  This includes amongst other things
672           hostnames and ICMP response types.
673
674 config FEATURE_TRACEROUTE_SOURCE_ROUTE
675         bool "Enable loose source route"
676         default n
677         depends on TRACEROUTE
678         help
679           Add option to specify a loose source route gateway
680           (8 maximum).
681
682 config FEATURE_TRACEROUTE_USE_ICMP
683         bool "Use ICMP instead of UDP"
684         default n
685         depends on TRACEROUTE
686         help
687           Add feature to allow for ICMP ECHO instead of UDP datagrams.
688
689 source networking/udhcp/Config.in
690
691 config VCONFIG
692         bool "vconfig"
693         default n
694         help
695           Creates, removes, and configures VLAN interfaces
696
697 config WGET
698         bool "wget"
699         default n
700         help
701           wget is a utility for non-interactive download of files from HTTP,
702           HTTPS, and FTP servers.
703
704 config FEATURE_WGET_STATUSBAR
705         bool "Enable a nifty process meter (+2k)"
706         default y
707         depends on WGET
708         help
709           Enable the transfer progress bar for wget transfers.
710
711 config FEATURE_WGET_AUTHENTICATION
712         bool "Enable HTTP authentication"
713         default y
714         depends on WGET
715         help
716           Support authenticated HTTP transfers.
717
718 config FEATURE_WGET_LONG_OPTIONS
719         bool "Enable long options"
720         default n
721         depends on WGET && GETOPT_LONG
722         help
723           Support long options for the wget applet.
724
725 config ZCIP
726         bool "zcip"
727         default n
728         select FEATURE_SYSLOG
729         help
730           ZCIP provides ZeroConf IPv4 address selection, according to RFC 3927.
731           It's a daemon that allocates and defends a dynamically assigned
732           address on the 169.254/16 network, requiring no system administrator.
733
734           See http://www.zeroconf.org for further details, and "zcip.script"
735           in the busybox examples.
736
737 endmenu