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