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