1# 2# For a description of the syntax of this configuration file, 3# see scripts/kbuild/config-language.txt. 4# 5 6menu "Networking Utilities" 7 8config FEATURE_IPV6 9 bool "Enable IPv6 support" 10 default n 11 help 12 Enable IPv6 support in busybox. 13 This adds IPv6 support in the networking applets. 14 15config VERBOSE_RESOLUTION_ERRORS 16 bool "Verbose resolution errors" 17 default n 18 help 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. 22 23config ARP 24 bool "arp" 25 default n 26 help 27 Manipulate the system ARP cache. 28 29config ARPING 30 bool "arping" 31 default n 32 help 33 Ping hosts by ARP packets. 34 35config DNSD 36 bool "dnsd" 37 default n 38 help 39 Small and static DNS server daemon. 40 41config ETHER_WAKE 42 bool "ether-wake" 43 default n 44 help 45 Send a magic packet to wake up sleeping machines. 46 47config FAKEIDENTD 48 bool "fakeidentd" 49 default n 50 select FEATURE_SYSLOG 51 help 52 fakeidentd listens on the ident port and returns a predefined 53 fake value on any query. 54 55config FTPGET 56 bool "ftpget" 57 default n 58 help 59 Retrieve a remote file via FTP. 60 61config FTPPUT 62 bool "ftpput" 63 default n 64 help 65 Store a remote file via FTP. 66 67config FEATURE_FTPGETPUT_LONG_OPTIONS 68 bool "Enable long options in ftpget/ftpput" 69 default n 70 depends on GETOPT_LONG && (FTPGET || FTPPUT) 71 help 72 Support long options for the ftpget/ftpput applet. 73 74config HOSTNAME 75 bool "hostname" 76 default n 77 help 78 Show or set the system's host name. 79 80config HTTPD 81 bool "httpd" 82 default n 83 help 84 Serve web pages via an HTTP server. 85 86config FEATURE_HTTPD_USE_SENDFILE 87 bool "Use sendfile system call" 88 default n 89 depends on HTTPD 90 help 91 When enabled, httpd will use the kernel sendfile() function 92 instead of read/write loop. 93 94config FEATURE_HTTPD_RELOAD_CONFIG_SIGHUP 95 bool "Support reloading the global config file using hup signal" 96 default n 97 depends on HTTPD 98 help 99 This option enables processing of SIGHUP to reload cached 100 configuration settings. 101 102config FEATURE_HTTPD_SETUID 103 bool "Enable -u <user> option" 104 default n 105 depends on HTTPD 106 help 107 This option allows the server to run as a specific user 108 rather than defaulting to the user that starts the server. 109 Use of this option requires special privileges to change to a 110 different user. 111 112config FEATURE_HTTPD_BASIC_AUTH 113 bool "Enable Basic http Authentication" 114 default y 115 depends on HTTPD 116 help 117 Utilizes password settings from /etc/httpd.conf for basic 118 authentication on a per url basis. 119 120config FEATURE_HTTPD_AUTH_MD5 121 bool "Support MD5 crypted passwords for http Authentication" 122 default n 123 depends on FEATURE_HTTPD_BASIC_AUTH 124 help 125 Enables basic per URL authentication from /etc/httpd.conf 126 using md5 passwords. 127 128config FEATURE_HTTPD_CONFIG_WITH_MIME_TYPES 129 bool "Support loading additional MIME types at run-time" 130 default n 131 depends on HTTPD 132 help 133 This option enables support for additional MIME types at 134 run-time to be specified in the configuration file. 135 136config FEATURE_HTTPD_CGI 137 bool "Support Common Gateway Interface (CGI)" 138 default y 139 depends on HTTPD 140 help 141 This option allows scripts and executables to be invoked 142 when specific URLs are requested. 143 144config FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR 145 bool "Enable support for running scripts through an interpreter" 146 default n 147 depends on FEATURE_HTTPD_CGI 148 help 149 This option enables support for running scripts through an 150 interpreter. Turn this on if you want PHP scripts to work 151 properly. You need to supply an additional line in your httpd 152 config file: 153 *.php:/path/to/your/php 154 155config FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV 156 bool "Support the REMOTE_PORT environment variable for CGI" 157 default n 158 depends on FEATURE_HTTPD_CGI 159 help 160 Use of this option can assist scripts in generating 161 references that contain a unique port number. 162 163config FEATURE_HTTPD_ENCODE_URL_STR 164 bool "Enable the -e option for shell script CGI simplification." 165 default y 166 depends on HTTPD 167 help 168 This option allows html encoding arbitrary 169 strings for display of the browser. Output goes to stdout. 170 For example, httpd -e "<Hello World>" as 171 "<Hello World>". 172 173config FEATURE_HTTPD_ERROR_PAGES 174 bool "Enable support for custom error pages" 175 default n 176 depends on HTTPD 177 help 178 This option allows you to define custom error pages in 179 the configuration file instead of the default HTTP status 180 error pages. For instance, if you add the line: 181 E404:/path/e404.html 182 in the config file, the server will respond the specified 183 '/path/e404.html' file instead of the terse '404 NOT FOUND' 184 message. 185 186config IFCONFIG 187 bool "ifconfig" 188 default n 189 help 190 Ifconfig is used to configure the kernel-resident network interfaces. 191 192config FEATURE_IFCONFIG_STATUS 193 bool "Enable status reporting output (+7k)" 194 default y 195 depends on IFCONFIG 196 help 197 If ifconfig is called with no arguments it will display the status 198 of the currently active interfaces. 199 200config FEATURE_IFCONFIG_SLIP 201 bool "Enable slip-specific options \"keepalive\" and \"outfill\"" 202 default n 203 depends on IFCONFIG 204 help 205 Allow "keepalive" and "outfill" support for SLIP. If you're not 206 planning on using serial lines, leave this unchecked. 207 208config FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ 209 bool "Enable options \"mem_start\", \"io_addr\", and \"irq\"" 210 default n 211 depends on IFCONFIG 212 help 213 Allow the start address for shared memory, start address for I/O, 214 and/or the interrupt line used by the specified device. 215 216config FEATURE_IFCONFIG_HW 217 bool "Enable option \"hw\" (ether only)" 218 default y 219 depends on IFCONFIG 220 help 221 Set the hardware address of this interface, if the device driver 222 supports this operation. Currently, we only support the 'ether' 223 class. 224 225config FEATURE_IFCONFIG_BROADCAST_PLUS 226 bool "Set the broadcast automatically" 227 default n 228 depends on IFCONFIG 229 help 230 Setting this will make ifconfig attempt to find the broadcast 231 automatically if the value '+' is used. 232 233config IFUPDOWN 234 bool "ifupdown" 235 default n 236 help 237 Activate or deactivate the specified interfaces. This applet makes 238 use of either "ifconfig" and "route" or the "ip" command to actually 239 configure network interfaces. Therefore, you will probably also want 240 to enable either IFCONFIG and ROUTE, or enable 241 FEATURE_IFUPDOWN_IP and the various IP options. Of 242 course you could use non-busybox versions of these programs, so 243 against my better judgement (since this will surely result in plenty 244 of support questions on the mailing list), I do not force you to 245 enable these additional options. It is up to you to supply either 246 "ifconfig", "route" and "run-parts" or the "ip" command, either 247 via busybox or via standalone utilities. 248 249config IFUPDOWN_IFSTATE_PATH 250 string "Absolute path to ifstate file" 251 default "/var/run/ifstate" 252 help 253 ifupdown keeps state information in a file called ifstate. 254 Typically it is located in /var/run/ifstate, however 255 some distributions tend to put it in other places 256 (debian, for example, uses /etc/network/run/ifstate). 257 This config option defines location of ifstate. 258 259config FEATURE_IFUPDOWN_IP 260 bool "Use ip applet" 261 default n 262 depends on IFUPDOWN 263 help 264 Use the iproute "ip" command to implement "ifup" and "ifdown", rather 265 than the default of using the older 'ifconfig' and 'route' utilities. 266 267config FEATURE_IFUPDOWN_IP_BUILTIN 268 bool "Use busybox ip applet" 269 default y 270 depends on FEATURE_IFUPDOWN_IP 271 select IP 272 select FEATURE_IP_ADDRESS 273 select FEATURE_IP_LINK 274 select FEATURE_IP_ROUTE 275 help 276 Use the busybox iproute "ip" applet to implement "ifupdown". 277 278 If left disabled, you must install the full-blown iproute2 279 utility or the "ifup" and "ifdown" applets will not work. 280 281config FEATURE_IFUPDOWN_IFCONFIG_BUILTIN 282 bool "Use busybox ifconfig and route applets" 283 default y 284 depends on IFUPDOWN && !FEATURE_IFUPDOWN_IP 285 select IFCONFIG 286 select ROUTE 287 help 288 Use the busybox iproute "ifconfig" and "route" applets to 289 implement the "ifup" and "ifdown" utilities. 290 291 If left disabled, you must install the full-blown ifconfig 292 and route utilities, or the "ifup" and "ifdown" applets will not 293 work. 294 295config FEATURE_IFUPDOWN_IPV4 296 bool "Enable support for IPv4" 297 default y 298 depends on IFUPDOWN 299 help 300 If you want ifup/ifdown to talk IPv4, leave this on. 301 302config FEATURE_IFUPDOWN_IPV6 303 bool "Enable support for IPv6" 304 default n 305 depends on IFUPDOWN && FEATURE_IPV6 306 help 307 If you need support for IPv6, turn this option on. 308 309### UNUSED 310### config FEATURE_IFUPDOWN_IPX 311### bool "Enable support for IPX" 312### default n 313### depends on IFUPDOWN 314### help 315### If this option is selected you can use busybox to work with IPX 316### networks. 317 318config FEATURE_IFUPDOWN_MAPPING 319 bool "Enable mapping support" 320 default n 321 depends on IFUPDOWN 322 help 323 This enables support for the "mapping" stanza, unless you have 324 a weird network setup you don't need it. 325 326config FEATURE_IFUPDOWN_EXTERNAL_DHCP 327 bool "Enable support for external dhcp clients" 328 default n 329 depends on IFUPDOWN 330 help 331 This enables support for the external dhcp clients. Clients are 332 tried in the following order: dhcpcd, dhclient, pump and udhcpc. 333 Otherwise, if udhcpc applet is enabled, it is used. 334 Otherwise, ifup/ifdown will have no support for DHCP. 335 336config INETD 337 bool "inetd" 338 default n 339 select FEATURE_SYSLOG 340 help 341 Internet superserver daemon 342 343config FEATURE_INETD_SUPPORT_BUILTIN_ECHO 344 bool "Support echo service" 345 default y 346 depends on INETD 347 help 348 Echo received data internal inetd service 349 350config FEATURE_INETD_SUPPORT_BUILTIN_DISCARD 351 bool "Support discard service" 352 default y 353 depends on INETD 354 help 355 Internet /dev/null internal inetd service 356 357config FEATURE_INETD_SUPPORT_BUILTIN_TIME 358 bool "Support time service" 359 default y 360 depends on INETD 361 help 362 Return 32 bit time since 1900 internal inetd service 363 364config FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME 365 bool "Support daytime service" 366 default y 367 depends on INETD 368 help 369 Return human-readable time internal inetd service 370 371config FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN 372 bool "Support chargen service" 373 default y 374 depends on INETD 375 help 376 Familiar character generator internal inetd service 377 378config FEATURE_INETD_RPC 379 bool "Support RPC services" 380 default n 381 depends on INETD 382 select FEATURE_HAVE_RPC 383 help 384 Support Sun-RPC based services 385 386config IP 387 bool "ip" 388 default n 389 help 390 The "ip" applet is a TCP/IP interface configuration and routing 391 utility. You generally don't need "ip" to use busybox with 392 TCP/IP. 393 394config FEATURE_IP_ADDRESS 395 bool "ip address" 396 default y 397 depends on IP 398 help 399 Address manipulation support for the "ip" applet. 400 401config FEATURE_IP_LINK 402 bool "ip link" 403 default y 404 depends on IP 405 help 406 Configure network devices with "ip". 407 408config FEATURE_IP_ROUTE 409 bool "ip route" 410 default y 411 depends on IP 412 help 413 Add support for routing table management to "ip". 414 415config FEATURE_IP_TUNNEL 416 bool "ip tunnel" 417 default n 418 depends on IP 419 help 420 Add support for tunneling commands to "ip". 421 422config FEATURE_IP_RULE 423 bool "ip rule" 424 default n 425 depends on IP 426 help 427 Add support for rule commands to "ip". 428 429config FEATURE_IP_SHORT_FORMS 430 bool "Support short forms of ip commands." 431 default n 432 depends on IP 433 help 434 Also support short-form of ip <OBJECT> commands: 435 ip addr -> ipaddr 436 ip link -> iplink 437 ip route -> iproute 438 ip tunnel -> iptunnel 439 ip rule -> iprule 440 441 Say N unless you desparately need the short form of the ip 442 object commands. 443 444config IPADDR 445 bool 446 default y 447 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_ADDRESS 448 449config IPLINK 450 bool 451 default y 452 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_LINK 453 454config IPROUTE 455 bool 456 default y 457 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_ROUTE 458 459config IPTUNNEL 460 bool 461 default y 462 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_TUNNEL 463 464config IPRULE 465 bool 466 default y 467 depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_RULE 468 469config IPCALC 470 bool "ipcalc" 471 default n 472 help 473 ipcalc takes an IP address and netmask and calculates the 474 resulting broadcast, network, and host range. 475 476config FEATURE_IPCALC_FANCY 477 bool "Fancy IPCALC, more options, adds 1 kbyte" 478 default y 479 depends on IPCALC 480 help 481 Adds the options hostname, prefix and silent to the output of "ipcalc". 482 483config FEATURE_IPCALC_LONG_OPTIONS 484 bool "Enable long options" 485 default n 486 depends on IPCALC && GETOPT_LONG 487 help 488 Support long options for the ipcalc applet. 489 490config NAMEIF 491 bool "nameif" 492 default n 493 select FEATURE_SYSLOG 494 help 495 nameif is used to rename network interface by its MAC address. 496 Renamed interfaces MUST be in the down state. 497 It is possible to use a file (default: /etc/mactab) 498 with list of new interface names and MACs. 499 Maximum interface name length: IF_NAMESIZE = 16 500 File fields are separated by space or tab. 501 File format: 502 # Comment 503 new_interface_name XX:XX:XX:XX:XX:XX 504 505config NC 506 bool "nc" 507 default n 508 help 509 A simple Unix utility which reads and writes data across network 510 connections. 511 512config NC_SERVER 513 bool "Netcat server options (-l)" 514 default n 515 depends on NC 516 help 517 Allow netcat to act as a server. 518 519config NC_EXTRA 520 bool "Netcat extensions (-eiw and filename)" 521 default n 522 depends on NC 523 help 524 Add -e (support for executing the rest of the command line after 525 making or receiving a successful connection), -i (delay interval for 526 lines sent), -w (timeout for initial connection). 527 528config NETSTAT 529 bool "netstat" 530 default n 531 help 532 netstat prints information about the Linux networking subsystem. 533 534config FEATURE_NETSTAT_WIDE 535 bool " Enable wide netstat output" 536 default n 537 depends on NETSTAT 538 help 539 Add support for wide columns. Useful when displaying IPv6 addresses 540 (-W option). 541 542config NSLOOKUP 543 bool "nslookup" 544 default n 545 help 546 nslookup is a tool to query Internet name servers. 547 548config PING 549 bool "ping" 550 default n 551 help 552 ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to 553 elicit an ICMP ECHO_RESPONSE from a host or gateway. 554 555config PING6 556 bool "ping6" 557 default n 558 depends on FEATURE_IPV6 && PING 559 help 560 This will give you a ping that can talk IPv6. 561 562config PSCAN 563 bool "pscan" 564 default n 565 help 566 Simple network port scanner. 567 568config FEATURE_FANCY_PING 569 bool "Enable fancy ping output" 570 default y 571 depends on PING 572 help 573 Make the output from the ping applet include statistics, and at the 574 same time provide full support for ICMP packets. 575 576config ROUTE 577 bool "route" 578 default n 579 help 580 Route displays or manipulates the kernel's IP routing tables. 581 582config SLATTACH 583 bool "slattach" 584 default n 585 help 586 slattach is a small utility to attach network interfaces to serial lines. 587 588config TELNET 589 bool "telnet" 590 default n 591 help 592 Telnet is an interface to the TELNET protocol, but is also commonly 593 used to test other simple protocols. 594 595config FEATURE_TELNET_TTYPE 596 bool "Pass TERM type to remote host" 597 default y 598 depends on TELNET 599 help 600 Setting this option will forward the TERM environment variable to the 601 remote host you are connecting to. This is useful to make sure that 602 things like ANSI colors and other control sequences behave. 603 604config FEATURE_TELNET_AUTOLOGIN 605 bool "Pass USER type to remote host" 606 default y 607 depends on TELNET 608 help 609 Setting this option will forward the USER environment variable to the 610 remote host you are connecting to. This is useful when you need to 611 log into a machine without telling the username (autologin). This 612 option enables `-a' and `-l USER' arguments. 613 614config TELNETD 615 bool "telnetd" 616 default n 617 select FEATURE_SYSLOG 618 help 619 A daemon for the TELNET protocol, allowing you to log onto the host 620 running the daemon. Please keep in mind that the TELNET protocol 621 sends passwords in plain text. If you can't afford the space for an 622 SSH daemon and you trust your network, you may say 'y' here. As a 623 more secure alternative, you should seriously consider installing the 624 very small Dropbear SSH daemon instead: 625 http://matt.ucc.asn.au/dropbear/dropbear.html 626 627 Note that for busybox telnetd to work you need several things: 628 First of all, your kernel needs: 629 UNIX98_PTYS=y 630 DEVPTS_FS=y 631 632 Next, you need a /dev/pts directory on your root filesystem: 633 634 $ ls -ld /dev/pts 635 drwxr-xr-x 2 root root 0 Sep 23 13:21 /dev/pts/ 636 637 Next you need the pseudo terminal master multiplexer /dev/ptmx: 638 639 $ ls -la /dev/ptmx 640 crw-rw-rw- 1 root tty 5, 2 Sep 23 13:55 /dev/ptmx 641 642 Any /dev/ttyp[0-9]* files you may have can be removed. 643 Next, you need to mount the devpts filesystem on /dev/pts using: 644 645 mount -t devpts devpts /dev/pts 646 647 You need to be sure that Busybox has LOGIN and 648 FEATURE_SUID enabled. And finally, you should make 649 certain that Busybox has been installed setuid root: 650 651 chown root.root /bin/busybox 652 chmod 4755 /bin/busybox 653 654 with all that done, telnetd _should_ work.... 655 656 657config FEATURE_TELNETD_STANDALONE 658 bool "Support standalone telnetd (not inetd only)" 659 default n 660 depends on TELNETD 661 help 662 Selecting this will make telnetd able to run standalone. 663 664config TFTP 665 bool "tftp" 666 default n 667 help 668 This enables the Trivial File Transfer Protocol client program. TFTP 669 is usually used for simple, small transfers such as a root image 670 for a network-enabled bootloader. 671 672config FEATURE_TFTP_GET 673 bool "Enable \"get\" command" 674 default y 675 depends on TFTP 676 help 677 Add support for the GET command within the TFTP client. This allows 678 a client to retrieve a file from a TFTP server. 679 680config FEATURE_TFTP_PUT 681 bool "Enable \"put\" command" 682 default y 683 depends on TFTP 684 help 685 Add support for the PUT command within the TFTP client. This allows 686 a client to transfer a file to a TFTP server. 687 688config FEATURE_TFTP_BLOCKSIZE 689 bool "Enable \"blocksize\" command" 690 default n 691 depends on TFTP 692 help 693 Allow the client to specify the desired block size for transfers. 694 695config DEBUG_TFTP 696 bool "Enable debug" 697 default n 698 depends on TFTP 699 help 700 Enable debug settings for tftp. This is useful if you're running 701 into problems with tftp as the protocol doesn't help you much when 702 you run into problems. 703 704config TRACEROUTE 705 bool "traceroute" 706 default n 707 help 708 Utility to trace the route of IP packets 709 710config FEATURE_TRACEROUTE_VERBOSE 711 bool "Enable verbose output" 712 default n 713 depends on TRACEROUTE 714 help 715 Add some verbosity to traceroute. This includes amongst other things 716 hostnames and ICMP response types. 717 718config FEATURE_TRACEROUTE_SOURCE_ROUTE 719 bool "Enable loose source route" 720 default n 721 depends on TRACEROUTE 722 help 723 Add option to specify a loose source route gateway 724 (8 maximum). 725 726config FEATURE_TRACEROUTE_USE_ICMP 727 bool "Use ICMP instead of UDP" 728 default n 729 depends on TRACEROUTE 730 help 731 Add feature to allow for ICMP ECHO instead of UDP datagrams. 732 733source networking/udhcp/Config.in 734 735config VCONFIG 736 bool "vconfig" 737 default n 738 help 739 Creates, removes, and configures VLAN interfaces 740 741config WGET 742 bool "wget" 743 default n 744 help 745 wget is a utility for non-interactive download of files from HTTP, 746 HTTPS, and FTP servers. 747 748config FEATURE_WGET_STATUSBAR 749 bool "Enable a nifty process meter (+2k)" 750 default y 751 depends on WGET 752 help 753 Enable the transfer progress bar for wget transfers. 754 755config FEATURE_WGET_AUTHENTICATION 756 bool "Enable HTTP authentication" 757 default y 758 depends on WGET 759 help 760 Support authenticated HTTP transfers. 761 762config FEATURE_WGET_LONG_OPTIONS 763 bool "Enable long options" 764 default n 765 depends on WGET && GETOPT_LONG 766 help 767 Support long options for the wget applet. 768 769config ZCIP 770 bool "zcip" 771 default n 772 select FEATURE_SYSLOG 773 help 774 ZCIP provides ZeroConf IPv4 address selection, according to RFC 3927. 775 It's a daemon that allocates and defends a dynamically assigned 776 address on the 169.254/16 network, requiring no system administrator. 777 778 See http://www.zeroconf.org for further details, and "zcip.script" 779 in the busybox examples. 780 781endmenu 782