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_UNIX_LOCAL
16 bool "Enable Unix domain socket support (usually not needed)"
19 Enable Unix domain socket support in all busybox networking
20 applets. Address of the form local:/path/to/unix/socket
23 This extension is almost never used in real world usage.
24 You most likely want to say N.
26 config FEATURE_PREFER_IPV4_ADDRESS
27 bool "Prefer IPv4 addresses from DNS queries"
29 depends on FEATURE_IPV6
31 Use IPv4 address of network host if it has one.
33 If this option is off, the first returned address will be used.
34 This may cause problems when your DNS server is IPv6-capable and
35 is returning IPv6 host addresses too. If IPv6 address
36 precedes IPv4 one in DNS reply, busybox network applets
37 (e.g. wget) will use IPv6 address. On an IPv6-incapable host
38 or network applets will fail to connect to the host
41 config VERBOSE_RESOLUTION_ERRORS
42 bool "Verbose resolution errors"
45 Enable if you are not satisfied with simplistic
46 "can't resolve 'hostname.com'" and want to know more.
47 This may increase size of your executable a bit.
53 Manipulate the system ARP cache.
59 Ping hosts by ARP packets.
65 Manage ethernet bridges.
66 Supports addbr/delbr and addif/delif.
68 config FEATURE_BRCTL_FANCY
73 Add support for extended option like:
74 setageing, setfd, sethello, setmaxage,
75 setpathcost, setportprio, setbridgeprio,
77 This adds about 600 bytes.
79 config FEATURE_BRCTL_SHOW
80 bool "Support show, showmac and showstp"
82 depends on BRCTL && FEATURE_BRCTL_FANCY
84 Add support for option which prints the current config:
85 showmacs, showstp, show
91 Small and static DNS server daemon.
97 Send a magic packet to wake up sleeping machines.
102 select FEATURE_SYSLOG
104 fakeidentd listens on the ident port and returns a predefined
105 fake value on any query.
111 simple FTP daemon. You have to run it via inetd.
113 config FEATURE_FTP_WRITE
114 bool "Enable upload commands"
118 Enable all kinds of FTP upload commands (-w option)
124 Retrieve a remote file via FTP.
130 Store a remote file via FTP.
132 config FEATURE_FTPGETPUT_LONG_OPTIONS
133 bool "Enable long options in ftpget/ftpput"
135 depends on LONG_OPTS && (FTPGET || FTPPUT)
137 Support long options for the ftpget/ftpput applet.
143 Show or set the system's host name.
149 Serve web pages via an HTTP server.
151 config FEATURE_HTTPD_RANGES
152 bool "Support 'Ranges:' header"
156 Makes httpd emit "Accept-Ranges: bytes" header and understand
157 "Range: bytes=NNN-[MMM]" header. Allows for resuming interrupted
158 downloads, seeking in multimedia players etc.
160 config FEATURE_HTTPD_USE_SENDFILE
161 bool "Use sendfile system call"
165 When enabled, httpd will use the kernel sendfile() function
166 instead of read/write loop.
168 config FEATURE_HTTPD_SETUID
169 bool "Enable -u <user> option"
173 This option allows the server to run as a specific user
174 rather than defaulting to the user that starts the server.
175 Use of this option requires special privileges to change to a
178 config FEATURE_HTTPD_BASIC_AUTH
179 bool "Enable Basic http Authentication"
183 Utilizes password settings from /etc/httpd.conf for basic
184 authentication on a per url basis.
186 config FEATURE_HTTPD_AUTH_MD5
187 bool "Support MD5 crypted passwords for http Authentication"
189 depends on FEATURE_HTTPD_BASIC_AUTH
191 Enables basic per URL authentication from /etc/httpd.conf
194 config FEATURE_HTTPD_CGI
195 bool "Support Common Gateway Interface (CGI)"
199 This option allows scripts and executables to be invoked
200 when specific URLs are requested.
202 config FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR
203 bool "Support for running scripts through an interpreter"
205 depends on FEATURE_HTTPD_CGI
207 This option enables support for running scripts through an
208 interpreter. Turn this on if you want PHP scripts to work
209 properly. You need to supply an additional line in your httpd
211 *.php:/path/to/your/php
213 config FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV
214 bool "Set REMOTE_PORT environment variable for CGI"
216 depends on FEATURE_HTTPD_CGI
218 Use of this option can assist scripts in generating
219 references that contain a unique port number.
221 config FEATURE_HTTPD_ENCODE_URL_STR
222 bool "Enable -e option (useful for CGIs written as shell scripts)"
226 This option allows html encoding of arbitrary strings for display
227 by the browser. Output goes to stdout.
228 For example, httpd -e "<Hello World>" produces
229 "<Hello World>".
231 config FEATURE_HTTPD_ERROR_PAGES
232 bool "Support for custom error pages"
236 This option allows you to define custom error pages in
237 the configuration file instead of the default HTTP status
238 error pages. For instance, if you add the line:
240 in the config file, the server will respond the specified
241 '/path/e404.html' file instead of the terse '404 NOT FOUND'
244 config FEATURE_HTTPD_PROXY
245 bool "Support for reverse proxy"
249 This option allows you to define URLs that will be forwarded
250 to another HTTP server. To setup add the following line to the
252 P:/url/:http://hostname[:port]/new/path/
253 Then a request to /url/myfile will be forwarded to
254 http://hostname[:port]/new/path/myfile.
260 Ifconfig is used to configure the kernel-resident network interfaces.
262 config FEATURE_IFCONFIG_STATUS
263 bool "Enable status reporting output (+7k)"
267 If ifconfig is called with no arguments it will display the status
268 of the currently active interfaces.
270 config FEATURE_IFCONFIG_SLIP
271 bool "Enable slip-specific options \"keepalive\" and \"outfill\""
275 Allow "keepalive" and "outfill" support for SLIP. If you're not
276 planning on using serial lines, leave this unchecked.
278 config FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ
279 bool "Enable options \"mem_start\", \"io_addr\", and \"irq\""
283 Allow the start address for shared memory, start address for I/O,
284 and/or the interrupt line used by the specified device.
286 config FEATURE_IFCONFIG_HW
287 bool "Enable option \"hw\" (ether only)"
291 Set the hardware address of this interface, if the device driver
292 supports this operation. Currently, we only support the 'ether'
295 config FEATURE_IFCONFIG_BROADCAST_PLUS
296 bool "Set the broadcast automatically"
300 Setting this will make ifconfig attempt to find the broadcast
301 automatically if the value '+' is used.
307 Userspace application to bind several interfaces
308 to a logical interface (use with kernel bonding driver).
314 Network interface plug detection daemon.
320 Activate or deactivate the specified interfaces. This applet makes
321 use of either "ifconfig" and "route" or the "ip" command to actually
322 configure network interfaces. Therefore, you will probably also want
323 to enable either IFCONFIG and ROUTE, or enable
324 FEATURE_IFUPDOWN_IP and the various IP options. Of
325 course you could use non-busybox versions of these programs, so
326 against my better judgement (since this will surely result in plenty
327 of support questions on the mailing list), I do not force you to
328 enable these additional options. It is up to you to supply either
329 "ifconfig", "route" and "run-parts" or the "ip" command, either
330 via busybox or via standalone utilities.
332 config IFUPDOWN_IFSTATE_PATH
333 string "Absolute path to ifstate file"
334 default "/var/run/ifstate"
337 ifupdown keeps state information in a file called ifstate.
338 Typically it is located in /var/run/ifstate, however
339 some distributions tend to put it in other places
340 (debian, for example, uses /etc/network/run/ifstate).
341 This config option defines location of ifstate.
343 config FEATURE_IFUPDOWN_IP
348 Use the iproute "ip" command to implement "ifup" and "ifdown", rather
349 than the default of using the older 'ifconfig' and 'route' utilities.
351 config FEATURE_IFUPDOWN_IP_BUILTIN
352 bool "Use busybox ip applet"
354 depends on FEATURE_IFUPDOWN_IP
356 select FEATURE_IP_ADDRESS
357 select FEATURE_IP_LINK
358 select FEATURE_IP_ROUTE
360 Use the busybox iproute "ip" applet to implement "ifupdown".
362 If left disabled, you must install the full-blown iproute2
363 utility or the "ifup" and "ifdown" applets will not work.
365 config FEATURE_IFUPDOWN_IFCONFIG_BUILTIN
366 bool "Use busybox ifconfig and route applets"
368 depends on IFUPDOWN && !FEATURE_IFUPDOWN_IP
372 Use the busybox iproute "ifconfig" and "route" applets to
373 implement the "ifup" and "ifdown" utilities.
375 If left disabled, you must install the full-blown ifconfig
376 and route utilities, or the "ifup" and "ifdown" applets will not
379 config FEATURE_IFUPDOWN_IPV4
380 bool "Support for IPv4"
384 If you want ifup/ifdown to talk IPv4, leave this on.
386 config FEATURE_IFUPDOWN_IPV6
387 bool "Support for IPv6"
389 depends on IFUPDOWN && FEATURE_IPV6
391 If you need support for IPv6, turn this option on.
394 ###config FEATURE_IFUPDOWN_IPX
395 ### bool "Support for IPX"
397 ### depends on IFUPDOWN
399 ### If this option is selected you can use busybox to work with IPX
402 config FEATURE_IFUPDOWN_MAPPING
403 bool "Enable mapping support"
407 This enables support for the "mapping" stanza, unless you have
408 a weird network setup you don't need it.
410 config FEATURE_IFUPDOWN_EXTERNAL_DHCP
411 bool "Support for external dhcp clients"
415 This enables support for the external dhcp clients. Clients are
416 tried in the following order: dhcpcd, dhclient, pump and udhcpc.
417 Otherwise, if udhcpc applet is enabled, it is used.
418 Otherwise, ifup/ifdown will have no support for DHCP.
423 select FEATURE_SYSLOG
425 Internet superserver daemon
427 config FEATURE_INETD_SUPPORT_BUILTIN_ECHO
428 bool "Support echo service"
432 Echo received data internal inetd service
434 config FEATURE_INETD_SUPPORT_BUILTIN_DISCARD
435 bool "Support discard service"
439 Internet /dev/null internal inetd service
441 config FEATURE_INETD_SUPPORT_BUILTIN_TIME
442 bool "Support time service"
446 Return 32 bit time since 1900 internal inetd service
448 config FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME
449 bool "Support daytime service"
453 Return human-readable time internal inetd service
455 config FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN
456 bool "Support chargen service"
460 Familiar character generator internal inetd service
462 config FEATURE_INETD_RPC
463 bool "Support RPC services"
466 select FEATURE_HAVE_RPC
468 Support Sun-RPC based services
474 The "ip" applet is a TCP/IP interface configuration and routing
475 utility. You generally don't need "ip" to use busybox with
478 config FEATURE_IP_ADDRESS
483 Address manipulation support for the "ip" applet.
485 config FEATURE_IP_LINK
490 Configure network devices with "ip".
492 config FEATURE_IP_ROUTE
497 Add support for routing table management to "ip".
499 config FEATURE_IP_TUNNEL
504 Add support for tunneling commands to "ip".
506 config FEATURE_IP_RULE
511 Add support for rule commands to "ip".
513 config FEATURE_IP_SHORT_FORMS
514 bool "Support short forms of ip commands"
518 Also support short-form of ip <OBJECT> commands:
522 ip tunnel -> iptunnel
525 Say N unless you desparately need the short form of the ip
528 config FEATURE_IP_RARE_PROTOCOLS
529 bool "Support displaying rarely used link types"
533 If you are not going to use links of type "frad", "econet",
534 "bif" etc, you probably don't need to enable this.
535 Ethernet, wireless, infrared, ppp/slip, ip tunnelling
536 link types are supported without this option selected.
541 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_ADDRESS
546 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_LINK
551 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_ROUTE
556 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_TUNNEL
561 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_RULE
567 ipcalc takes an IP address and netmask and calculates the
568 resulting broadcast, network, and host range.
570 config FEATURE_IPCALC_FANCY
571 bool "Fancy IPCALC, more options, adds 1 kbyte"
575 Adds the options hostname, prefix and silent to the output of
578 config FEATURE_IPCALC_LONG_OPTIONS
579 bool "Enable long options"
581 depends on IPCALC && LONG_OPTS
583 Support long options for the ipcalc applet.
588 select FEATURE_SYSLOG
590 nameif is used to rename network interface by its MAC address.
591 Renamed interfaces MUST be in the down state.
592 It is possible to use a file (default: /etc/mactab)
593 with list of new interface names and MACs.
594 Maximum interface name length: IFNAMSIZ = 16
595 File fields are separated by space or tab.
598 new_interface_name XX:XX:XX:XX:XX:XX
600 config FEATURE_NAMEIF_EXTENDED
601 bool "Extended nameif"
605 This extends the nameif syntax to support the bus_info and driver
606 checks. The syntax is compatible to the normal nameif.
608 new_interface_name driver=asix bus=usb-0000:00:08.2-3
609 new_interface_name bus=usb-0000:00:08.2-3 00:80:C8:38:91:B5
610 new_interface_name mac=00:80:C8:38:91:B5
611 new_interface_name 00:80:C8:38:91:B5
617 A simple Unix utility which reads and writes data across network
621 bool "Netcat server options (-l)"
625 Allow netcat to act as a server.
628 bool "Netcat extensions (-eiw and filename)"
632 Add -e (support for executing the rest of the command line after
633 making or receiving a successful connection), -i (delay interval for
634 lines sent), -w (timeout for initial connection).
640 netstat prints information about the Linux networking subsystem.
642 config FEATURE_NETSTAT_WIDE
643 bool "Enable wide netstat output"
647 Add support for wide columns. Useful when displaying IPv6 addresses
650 config FEATURE_NETSTAT_PRG
651 bool "Enable PID/Program name output"
655 Add support for -p flag to print out PID and program name.
662 nslookup is a tool to query Internet name servers.
668 The NTP client/server daemon.
670 config FEATURE_NTPD_SERVER
671 bool "Make ntpd usable as a NTP server"
675 Make ntpd usable as a NTP server. If you disable this option
676 ntpd will be usable only as a NTP client.
682 ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to
683 elicit an ICMP ECHO_RESPONSE from a host or gateway.
688 depends on FEATURE_IPV6 && PING
690 This will give you a ping that can talk IPv6.
692 config FEATURE_FANCY_PING
693 bool "Enable fancy ping output"
697 Make the output from the ping applet include statistics, and at the
698 same time provide full support for ICMP packets.
704 Simple network port scanner.
710 Route displays or manipulates the kernel's IP routing tables.
716 slattach is a small utility to attach network interfaces to serial
723 # show / manipulate traffic control settings
725 #config FEATURE_TC_INGRESS
733 Telnet is an interface to the TELNET protocol, but is also commonly
734 used to test other simple protocols.
736 config FEATURE_TELNET_TTYPE
737 bool "Pass TERM type to remote host"
741 Setting this option will forward the TERM environment variable to the
742 remote host you are connecting to. This is useful to make sure that
743 things like ANSI colors and other control sequences behave.
745 config FEATURE_TELNET_AUTOLOGIN
746 bool "Pass USER type to remote host"
750 Setting this option will forward the USER environment variable to the
751 remote host you are connecting to. This is useful when you need to
752 log into a machine without telling the username (autologin). This
753 option enables `-a' and `-l USER' arguments.
758 select FEATURE_SYSLOG
760 A daemon for the TELNET protocol, allowing you to log onto the host
761 running the daemon. Please keep in mind that the TELNET protocol
762 sends passwords in plain text. If you can't afford the space for an
763 SSH daemon and you trust your network, you may say 'y' here. As a
764 more secure alternative, you should seriously consider installing the
765 very small Dropbear SSH daemon instead:
766 http://matt.ucc.asn.au/dropbear/dropbear.html
768 Note that for busybox telnetd to work you need several things:
769 First of all, your kernel needs:
773 Next, you need a /dev/pts directory on your root filesystem:
776 drwxr-xr-x 2 root root 0 Sep 23 13:21 /dev/pts/
778 Next you need the pseudo terminal master multiplexer /dev/ptmx:
781 crw-rw-rw- 1 root tty 5, 2 Sep 23 13:55 /dev/ptmx
783 Any /dev/ttyp[0-9]* files you may have can be removed.
784 Next, you need to mount the devpts filesystem on /dev/pts using:
786 mount -t devpts devpts /dev/pts
788 You need to be sure that Busybox has LOGIN and
789 FEATURE_SUID enabled. And finally, you should make
790 certain that Busybox has been installed setuid root:
792 chown root.root /bin/busybox
793 chmod 4755 /bin/busybox
795 with all that done, telnetd _should_ work....
798 config FEATURE_TELNETD_STANDALONE
799 bool "Support standalone telnetd (not inetd only)"
803 Selecting this will make telnetd able to run standalone.
805 config FEATURE_TELNETD_INETD_WAIT
806 bool "Support -w SEC option (inetd wait mode)"
808 depends on FEATURE_TELNETD_STANDALONE
810 This option allows you to run telnetd in "inet wait" mode.
811 Example inetd.conf line (note "wait", not usual "nowait"):
813 telnet stream tcp wait root /bin/telnetd telnetd -w10
815 In this example, inetd passes _listening_ socket_ as fd 0
816 to telnetd when connection appears.
817 telnetd will wait for connections until all existing
818 connections are closed, and no new connections
819 appear during 10 seconds. Then it exits, and inetd continues
820 to listen for new connections.
822 This option is rarely used. "tcp nowait" is much more usual
823 way of running tcp services, including telnetd.
824 You most probably want to say N here.
830 This enables the Trivial File Transfer Protocol client program. TFTP
831 is usually used for simple, small transfers such as a root image
832 for a network-enabled bootloader.
838 This enables the Trivial File Transfer Protocol server program.
839 It expects that stdin is a datagram socket and a packet
840 is already pending on it. It will exit after one transfer.
841 In other words: it should be run from inetd in nowait mode,
842 or from udpsvd. Example: "udpsvd -E 0 69 tftpd DIR"
844 config FEATURE_TFTP_GET
845 bool "Enable \"get\" command"
847 depends on TFTP || TFTPD
849 Add support for the GET command within the TFTP client. This allows
850 a client to retrieve a file from a TFTP server.
851 Also enable upload support in tftpd, if tftpd is selected.
853 config FEATURE_TFTP_PUT
854 bool "Enable \"put\" command"
856 depends on TFTP || TFTPD
858 Add support for the PUT command within the TFTP client. This allows
859 a client to transfer a file to a TFTP server.
860 Also enable download support in tftpd, if tftpd is selected.
862 config FEATURE_TFTP_BLOCKSIZE
863 bool "Enable 'blksize' and 'tsize' protocol options"
865 depends on TFTP || TFTPD
867 Allow tftp to specify block size, and tftpd to understand
868 "blksize" and "tsize" options.
870 config FEATURE_TFTP_PROGRESS_BAR
871 bool "Enable tftp progress meter"
873 depends on TFTP && FEATURE_TFTP_BLOCKSIZE
880 depends on TFTP || TFTPD
882 Make tftp[d] print debugging messages on stderr.
883 This is useful if you are diagnosing a bug in tftp[d].
889 Utility to trace the route of IP packets.
894 depends on FEATURE_IPV6 && TRACEROUTE
896 Utility to trace the route of IPv6 packets.
898 config FEATURE_TRACEROUTE_VERBOSE
899 bool "Enable verbose output"
901 depends on TRACEROUTE
903 Add some verbosity to traceroute. This includes among other things
904 hostnames and ICMP response types.
906 config FEATURE_TRACEROUTE_SOURCE_ROUTE
907 bool "Enable loose source route"
909 depends on TRACEROUTE
911 Add option to specify a loose source route gateway
914 config FEATURE_TRACEROUTE_USE_ICMP
915 bool "Use ICMP instead of UDP"
917 depends on TRACEROUTE
919 Add option -I to use ICMP ECHO instead of UDP datagrams.
921 source networking/udhcp/Config.in
923 config IFUPDOWN_UDHCPC_CMD_OPTIONS
924 string "ifup udhcpc command line options"
926 depends on IFUPDOWN && APP_UDHCPC
928 Command line options to pass to udhcpc from ifup.
929 Intended to alter options not available in /etc/network/interfaces.
930 (IE: --syslog --background etc...)
936 Creates, removes, and configures VLAN interfaces
942 wget is a utility for non-interactive download of files from HTTP,
943 HTTPS, and FTP servers.
945 config FEATURE_WGET_STATUSBAR
946 bool "Enable a nifty process meter (+2k)"
950 Enable the transfer progress bar for wget transfers.
952 config FEATURE_WGET_AUTHENTICATION
953 bool "Enable HTTP authentication"
957 Support authenticated HTTP transfers.
959 config FEATURE_WGET_LONG_OPTIONS
960 bool "Enable long options"
962 depends on WGET && LONG_OPTS
964 Support long options for the wget applet.
969 select FEATURE_SYSLOG
971 ZCIP provides ZeroConf IPv4 address selection, according to RFC 3927.
972 It's a daemon that allocates and defends a dynamically assigned
973 address on the 169.254/16 network, requiring no system administrator.
975 See http://www.zeroconf.org for further details, and "zcip.script"
976 in the busybox examples.
982 tcpsvd listens on a TCP port and runs a program for each new
989 tunctl creates or deletes tun devices.
991 config FEATURE_TUNCTL_UG
992 bool "Support owner:group assignment"
996 Allow to specify owner and group of newly created interface.
997 340 bytes of pure bloat. Say no here.
1003 udpsvd listens on an UDP port and runs a program for each new