- don't automatically select run-parts but point out that this is a system-utility...
[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
227           standalone utilities.
228
229 config FEATURE_IFUPDOWN_IP
230         bool "Use ip applet"
231         default n
232         depends on IFUPDOWN
233         help
234           Use the iproute "ip" command to implement "ifup" and "ifdown", rather
235           than the default of using the older 'ifconfig' and 'route' utilities.
236
237 config FEATURE_IFUPDOWN_IP_BUILTIN
238         bool "Use busybox ip applet"
239         default y
240         depends on FEATURE_IFUPDOWN_IP
241         select IP
242         select FEATURE_IP_ADDRESS
243         select FEATURE_IP_LINK
244         select FEATURE_IP_ROUTE
245         help
246           Use the busybox iproute "ip" applet to implement "ifupdown".
247
248           If left disabled, you must install the full-blown iproute2
249           utility or the  "ifup" and "ifdown" applets will not work.
250
251 config FEATURE_IFUPDOWN_IFCONFIG_BUILTIN
252         bool "Use busybox ifconfig and route applets"
253         default y
254         depends on IFUPDOWN && !FEATURE_IFUPDOWN_IP
255         select IFCONFIG
256         select ROUTE
257         help
258           Use the busybox iproute "ifconfig" and "route" applets to
259           implement the "ifup" and "ifdown" utilities.
260
261           If left disabled, you must install the full-blown ifconfig
262           and route utilities, or the  "ifup" and "ifdown" applets will not
263           work.
264
265 config FEATURE_IFUPDOWN_IPV4
266         bool "Enable support for IPv4"
267         default y
268         depends on IFUPDOWN
269         help
270           If you want busybox to talk IPv4, leave this on.
271
272 config FEATURE_IFUPDOWN_IPV6
273         bool "Enable support for IPv6"
274         default n
275         depends on IFUPDOWN && FEATURE_IPV6
276         help
277           If you need support for IPv6, turn this option on.
278
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 INETD
296         bool "inetd"
297         default n
298         select FEATURE_SYSLOG
299         help
300           Internet superserver daemon
301
302 config FEATURE_INETD_SUPPORT_BUILTIN_ECHO
303         bool "Support echo service"
304         default y
305         depends on INETD
306         help
307           Echo received data internal inetd service
308
309 config FEATURE_INETD_SUPPORT_BUILTIN_DISCARD
310         bool "Support discard service"
311         default y
312         depends on INETD
313         help
314           Internet /dev/null internal inetd service
315
316 config FEATURE_INETD_SUPPORT_BUILTIN_TIME
317         bool "Support time service"
318         default y
319         depends on INETD
320         help
321           Return 32 bit time since 1900 internal inetd service
322
323 config FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME
324         bool "Support daytime service"
325         default y
326         depends on INETD
327         help
328           Return human-readable time internal inetd service
329
330 config FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN
331         bool "Support chargen service"
332         default y
333         depends on INETD
334         help
335           Familiar character generator internal inetd service
336
337 config FEATURE_INETD_RPC
338         bool "Support RPC services"
339         default n
340         depends on INETD && FEATURE_HAVE_RPC
341         help
342           Support Sun-RPC based services
343
344 config IP
345         bool "ip"
346         default n
347         help
348           The "ip" applet is a TCP/IP interface configuration and routing
349           utility.  You generally don't need "ip" to use busybox with
350           TCP/IP.
351
352 config FEATURE_IP_ADDRESS
353         bool "ip address"
354         default y
355         depends on IP
356         help
357           Address manipulation support for the "ip" applet.
358
359 config FEATURE_IP_LINK
360         bool "ip link"
361         default y
362         depends on IP
363         help
364           Configure network devices with "ip".
365
366 config FEATURE_IP_ROUTE
367         bool "ip route"
368         default y
369         depends on IP
370         help
371           Add support for routing table management to "ip".
372
373 config FEATURE_IP_TUNNEL
374         bool "ip tunnel"
375         default n
376         depends on IP
377         help
378           Add support for tunneling commands to "ip".
379
380 config FEATURE_IP_RULE
381         bool "ip rule"
382         default n
383         depends on IP
384         help
385           Add support for rule commands to "ip".
386
387 config FEATURE_IP_SHORT_FORMS
388         bool "Support short forms of ip commands."
389         default n
390         depends on IP
391         help
392           Also support short-form of ip <OBJECT> commands:
393           ip addr   -> ipaddr
394           ip link   -> iplink
395           ip route  -> iproute
396           ip tunnel -> iptunnel
397           ip rule   -> iprule
398
399           Say N unless you desparately need the short form of the ip
400           object commands.
401
402 config IPADDR
403         bool
404         default y
405         depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_ADDRESS
406
407 config IPLINK
408         bool
409         default y
410         depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_LINK
411
412 config IPROUTE
413         bool
414         default y
415         depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_ROUTE
416
417 config IPTUNNEL
418         bool
419         default y
420         depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_TUNNEL
421
422 config IPRULE
423         bool
424         default y
425         depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_RULE
426
427 config IPCALC
428         bool "ipcalc"
429         default n
430         help
431           ipcalc takes an IP address and netmask and calculates the
432           resulting broadcast, network, and host range.
433
434 config FEATURE_IPCALC_FANCY
435         bool "Fancy IPCALC, more options, adds 1 kbyte"
436         default y
437         depends on IPCALC
438         help
439           Adds the options hostname, prefix and silent to the output of "ipcalc".
440
441 config FEATURE_IPCALC_LONG_OPTIONS
442         bool "Enable long options"
443         default n
444         depends on IPCALC && GETOPT_LONG
445         help
446           Support long options for the ipcalc applet.
447
448 config NAMEIF
449         bool "nameif"
450         default n
451         select FEATURE_SYSLOG
452         help
453           nameif is used to rename network interface by its MAC address.
454           Renamed interfaces MUST be in the down state.
455           It is possible to use a file (default: /etc/mactab)
456           with list of new interface names and MACs.
457           Maximum interface name length: IF_NAMESIZE = 16
458           File fields are separated by space or tab.
459           File format:
460           # Comment
461           new_interface_name    XX:XX:XX:XX:XX:XX
462
463 config NC
464         bool "nc"
465         default n
466         help
467           A simple Unix utility which reads and writes data across network
468           connections.
469
470 config NC_SERVER
471         bool "Netcat server options (-lp)"
472         default n
473         depends on NC
474         help
475           Allow netcat to act as a server.
476
477 config NC_EXTRA
478         bool "Netcat extensions (-eiw and filename)"
479         default n
480         depends on NC
481         help
482           Add -e (support for executing the rest of the command line after
483           making or receiving a successful connection), -i (delay interval for
484           lines sent), -w (timeout for initial connection).
485
486 config NETSTAT
487         bool "netstat"
488         default n
489         help
490           netstat prints information about the Linux networking subsystem.
491
492 config NSLOOKUP
493         bool "nslookup"
494         default n
495         help
496           nslookup is a tool to query Internet name servers.
497
498 config PING
499         bool "ping"
500         default n
501         help
502           ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to
503           elicit an ICMP ECHO_RESPONSE from a host or gateway.
504
505 config PING6
506         bool "ping6"
507         default n
508         depends on FEATURE_IPV6 && PING
509         help
510           This will give you a ping that can talk IPv6.
511
512 config FEATURE_FANCY_PING
513         bool "Enable fancy ping output"
514         default y
515         depends on PING
516         help
517           Make the output from the ping 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_LONG_OPTIONS
701         bool "Enable long options"
702         default n
703         depends on WGET && GETOPT_LONG
704         help
705           Support long options for the wget applet.
706
707 config ZCIP
708         bool "zcip"
709         default n
710         select FEATURE_SYSLOG
711         help
712           ZCIP provides ZeroConf IPv4 address selection, according to RFC 3927.
713           It's a daemon that allocates and defends a dynamically assigned
714           address on the 169.254/16 network, requiring no system administrator.
715
716           See http://www.zeroconf.org for further details, and "zcip.script"
717           in the busybox examples.
718
719 endmenu