2 # For a description of the syntax of this configuration file,
3 # see scripts/kbuild/config-language.txt.
6 menu "Networking Utilities"
9 bool "Enable IPv6 support"
12 Enable IPv6 support in busybox.
13 This adds IPv6 support in the networking applets.
15 config VERBOSE_RESOLUTION_ERRORS
16 bool "Verbose resolution errors"
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.
27 Manipulate the system ARP cache.
33 Ping hosts by ARP packets.
39 Small and static DNS server daemon.
45 Send a magic packet to wake up sleeping machines.
52 fakeidentd listens on the ident port and returns a predefined
53 fake value on any query.
59 Retrieve a remote file via FTP.
65 Store a remote file via FTP.
67 config FEATURE_FTPGETPUT_LONG_OPTIONS
68 bool "Enable long options in ftpget/ftpput"
70 depends on GETOPT_LONG && (FTPGET || FTPPUT)
72 Support long options for the ftpget/ftpput applet.
78 Show or set the system's host name.
84 Serve web pages via an HTTP server.
86 config FEATURE_HTTPD_RANGES
87 bool "Support 'Ranges:' header"
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.
95 config FEATURE_HTTPD_USE_SENDFILE
96 bool "Use sendfile system call"
100 When enabled, httpd will use the kernel sendfile() function
101 instead of read/write loop.
103 config FEATURE_HTTPD_RELOAD_CONFIG_SIGHUP
104 bool "Support reloading the global config file using hup signal"
108 This option enables processing of SIGHUP to reload cached
109 configuration settings.
111 config FEATURE_HTTPD_SETUID
112 bool "Enable -u <user> option"
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
121 config FEATURE_HTTPD_BASIC_AUTH
122 bool "Enable Basic http Authentication"
126 Utilizes password settings from /etc/httpd.conf for basic
127 authentication on a per url basis.
129 config FEATURE_HTTPD_AUTH_MD5
130 bool "Support MD5 crypted passwords for http Authentication"
132 depends on FEATURE_HTTPD_BASIC_AUTH
134 Enables basic per URL authentication from /etc/httpd.conf
137 config FEATURE_HTTPD_CONFIG_WITH_MIME_TYPES
138 bool "Support loading additional MIME types at run-time"
142 This option enables support for additional MIME types at
143 run-time to be specified in the configuration file.
145 config FEATURE_HTTPD_CGI
146 bool "Support Common Gateway Interface (CGI)"
150 This option allows scripts and executables to be invoked
151 when specific URLs are requested.
153 config FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR
154 bool "Enable support for running scripts through an interpreter"
156 depends on FEATURE_HTTPD_CGI
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
162 *.php:/path/to/your/php
164 config FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV
165 bool "Support the REMOTE_PORT environment variable for CGI"
167 depends on FEATURE_HTTPD_CGI
169 Use of this option can assist scripts in generating
170 references that contain a unique port number.
172 config FEATURE_HTTPD_ENCODE_URL_STR
173 bool "Enable the -e option for shell script CGI simplification."
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 "<Hello World>".
182 config FEATURE_HTTPD_ERROR_PAGES
183 bool "Enable support for custom error pages"
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:
191 in the config file, the server will respond the specified
192 '/path/e404.html' file instead of the terse '404 NOT FOUND'
199 Ifconfig is used to configure the kernel-resident network interfaces.
201 config FEATURE_IFCONFIG_STATUS
202 bool "Enable status reporting output (+7k)"
206 If ifconfig is called with no arguments it will display the status
207 of the currently active interfaces.
209 config FEATURE_IFCONFIG_SLIP
210 bool "Enable slip-specific options \"keepalive\" and \"outfill\""
214 Allow "keepalive" and "outfill" support for SLIP. If you're not
215 planning on using serial lines, leave this unchecked.
217 config FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ
218 bool "Enable options \"mem_start\", \"io_addr\", and \"irq\""
222 Allow the start address for shared memory, start address for I/O,
223 and/or the interrupt line used by the specified device.
225 config FEATURE_IFCONFIG_HW
226 bool "Enable option \"hw\" (ether only)"
230 Set the hardware address of this interface, if the device driver
231 supports this operation. Currently, we only support the 'ether'
234 config FEATURE_IFCONFIG_BROADCAST_PLUS
235 bool "Set the broadcast automatically"
239 Setting this will make ifconfig attempt to find the broadcast
240 automatically if the value '+' is used.
246 Activate or deactivate the specified interfaces. This applet makes
247 use of either "ifconfig" and "route" or the "ip" command to actually
248 configure network interfaces. Therefore, you will probably also want
249 to enable either IFCONFIG and ROUTE, or enable
250 FEATURE_IFUPDOWN_IP and the various IP options. Of
251 course you could use non-busybox versions of these programs, so
252 against my better judgement (since this will surely result in plenty
253 of support questions on the mailing list), I do not force you to
254 enable these additional options. It is up to you to supply either
255 "ifconfig", "route" and "run-parts" or the "ip" command, either
256 via busybox or via standalone utilities.
258 config IFUPDOWN_IFSTATE_PATH
259 string "Absolute path to ifstate file"
260 default "/var/run/ifstate"
263 ifupdown keeps state information in a file called ifstate.
264 Typically it is located in /var/run/ifstate, however
265 some distributions tend to put it in other places
266 (debian, for example, uses /etc/network/run/ifstate).
267 This config option defines location of ifstate.
269 config FEATURE_IFUPDOWN_IP
274 Use the iproute "ip" command to implement "ifup" and "ifdown", rather
275 than the default of using the older 'ifconfig' and 'route' utilities.
277 config FEATURE_IFUPDOWN_IP_BUILTIN
278 bool "Use busybox ip applet"
280 depends on FEATURE_IFUPDOWN_IP
282 select FEATURE_IP_ADDRESS
283 select FEATURE_IP_LINK
284 select FEATURE_IP_ROUTE
286 Use the busybox iproute "ip" applet to implement "ifupdown".
288 If left disabled, you must install the full-blown iproute2
289 utility or the "ifup" and "ifdown" applets will not work.
291 config FEATURE_IFUPDOWN_IFCONFIG_BUILTIN
292 bool "Use busybox ifconfig and route applets"
294 depends on IFUPDOWN && !FEATURE_IFUPDOWN_IP
298 Use the busybox iproute "ifconfig" and "route" applets to
299 implement the "ifup" and "ifdown" utilities.
301 If left disabled, you must install the full-blown ifconfig
302 and route utilities, or the "ifup" and "ifdown" applets will not
305 config FEATURE_IFUPDOWN_IPV4
306 bool "Enable support for IPv4"
310 If you want ifup/ifdown to talk IPv4, leave this on.
312 config FEATURE_IFUPDOWN_IPV6
313 bool "Enable support for IPv6"
315 depends on IFUPDOWN && FEATURE_IPV6
317 If you need support for IPv6, turn this option on.
320 ### config FEATURE_IFUPDOWN_IPX
321 ### bool "Enable support for IPX"
323 ### depends on IFUPDOWN
325 ### If this option is selected you can use busybox to work with IPX
328 config FEATURE_IFUPDOWN_MAPPING
329 bool "Enable mapping support"
333 This enables support for the "mapping" stanza, unless you have
334 a weird network setup you don't need it.
336 config FEATURE_IFUPDOWN_EXTERNAL_DHCP
337 bool "Enable support for external dhcp clients"
341 This enables support for the external dhcp clients. Clients are
342 tried in the following order: dhcpcd, dhclient, pump and udhcpc.
343 Otherwise, if udhcpc applet is enabled, it is used.
344 Otherwise, ifup/ifdown will have no support for DHCP.
349 select FEATURE_SYSLOG
351 Internet superserver daemon
353 config FEATURE_INETD_SUPPORT_BUILTIN_ECHO
354 bool "Support echo service"
358 Echo received data internal inetd service
360 config FEATURE_INETD_SUPPORT_BUILTIN_DISCARD
361 bool "Support discard service"
365 Internet /dev/null internal inetd service
367 config FEATURE_INETD_SUPPORT_BUILTIN_TIME
368 bool "Support time service"
372 Return 32 bit time since 1900 internal inetd service
374 config FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME
375 bool "Support daytime service"
379 Return human-readable time internal inetd service
381 config FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN
382 bool "Support chargen service"
386 Familiar character generator internal inetd service
388 config FEATURE_INETD_RPC
389 bool "Support RPC services"
392 select FEATURE_HAVE_RPC
394 Support Sun-RPC based services
400 The "ip" applet is a TCP/IP interface configuration and routing
401 utility. You generally don't need "ip" to use busybox with
404 config FEATURE_IP_ADDRESS
409 Address manipulation support for the "ip" applet.
411 config FEATURE_IP_LINK
416 Configure network devices with "ip".
418 config FEATURE_IP_ROUTE
423 Add support for routing table management to "ip".
425 config FEATURE_IP_TUNNEL
430 Add support for tunneling commands to "ip".
432 config FEATURE_IP_RULE
437 Add support for rule commands to "ip".
439 config FEATURE_IP_SHORT_FORMS
440 bool "Support short forms of ip commands."
444 Also support short-form of ip <OBJECT> commands:
448 ip tunnel -> iptunnel
451 Say N unless you desparately need the short form of the ip
457 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_ADDRESS
462 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_LINK
467 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_ROUTE
472 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_TUNNEL
477 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_RULE
483 ipcalc takes an IP address and netmask and calculates the
484 resulting broadcast, network, and host range.
486 config FEATURE_IPCALC_FANCY
487 bool "Fancy IPCALC, more options, adds 1 kbyte"
491 Adds the options hostname, prefix and silent to the output of "ipcalc".
493 config FEATURE_IPCALC_LONG_OPTIONS
494 bool "Enable long options"
496 depends on IPCALC && GETOPT_LONG
498 Support long options for the ipcalc applet.
503 select FEATURE_SYSLOG
505 nameif is used to rename network interface by its MAC address.
506 Renamed interfaces MUST be in the down state.
507 It is possible to use a file (default: /etc/mactab)
508 with list of new interface names and MACs.
509 Maximum interface name length: IF_NAMESIZE = 16
510 File fields are separated by space or tab.
513 new_interface_name XX:XX:XX:XX:XX:XX
519 A simple Unix utility which reads and writes data across network
523 bool "Netcat server options (-l)"
527 Allow netcat to act as a server.
530 bool "Netcat extensions (-eiw and filename)"
534 Add -e (support for executing the rest of the command line after
535 making or receiving a successful connection), -i (delay interval for
536 lines sent), -w (timeout for initial connection).
542 netstat prints information about the Linux networking subsystem.
544 config FEATURE_NETSTAT_WIDE
545 bool " Enable wide netstat output"
549 Add support for wide columns. Useful when displaying IPv6 addresses
556 nslookup is a tool to query Internet name servers.
562 ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to
563 elicit an ICMP ECHO_RESPONSE from a host or gateway.
568 depends on FEATURE_IPV6 && PING
570 This will give you a ping that can talk IPv6.
576 Simple network port scanner.
578 config FEATURE_FANCY_PING
579 bool "Enable fancy ping output"
583 Make the output from the ping applet include statistics, and at the
584 same time provide full support for ICMP packets.
590 Route displays or manipulates the kernel's IP routing tables.
596 slattach is a small utility to attach network interfaces to serial lines.
602 Telnet is an interface to the TELNET protocol, but is also commonly
603 used to test other simple protocols.
605 config FEATURE_TELNET_TTYPE
606 bool "Pass TERM type to remote host"
610 Setting this option will forward the TERM environment variable to the
611 remote host you are connecting to. This is useful to make sure that
612 things like ANSI colors and other control sequences behave.
614 config FEATURE_TELNET_AUTOLOGIN
615 bool "Pass USER type to remote host"
619 Setting this option will forward the USER environment variable to the
620 remote host you are connecting to. This is useful when you need to
621 log into a machine without telling the username (autologin). This
622 option enables `-a' and `-l USER' arguments.
627 select FEATURE_SYSLOG
629 A daemon for the TELNET protocol, allowing you to log onto the host
630 running the daemon. Please keep in mind that the TELNET protocol
631 sends passwords in plain text. If you can't afford the space for an
632 SSH daemon and you trust your network, you may say 'y' here. As a
633 more secure alternative, you should seriously consider installing the
634 very small Dropbear SSH daemon instead:
635 http://matt.ucc.asn.au/dropbear/dropbear.html
637 Note that for busybox telnetd to work you need several things:
638 First of all, your kernel needs:
642 Next, you need a /dev/pts directory on your root filesystem:
645 drwxr-xr-x 2 root root 0 Sep 23 13:21 /dev/pts/
647 Next you need the pseudo terminal master multiplexer /dev/ptmx:
650 crw-rw-rw- 1 root tty 5, 2 Sep 23 13:55 /dev/ptmx
652 Any /dev/ttyp[0-9]* files you may have can be removed.
653 Next, you need to mount the devpts filesystem on /dev/pts using:
655 mount -t devpts devpts /dev/pts
657 You need to be sure that Busybox has LOGIN and
658 FEATURE_SUID enabled. And finally, you should make
659 certain that Busybox has been installed setuid root:
661 chown root.root /bin/busybox
662 chmod 4755 /bin/busybox
664 with all that done, telnetd _should_ work....
667 config FEATURE_TELNETD_STANDALONE
668 bool "Support standalone telnetd (not inetd only)"
672 Selecting this will make telnetd able to run standalone.
678 This enables the Trivial File Transfer Protocol client program. TFTP
679 is usually used for simple, small transfers such as a root image
680 for a network-enabled bootloader.
682 config FEATURE_TFTP_GET
683 bool "Enable \"get\" command"
687 Add support for the GET command within the TFTP client. This allows
688 a client to retrieve a file from a TFTP server.
690 config FEATURE_TFTP_PUT
691 bool "Enable \"put\" command"
695 Add support for the PUT command within the TFTP client. This allows
696 a client to transfer a file to a TFTP server.
698 config FEATURE_TFTP_BLOCKSIZE
699 bool "Enable \"blocksize\" command"
703 Allow the client to specify the desired block size for transfers.
710 Enable debug settings for tftp. This is useful if you're running
711 into problems with tftp as the protocol doesn't help you much when
712 you run into problems.
718 Utility to trace the route of IP packets
720 config FEATURE_TRACEROUTE_VERBOSE
721 bool "Enable verbose output"
723 depends on TRACEROUTE
725 Add some verbosity to traceroute. This includes amongst other things
726 hostnames and ICMP response types.
728 config FEATURE_TRACEROUTE_SOURCE_ROUTE
729 bool "Enable loose source route"
731 depends on TRACEROUTE
733 Add option to specify a loose source route gateway
736 config FEATURE_TRACEROUTE_USE_ICMP
737 bool "Use ICMP instead of UDP"
739 depends on TRACEROUTE
741 Add feature to allow for ICMP ECHO instead of UDP datagrams.
743 source networking/udhcp/Config.in
749 Creates, removes, and configures VLAN interfaces
755 wget is a utility for non-interactive download of files from HTTP,
756 HTTPS, and FTP servers.
758 config FEATURE_WGET_STATUSBAR
759 bool "Enable a nifty process meter (+2k)"
763 Enable the transfer progress bar for wget transfers.
765 config FEATURE_WGET_AUTHENTICATION
766 bool "Enable HTTP authentication"
770 Support authenticated HTTP transfers.
772 config FEATURE_WGET_LONG_OPTIONS
773 bool "Enable long options"
775 depends on WGET && GETOPT_LONG
777 Support long options for the wget applet.
782 select FEATURE_SYSLOG
784 ZCIP provides ZeroConf IPv4 address selection, according to RFC 3927.
785 It's a daemon that allocates and defends a dynamically assigned
786 address on the 169.254/16 network, requiring no system administrator.
788 See http://www.zeroconf.org for further details, and "zcip.script"
789 in the busybox examples.