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 "Prefer 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 simple FTP daemon. You have to run it via inetd.
102 config FEATURE_FTP_WRITE
103 bool "Enable upload commands"
107 Enable all kinds of FTP upload commands (-w option)
113 Retrieve a remote file via FTP.
119 Store a remote file via FTP.
121 config FEATURE_FTPGETPUT_LONG_OPTIONS
122 bool "Enable long options in ftpget/ftpput"
124 depends on GETOPT_LONG && (FTPGET || FTPPUT)
126 Support long options for the ftpget/ftpput applet.
132 Show or set the system's host name.
138 Serve web pages via an HTTP server.
140 config FEATURE_HTTPD_RANGES
141 bool "Support 'Ranges:' header"
145 Makes httpd emit "Accept-Ranges: bytes" header and understand
146 "Range: bytes=NNN-[MMM]" header. Allows for resuming interrupted
147 downloads, seeking in multimedia players etc.
149 config FEATURE_HTTPD_USE_SENDFILE
150 bool "Use sendfile system call"
154 When enabled, httpd will use the kernel sendfile() function
155 instead of read/write loop.
157 config FEATURE_HTTPD_SETUID
158 bool "Enable -u <user> option"
162 This option allows the server to run as a specific user
163 rather than defaulting to the user that starts the server.
164 Use of this option requires special privileges to change to a
167 config FEATURE_HTTPD_BASIC_AUTH
168 bool "Enable Basic http Authentication"
172 Utilizes password settings from /etc/httpd.conf for basic
173 authentication on a per url basis.
175 config FEATURE_HTTPD_AUTH_MD5
176 bool "Support MD5 crypted passwords for http Authentication"
178 depends on FEATURE_HTTPD_BASIC_AUTH
180 Enables basic per URL authentication from /etc/httpd.conf
183 config FEATURE_HTTPD_CGI
184 bool "Support Common Gateway Interface (CGI)"
188 This option allows scripts and executables to be invoked
189 when specific URLs are requested.
191 config FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR
192 bool "Support for running scripts through an interpreter"
194 depends on FEATURE_HTTPD_CGI
196 This option enables support for running scripts through an
197 interpreter. Turn this on if you want PHP scripts to work
198 properly. You need to supply an additional line in your httpd
200 *.php:/path/to/your/php
202 config FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV
203 bool "Set REMOTE_PORT environment variable for CGI"
205 depends on FEATURE_HTTPD_CGI
207 Use of this option can assist scripts in generating
208 references that contain a unique port number.
210 config FEATURE_HTTPD_ENCODE_URL_STR
211 bool "Enable -e option (useful for CGIs written as shell scripts)"
215 This option allows html encoding of arbitrary strings for display
216 by the browser. Output goes to stdout.
217 For example, httpd -e "<Hello World>" produces
218 "<Hello World>".
220 config FEATURE_HTTPD_ERROR_PAGES
221 bool "Support for custom error pages"
225 This option allows you to define custom error pages in
226 the configuration file instead of the default HTTP status
227 error pages. For instance, if you add the line:
229 in the config file, the server will respond the specified
230 '/path/e404.html' file instead of the terse '404 NOT FOUND'
233 config FEATURE_HTTPD_PROXY
234 bool "Support for reverse proxy"
238 This option allows you to define URLs that will be forwarded
239 to another HTTP server. To setup add the following line to the
241 P:/url/:http://hostname[:port]/new/path/
242 Then a request to /url/myfile will be forwarded to
243 http://hostname[:port]/new/path/myfile.
249 Ifconfig is used to configure the kernel-resident network interfaces.
251 config FEATURE_IFCONFIG_STATUS
252 bool "Enable status reporting output (+7k)"
256 If ifconfig is called with no arguments it will display the status
257 of the currently active interfaces.
259 config FEATURE_IFCONFIG_SLIP
260 bool "Enable slip-specific options \"keepalive\" and \"outfill\""
264 Allow "keepalive" and "outfill" support for SLIP. If you're not
265 planning on using serial lines, leave this unchecked.
267 config FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ
268 bool "Enable options \"mem_start\", \"io_addr\", and \"irq\""
272 Allow the start address for shared memory, start address for I/O,
273 and/or the interrupt line used by the specified device.
275 config FEATURE_IFCONFIG_HW
276 bool "Enable option \"hw\" (ether only)"
280 Set the hardware address of this interface, if the device driver
281 supports this operation. Currently, we only support the 'ether'
284 config FEATURE_IFCONFIG_BROADCAST_PLUS
285 bool "Set the broadcast automatically"
289 Setting this will make ifconfig attempt to find the broadcast
290 automatically if the value '+' is used.
296 Userspace application to bind several interfaces
297 to a logical interface (use with kernel bonding driver).
303 Activate or deactivate the specified interfaces. This applet makes
304 use of either "ifconfig" and "route" or the "ip" command to actually
305 configure network interfaces. Therefore, you will probably also want
306 to enable either IFCONFIG and ROUTE, or enable
307 FEATURE_IFUPDOWN_IP and the various IP options. Of
308 course you could use non-busybox versions of these programs, so
309 against my better judgement (since this will surely result in plenty
310 of support questions on the mailing list), I do not force you to
311 enable these additional options. It is up to you to supply either
312 "ifconfig", "route" and "run-parts" or the "ip" command, either
313 via busybox or via standalone utilities.
315 config IFUPDOWN_IFSTATE_PATH
316 string "Absolute path to ifstate file"
317 default "/var/run/ifstate"
320 ifupdown keeps state information in a file called ifstate.
321 Typically it is located in /var/run/ifstate, however
322 some distributions tend to put it in other places
323 (debian, for example, uses /etc/network/run/ifstate).
324 This config option defines location of ifstate.
326 config FEATURE_IFUPDOWN_IP
331 Use the iproute "ip" command to implement "ifup" and "ifdown", rather
332 than the default of using the older 'ifconfig' and 'route' utilities.
334 config FEATURE_IFUPDOWN_IP_BUILTIN
335 bool "Use busybox ip applet"
337 depends on FEATURE_IFUPDOWN_IP
339 select FEATURE_IP_ADDRESS
340 select FEATURE_IP_LINK
341 select FEATURE_IP_ROUTE
343 Use the busybox iproute "ip" applet to implement "ifupdown".
345 If left disabled, you must install the full-blown iproute2
346 utility or the "ifup" and "ifdown" applets will not work.
348 config FEATURE_IFUPDOWN_IFCONFIG_BUILTIN
349 bool "Use busybox ifconfig and route applets"
351 depends on IFUPDOWN && !FEATURE_IFUPDOWN_IP
355 Use the busybox iproute "ifconfig" and "route" applets to
356 implement the "ifup" and "ifdown" utilities.
358 If left disabled, you must install the full-blown ifconfig
359 and route utilities, or the "ifup" and "ifdown" applets will not
362 config FEATURE_IFUPDOWN_IPV4
363 bool "Support for IPv4"
367 If you want ifup/ifdown to talk IPv4, leave this on.
369 config FEATURE_IFUPDOWN_IPV6
370 bool "Support for IPv6"
372 depends on IFUPDOWN && FEATURE_IPV6
374 If you need support for IPv6, turn this option on.
377 ###config FEATURE_IFUPDOWN_IPX
378 ### bool "Support for IPX"
380 ### depends on IFUPDOWN
382 ### If this option is selected you can use busybox to work with IPX
385 config FEATURE_IFUPDOWN_MAPPING
386 bool "Enable mapping support"
390 This enables support for the "mapping" stanza, unless you have
391 a weird network setup you don't need it.
393 config FEATURE_IFUPDOWN_EXTERNAL_DHCP
394 bool "Support for external dhcp clients"
398 This enables support for the external dhcp clients. Clients are
399 tried in the following order: dhcpcd, dhclient, pump and udhcpc.
400 Otherwise, if udhcpc applet is enabled, it is used.
401 Otherwise, ifup/ifdown will have no support for DHCP.
406 select FEATURE_SYSLOG
408 Internet superserver daemon
410 config FEATURE_INETD_SUPPORT_BUILTIN_ECHO
411 bool "Support echo service"
415 Echo received data internal inetd service
417 config FEATURE_INETD_SUPPORT_BUILTIN_DISCARD
418 bool "Support discard service"
422 Internet /dev/null internal inetd service
424 config FEATURE_INETD_SUPPORT_BUILTIN_TIME
425 bool "Support time service"
429 Return 32 bit time since 1900 internal inetd service
431 config FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME
432 bool "Support daytime service"
436 Return human-readable time internal inetd service
438 config FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN
439 bool "Support chargen service"
443 Familiar character generator internal inetd service
445 config FEATURE_INETD_RPC
446 bool "Support RPC services"
449 select FEATURE_HAVE_RPC
451 Support Sun-RPC based services
457 The "ip" applet is a TCP/IP interface configuration and routing
458 utility. You generally don't need "ip" to use busybox with
461 config FEATURE_IP_ADDRESS
466 Address manipulation support for the "ip" applet.
468 config FEATURE_IP_LINK
473 Configure network devices with "ip".
475 config FEATURE_IP_ROUTE
480 Add support for routing table management to "ip".
482 config FEATURE_IP_TUNNEL
487 Add support for tunneling commands to "ip".
489 config FEATURE_IP_RULE
494 Add support for rule commands to "ip".
496 config FEATURE_IP_SHORT_FORMS
497 bool "Support short forms of ip commands"
501 Also support short-form of ip <OBJECT> commands:
505 ip tunnel -> iptunnel
508 Say N unless you desparately need the short form of the ip
511 config FEATURE_IP_RARE_PROTOCOLS
512 bool "Support displaying rarely used link types"
516 If you are not going to use links of type "frad", "econet",
517 "bif" etc, you probably don't need to enable this.
518 Ethernet, wireless, infrared, ppp/slip, ip tunnelling
519 link types are supported without this option selected.
524 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_ADDRESS
529 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_LINK
534 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_ROUTE
539 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_TUNNEL
544 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_RULE
550 ipcalc takes an IP address and netmask and calculates the
551 resulting broadcast, network, and host range.
553 config FEATURE_IPCALC_FANCY
554 bool "Fancy IPCALC, more options, adds 1 kbyte"
558 Adds the options hostname, prefix and silent to the output of
561 config FEATURE_IPCALC_LONG_OPTIONS
562 bool "Enable long options"
564 depends on IPCALC && GETOPT_LONG
566 Support long options for the ipcalc applet.
571 select FEATURE_SYSLOG
573 nameif is used to rename network interface by its MAC address.
574 Renamed interfaces MUST be in the down state.
575 It is possible to use a file (default: /etc/mactab)
576 with list of new interface names and MACs.
577 Maximum interface name length: IFNAMSIZ = 16
578 File fields are separated by space or tab.
581 new_interface_name XX:XX:XX:XX:XX:XX
583 config FEATURE_NAMEIF_EXTENDED
584 bool "Extended nameif"
588 This extends the nameif syntax to support the bus_info and driver
589 checks. The syntax is compatible to the normal nameif.
591 new_interface_name driver=asix bus=usb-0000:00:08.2-3
592 new_interface_name bus=usb-0000:00:08.2-3 00:80:C8:38:91:B5
593 new_interface_name mac=00:80:C8:38:91:B5
594 new_interface_name 00:80:C8:38:91:B5
600 A simple Unix utility which reads and writes data across network
604 bool "Netcat server options (-l)"
608 Allow netcat to act as a server.
611 bool "Netcat extensions (-eiw and filename)"
615 Add -e (support for executing the rest of the command line after
616 making or receiving a successful connection), -i (delay interval for
617 lines sent), -w (timeout for initial connection).
623 netstat prints information about the Linux networking subsystem.
625 config FEATURE_NETSTAT_WIDE
626 bool "Enable wide netstat output"
630 Add support for wide columns. Useful when displaying IPv6 addresses
633 config FEATURE_NETSTAT_PRG
634 bool "Enable PID/Program name output"
638 Add support for -p flag to print out PID and program name.
645 nslookup is a tool to query Internet name servers.
651 ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to
652 elicit an ICMP ECHO_RESPONSE from a host or gateway.
657 depends on FEATURE_IPV6 && PING
659 This will give you a ping that can talk IPv6.
661 config FEATURE_FANCY_PING
662 bool "Enable fancy ping output"
666 Make the output from the ping applet include statistics, and at the
667 same time provide full support for ICMP packets.
673 Simple network port scanner.
679 Route displays or manipulates the kernel's IP routing tables.
685 slattach is a small utility to attach network interfaces to serial
692 # show / manipulate traffic control settings
694 #config FEATURE_TC_INGRESS
702 Telnet is an interface to the TELNET protocol, but is also commonly
703 used to test other simple protocols.
705 config FEATURE_TELNET_TTYPE
706 bool "Pass TERM type to remote host"
710 Setting this option will forward the TERM environment variable to the
711 remote host you are connecting to. This is useful to make sure that
712 things like ANSI colors and other control sequences behave.
714 config FEATURE_TELNET_AUTOLOGIN
715 bool "Pass USER type to remote host"
719 Setting this option will forward the USER environment variable to the
720 remote host you are connecting to. This is useful when you need to
721 log into a machine without telling the username (autologin). This
722 option enables `-a' and `-l USER' arguments.
727 select FEATURE_SYSLOG
729 A daemon for the TELNET protocol, allowing you to log onto the host
730 running the daemon. Please keep in mind that the TELNET protocol
731 sends passwords in plain text. If you can't afford the space for an
732 SSH daemon and you trust your network, you may say 'y' here. As a
733 more secure alternative, you should seriously consider installing the
734 very small Dropbear SSH daemon instead:
735 http://matt.ucc.asn.au/dropbear/dropbear.html
737 Note that for busybox telnetd to work you need several things:
738 First of all, your kernel needs:
742 Next, you need a /dev/pts directory on your root filesystem:
745 drwxr-xr-x 2 root root 0 Sep 23 13:21 /dev/pts/
747 Next you need the pseudo terminal master multiplexer /dev/ptmx:
750 crw-rw-rw- 1 root tty 5, 2 Sep 23 13:55 /dev/ptmx
752 Any /dev/ttyp[0-9]* files you may have can be removed.
753 Next, you need to mount the devpts filesystem on /dev/pts using:
755 mount -t devpts devpts /dev/pts
757 You need to be sure that Busybox has LOGIN and
758 FEATURE_SUID enabled. And finally, you should make
759 certain that Busybox has been installed setuid root:
761 chown root.root /bin/busybox
762 chmod 4755 /bin/busybox
764 with all that done, telnetd _should_ work....
767 config FEATURE_TELNETD_STANDALONE
768 bool "Support standalone telnetd (not inetd only)"
772 Selecting this will make telnetd able to run standalone.
778 This enables the Trivial File Transfer Protocol client program. TFTP
779 is usually used for simple, small transfers such as a root image
780 for a network-enabled bootloader.
786 This enables the Trivial File Transfer Protocol server program.
787 It expects that stdin is a datagram socket and a packet
788 is already pending on it. It will exit after one transfer.
789 In other words: it should be run from inetd in nowait mode,
790 or from udpsvd. Example: "udpsvd -E 0 69 tftpd DIR"
792 config FEATURE_TFTP_GET
793 bool "Enable \"get\" command"
795 depends on TFTP || TFTPD
797 Add support for the GET command within the TFTP client. This allows
798 a client to retrieve a file from a TFTP server.
799 Also enable upload support in tftpd, if tftpd is selected.
801 config FEATURE_TFTP_PUT
802 bool "Enable \"put\" command"
804 depends on TFTP || TFTPD
806 Add support for the PUT command within the TFTP client. This allows
807 a client to transfer a file to a TFTP server.
808 Also enable download support in tftpd, if tftpd is selected.
810 config FEATURE_TFTP_BLOCKSIZE
811 bool "Enable \"blksize\" protocol option"
813 depends on TFTP || TFTPD
815 Allow tftp to specify block size, and tftpd to understand
821 depends on TFTP || TFTPD
823 Enable debug settings for tftp. This is useful if you're running
824 into problems with tftp as the protocol doesn't help you much when
825 you run into problems.
831 Utility to trace the route of IP packets
833 config FEATURE_TRACEROUTE_VERBOSE
834 bool "Enable verbose output"
836 depends on TRACEROUTE
838 Add some verbosity to traceroute. This includes among other things
839 hostnames and ICMP response types.
841 config FEATURE_TRACEROUTE_SOURCE_ROUTE
842 bool "Enable loose source route"
844 depends on TRACEROUTE
846 Add option to specify a loose source route gateway
849 config FEATURE_TRACEROUTE_USE_ICMP
850 bool "Use ICMP instead of UDP"
852 depends on TRACEROUTE
854 Add option -I to use ICMP ECHO instead of UDP datagrams.
856 source networking/udhcp/Config.in
858 config IFUPDOWN_UDHCPC_CMD_OPTIONS
859 string "ifup udhcpc command line options"
861 depends on IFUPDOWN && APP_UDHCPC
863 Command line options to pass to udhcpc from ifup.
864 Intended to alter options not available in /etc/network/interfaces.
865 (IE: --syslog --background etc...)
871 Creates, removes, and configures VLAN interfaces
877 wget is a utility for non-interactive download of files from HTTP,
878 HTTPS, and FTP servers.
880 config FEATURE_WGET_STATUSBAR
881 bool "Enable a nifty process meter (+2k)"
885 Enable the transfer progress bar for wget transfers.
887 config FEATURE_WGET_AUTHENTICATION
888 bool "Enable HTTP authentication"
892 Support authenticated HTTP transfers.
894 config FEATURE_WGET_LONG_OPTIONS
895 bool "Enable long options"
897 depends on WGET && GETOPT_LONG
899 Support long options for the wget applet.
904 select FEATURE_SYSLOG
906 ZCIP provides ZeroConf IPv4 address selection, according to RFC 3927.
907 It's a daemon that allocates and defends a dynamically assigned
908 address on the 169.254/16 network, requiring no system administrator.
910 See http://www.zeroconf.org for further details, and "zcip.script"
911 in the busybox examples.
917 tcpsvd listens on a TCP port and runs a program for each new
924 tunctl creates or deletes tun devices.
926 config FEATURE_TUNCTL_UG
927 bool "Support owner:group assignment"
931 Allow to specify owner and group of newly created interface.
932 340 bytes of pure bloat. Say no here.
938 udpsvd listens on an UDP port and runs a program for each new