- apply hunk that fixes an issue with (wrong?) dependencies. Initial notes were:
[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 NSLOOKUP
503         bool "nslookup"
504         default n
505         help
506           nslookup is a tool to query Internet name servers.
507
508 config PING
509         bool "ping"
510         default n
511         help
512           ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to
513           elicit an ICMP ECHO_RESPONSE from a host or gateway.
514
515 config PING6
516         bool "ping6"
517         default n
518         depends on FEATURE_IPV6 && PING
519         help
520           This will give you a ping that can talk IPv6.
521
522 config FEATURE_FANCY_PING
523         bool "Enable fancy ping output"
524         default y
525         depends on PING
526         help
527           Make the output from the ping applet include statistics, and at the
528           same time provide full support for ICMP packets.
529
530 config ROUTE
531         bool "route"
532         default n
533         help
534           Route displays or manipulates the kernel's IP routing tables.
535
536 config TELNET
537         bool "telnet"
538         default n
539         help
540           Telnet is an interface to the TELNET protocol, but is also commonly
541           used to test other simple protocols.
542
543 config FEATURE_TELNET_TTYPE
544         bool "Pass TERM type to remote host"
545         default y
546         depends on TELNET
547         help
548           Setting this option will forward the TERM environment variable to the
549           remote host you are connecting to.  This is useful to make sure that
550           things like ANSI colors and other control sequences behave.
551
552 config FEATURE_TELNET_AUTOLOGIN
553         bool "Pass USER type to remote host"
554         default y
555         depends on TELNET
556         help
557           Setting this option will forward the USER environment variable to the
558           remote host you are connecting to. This is useful when you need to
559           log into a machine without telling the username (autologin). This
560           option enables `-a' and `-l USER' arguments.
561
562 config TELNETD
563         bool "telnetd"
564         default n
565         select FEATURE_SYSLOG
566         help
567           A daemon for the TELNET protocol, allowing you to log onto the host
568           running the daemon.  Please keep in mind that the TELNET protocol
569           sends passwords in plain text.  If you can't afford the space for an
570           SSH daemon and you trust your network, you may say 'y' here.  As a
571           more secure alternative, you should seriously consider installing the
572           very small Dropbear SSH daemon instead:
573                 http://matt.ucc.asn.au/dropbear/dropbear.html
574
575           Note that for busybox telnetd to work you need several things:
576           First of all, your kernel needs:
577                   UNIX98_PTYS=y
578                   DEVPTS_FS=y
579
580           Next, you need a /dev/pts directory on your root filesystem:
581
582                   $ ls -ld /dev/pts
583                   drwxr-xr-x  2 root root 0 Sep 23 13:21 /dev/pts/
584
585           Next you need the pseudo terminal master multiplexer /dev/ptmx:
586
587                   $ ls -la /dev/ptmx
588                   crw-rw-rw-  1 root tty 5, 2 Sep 23 13:55 /dev/ptmx
589
590           Any /dev/ttyp[0-9]* files you may have can be removed.
591           Next, you need to mount the devpts filesystem on /dev/pts using:
592
593                   mount -t devpts devpts /dev/pts
594
595           You need to be sure that Busybox has LOGIN and
596           FEATURE_SUID enabled.  And finally, you should make
597           certain that Busybox has been installed setuid root:
598
599                 chown root.root /bin/busybox
600                 chmod 4755 /bin/busybox
601
602           with all that done, telnetd _should_ work....
603
604
605 config FEATURE_TELNETD_STANDALONE
606         bool "Support standalone telnetd (not inetd only)"
607         default n
608         depends on TELNETD
609         help
610           Selecting this will make telnetd able to run standalone.
611
612 config TFTP
613         bool "tftp"
614         default n
615         help
616           This enables the Trivial File Transfer Protocol client program.  TFTP
617           is usually used for simple, small transfers such as a root image
618           for a network-enabled bootloader.
619
620 config FEATURE_TFTP_GET
621         bool "Enable \"get\" command"
622         default y
623         depends on TFTP
624         help
625           Add support for the GET command within the TFTP client.  This allows
626           a client to retrieve a file from a TFTP server.
627
628 config FEATURE_TFTP_PUT
629         bool "Enable \"put\" command"
630         default y
631         depends on TFTP
632         help
633           Add support for the PUT command within the TFTP client.  This allows
634           a client to transfer a file to a TFTP server.
635
636 config FEATURE_TFTP_BLOCKSIZE
637         bool "Enable \"blocksize\" command"
638         default n
639         depends on TFTP
640         help
641           Allow the client to specify the desired block size for transfers.
642
643 config DEBUG_TFTP
644         bool "Enable debug"
645         default n
646         depends on TFTP
647         help
648           Enable debug settings for tftp.  This is useful if you're running
649           into problems with tftp as the protocol doesn't help you much when
650           you run into problems.
651
652 config TRACEROUTE
653         bool "traceroute"
654         default n
655         help
656           Utility to trace the route of IP packets
657
658 config FEATURE_TRACEROUTE_VERBOSE
659         bool "Enable verbose output"
660         default n
661         depends on TRACEROUTE
662         help
663           Add some verbosity to traceroute.  This includes amongst other things
664           hostnames and ICMP response types.
665
666 config FEATURE_TRACEROUTE_SOURCE_ROUTE
667         bool "Enable loose source route"
668         default n
669         depends on TRACEROUTE
670         help
671           Add option to specify a loose source route gateway
672           (8 maximum).
673
674 config FEATURE_TRACEROUTE_USE_ICMP
675         bool "Use ICMP instead of UDP"
676         default n
677         depends on TRACEROUTE
678         help
679           Add feature to allow for ICMP ECHO instead of UDP datagrams.
680
681 source networking/udhcp/Config.in
682
683 config VCONFIG
684         bool "vconfig"
685         default n
686         help
687           Creates, removes, and configures VLAN interfaces
688
689 config WGET
690         bool "wget"
691         default n
692         help
693           wget is a utility for non-interactive download of files from HTTP,
694           HTTPS, and FTP servers.
695
696 config FEATURE_WGET_STATUSBAR
697         bool "Enable a nifty process meter (+2k)"
698         default y
699         depends on WGET
700         help
701           Enable the transfer progress bar for wget transfers.
702
703 config FEATURE_WGET_AUTHENTICATION
704         bool "Enable HTTP authentication"
705         default y
706         depends on WGET
707         help
708           Support authenticated HTTP transfers.
709
710 config FEATURE_WGET_LONG_OPTIONS
711         bool "Enable long options"
712         default n
713         depends on WGET && GETOPT_LONG
714         help
715           Support long options for the wget applet.
716
717 config ZCIP
718         bool "zcip"
719         default n
720         select FEATURE_SYSLOG
721         help
722           ZCIP provides ZeroConf IPv4 address selection, according to RFC 3927.
723           It's a daemon that allocates and defends a dynamically assigned
724           address on the 169.254/16 network, requiring no system administrator.
725
726           See http://www.zeroconf.org for further details, and "zcip.script"
727           in the busybox examples.
728
729 endmenu