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_SETUID
145 bool "Enable -u <user> option"
149 This option allows the server to run as a specific user
150 rather than defaulting to the user that starts the server.
151 Use of this option requires special privileges to change to a
154 config FEATURE_HTTPD_BASIC_AUTH
155 bool "Enable Basic http Authentication"
159 Utilizes password settings from /etc/httpd.conf for basic
160 authentication on a per url basis.
162 config FEATURE_HTTPD_AUTH_MD5
163 bool "Support MD5 crypted passwords for http Authentication"
165 depends on FEATURE_HTTPD_BASIC_AUTH
167 Enables basic per URL authentication from /etc/httpd.conf
170 config FEATURE_HTTPD_CGI
171 bool "Support Common Gateway Interface (CGI)"
175 This option allows scripts and executables to be invoked
176 when specific URLs are requested.
178 config FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR
179 bool "Support for running scripts through an interpreter"
181 depends on FEATURE_HTTPD_CGI
183 This option enables support for running scripts through an
184 interpreter. Turn this on if you want PHP scripts to work
185 properly. You need to supply an additional line in your httpd
187 *.php:/path/to/your/php
189 config FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV
190 bool "Set REMOTE_PORT environment variable for CGI"
192 depends on FEATURE_HTTPD_CGI
194 Use of this option can assist scripts in generating
195 references that contain a unique port number.
197 config FEATURE_HTTPD_ENCODE_URL_STR
198 bool "Enable -e option (useful for CGIs written as shell scripts)"
202 This option allows html encoding of arbitrary strings for display
203 by the browser. Output goes to stdout.
204 For example, httpd -e "<Hello World>" produces
205 "<Hello World>".
207 config FEATURE_HTTPD_ERROR_PAGES
208 bool "Support for custom error pages"
212 This option allows you to define custom error pages in
213 the configuration file instead of the default HTTP status
214 error pages. For instance, if you add the line:
216 in the config file, the server will respond the specified
217 '/path/e404.html' file instead of the terse '404 NOT FOUND'
220 config FEATURE_HTTPD_PROXY
221 bool "Support for reverse proxy"
225 This option allows you to define URLs that will be forwarded
226 to another HTTP server. To setup add the following line to the
228 P:/url/:http://hostname[:port]/new/path/
229 Then a request to /url/myfile will be forwarded to
230 http://hostname[:port]/new/path/myfile.
236 Ifconfig is used to configure the kernel-resident network interfaces.
238 config FEATURE_IFCONFIG_STATUS
239 bool "Enable status reporting output (+7k)"
243 If ifconfig is called with no arguments it will display the status
244 of the currently active interfaces.
246 config FEATURE_IFCONFIG_SLIP
247 bool "Enable slip-specific options \"keepalive\" and \"outfill\""
251 Allow "keepalive" and "outfill" support for SLIP. If you're not
252 planning on using serial lines, leave this unchecked.
254 config FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ
255 bool "Enable options \"mem_start\", \"io_addr\", and \"irq\""
259 Allow the start address for shared memory, start address for I/O,
260 and/or the interrupt line used by the specified device.
262 config FEATURE_IFCONFIG_HW
263 bool "Enable option \"hw\" (ether only)"
267 Set the hardware address of this interface, if the device driver
268 supports this operation. Currently, we only support the 'ether'
271 config FEATURE_IFCONFIG_BROADCAST_PLUS
272 bool "Set the broadcast automatically"
276 Setting this will make ifconfig attempt to find the broadcast
277 automatically if the value '+' is used.
283 Userspace application to bind several interfaces
284 to a logical interface (use with kernel bonding driver).
290 Activate or deactivate the specified interfaces. This applet makes
291 use of either "ifconfig" and "route" or the "ip" command to actually
292 configure network interfaces. Therefore, you will probably also want
293 to enable either IFCONFIG and ROUTE, or enable
294 FEATURE_IFUPDOWN_IP and the various IP options. Of
295 course you could use non-busybox versions of these programs, so
296 against my better judgement (since this will surely result in plenty
297 of support questions on the mailing list), I do not force you to
298 enable these additional options. It is up to you to supply either
299 "ifconfig", "route" and "run-parts" or the "ip" command, either
300 via busybox or via standalone utilities.
302 config IFUPDOWN_IFSTATE_PATH
303 string "Absolute path to ifstate file"
304 default "/var/run/ifstate"
307 ifupdown keeps state information in a file called ifstate.
308 Typically it is located in /var/run/ifstate, however
309 some distributions tend to put it in other places
310 (debian, for example, uses /etc/network/run/ifstate).
311 This config option defines location of ifstate.
313 config FEATURE_IFUPDOWN_IP
318 Use the iproute "ip" command to implement "ifup" and "ifdown", rather
319 than the default of using the older 'ifconfig' and 'route' utilities.
321 config FEATURE_IFUPDOWN_IP_BUILTIN
322 bool "Use busybox ip applet"
324 depends on FEATURE_IFUPDOWN_IP
326 select FEATURE_IP_ADDRESS
327 select FEATURE_IP_LINK
328 select FEATURE_IP_ROUTE
330 Use the busybox iproute "ip" applet to implement "ifupdown".
332 If left disabled, you must install the full-blown iproute2
333 utility or the "ifup" and "ifdown" applets will not work.
335 config FEATURE_IFUPDOWN_IFCONFIG_BUILTIN
336 bool "Use busybox ifconfig and route applets"
338 depends on IFUPDOWN && !FEATURE_IFUPDOWN_IP
342 Use the busybox iproute "ifconfig" and "route" applets to
343 implement the "ifup" and "ifdown" utilities.
345 If left disabled, you must install the full-blown ifconfig
346 and route utilities, or the "ifup" and "ifdown" applets will not
349 config FEATURE_IFUPDOWN_IPV4
350 bool "Support for IPv4"
354 If you want ifup/ifdown to talk IPv4, leave this on.
356 config FEATURE_IFUPDOWN_IPV6
357 bool "Support for IPv6"
359 depends on IFUPDOWN && FEATURE_IPV6
361 If you need support for IPv6, turn this option on.
364 ###config FEATURE_IFUPDOWN_IPX
365 ### bool "Support for IPX"
367 ### depends on IFUPDOWN
369 ### If this option is selected you can use busybox to work with IPX
372 config FEATURE_IFUPDOWN_MAPPING
373 bool "Enable mapping support"
377 This enables support for the "mapping" stanza, unless you have
378 a weird network setup you don't need it.
380 config FEATURE_IFUPDOWN_EXTERNAL_DHCP
381 bool "Support for external dhcp clients"
385 This enables support for the external dhcp clients. Clients are
386 tried in the following order: dhcpcd, dhclient, pump and udhcpc.
387 Otherwise, if udhcpc applet is enabled, it is used.
388 Otherwise, ifup/ifdown will have no support for DHCP.
393 select FEATURE_SYSLOG
395 Internet superserver daemon
397 config FEATURE_INETD_SUPPORT_BUILTIN_ECHO
398 bool "Support echo service"
402 Echo received data internal inetd service
404 config FEATURE_INETD_SUPPORT_BUILTIN_DISCARD
405 bool "Support discard service"
409 Internet /dev/null internal inetd service
411 config FEATURE_INETD_SUPPORT_BUILTIN_TIME
412 bool "Support time service"
416 Return 32 bit time since 1900 internal inetd service
418 config FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME
419 bool "Support daytime service"
423 Return human-readable time internal inetd service
425 config FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN
426 bool "Support chargen service"
430 Familiar character generator internal inetd service
432 config FEATURE_INETD_RPC
433 bool "Support RPC services"
436 select FEATURE_HAVE_RPC
438 Support Sun-RPC based services
444 The "ip" applet is a TCP/IP interface configuration and routing
445 utility. You generally don't need "ip" to use busybox with
448 config FEATURE_IP_ADDRESS
453 Address manipulation support for the "ip" applet.
455 config FEATURE_IP_LINK
460 Configure network devices with "ip".
462 config FEATURE_IP_ROUTE
467 Add support for routing table management to "ip".
469 config FEATURE_IP_TUNNEL
474 Add support for tunneling commands to "ip".
476 config FEATURE_IP_RULE
481 Add support for rule commands to "ip".
483 config FEATURE_IP_SHORT_FORMS
484 bool "Support short forms of ip commands"
488 Also support short-form of ip <OBJECT> commands:
492 ip tunnel -> iptunnel
495 Say N unless you desparately need the short form of the ip
498 config FEATURE_IP_RARE_PROTOCOLS
499 bool "Support displaying rarely used link types"
503 If you are not going to use links of type "frad", "econet",
504 "bif" etc, you probably don't need to enable this.
505 Ethernet, wireless, infrared, ppp/slip, ip tunnelling
506 link types are supported without this option selected.
511 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_ADDRESS
516 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_LINK
521 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_ROUTE
526 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_TUNNEL
531 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_RULE
537 ipcalc takes an IP address and netmask and calculates the
538 resulting broadcast, network, and host range.
540 config FEATURE_IPCALC_FANCY
541 bool "Fancy IPCALC, more options, adds 1 kbyte"
545 Adds the options hostname, prefix and silent to the output of
548 config FEATURE_IPCALC_LONG_OPTIONS
549 bool "Enable long options"
551 depends on IPCALC && GETOPT_LONG
553 Support long options for the ipcalc applet.
558 select FEATURE_SYSLOG
560 nameif is used to rename network interface by its MAC address.
561 Renamed interfaces MUST be in the down state.
562 It is possible to use a file (default: /etc/mactab)
563 with list of new interface names and MACs.
564 Maximum interface name length: IFNAMSIZ = 16
565 File fields are separated by space or tab.
568 new_interface_name XX:XX:XX:XX:XX:XX
570 config FEATURE_NAMEIF_EXTENDED
571 bool "Extended nameif"
575 This extends the nameif syntax to support the bus_info and driver
576 checks. The syntax is compatible to the normal nameif.
578 new_interface_name driver=asix bus=usb-0000:00:08.2-3
579 new_interface_name bus=usb-0000:00:08.2-3 00:80:C8:38:91:B5
580 new_interface_name mac=00:80:C8:38:91:B5
581 new_interface_name 00:80:C8:38:91:B5
587 A simple Unix utility which reads and writes data across network
591 bool "Netcat server options (-l)"
595 Allow netcat to act as a server.
598 bool "Netcat extensions (-eiw and filename)"
602 Add -e (support for executing the rest of the command line after
603 making or receiving a successful connection), -i (delay interval for
604 lines sent), -w (timeout for initial connection).
610 netstat prints information about the Linux networking subsystem.
612 config FEATURE_NETSTAT_WIDE
613 bool "Enable wide netstat output"
617 Add support for wide columns. Useful when displaying IPv6 addresses
620 config FEATURE_NETSTAT_PRG
621 bool "Enable PID/Program name output"
625 Add support for -p flag to print out PID and program name.
632 nslookup is a tool to query Internet name servers.
638 ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to
639 elicit an ICMP ECHO_RESPONSE from a host or gateway.
644 depends on FEATURE_IPV6 && PING
646 This will give you a ping that can talk IPv6.
648 config FEATURE_FANCY_PING
649 bool "Enable fancy ping output"
653 Make the output from the ping applet include statistics, and at the
654 same time provide full support for ICMP packets.
660 Simple network port scanner.
666 Route displays or manipulates the kernel's IP routing tables.
672 slattach is a small utility to attach network interfaces to serial
679 # show / manipulate traffic control settings
681 #config FEATURE_TC_INGRESS
689 Telnet is an interface to the TELNET protocol, but is also commonly
690 used to test other simple protocols.
692 config FEATURE_TELNET_TTYPE
693 bool "Pass TERM type to remote host"
697 Setting this option will forward the TERM environment variable to the
698 remote host you are connecting to. This is useful to make sure that
699 things like ANSI colors and other control sequences behave.
701 config FEATURE_TELNET_AUTOLOGIN
702 bool "Pass USER type to remote host"
706 Setting this option will forward the USER environment variable to the
707 remote host you are connecting to. This is useful when you need to
708 log into a machine without telling the username (autologin). This
709 option enables `-a' and `-l USER' arguments.
714 select FEATURE_SYSLOG
716 A daemon for the TELNET protocol, allowing you to log onto the host
717 running the daemon. Please keep in mind that the TELNET protocol
718 sends passwords in plain text. If you can't afford the space for an
719 SSH daemon and you trust your network, you may say 'y' here. As a
720 more secure alternative, you should seriously consider installing the
721 very small Dropbear SSH daemon instead:
722 http://matt.ucc.asn.au/dropbear/dropbear.html
724 Note that for busybox telnetd to work you need several things:
725 First of all, your kernel needs:
729 Next, you need a /dev/pts directory on your root filesystem:
732 drwxr-xr-x 2 root root 0 Sep 23 13:21 /dev/pts/
734 Next you need the pseudo terminal master multiplexer /dev/ptmx:
737 crw-rw-rw- 1 root tty 5, 2 Sep 23 13:55 /dev/ptmx
739 Any /dev/ttyp[0-9]* files you may have can be removed.
740 Next, you need to mount the devpts filesystem on /dev/pts using:
742 mount -t devpts devpts /dev/pts
744 You need to be sure that Busybox has LOGIN and
745 FEATURE_SUID enabled. And finally, you should make
746 certain that Busybox has been installed setuid root:
748 chown root.root /bin/busybox
749 chmod 4755 /bin/busybox
751 with all that done, telnetd _should_ work....
754 config FEATURE_TELNETD_STANDALONE
755 bool "Support standalone telnetd (not inetd only)"
759 Selecting this will make telnetd able to run standalone.
765 This enables the Trivial File Transfer Protocol client program. TFTP
766 is usually used for simple, small transfers such as a root image
767 for a network-enabled bootloader.
773 This enables the Trivial File Transfer Protocol server program.
774 It expects that stdin is a datagram socket and a packet
775 is already pending on it. It will exit after one transfer.
776 In other words: it should be run from inetd in nowait mode,
777 or from udpsvd. Example: "udpsvd -E 0 69 tftpd DIR"
779 config FEATURE_TFTP_GET
780 bool "Enable \"get\" command"
782 depends on TFTP || TFTPD
784 Add support for the GET command within the TFTP client. This allows
785 a client to retrieve a file from a TFTP server.
786 Also enable upload support in tftpd, if tftpd is selected.
788 config FEATURE_TFTP_PUT
789 bool "Enable \"put\" command"
791 depends on TFTP || TFTPD
793 Add support for the PUT command within the TFTP client. This allows
794 a client to transfer a file to a TFTP server.
795 Also enable download support in tftpd, if tftpd is selected.
797 config FEATURE_TFTP_BLOCKSIZE
798 bool "Enable \"blksize\" protocol option"
800 depends on TFTP || TFTPD
802 Allow tftp to specify block size, and tftpd to understand
808 depends on TFTP || TFTPD
810 Enable debug settings for tftp. This is useful if you're running
811 into problems with tftp as the protocol doesn't help you much when
812 you run into problems.
818 Utility to trace the route of IP packets
820 config FEATURE_TRACEROUTE_VERBOSE
821 bool "Enable verbose output"
823 depends on TRACEROUTE
825 Add some verbosity to traceroute. This includes amongst other things
826 hostnames and ICMP response types.
828 config FEATURE_TRACEROUTE_SOURCE_ROUTE
829 bool "Enable loose source route"
831 depends on TRACEROUTE
833 Add option to specify a loose source route gateway
836 config FEATURE_TRACEROUTE_USE_ICMP
837 bool "Use ICMP instead of UDP"
839 depends on TRACEROUTE
841 Add feature to allow for ICMP ECHO instead of UDP datagrams.
843 source networking/udhcp/Config.in
845 config IFUPDOWN_UDHCPC_CMD_OPTIONS
846 string "ifup udhcpc command line options"
848 depends on IFUPDOWN && APP_UDHCPC
850 Command line options to pass to udhcpc from ifup.
851 Intended to alter options not available in /etc/network/interfaces.
852 (IE: --syslog --background etc...)
858 Creates, removes, and configures VLAN interfaces
864 wget is a utility for non-interactive download of files from HTTP,
865 HTTPS, and FTP servers.
867 config FEATURE_WGET_STATUSBAR
868 bool "Enable a nifty process meter (+2k)"
872 Enable the transfer progress bar for wget transfers.
874 config FEATURE_WGET_AUTHENTICATION
875 bool "Enable HTTP authentication"
879 Support authenticated HTTP transfers.
881 config FEATURE_WGET_LONG_OPTIONS
882 bool "Enable long options"
884 depends on WGET && GETOPT_LONG
886 Support long options for the wget applet.
891 select FEATURE_SYSLOG
893 ZCIP provides ZeroConf IPv4 address selection, according to RFC 3927.
894 It's a daemon that allocates and defends a dynamically assigned
895 address on the 169.254/16 network, requiring no system administrator.
897 See http://www.zeroconf.org for further details, and "zcip.script"
898 in the busybox examples.
904 tcpsvd listens on a TCP port and runs a program for each new
911 tunctl creates or deletes tun devices.
913 config FEATURE_TUNCTL_UG
914 bool "Support owner:group assignment"
918 Allow to specify owner and group of newly created interface.
919 340 bytes of pure bloat. Say no here.
925 udpsvd listens on an UDP port and runs a program for each new