start_stop_daemon: NOMMU fixes, round 2 by Alex Landau <landau_alex@yahoo.com>
[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 additional 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 IFUPDOWN_IFSTATE_PATH
229         string "Absolute path to ifstate file"
230         default "/var/run/ifstate"
231         help
232           ifupdown keeps state information in a file called ifstate.
233           Typically it is located in /var/run/ifstate, however
234           some distributions tend to put it in other places
235           (debian, for example, uses /etc/network/run/ifstate).
236           This config option defines location of ifstate.
237
238 config FEATURE_IFUPDOWN_IP
239         bool "Use ip applet"
240         default n
241         depends on IFUPDOWN
242         help
243           Use the iproute "ip" command to implement "ifup" and "ifdown", rather
244           than the default of using the older 'ifconfig' and 'route' utilities.
245
246 config FEATURE_IFUPDOWN_IP_BUILTIN
247         bool "Use busybox ip applet"
248         default y
249         depends on FEATURE_IFUPDOWN_IP
250         select IP
251         select FEATURE_IP_ADDRESS
252         select FEATURE_IP_LINK
253         select FEATURE_IP_ROUTE
254         help
255           Use the busybox iproute "ip" applet to implement "ifupdown".
256
257           If left disabled, you must install the full-blown iproute2
258           utility or the  "ifup" and "ifdown" applets will not work.
259
260 config FEATURE_IFUPDOWN_IFCONFIG_BUILTIN
261         bool "Use busybox ifconfig and route applets"
262         default y
263         depends on IFUPDOWN && !FEATURE_IFUPDOWN_IP
264         select IFCONFIG
265         select ROUTE
266         help
267           Use the busybox iproute "ifconfig" and "route" applets to
268           implement the "ifup" and "ifdown" utilities.
269
270           If left disabled, you must install the full-blown ifconfig
271           and route utilities, or the  "ifup" and "ifdown" applets will not
272           work.
273
274 config FEATURE_IFUPDOWN_IPV4
275         bool "Enable support for IPv4"
276         default y
277         depends on IFUPDOWN
278         help
279           If you want ifup/ifdown to talk IPv4, leave this on.
280
281 config FEATURE_IFUPDOWN_IPV6
282         bool "Enable support for IPv6"
283         default n
284         depends on IFUPDOWN && FEATURE_IPV6
285         help
286           If you need support for IPv6, turn this option on.
287
288 ### UNUSED
289 ### config FEATURE_IFUPDOWN_IPX
290 ###     bool "Enable support for IPX"
291 ###     default n
292 ###     depends on IFUPDOWN
293 ###     help
294 ###       If this option is selected you can use busybox to work with IPX
295 ###       networks.
296
297 config FEATURE_IFUPDOWN_MAPPING
298         bool "Enable mapping support"
299         default n
300         depends on IFUPDOWN
301         help
302           This enables support for the "mapping" stanza, unless you have
303           a weird network setup you don't need it.
304
305 config FEATURE_IFUPDOWN_EXTERNAL_DHCP
306         bool "Enable support for external dhcp clients"
307         default n
308         depends on IFUPDOWN
309         help
310           This enables support for the external dhcp clients. Clients are
311           tried in the following order: dhcpcd, dhclient, pump and udhcpc.
312           Otherwise, if udhcpc applet is enabled, it is used.
313           Otherwise, ifup/ifdown will have no support for DHCP.
314
315 config INETD
316         bool "inetd"
317         default n
318         select FEATURE_SYSLOG
319         help
320           Internet superserver daemon
321
322 config FEATURE_INETD_SUPPORT_BUILTIN_ECHO
323         bool "Support echo service"
324         default y
325         depends on INETD
326         help
327           Echo received data internal inetd service
328
329 config FEATURE_INETD_SUPPORT_BUILTIN_DISCARD
330         bool "Support discard service"
331         default y
332         depends on INETD
333         help
334           Internet /dev/null internal inetd service
335
336 config FEATURE_INETD_SUPPORT_BUILTIN_TIME
337         bool "Support time service"
338         default y
339         depends on INETD
340         help
341           Return 32 bit time since 1900 internal inetd service
342
343 config FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME
344         bool "Support daytime service"
345         default y
346         depends on INETD
347         help
348           Return human-readable time internal inetd service
349
350 config FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN
351         bool "Support chargen service"
352         default y
353         depends on INETD
354         help
355           Familiar character generator internal inetd service
356
357 config FEATURE_INETD_RPC
358         bool "Support RPC services"
359         default n
360         depends on INETD
361         select FEATURE_HAVE_RPC
362         help
363           Support Sun-RPC based services
364
365 config IP
366         bool "ip"
367         default n
368         help
369           The "ip" applet is a TCP/IP interface configuration and routing
370           utility.  You generally don't need "ip" to use busybox with
371           TCP/IP.
372
373 config FEATURE_IP_ADDRESS
374         bool "ip address"
375         default y
376         depends on IP
377         help
378           Address manipulation support for the "ip" applet.
379
380 config FEATURE_IP_LINK
381         bool "ip link"
382         default y
383         depends on IP
384         help
385           Configure network devices with "ip".
386
387 config FEATURE_IP_ROUTE
388         bool "ip route"
389         default y
390         depends on IP
391         help
392           Add support for routing table management to "ip".
393
394 config FEATURE_IP_TUNNEL
395         bool "ip tunnel"
396         default n
397         depends on IP
398         help
399           Add support for tunneling commands to "ip".
400
401 config FEATURE_IP_RULE
402         bool "ip rule"
403         default n
404         depends on IP
405         help
406           Add support for rule commands to "ip".
407
408 config FEATURE_IP_SHORT_FORMS
409         bool "Support short forms of ip commands."
410         default n
411         depends on IP
412         help
413           Also support short-form of ip <OBJECT> commands:
414           ip addr   -> ipaddr
415           ip link   -> iplink
416           ip route  -> iproute
417           ip tunnel -> iptunnel
418           ip rule   -> iprule
419
420           Say N unless you desparately need the short form of the ip
421           object commands.
422
423 config IPADDR
424         bool
425         default y
426         depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_ADDRESS
427
428 config IPLINK
429         bool
430         default y
431         depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_LINK
432
433 config IPROUTE
434         bool
435         default y
436         depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_ROUTE
437
438 config IPTUNNEL
439         bool
440         default y
441         depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_TUNNEL
442
443 config IPRULE
444         bool
445         default y
446         depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_RULE
447
448 config IPCALC
449         bool "ipcalc"
450         default n
451         help
452           ipcalc takes an IP address and netmask and calculates the
453           resulting broadcast, network, and host range.
454
455 config FEATURE_IPCALC_FANCY
456         bool "Fancy IPCALC, more options, adds 1 kbyte"
457         default y
458         depends on IPCALC
459         help
460           Adds the options hostname, prefix and silent to the output of "ipcalc".
461
462 config FEATURE_IPCALC_LONG_OPTIONS
463         bool "Enable long options"
464         default n
465         depends on IPCALC && GETOPT_LONG
466         help
467           Support long options for the ipcalc applet.
468
469 config NAMEIF
470         bool "nameif"
471         default n
472         select FEATURE_SYSLOG
473         help
474           nameif is used to rename network interface by its MAC address.
475           Renamed interfaces MUST be in the down state.
476           It is possible to use a file (default: /etc/mactab)
477           with list of new interface names and MACs.
478           Maximum interface name length: IF_NAMESIZE = 16
479           File fields are separated by space or tab.
480           File format:
481           # Comment
482           new_interface_name    XX:XX:XX:XX:XX:XX
483
484 config NC
485         bool "nc"
486         default n
487         help
488           A simple Unix utility which reads and writes data across network
489           connections.
490
491 config NC_SERVER
492         bool "Netcat server options (-l)"
493         default n
494         depends on NC
495         help
496           Allow netcat to act as a server.
497
498 config NC_EXTRA
499         bool "Netcat extensions (-eiw and filename)"
500         default n
501         depends on NC
502         help
503           Add -e (support for executing the rest of the command line after
504           making or receiving a successful connection), -i (delay interval for
505           lines sent), -w (timeout for initial connection).
506
507 config NETSTAT
508         bool "netstat"
509         default n
510         help
511           netstat prints information about the Linux networking subsystem.
512
513 config FEATURE_NETSTAT_WIDE
514         bool "  Enable wide netstat output"
515         default n
516         depends on NETSTAT
517         help
518           Add support for wide columns. Useful when displaying IPv6 addresses
519           (-W option).
520
521 config NSLOOKUP
522         bool "nslookup"
523         default n
524         help
525           nslookup is a tool to query Internet name servers.
526
527 config PING
528         bool "ping"
529         default n
530         help
531           ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to
532           elicit an ICMP ECHO_RESPONSE from a host or gateway.
533
534 config PING6
535         bool "ping6"
536         default n
537         depends on FEATURE_IPV6 && PING
538         help
539           This will give you a ping that can talk IPv6.
540
541 config PSCAN
542         bool "pscan"
543         default n
544         help
545           Simple network port scanner.
546
547 config FEATURE_FANCY_PING
548         bool "Enable fancy ping output"
549         default y
550         depends on PING
551         help
552           Make the output from the ping applet include statistics, and at the
553           same time provide full support for ICMP packets.
554
555 config ROUTE
556         bool "route"
557         default n
558         help
559           Route displays or manipulates the kernel's IP routing tables.
560
561 config SLATTACH
562         bool "slattach"
563         default n
564         help
565           slattach is a small utility to attach network interfaces to serial lines.
566
567 config TELNET
568         bool "telnet"
569         default n
570         help
571           Telnet is an interface to the TELNET protocol, but is also commonly
572           used to test other simple protocols.
573
574 config FEATURE_TELNET_TTYPE
575         bool "Pass TERM type to remote host"
576         default y
577         depends on TELNET
578         help
579           Setting this option will forward the TERM environment variable to the
580           remote host you are connecting to.  This is useful to make sure that
581           things like ANSI colors and other control sequences behave.
582
583 config FEATURE_TELNET_AUTOLOGIN
584         bool "Pass USER type to remote host"
585         default y
586         depends on TELNET
587         help
588           Setting this option will forward the USER environment variable to the
589           remote host you are connecting to. This is useful when you need to
590           log into a machine without telling the username (autologin). This
591           option enables `-a' and `-l USER' arguments.
592
593 config TELNETD
594         bool "telnetd"
595         default n
596         select FEATURE_SYSLOG
597         help
598           A daemon for the TELNET protocol, allowing you to log onto the host
599           running the daemon.  Please keep in mind that the TELNET protocol
600           sends passwords in plain text.  If you can't afford the space for an
601           SSH daemon and you trust your network, you may say 'y' here.  As a
602           more secure alternative, you should seriously consider installing the
603           very small Dropbear SSH daemon instead:
604                 http://matt.ucc.asn.au/dropbear/dropbear.html
605
606           Note that for busybox telnetd to work you need several things:
607           First of all, your kernel needs:
608                   UNIX98_PTYS=y
609                   DEVPTS_FS=y
610
611           Next, you need a /dev/pts directory on your root filesystem:
612
613                   $ ls -ld /dev/pts
614                   drwxr-xr-x  2 root root 0 Sep 23 13:21 /dev/pts/
615
616           Next you need the pseudo terminal master multiplexer /dev/ptmx:
617
618                   $ ls -la /dev/ptmx
619                   crw-rw-rw-  1 root tty 5, 2 Sep 23 13:55 /dev/ptmx
620
621           Any /dev/ttyp[0-9]* files you may have can be removed.
622           Next, you need to mount the devpts filesystem on /dev/pts using:
623
624                   mount -t devpts devpts /dev/pts
625
626           You need to be sure that Busybox has LOGIN and
627           FEATURE_SUID enabled.  And finally, you should make
628           certain that Busybox has been installed setuid root:
629
630                 chown root.root /bin/busybox
631                 chmod 4755 /bin/busybox
632
633           with all that done, telnetd _should_ work....
634
635
636 config FEATURE_TELNETD_STANDALONE
637         bool "Support standalone telnetd (not inetd only)"
638         default n
639         depends on TELNETD
640         help
641           Selecting this will make telnetd able to run standalone.
642
643 config TFTP
644         bool "tftp"
645         default n
646         help
647           This enables the Trivial File Transfer Protocol client program.  TFTP
648           is usually used for simple, small transfers such as a root image
649           for a network-enabled bootloader.
650
651 config FEATURE_TFTP_GET
652         bool "Enable \"get\" command"
653         default y
654         depends on TFTP
655         help
656           Add support for the GET command within the TFTP client.  This allows
657           a client to retrieve a file from a TFTP server.
658
659 config FEATURE_TFTP_PUT
660         bool "Enable \"put\" command"
661         default y
662         depends on TFTP
663         help
664           Add support for the PUT command within the TFTP client.  This allows
665           a client to transfer a file to a TFTP server.
666
667 config FEATURE_TFTP_BLOCKSIZE
668         bool "Enable \"blocksize\" command"
669         default n
670         depends on TFTP
671         help
672           Allow the client to specify the desired block size for transfers.
673
674 config DEBUG_TFTP
675         bool "Enable debug"
676         default n
677         depends on TFTP
678         help
679           Enable debug settings for tftp.  This is useful if you're running
680           into problems with tftp as the protocol doesn't help you much when
681           you run into problems.
682
683 config TRACEROUTE
684         bool "traceroute"
685         default n
686         help
687           Utility to trace the route of IP packets
688
689 config FEATURE_TRACEROUTE_VERBOSE
690         bool "Enable verbose output"
691         default n
692         depends on TRACEROUTE
693         help
694           Add some verbosity to traceroute.  This includes amongst other things
695           hostnames and ICMP response types.
696
697 config FEATURE_TRACEROUTE_SOURCE_ROUTE
698         bool "Enable loose source route"
699         default n
700         depends on TRACEROUTE
701         help
702           Add option to specify a loose source route gateway
703           (8 maximum).
704
705 config FEATURE_TRACEROUTE_USE_ICMP
706         bool "Use ICMP instead of UDP"
707         default n
708         depends on TRACEROUTE
709         help
710           Add feature to allow for ICMP ECHO instead of UDP datagrams.
711
712 source networking/udhcp/Config.in
713
714 config VCONFIG
715         bool "vconfig"
716         default n
717         help
718           Creates, removes, and configures VLAN interfaces
719
720 config WGET
721         bool "wget"
722         default n
723         help
724           wget is a utility for non-interactive download of files from HTTP,
725           HTTPS, and FTP servers.
726
727 config FEATURE_WGET_STATUSBAR
728         bool "Enable a nifty process meter (+2k)"
729         default y
730         depends on WGET
731         help
732           Enable the transfer progress bar for wget transfers.
733
734 config FEATURE_WGET_AUTHENTICATION
735         bool "Enable HTTP authentication"
736         default y
737         depends on WGET
738         help
739           Support authenticated HTTP transfers.
740
741 config FEATURE_WGET_LONG_OPTIONS
742         bool "Enable long options"
743         default n
744         depends on WGET && GETOPT_LONG
745         help
746           Support long options for the wget applet.
747
748 config ZCIP
749         bool "zcip"
750         default n
751         select FEATURE_SYSLOG
752         help
753           ZCIP provides ZeroConf IPv4 address selection, according to RFC 3927.
754           It's a daemon that allocates and defends a dynamically assigned
755           address on the 169.254/16 network, requiring no system administrator.
756
757           See http://www.zeroconf.org for further details, and "zcip.script"
758           in the busybox examples.
759
760 endmenu