disable use of sendfile() for httpd
[openwrt/svn-archive/archive.git] / package / busybox / config / networking / Config.in
index 3e0cbc95d42177aecd890ec8669d4afb292a652f..0dbe42d8b719ec6dcff379c7855de5d2d38f9ae4 100644 (file)
@@ -12,17 +12,31 @@ config BUSYBOX_CONFIG_FEATURE_IPV6
          Enable IPv6 support in busybox.
          This adds IPv6 support in the networking applets.
 
+config BUSYBOX_CONFIG_VERBOSE_RESOLUTION_ERRORS
+       bool "Verbose resolution errors"
+       default y
+       help
+         Enable if you are not satisfied with simplistic
+         "can't resolve 'hostname.com'" and want to know more.
+         This may increase size of your executable a bit.
+
+config BUSYBOX_CONFIG_ARP
+       bool "arp"
+       default n
+       help
+         Manipulate the system ARP cache.
+
 config BUSYBOX_CONFIG_ARPING
        bool "arping"
        default y
        help
-         Ping hosts by ARP packets
+         Ping hosts by ARP packets.
 
 config BUSYBOX_CONFIG_DNSD
        bool "dnsd"
        default n
        help
-         Small and static DNS server daemon. 
+         Small and static DNS server daemon.
 
 config BUSYBOX_CONFIG_ETHER_WAKE
        bool "ether-wake"
@@ -33,6 +47,7 @@ config BUSYBOX_CONFIG_ETHER_WAKE
 config BUSYBOX_CONFIG_FAKEIDENTD
        bool "fakeidentd"
        default n
+       select BUSYBOX_CONFIG_FEATURE_SYSLOG
        help
          fakeidentd listens on the ident port and returns a predefined
          fake value on any query.
@@ -52,7 +67,7 @@ config BUSYBOX_CONFIG_FTPPUT
 config BUSYBOX_CONFIG_FEATURE_FTPGETPUT_LONG_OPTIONS
        bool "Enable long options in ftpget/ftpput"
        default n
-       depends on BUSYBOX_CONFIG_GETOPT_LONG && (CONFIG_FTPGET || BUSYBOX_CONFIG_FTPPUT)
+       depends on BUSYBOX_CONFIG_GETOPT_LONG && (BUSYBOX_CONFIG_FTPGET || BUSYBOX_CONFIG_FTPPUT)
        help
          Support long options for the ftpget/ftpput applet.
 
@@ -60,7 +75,7 @@ config BUSYBOX_CONFIG_HOSTNAME
        bool "hostname"
        default n
        help
-         Show or set the system's host name
+         Show or set the system's host name.
 
 config BUSYBOX_CONFIG_HTTPD
        bool "httpd"
@@ -68,26 +83,35 @@ config BUSYBOX_CONFIG_HTTPD
        help
          Serve web pages via an HTTP server.
 
-config BUSYBOX_CONFIG_FEATURE_HTTPD_WITHOUT_INETD
-       bool "Support using httpd as a daemon (not from inetd)"
+config BUSYBOX_CONFIG_FEATURE_HTTPD_RANGES
+       bool "Support 'Ranges:' header"
        default y
        depends on BUSYBOX_CONFIG_HTTPD
        help
-         This option enables uid and port options for the httpd applet,
-         and eliminates the need to be called from the inetd server daemon.
+         Makes httpd emit "Accept-Ranges: bytes" header and understand
+         "Range: bytes=NNN-[MMM]" header. Allows for resuming interrupted
+         downloads, seeking in multimedia players etc.
+
+config BUSYBOX_CONFIG_FEATURE_HTTPD_USE_SENDFILE
+       bool "Use sendfile system call"
+       default n
+       depends on BUSYBOX_CONFIG_HTTPD
+       help
+         When enabled, httpd will use the kernel sendfile() function
+         instead of read/write loop.
 
 config BUSYBOX_CONFIG_FEATURE_HTTPD_RELOAD_CONFIG_SIGHUP
        bool "Support reloading the global config file using hup signal"
-       default n
-       depends on BUSYBOX_CONFIG_HTTPD && BUSYBOX_CONFIG_FEATURE_HTTPD_WITHOUT_INETD
+       default y
+       depends on BUSYBOX_CONFIG_HTTPD
        help
          This option enables processing of SIGHUP to reload cached
          configuration settings.
 
 config BUSYBOX_CONFIG_FEATURE_HTTPD_SETUID
-       bool "Enable support -u <user> option"
+       bool "Enable -u <user> option"
        default n
-       depends on BUSYBOX_CONFIG_HTTPD && BUSYBOX_CONFIG_FEATURE_HTTPD_WITHOUT_INETD
+       depends on BUSYBOX_CONFIG_HTTPD
        help
          This option allows the server to run as a specific user
          rather than defaulting to the user that starts the server.
@@ -128,12 +152,12 @@ config BUSYBOX_CONFIG_FEATURE_HTTPD_CGI
 
 config BUSYBOX_CONFIG_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR
        bool "Enable support for running scripts through an interpreter"
-       default n
+       default y
        depends on BUSYBOX_CONFIG_FEATURE_HTTPD_CGI
        help
-         This option enables support for running scripts through an 
-         interpreter. Turn this on if you want PHP scripts to work 
-         properly. You need to supply an addition line in your httpd 
+         This option enables support for running scripts through an
+         interpreter. Turn this on if you want PHP scripts to work
+         properly. You need to supply an additional line in your httpd
          config file:
          *.php:/path/to/your/php
 
@@ -155,6 +179,31 @@ config BUSYBOX_CONFIG_FEATURE_HTTPD_ENCODE_URL_STR
          For example, httpd -e "<Hello World>" as
          "&#60Hello&#32World&#62".
 
+config BUSYBOX_CONFIG_FEATURE_HTTPD_ERROR_PAGES
+       bool "Enable support for custom error pages"
+       default y
+       depends on BUSYBOX_CONFIG_HTTPD
+       help
+         This option allows you to define custom error pages in
+         the configuration file instead of the default HTTP status
+         error pages. For instance, if you add the line:
+               E404:/path/e404.html
+         in the config file, the server will respond the specified
+         '/path/e404.html' file instead of the terse '404 NOT FOUND'
+         message.
+
+config BUSYBOX_CONFIG_FEATURE_HTTPD_PROXY
+       bool "Enable support for reverse proxy"
+       default n
+       depends on BUSYBOX_CONFIG_HTTPD
+       help
+         This option allows you to define URLs that will be forwarded
+         to another HTTP server. To setup add the following line to the
+         configuration file
+               P:/url/:http://hostname[:port]/new/path/
+         Then a request to /url/myfile will be forwarded to
+         http://hostname[:port]/new/path/myfile.
+
 config BUSYBOX_CONFIG_IFCONFIG
        bool "ifconfig"
        default y
@@ -205,19 +254,29 @@ config BUSYBOX_CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS
 config BUSYBOX_CONFIG_IFUPDOWN
        bool "ifupdown"
        default n
-       select BUSYBOX_CONFIG_RUN_PARTS
        help
          Activate or deactivate the specified interfaces.  This applet makes
          use of either "ifconfig" and "route" or the "ip" command to actually
          configure network interfaces.  Therefore, you will probably also want
-         to enable either BUSYBOX_CONFIG_IFCONFIG and BUSYBOX_CONFIG_ROUTE, or enable
-         BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP and the various BUSYBOX_CONFIG_IP options.  Of
+         to enable either IFCONFIG and ROUTE, or enable
+         FEATURE_IFUPDOWN_IP and the various IP options.  Of
          course you could use non-busybox versions of these programs, so
          against my better judgement (since this will surely result in plenty
          of support questions on the mailing list), I do not force you to
          enable these additional options.  It is up to you to supply either
-         "ifconfig" and "route" or the "ip" command, either via busybox or via
-         standalone utilities.
+         "ifconfig", "route" and "run-parts" or the "ip" command, either
+         via busybox or via standalone utilities.
+
+config BUSYBOX_CONFIG_IFUPDOWN_IFSTATE_PATH
+       string "Absolute path to ifstate file"
+       default n
+       depends on BUSYBOX_CONFIG_IFUPDOWN
+       help
+         ifupdown keeps state information in a file called ifstate.
+         Typically it is located in /var/run/ifstate, however
+         some distributions tend to put it in other places
+         (debian, for example, uses /etc/network/run/ifstate).
+         This config option defines location of ifstate.
 
 config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP
        bool "Use ip applet"
@@ -238,20 +297,20 @@ config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN
        help
          Use the busybox iproute "ip" applet to implement "ifupdown".
 
-         If leave this disabled, you must install the full-blown iproute2
+         If left disabled, you must install the full-blown iproute2
          utility or the  "ifup" and "ifdown" applets will not work.
 
-config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN
+config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IFCONFIG_BUILTIN
        bool "Use busybox ifconfig and route applets"
        default n
-       depends on BUSYBOX_CONFIG_IFUPDOWN && !CONFIG_FEATURE_IFUPDOWN_IP
+       depends on BUSYBOX_CONFIG_IFUPDOWN && !BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IP
        select BUSYBOX_CONFIG_IFCONFIG
        select BUSYBOX_CONFIG_ROUTE
        help
          Use the busybox iproute "ifconfig" and "route" applets to
          implement the "ifup" and "ifdown" utilities.
 
-         If leave this disabled, you must install the full-blown ifconfig
+         If left disabled, you must install the full-blown ifconfig
          and route utilities, or the  "ifup" and "ifdown" applets will not
          work.
 
@@ -260,7 +319,7 @@ config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IPV4
        default n
        depends on BUSYBOX_CONFIG_IFUPDOWN
        help
-         If you want busybox to talk IPv4, leave this on.
+         If you want ifup/ifdown to talk IPv4, leave this on.
 
 config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IPV6
        bool "Enable support for IPv6"
@@ -269,13 +328,14 @@ config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IPV6
        help
          If you need support for IPv6, turn this option on.
 
-config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_IPX
-       bool "Enable support for IPX"
-       default n
-       depends on BUSYBOX_CONFIG_IFUPDOWN
-       help
-         If this option is selected you can use busybox to work with IPX
-         networks.
+### UNUSED
+###config FEATURE_IFUPDOWN_IPX
+###    bool "Enable support for IPX"
+###    default n
+###    depends on IFUPDOWN
+###    help
+###      If this option is selected you can use busybox to work with IPX
+###      networks.
 
 config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_MAPPING
        bool "Enable mapping support"
@@ -285,9 +345,20 @@ config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_MAPPING
          This enables support for the "mapping" stanza, unless you have
          a weird network setup you don't need it.
 
+config BUSYBOX_CONFIG_FEATURE_IFUPDOWN_EXTERNAL_DHCP
+       bool "Enable support for external dhcp clients"
+       default n
+       depends on BUSYBOX_CONFIG_IFUPDOWN
+       help
+         This enables support for the external dhcp clients. Clients are
+         tried in the following order: dhcpcd, dhclient, pump and udhcpc.
+         Otherwise, if udhcpc applet is enabled, it is used.
+         Otherwise, ifup/ifdown will have no support for DHCP.
+
 config BUSYBOX_CONFIG_INETD
        bool "inetd"
        default n
+       select BUSYBOX_CONFIG_FEATURE_SYSLOG
        help
          Internet superserver daemon
 
@@ -330,9 +401,9 @@ config BUSYBOX_CONFIG_FEATURE_INETD_RPC
        bool "Support RPC services"
        default n
        depends on BUSYBOX_CONFIG_INETD
+       select BUSYBOX_CONFIG_FEATURE_HAVE_RPC
        help
-         Suuport Sun-RPC based services
-
+         Support Sun-RPC based services
 
 config BUSYBOX_CONFIG_IP
        bool "ip"
@@ -370,6 +441,13 @@ config BUSYBOX_CONFIG_FEATURE_IP_TUNNEL
        help
          Add support for tunneling commands to "ip".
 
+config BUSYBOX_CONFIG_FEATURE_IP_RULE
+       bool "ip rule"
+       default n
+       depends on BUSYBOX_CONFIG_IP
+       help
+         Add support for rule commands to "ip".
+
 config BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS
        bool "Support short forms of ip commands."
        default n
@@ -380,10 +458,21 @@ config BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS
          ip link   -> iplink
          ip route  -> iproute
          ip tunnel -> iptunnel
+         ip rule   -> iprule
 
          Say N unless you desparately need the short form of the ip
          object commands.
 
+config BUSYBOX_CONFIG_FEATURE_IP_RARE_PROTOCOLS
+       bool "Support displaying rarely used link types"
+       default n
+       depends on BUSYBOX_CONFIG_IP
+       help
+         If you are not going to use links of type "frad", "econet",
+         "bif" etc, you probably don't need to enable this.
+         Ethernet, wireless, infrared, ppp/slip, ip tunnelling
+         link types are supported without this option selected.
+
 config BUSYBOX_CONFIG_IPADDR
        bool
        default n
@@ -404,6 +493,11 @@ config BUSYBOX_CONFIG_IPTUNNEL
        default n
        depends on BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS && BUSYBOX_CONFIG_FEATURE_IP_TUNNEL
 
+config BUSYBOX_CONFIG_IPRULE
+       bool
+       default n
+       depends on BUSYBOX_CONFIG_FEATURE_IP_SHORT_FORMS && BUSYBOX_CONFIG_FEATURE_IP_RULE
+
 config BUSYBOX_CONFIG_IPCALC
        bool "ipcalc"
        default n
@@ -428,6 +522,7 @@ config BUSYBOX_CONFIG_FEATURE_IPCALC_LONG_OPTIONS
 config BUSYBOX_CONFIG_NAMEIF
        bool "nameif"
        default n
+       select BUSYBOX_CONFIG_FEATURE_SYSLOG
        help
          nameif is used to rename network interface by its MAC address.
          Renamed interfaces MUST be in the down state.
@@ -452,13 +547,21 @@ config BUSYBOX_CONFIG_NETMSG
        help
          simple program for sending udp broadcast messages
 
-config BUSYBOX_CONFIG_NC_GAPING_SECURITY_HOLE
-       bool "gaping security hole"
+config BUSYBOX_CONFIG_NC_SERVER
+       bool "Netcat server options (-l)"
+       default n
+       depends on BUSYBOX_CONFIG_NC
+       help
+         Allow netcat to act as a server.
+
+config BUSYBOX_CONFIG_NC_EXTRA
+       bool "Netcat extensions (-eiw and filename)"
        default n
        depends on BUSYBOX_CONFIG_NC
        help
-         Add support for executing a program after making or receiving a
-         successful connection (-e option).
+         Add -e (support for executing the rest of the command line after
+         making or receiving a successful connection), -i (delay interval for
+         lines sent), -w (timeout for initial connection).
 
 config BUSYBOX_CONFIG_NETSTAT
        bool "netstat"
@@ -466,6 +569,14 @@ config BUSYBOX_CONFIG_NETSTAT
        help
          netstat prints information about the Linux networking subsystem.
 
+config BUSYBOX_CONFIG_FEATURE_NETSTAT_WIDE
+       bool "  Enable wide netstat output"
+       default y
+       depends on BUSYBOX_CONFIG_NETSTAT
+       help
+         Add support for wide columns. Useful when displaying IPv6 addresses
+         (-W option).
+
 config BUSYBOX_CONFIG_NSLOOKUP
        bool "nslookup"
        default y
@@ -479,27 +590,25 @@ config BUSYBOX_CONFIG_PING
          ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to
          elicit an ICMP ECHO_RESPONSE from a host or gateway.
 
-config BUSYBOX_CONFIG_FEATURE_FANCY_PING
-       bool "Enable fancy ping output"
-       default y
-       depends on BUSYBOX_CONFIG_PING
-       help
-         Make the output from the ping applet include statistics, and at the
-         same time provide full support for ICMP packets.
-
 config BUSYBOX_CONFIG_PING6
        bool "ping6"
        default y
-       depends on BUSYBOX_CONFIG_FEATURE_IPV6
+       depends on BUSYBOX_CONFIG_FEATURE_IPV6 && BUSYBOX_CONFIG_PING
        help
          This will give you a ping that can talk IPv6.
 
-config BUSYBOX_CONFIG_FEATURE_FANCY_PING6
-       bool "Enable fancy ping6 output"
+config BUSYBOX_CONFIG_PSCAN
+       bool "pscan"
+       default n
+       help
+         Simple network port scanner.
+
+config BUSYBOX_CONFIG_FEATURE_FANCY_PING
+       bool "Enable fancy ping output"
        default y
-       depends on BUSYBOX_CONFIG_PING6
+       depends on BUSYBOX_CONFIG_PING
        help
-         Make the output from the ping6 applet include statistics, and at the
+         Make the output from the ping applet include statistics, and at the
          same time provide full support for ICMP packets.
 
 config BUSYBOX_CONFIG_ROUTE
@@ -508,6 +617,12 @@ config BUSYBOX_CONFIG_ROUTE
        help
          Route displays or manipulates the kernel's IP routing tables.
 
+config BUSYBOX_CONFIG_SLATTACH
+       bool "slattach"
+       default n
+       help
+         slattach is a small utility to attach network interfaces to serial lines.
+
 config BUSYBOX_CONFIG_TELNET
        bool "telnet"
        default y
@@ -537,6 +652,7 @@ config BUSYBOX_CONFIG_FEATURE_TELNET_AUTOLOGIN
 config BUSYBOX_CONFIG_TELNETD
        bool "telnetd"
        default y
+       select BUSYBOX_CONFIG_FEATURE_SYSLOG
        help
          A daemon for the TELNET protocol, allowing you to log onto the host
          running the daemon.  Please keep in mind that the TELNET protocol
@@ -548,8 +664,8 @@ config BUSYBOX_CONFIG_TELNETD
 
          Note that for busybox telnetd to work you need several things:
          First of all, your kernel needs:
-                 BUSYBOX_CONFIG_UNIX98_PTYS=y
-                 BUSYBOX_CONFIG_DEVPTS_FS=y
+                 UNIX98_PTYS=y
+                 DEVPTS_FS=y
 
          Next, you need a /dev/pts directory on your root filesystem:
 
@@ -566,8 +682,8 @@ config BUSYBOX_CONFIG_TELNETD
 
                  mount -t devpts devpts /dev/pts
 
-         You need to be sure that Busybox has BUSYBOX_CONFIG_LOGIN and
-         BUSYBOX_CONFIG_FEATURE_SUID enabled.  And finally, you should make
+         You need to be sure that Busybox has LOGIN and
+         FEATURE_SUID enabled.  And finally, you should make
          certain that Busybox has been installed setuid root:
 
                chown root.root /bin/busybox
@@ -576,13 +692,12 @@ config BUSYBOX_CONFIG_TELNETD
          with all that done, telnetd _should_ work....
 
 
-config BUSYBOX_CONFIG_FEATURE_TELNETD_INETD
-       bool "Support call from inetd only"
-       default n
+config BUSYBOX_CONFIG_FEATURE_TELNETD_STANDALONE
+       bool "Support standalone telnetd (not inetd only)"
+       default y
        depends on BUSYBOX_CONFIG_TELNETD
        help
-         Selecting this will make telnetd only callable from inetd,
-         removing the standalone support.
+         Selecting this will make telnetd able to run standalone.
 
 config BUSYBOX_CONFIG_TFTP
        bool "tftp"
@@ -682,13 +797,6 @@ config BUSYBOX_CONFIG_FEATURE_WGET_AUTHENTICATION
        help
          Support authenticated HTTP transfers.
 
-config BUSYBOX_CONFIG_FEATURE_WGET_IP6_LITERAL
-       bool "Enable IPv6 literal addresses"
-       default y
-       depends on BUSYBOX_CONFIG_WGET && BUSYBOX_CONFIG_FEATURE_IPV6
-       help
-         Support IPv6 address literal notation in URLs.
-
 config BUSYBOX_CONFIG_FEATURE_WGET_LONG_OPTIONS
        bool "Enable long options"
        default y
@@ -699,6 +807,7 @@ config BUSYBOX_CONFIG_FEATURE_WGET_LONG_OPTIONS
 config BUSYBOX_CONFIG_ZCIP
        bool "zcip"
        default n
+       select BUSYBOX_CONFIG_FEATURE_SYSLOG
        help
          ZCIP provides ZeroConf IPv4 address selection, according to RFC 3927.
          It's a daemon that allocates and defends a dynamically assigned