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 FEATURE_PREFER_IPV4_ADDRESS
16 bool "Preferentially use IPv4 addresses from DNS queries"
18 depends on FEATURE_IPV6
20 Use IPv4 address of network host if it has one.
22 If this option is off, the first returned address will be used.
23 This may cause problems when your DNS server is IPv6-capable and
24 is returning IPv6 host addresses too. If IPv6 address
25 precedes IPv4 one in DNS reply, busybox network applets
26 (e.g. wget) will use IPv6 address. On an IPv6-incapable host
27 or network applets will fail to connect to the host
30 config VERBOSE_RESOLUTION_ERRORS
31 bool "Verbose resolution errors"
34 Enable if you are not satisfied with simplistic
35 "can't resolve 'hostname.com'" and want to know more.
36 This may increase size of your executable a bit.
42 Manipulate the system ARP cache.
48 Ping hosts by ARP packets.
54 Manage ethernet bridges.
55 Supports addbr/delbr and addif/delif.
57 config FEATURE_BRCTL_FANCY
62 Add support for extended option like:
63 setageing, setfd, sethello, setmaxage,
64 setpathcost, setportprio, setbridgeprio,
66 This adds about 600 bytes.
68 config FEATURE_BRCTL_SHOW
69 bool "Support show, showmac and showstp"
71 depends on BRCTL && FEATURE_BRCTL_FANCY
73 Add support for option which prints the current config:
74 showmacs, showstp, show
80 Small and static DNS server daemon.
86 Send a magic packet to wake up sleeping machines.
93 fakeidentd listens on the ident port and returns a predefined
94 fake value on any query.
100 Retrieve a remote file via FTP.
106 Store a remote file via FTP.
108 config FEATURE_FTPGETPUT_LONG_OPTIONS
109 bool "Enable long options in ftpget/ftpput"
111 depends on GETOPT_LONG && (FTPGET || FTPPUT)
113 Support long options for the ftpget/ftpput applet.
119 Show or set the system's host name.
125 Serve web pages via an HTTP server.
127 config FEATURE_HTTPD_RANGES
128 bool "Support 'Ranges:' header"
132 Makes httpd emit "Accept-Ranges: bytes" header and understand
133 "Range: bytes=NNN-[MMM]" header. Allows for resuming interrupted
134 downloads, seeking in multimedia players etc.
136 config FEATURE_HTTPD_USE_SENDFILE
137 bool "Use sendfile system call"
141 When enabled, httpd will use the kernel sendfile() function
142 instead of read/write loop.
144 config FEATURE_HTTPD_RELOAD_CONFIG_SIGHUP
145 bool "Support reloading of global config file on HUP signal"
149 This option enables processing of SIGHUP to reload cached
150 configuration settings.
152 config FEATURE_HTTPD_SETUID
153 bool "Enable -u <user> option"
157 This option allows the server to run as a specific user
158 rather than defaulting to the user that starts the server.
159 Use of this option requires special privileges to change to a
162 config FEATURE_HTTPD_BASIC_AUTH
163 bool "Enable Basic http Authentication"
167 Utilizes password settings from /etc/httpd.conf for basic
168 authentication on a per url basis.
170 config FEATURE_HTTPD_AUTH_MD5
171 bool "Support MD5 crypted passwords for http Authentication"
173 depends on FEATURE_HTTPD_BASIC_AUTH
175 Enables basic per URL authentication from /etc/httpd.conf
178 config FEATURE_HTTPD_CONFIG_WITH_MIME_TYPES
179 bool "Support loading additional MIME types at run-time"
183 This option enables support for additional MIME types at
184 run-time to be specified in the configuration file.
186 config FEATURE_HTTPD_CGI
187 bool "Support Common Gateway Interface (CGI)"
191 This option allows scripts and executables to be invoked
192 when specific URLs are requested.
194 config FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR
195 bool "Support for running scripts through an interpreter"
197 depends on FEATURE_HTTPD_CGI
199 This option enables support for running scripts through an
200 interpreter. Turn this on if you want PHP scripts to work
201 properly. You need to supply an additional line in your httpd
203 *.php:/path/to/your/php
205 config FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV
206 bool "Set REMOTE_PORT environment variable for CGI"
208 depends on FEATURE_HTTPD_CGI
210 Use of this option can assist scripts in generating
211 references that contain a unique port number.
213 config FEATURE_HTTPD_ENCODE_URL_STR
214 bool "Enable -e option (useful for CGIs written as shell scripts)"
218 This option allows html encoding of arbitrary strings for display
219 by the browser. Output goes to stdout.
220 For example, httpd -e "<Hello World>" produces
221 "<Hello World>".
223 config FEATURE_HTTPD_ERROR_PAGES
224 bool "Support for custom error pages"
228 This option allows you to define custom error pages in
229 the configuration file instead of the default HTTP status
230 error pages. For instance, if you add the line:
232 in the config file, the server will respond the specified
233 '/path/e404.html' file instead of the terse '404 NOT FOUND'
236 config FEATURE_HTTPD_PROXY
237 bool "Support for reverse proxy"
241 This option allows you to define URLs that will be forwarded
242 to another HTTP server. To setup add the following line to the
244 P:/url/:http://hostname[:port]/new/path/
245 Then a request to /url/myfile will be forwarded to
246 http://hostname[:port]/new/path/myfile.
252 Ifconfig is used to configure the kernel-resident network interfaces.
254 config FEATURE_IFCONFIG_STATUS
255 bool "Enable status reporting output (+7k)"
259 If ifconfig is called with no arguments it will display the status
260 of the currently active interfaces.
262 config FEATURE_IFCONFIG_SLIP
263 bool "Enable slip-specific options \"keepalive\" and \"outfill\""
267 Allow "keepalive" and "outfill" support for SLIP. If you're not
268 planning on using serial lines, leave this unchecked.
270 config FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ
271 bool "Enable options \"mem_start\", \"io_addr\", and \"irq\""
275 Allow the start address for shared memory, start address for I/O,
276 and/or the interrupt line used by the specified device.
278 config FEATURE_IFCONFIG_HW
279 bool "Enable option \"hw\" (ether only)"
283 Set the hardware address of this interface, if the device driver
284 supports this operation. Currently, we only support the 'ether'
287 config FEATURE_IFCONFIG_BROADCAST_PLUS
288 bool "Set the broadcast automatically"
292 Setting this will make ifconfig attempt to find the broadcast
293 automatically if the value '+' is used.
299 Userspace application to bind several interfaces
300 to a logical interface (use with kernel bonding driver).
306 Activate or deactivate the specified interfaces. This applet makes
307 use of either "ifconfig" and "route" or the "ip" command to actually
308 configure network interfaces. Therefore, you will probably also want
309 to enable either IFCONFIG and ROUTE, or enable
310 FEATURE_IFUPDOWN_IP and the various IP options. Of
311 course you could use non-busybox versions of these programs, so
312 against my better judgement (since this will surely result in plenty
313 of support questions on the mailing list), I do not force you to
314 enable these additional options. It is up to you to supply either
315 "ifconfig", "route" and "run-parts" or the "ip" command, either
316 via busybox or via standalone utilities.
318 config IFUPDOWN_IFSTATE_PATH
319 string "Absolute path to ifstate file"
320 default "/var/run/ifstate"
323 ifupdown keeps state information in a file called ifstate.
324 Typically it is located in /var/run/ifstate, however
325 some distributions tend to put it in other places
326 (debian, for example, uses /etc/network/run/ifstate).
327 This config option defines location of ifstate.
329 config FEATURE_IFUPDOWN_IP
334 Use the iproute "ip" command to implement "ifup" and "ifdown", rather
335 than the default of using the older 'ifconfig' and 'route' utilities.
337 config FEATURE_IFUPDOWN_IP_BUILTIN
338 bool "Use busybox ip applet"
340 depends on FEATURE_IFUPDOWN_IP
342 select FEATURE_IP_ADDRESS
343 select FEATURE_IP_LINK
344 select FEATURE_IP_ROUTE
346 Use the busybox iproute "ip" applet to implement "ifupdown".
348 If left disabled, you must install the full-blown iproute2
349 utility or the "ifup" and "ifdown" applets will not work.
351 config FEATURE_IFUPDOWN_IFCONFIG_BUILTIN
352 bool "Use busybox ifconfig and route applets"
354 depends on IFUPDOWN && !FEATURE_IFUPDOWN_IP
358 Use the busybox iproute "ifconfig" and "route" applets to
359 implement the "ifup" and "ifdown" utilities.
361 If left disabled, you must install the full-blown ifconfig
362 and route utilities, or the "ifup" and "ifdown" applets will not
365 config FEATURE_IFUPDOWN_IPV4
366 bool "Support for IPv4"
370 If you want ifup/ifdown to talk IPv4, leave this on.
372 config FEATURE_IFUPDOWN_IPV6
373 bool "Support for IPv6"
375 depends on IFUPDOWN && FEATURE_IPV6
377 If you need support for IPv6, turn this option on.
380 ###config FEATURE_IFUPDOWN_IPX
381 ### bool "Support for IPX"
383 ### depends on IFUPDOWN
385 ### If this option is selected you can use busybox to work with IPX
388 config FEATURE_IFUPDOWN_MAPPING
389 bool "Enable mapping support"
393 This enables support for the "mapping" stanza, unless you have
394 a weird network setup you don't need it.
396 config FEATURE_IFUPDOWN_EXTERNAL_DHCP
397 bool "Support for external dhcp clients"
401 This enables support for the external dhcp clients. Clients are
402 tried in the following order: dhcpcd, dhclient, pump and udhcpc.
403 Otherwise, if udhcpc applet is enabled, it is used.
404 Otherwise, ifup/ifdown will have no support for DHCP.
409 select FEATURE_SYSLOG
411 Internet superserver daemon
413 config FEATURE_INETD_SUPPORT_BUILTIN_ECHO
414 bool "Support echo service"
418 Echo received data internal inetd service
420 config FEATURE_INETD_SUPPORT_BUILTIN_DISCARD
421 bool "Support discard service"
425 Internet /dev/null internal inetd service
427 config FEATURE_INETD_SUPPORT_BUILTIN_TIME
428 bool "Support time service"
432 Return 32 bit time since 1900 internal inetd service
434 config FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME
435 bool "Support daytime service"
439 Return human-readable time internal inetd service
441 config FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN
442 bool "Support chargen service"
446 Familiar character generator internal inetd service
448 config FEATURE_INETD_RPC
449 bool "Support RPC services"
452 select FEATURE_HAVE_RPC
454 Support Sun-RPC based services
460 The "ip" applet is a TCP/IP interface configuration and routing
461 utility. You generally don't need "ip" to use busybox with
464 config FEATURE_IP_ADDRESS
469 Address manipulation support for the "ip" applet.
471 config FEATURE_IP_LINK
476 Configure network devices with "ip".
478 config FEATURE_IP_ROUTE
483 Add support for routing table management to "ip".
485 config FEATURE_IP_TUNNEL
490 Add support for tunneling commands to "ip".
492 config FEATURE_IP_RULE
497 Add support for rule commands to "ip".
499 config FEATURE_IP_SHORT_FORMS
500 bool "Support short forms of ip commands"
504 Also support short-form of ip <OBJECT> commands:
508 ip tunnel -> iptunnel
511 Say N unless you desparately need the short form of the ip
514 config FEATURE_IP_RARE_PROTOCOLS
515 bool "Support displaying rarely used link types"
519 If you are not going to use links of type "frad", "econet",
520 "bif" etc, you probably don't need to enable this.
521 Ethernet, wireless, infrared, ppp/slip, ip tunnelling
522 link types are supported without this option selected.
527 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_ADDRESS
532 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_LINK
537 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_ROUTE
542 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_TUNNEL
547 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_RULE
553 ipcalc takes an IP address and netmask and calculates the
554 resulting broadcast, network, and host range.
556 config FEATURE_IPCALC_FANCY
557 bool "Fancy IPCALC, more options, adds 1 kbyte"
561 Adds the options hostname, prefix and silent to the output of "ipcalc".
563 config FEATURE_IPCALC_LONG_OPTIONS
564 bool "Enable long options"
566 depends on IPCALC && GETOPT_LONG
568 Support long options for the ipcalc applet.
573 select FEATURE_SYSLOG
575 nameif is used to rename network interface by its MAC address.
576 Renamed interfaces MUST be in the down state.
577 It is possible to use a file (default: /etc/mactab)
578 with list of new interface names and MACs.
579 Maximum interface name length: IFNAMSIZ = 16
580 File fields are separated by space or tab.
583 new_interface_name XX:XX:XX:XX:XX:XX
585 config FEATURE_NAMEIF_EXTENDED
586 bool "Extended nameif"
590 This extends the nameif syntax to support the bus_info and driver
591 checks. The syntax is compatible to the normal nameif.
593 new_interface_name driver=asix bus=usb-0000:00:08.2-3
594 new_interface_name bus=usb-0000:00:08.2-3 00:80:C8:38:91:B5
595 new_interface_name mac=00:80:C8:38:91:B5
596 new_interface_name 00:80:C8:38:91:B5
602 A simple Unix utility which reads and writes data across network
606 bool "Netcat server options (-l)"
610 Allow netcat to act as a server.
613 bool "Netcat extensions (-eiw and filename)"
617 Add -e (support for executing the rest of the command line after
618 making or receiving a successful connection), -i (delay interval for
619 lines sent), -w (timeout for initial connection).
625 netstat prints information about the Linux networking subsystem.
627 config FEATURE_NETSTAT_WIDE
628 bool "Enable wide netstat output"
632 Add support for wide columns. Useful when displaying IPv6 addresses
639 nslookup is a tool to query Internet name servers.
645 ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to
646 elicit an ICMP ECHO_RESPONSE from a host or gateway.
651 depends on FEATURE_IPV6 && PING
653 This will give you a ping that can talk IPv6.
655 config FEATURE_FANCY_PING
656 bool "Enable fancy ping output"
660 Make the output from the ping applet include statistics, and at the
661 same time provide full support for ICMP packets.
667 Simple network port scanner.
673 Route displays or manipulates the kernel's IP routing tables.
691 slattach is a small utility to attach network interfaces to serial lines.
697 Telnet is an interface to the TELNET protocol, but is also commonly
698 used to test other simple protocols.
700 config FEATURE_TELNET_TTYPE
701 bool "Pass TERM type to remote host"
705 Setting this option will forward the TERM environment variable to the
706 remote host you are connecting to. This is useful to make sure that
707 things like ANSI colors and other control sequences behave.
709 config FEATURE_TELNET_AUTOLOGIN
710 bool "Pass USER type to remote host"
714 Setting this option will forward the USER environment variable to the
715 remote host you are connecting to. This is useful when you need to
716 log into a machine without telling the username (autologin). This
717 option enables `-a' and `-l USER' arguments.
722 select FEATURE_SYSLOG
724 A daemon for the TELNET protocol, allowing you to log onto the host
725 running the daemon. Please keep in mind that the TELNET protocol
726 sends passwords in plain text. If you can't afford the space for an
727 SSH daemon and you trust your network, you may say 'y' here. As a
728 more secure alternative, you should seriously consider installing the
729 very small Dropbear SSH daemon instead:
730 http://matt.ucc.asn.au/dropbear/dropbear.html
732 Note that for busybox telnetd to work you need several things:
733 First of all, your kernel needs:
737 Next, you need a /dev/pts directory on your root filesystem:
740 drwxr-xr-x 2 root root 0 Sep 23 13:21 /dev/pts/
742 Next you need the pseudo terminal master multiplexer /dev/ptmx:
745 crw-rw-rw- 1 root tty 5, 2 Sep 23 13:55 /dev/ptmx
747 Any /dev/ttyp[0-9]* files you may have can be removed.
748 Next, you need to mount the devpts filesystem on /dev/pts using:
750 mount -t devpts devpts /dev/pts
752 You need to be sure that Busybox has LOGIN and
753 FEATURE_SUID enabled. And finally, you should make
754 certain that Busybox has been installed setuid root:
756 chown root.root /bin/busybox
757 chmod 4755 /bin/busybox
759 with all that done, telnetd _should_ work....
762 config FEATURE_TELNETD_STANDALONE
763 bool "Support standalone telnetd (not inetd only)"
767 Selecting this will make telnetd able to run standalone.
773 This enables the Trivial File Transfer Protocol client program. TFTP
774 is usually used for simple, small transfers such as a root image
775 for a network-enabled bootloader.
781 This enables the Trivial File Transfer Protocol server program.
782 It expects that stdin is a datagram socket and a packet
783 is already pending on it. It will exit after one transfer.
784 In other words: it should be run from inetd in nowait mode,
785 or from udpsvd. Example: "udpsvd -E 0 69 tftpd DIR"
787 config FEATURE_TFTP_GET
788 bool "Enable \"get\" command"
790 depends on TFTP || TFTPD
792 Add support for the GET command within the TFTP client. This allows
793 a client to retrieve a file from a TFTP server.
794 Also enable upload support in tftpd, if tftpd is selected.
796 config FEATURE_TFTP_PUT
797 bool "Enable \"put\" command"
799 depends on TFTP || TFTPD
801 Add support for the PUT command within the TFTP client. This allows
802 a client to transfer a file to a TFTP server.
803 Also enable download support in tftpd, if tftpd is selected.
805 config FEATURE_TFTP_BLOCKSIZE
806 bool "Enable \"blksize\" protocol option"
808 depends on TFTP || TFTPD
810 Allow tftp to specify block size, and tftpd to understand
818 Enable debug settings for tftp. This is useful if you're running
819 into problems with tftp as the protocol doesn't help you much when
820 you run into problems.
826 Utility to trace the route of IP packets
828 config FEATURE_TRACEROUTE_VERBOSE
829 bool "Enable verbose output"
831 depends on TRACEROUTE
833 Add some verbosity to traceroute. This includes amongst other things
834 hostnames and ICMP response types.
836 config FEATURE_TRACEROUTE_SOURCE_ROUTE
837 bool "Enable loose source route"
839 depends on TRACEROUTE
841 Add option to specify a loose source route gateway
844 config FEATURE_TRACEROUTE_USE_ICMP
845 bool "Use ICMP instead of UDP"
847 depends on TRACEROUTE
849 Add feature to allow for ICMP ECHO instead of UDP datagrams.
851 source networking/udhcp/Config.in
857 Creates, removes, and configures VLAN interfaces
863 wget is a utility for non-interactive download of files from HTTP,
864 HTTPS, and FTP servers.
866 config FEATURE_WGET_STATUSBAR
867 bool "Enable a nifty process meter (+2k)"
871 Enable the transfer progress bar for wget transfers.
873 config FEATURE_WGET_AUTHENTICATION
874 bool "Enable HTTP authentication"
878 Support authenticated HTTP transfers.
880 config FEATURE_WGET_LONG_OPTIONS
881 bool "Enable long options"
883 depends on WGET && GETOPT_LONG
885 Support long options for the wget applet.
890 select FEATURE_SYSLOG
892 ZCIP provides ZeroConf IPv4 address selection, according to RFC 3927.
893 It's a daemon that allocates and defends a dynamically assigned
894 address on the 169.254/16 network, requiring no system administrator.
896 See http://www.zeroconf.org for further details, and "zcip.script"
897 in the busybox examples.
903 tcpsvd listens on a TCP port and runs a program for each new connection
909 udpsvd listens on an UDP port and runs a program for each new connection