udhcp: logging improvements, field and variable renames
[oweals/busybox.git] / networking / Config.in
index 36349e90f7e6ea205dfe78c411e5df0b3435468a..6e3ed0fad4069ce83eb3d73a512101823f333e88 100644 (file)
 
 menu "Networking Utilities"
 
-config CONFIG_FEATURE_IPV6
+config FEATURE_IPV6
        bool "Enable IPv6 support"
        default n
        help
-         Enable IPv6 support to busybox. This makes applets that talk IP
-         able to work with IPv6.
+         Enable IPv6 support in busybox.
+         This adds IPv6 support in the networking applets.
 
-config CONFIG_ARPING
+config FEATURE_UNIX_LOCAL
+       bool "Enable Unix domain socket support (usually not needed)"
+       default n
+       help
+         Enable Unix domain socket support in all busybox networking
+         applets.
+
+config FEATURE_PREFER_IPV4_ADDRESS
+       bool "Prefer IPv4 addresses from DNS queries"
+       default y
+       depends on FEATURE_IPV6
+       help
+         Use IPv4 address of network host if it has one.
+
+         If this option is off, the first returned address will be used.
+         This may cause problems when your DNS server is IPv6-capable and
+         is returning IPv6 host addresses too. If IPv6 address
+         precedes IPv4 one in DNS reply, busybox network applets
+         (e.g. wget) will use IPv6 address. On an IPv6-incapable host
+         or network applets will fail to connect to the host
+         using IPv6 address.
+
+config VERBOSE_RESOLUTION_ERRORS
+       bool "Verbose resolution errors"
+       default n
+       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 ARP
+       bool "arp"
+       default n
+       help
+         Manipulate the system ARP cache.
+
+config ARPING
        bool "arping"
        default n
        help
-         Ping hosts by ARP packets
+         Ping hosts by ARP packets.
+
+config BRCTL
+       bool "brctl"
+       default n
+       help
+         Manage ethernet bridges.
+         Supports addbr/delbr and addif/delif.
+
+config FEATURE_BRCTL_FANCY
+       bool "Fancy options"
+       default n
+       depends on BRCTL
+       help
+         Add support for extended option like:
+           setageing, setfd, sethello, setmaxage,
+           setpathcost, setportprio, setbridgeprio,
+           stp
+         This adds about 600 bytes.
 
-config CONFIG_DNSD
+config FEATURE_BRCTL_SHOW
+       bool "Support show, showmac and showstp"
+       default n
+       depends on BRCTL && FEATURE_BRCTL_FANCY
+       help
+         Add support for option which prints the current config:
+           showmacs, showstp, show
+
+config DNSD
        bool "dnsd"
        default n
        help
-         Small and static DNS server deamon. 
+         Small and static DNS server daemon.
 
-config CONFIG_ETHER_WAKE
+config ETHER_WAKE
        bool "ether-wake"
        default n
        help
          Send a magic packet to wake up sleeping machines.
 
-config CONFIG_FAKEIDENTD
+config FAKEIDENTD
        bool "fakeidentd"
        default n
+       select FEATURE_SYSLOG
+       help
+         fakeidentd listens on the ident port and returns a predefined
+         fake value on any query.
+
+config FTPD
+       bool "ftpd"
+       default n
+       help
+         simple FTP daemon. You have to run it via inetd.
+
+config FEATURE_FTP_WRITE
+       bool "Enable upload commands"
+       default y
+       depends on FTPD
        help
-         fakeidentd listens to the ident port and returns a set fake
-         value whatever it gets.
+         Enable all kinds of FTP upload commands (-w option)
 
-config CONFIG_FTPGET
+config FTPGET
        bool "ftpget"
        default n
        help
          Retrieve a remote file via FTP.
 
-config CONFIG_FTPPUT
+config FTPPUT
        bool "ftpput"
        default n
        help
          Store a remote file via FTP.
 
-config CONFIG_HOSTNAME
-       bool "hostname"
+config FEATURE_FTPGETPUT_LONG_OPTIONS
+       bool "Enable long options in ftpget/ftpput"
        default n
+       depends on GETOPT_LONG && (FTPGET || FTPPUT)
        help
-         Show or set the system's host name
+         Support long options for the ftpget/ftpput applet.
 
-config CONFIG_HTTPD
-       bool "httpd"
+config HOSTNAME
+       bool "hostname"
        default n
        help
-         Serve web pages via an HTTP server.
+         Show or set the system's host name.
 
-config CONFIG_FEATURE_HTTPD_USAGE_FROM_INETD_ONLY
-       bool "  Support using httpd only from inetd"
+config HTTPD
+       bool "httpd"
        default n
-       depends on CONFIG_HTTPD
-       help
-         This option disables uid and port options for the httpd applet
-         but requires inetd server daemon.
-
-config CONFIG_FEATURE_HTTPD_BASIC_AUTH
-       bool "  Enable Basic http Authentication"
-       default y
-       depends on CONFIG_HTTPD
        help
-         Utilizes password settings from /etc/httpd.conf for basic
-         authentication on a per url basis.
+         Serve web pages via an HTTP server.
 
-config CONFIG_FEATURE_HTTPD_AUTH_MD5
-       bool "  Support MD5 crypted passwords for http Authentication"
+config FEATURE_HTTPD_RANGES
+       bool "Support 'Ranges:' header"
        default n
-       depends on CONFIG_FEATURE_HTTPD_BASIC_AUTH
+       depends on HTTPD
        help
-         Enables basic per url authentication from /etc/httpd.conf
-         using md5 passwords.
+         Makes httpd emit "Accept-Ranges: bytes" header and understand
+         "Range: bytes=NNN-[MMM]" header. Allows for resuming interrupted
+         downloads, seeking in multimedia players etc.
 
-if !CONFIG_FEATURE_HTTPD_USAGE_FROM_INETD_ONLY
-config CONFIG_FEATURE_HTTPD_RELOAD_CONFIG_SIGHUP
-       bool "  Support reloading the global config file using hup signal"
+config FEATURE_HTTPD_USE_SENDFILE
+       bool "Use sendfile system call"
        default n
-       depends on CONFIG_HTTPD
+       depends on HTTPD
        help
-         This option enables processing of SIGHUP to reload cached
-         configuration settings.
+         When enabled, httpd will use the kernel sendfile() function
+         instead of read/write loop.
 
-config CONFIG_FEATURE_HTTPD_SETUID
-       bool "  Enable support -u <user> option"
+config FEATURE_HTTPD_SETUID
+       bool "Enable -u <user> option"
        default n
-       depends on CONFIG_HTTPD
+       depends on HTTPD
        help
          This option allows the server to run as a specific user
          rather than defaulting to the user that starts the server.
          Use of this option requires special privileges to change to a
          different user.
-endif
 
-config CONFIG_FEATURE_HTTPD_CONFIG_WITH_MIME_TYPES
-       bool "  Support loading additional MIME types at run-time"
+config FEATURE_HTTPD_BASIC_AUTH
+       bool "Enable Basic http Authentication"
+       default y
+       depends on HTTPD
+       help
+         Utilizes password settings from /etc/httpd.conf for basic
+         authentication on a per url basis.
+
+config FEATURE_HTTPD_AUTH_MD5
+       bool "Support MD5 crypted passwords for http Authentication"
        default n
-       depends on CONFIG_HTTPD
+       depends on FEATURE_HTTPD_BASIC_AUTH
        help
-         This option enables support for additional MIME types at
-         run-time to be specified in the configuration file.
+         Enables basic per URL authentication from /etc/httpd.conf
+         using md5 passwords.
 
-config CONFIG_FEATURE_HTTPD_CGI
-       bool "  Support Common Gateway Interface (CGI)"
+config FEATURE_HTTPD_CGI
+       bool "Support Common Gateway Interface (CGI)"
        default y
-       depends on CONFIG_HTTPD
+       depends on HTTPD
        help
          This option allows scripts and executables to be invoked
-         when specific urls are requested.
+         when specific URLs are requested.
 
-config CONFIG_FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR
-       bool "  Enable support for running scripts through an interpreter"
+config FEATURE_HTTPD_CONFIG_WITH_SCRIPT_INTERPR
+       bool "Support for running scripts through an interpreter"
        default n
-       depends on CONFIG_FEATURE_HTTPD_CGI
+       depends on 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
 
-config CONFIG_FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV
-       bool "  Support the REMOTE_PORT environment variable for CGI"
+config FEATURE_HTTPD_SET_REMOTE_PORT_TO_ENV
+       bool "Set REMOTE_PORT environment variable for CGI"
        default n
-       depends on CONFIG_FEATURE_HTTPD_CGI
+       depends on FEATURE_HTTPD_CGI
        help
          Use of this option can assist scripts in generating
          references that contain a unique port number.
 
-config CONFIG_FEATURE_HTTPD_ENCODE_URL_STR
-       bool "  Enable the -e option for shell script CGI simplification."
+config FEATURE_HTTPD_ENCODE_URL_STR
+       bool "Enable -e option (useful for CGIs written as shell scripts)"
        default y
-       depends on CONFIG_HTTPD
+       depends on HTTPD
        help
-         After set, this option allows html encoding arbitrary
-         strings for display of the browser.  Output goes to stdout.
-         For example, httpd -e "<Hello World>" as
+         This option allows html encoding of arbitrary strings for display
+         by the browser. Output goes to stdout.
+         For example, httpd -e "<Hello World>" produces
          "&#60Hello&#32World&#62".
 
-config CONFIG_IFCONFIG
+config FEATURE_HTTPD_ERROR_PAGES
+       bool "Support for custom error pages"
+       default n
+       depends on 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 FEATURE_HTTPD_PROXY
+       bool "Support for reverse proxy"
+       default n
+       depends on 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 IFCONFIG
        bool "ifconfig"
        default n
        help
          Ifconfig is used to configure the kernel-resident network interfaces.
 
-config CONFIG_FEATURE_IFCONFIG_STATUS
-       bool "  Enable status reporting output (+7k)"
+config FEATURE_IFCONFIG_STATUS
+       bool "Enable status reporting output (+7k)"
        default y
-       depends on CONFIG_IFCONFIG
+       depends on IFCONFIG
        help
          If ifconfig is called with no arguments it will display the status
          of the currently active interfaces.
 
-config CONFIG_FEATURE_IFCONFIG_SLIP
-       bool "  Enable slip-specific options \"keepalive\" and \"outfill\""
+config FEATURE_IFCONFIG_SLIP
+       bool "Enable slip-specific options \"keepalive\" and \"outfill\""
        default n
-       depends on CONFIG_IFCONFIG
+       depends on IFCONFIG
        help
-         Allow "keepalive" and "outfill" support for SLIP.  If you're not
+         Allow "keepalive" and "outfill" support for SLIP. If you're not
          planning on using serial lines, leave this unchecked.
 
-config CONFIG_FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ
-       bool "  Enable options \"mem_start\", \"io_addr\", and \"irq\""
+config FEATURE_IFCONFIG_MEMSTART_IOADDR_IRQ
+       bool "Enable options \"mem_start\", \"io_addr\", and \"irq\""
        default n
-       depends on CONFIG_IFCONFIG
+       depends on IFCONFIG
        help
          Allow the start address for shared memory, start address for I/O,
          and/or the interrupt line used by the specified device.
 
-config CONFIG_FEATURE_IFCONFIG_HW
-       bool "  Enable option \"hw\" (ether only)"
+config FEATURE_IFCONFIG_HW
+       bool "Enable option \"hw\" (ether only)"
        default y
-       depends on CONFIG_IFCONFIG
+       depends on IFCONFIG
        help
          Set the hardware address of this interface, if the device driver
-         supports  this  operation.  Currently, we only support the 'ether'
+         supports  this  operation. Currently, we only support the 'ether'
          class.
 
-config CONFIG_FEATURE_IFCONFIG_BROADCAST_PLUS
-       bool "  Set the broadcast automatically"
+config FEATURE_IFCONFIG_BROADCAST_PLUS
+       bool "Set the broadcast automatically"
        default n
-       depends on CONFIG_IFCONFIG
+       depends on IFCONFIG
        help
          Setting this will make ifconfig attempt to find the broadcast
          automatically if the value '+' is used.
 
-config CONFIG_IFUPDOWN
+config IFENSLAVE
+       bool "ifenslave"
+       default n
+       help
+         Userspace application to bind several interfaces
+         to a logical interface (use with kernel bonding driver).
+
+config IFPLUGD
+       bool "ifplugd"
+       default n
+       help
+         Network interface plug detection daemon.
+
+config IFUPDOWN
        bool "ifupdown"
        default n
-       select CONFIG_RUN_PARTS
        help
-         Activate or deactivate the specified interfaces.  This applet makes
+         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 CONFIG_IFCONFIG and CONFIG_ROUTE, or enable
-         CONFIG_FEATURE_IFUPDOWN_IP and the various CONFIG_IP options.  Of
+         configure network interfaces. Therefore, you will probably also want
+         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.
+         enable these additional options. It is up to you to supply either
+         "ifconfig", "route" and "run-parts" or the "ip" command, either
+         via busybox or via standalone utilities.
 
-config CONFIG_FEATURE_IFUPDOWN_IP
-       bool "  Use ip applet"
+config IFUPDOWN_IFSTATE_PATH
+       string "Absolute path to ifstate file"
+       default "/var/run/ifstate"
+       depends on 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 FEATURE_IFUPDOWN_IP
+       bool "Use ip applet"
        default n
-       depends on CONFIG_IFUPDOWN
+       depends on IFUPDOWN
        help
          Use the iproute "ip" command to implement "ifup" and "ifdown", rather
          than the default of using the older 'ifconfig' and 'route' utilities.
 
-config CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN
-       bool "  Use busybox ip applet"
+config FEATURE_IFUPDOWN_IP_BUILTIN
+       bool "Use busybox ip applet"
        default y
-       depends on CONFIG_FEATURE_IFUPDOWN_IP
-       select CONFIG_IP
-       select CONFIG_FEATURE_IP_ADDRESS
-       select CONFIG_FEATURE_IP_LINK
-       select CONFIG_FEATURE_IP_ROUTE
+       depends on FEATURE_IFUPDOWN_IP
+       select IP
+       select FEATURE_IP_ADDRESS
+       select FEATURE_IP_LINK
+       select FEATURE_IP_ROUTE
        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 CONFIG_FEATURE_IFUPDOWN_IP_BUILTIN
-       bool "  Use busybox ifconfig and route applets"
+config FEATURE_IFUPDOWN_IFCONFIG_BUILTIN
+       bool "Use busybox ifconfig and route applets"
        default y
-       depends on CONFIG_IFUPDOWN && !CONFIG_FEATURE_IFUPDOWN_IP
-       select CONFIG_IFCONFIG
-       select CONFIG_ROUTE
+       depends on IFUPDOWN && !FEATURE_IFUPDOWN_IP
+       select IFCONFIG
+       select 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.
 
-config CONFIG_FEATURE_IFUPDOWN_IPV4
-       bool "  Enable support for IPv4"
+config FEATURE_IFUPDOWN_IPV4
+       bool "Support for IPv4"
        default y
-       depends on CONFIG_IFUPDOWN
+       depends on IFUPDOWN
        help
-         If you want busybox to talk IPv4, leave this on.
+         If you want ifup/ifdown to talk IPv4, leave this on.
 
-config CONFIG_FEATURE_IFUPDOWN_IPV6
-       bool "  Enable support for IPv6"
+config FEATURE_IFUPDOWN_IPV6
+       bool "Support for IPv6"
        default n
-       depends on CONFIG_IFUPDOWN && CONFIG_FEATURE_IPV6
+       depends on IFUPDOWN && FEATURE_IPV6
        help
          If you need support for IPv6, turn this option on.
 
-config CONFIG_FEATURE_IFUPDOWN_IPX
-       bool "  Enable support for IPX"
-       default n
-       depends on CONFIG_IFUPDOWN
-       help
-         If this option is selected you can use busybox to work with IPX
-         networks.
+### UNUSED
+###config FEATURE_IFUPDOWN_IPX
+###    bool "Support for IPX"
+###    default n
+###    depends on IFUPDOWN
+###    help
+###      If this option is selected you can use busybox to work with IPX
+###      networks.
 
-config CONFIG_FEATURE_IFUPDOWN_MAPPING
-       bool "  Enable mapping support"
+config FEATURE_IFUPDOWN_MAPPING
+       bool "Enable mapping support"
        default n
-       depends on CONFIG_IFUPDOWN
+       depends on IFUPDOWN
        help
          This enables support for the "mapping" stanza, unless you have
          a weird network setup you don't need it.
 
-config CONFIG_INETD
+config FEATURE_IFUPDOWN_EXTERNAL_DHCP
+       bool "Support for external dhcp clients"
+       default n
+       depends on 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 INETD
        bool "inetd"
        default n
+       select FEATURE_SYSLOG
        help
          Internet superserver daemon
 
-config CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_ECHO
-       bool "  Support echo service"
+config FEATURE_INETD_SUPPORT_BUILTIN_ECHO
+       bool "Support echo service"
        default y
-       depends on CONFIG_INETD
+       depends on INETD
        help
          Echo received data internal inetd service
 
-config CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DISCARD
-       bool "  Support discard service"
+config FEATURE_INETD_SUPPORT_BUILTIN_DISCARD
+       bool "Support discard service"
        default y
-       depends on CONFIG_INETD
+       depends on INETD
        help
          Internet /dev/null internal inetd service
 
-config CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_TIME
-       bool "  Support time service"
+config FEATURE_INETD_SUPPORT_BUILTIN_TIME
+       bool "Support time service"
        default y
-       depends on CONFIG_INETD
+       depends on INETD
        help
          Return 32 bit time since 1900 internal inetd service
 
-config CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME
-       bool "  Support daytime service"
+config FEATURE_INETD_SUPPORT_BUILTIN_DAYTIME
+       bool "Support daytime service"
        default y
-       depends on CONFIG_INETD
+       depends on INETD
        help
          Return human-readable time internal inetd service
 
-config CONFIG_FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN
-       bool "  Support chargen service"
+config FEATURE_INETD_SUPPORT_BUILTIN_CHARGEN
+       bool "Support chargen service"
        default y
-       depends on CONFIG_INETD
+       depends on INETD
        help
          Familiar character generator internal inetd service
 
-config CONFIG_FEATURE_INETD_RPC
-       bool "  Support RPC services"
+config FEATURE_INETD_RPC
+       bool "Support RPC services"
        default n
-       depends on CONFIG_INETD
+       depends on INETD
+       select FEATURE_HAVE_RPC
        help
-         Suuport Sun-RPC based services
-
+         Support Sun-RPC based services
 
-config CONFIG_IP
+config IP
        bool "ip"
        default n
        help
          The "ip" applet is a TCP/IP interface configuration and routing
-         utility.  You generally don't need "ip" to use busybox with
+         utility. You generally don't need "ip" to use busybox with
          TCP/IP.
 
-if CONFIG_IP && CONFIG_IPADDR
-       config CONFIG_FEATURE_IP_ADDRESS
-               default y
-       comment "  address (forced enabled for ipaddr)"
-endif
-if ! (CONFIG_IP && CONFIG_IPADDR)
-       config CONFIG_FEATURE_IP_ADDRESS
-               bool "  address"
-               default y
-               depends on CONFIG_IP
-               help
-                 Address manipulation support for the "ip" applet.
-endif
-
-if CONFIG_IP && CONFIG_IPLINK
-       config CONFIG_FEATURE_IP_LINK
-               default y
-       comment "  link (forced enabled for iplink)"
-endif
-if !(CONFIG_IP && CONFIG_IPLINK)
-       config CONFIG_FEATURE_IP_LINK
-               bool "  link"
-               default y
-               depends on CONFIG_IP
-               help
-                 Configure network devices with "ip".
-endif
-
-if CONFIG_IP && CONFIG_IPROUTE
-       config CONFIG_FEATURE_IP_ROUTE
-               default y
-       comment "  route (forced enabled for iproute)"
-endif
-if !(CONFIG_IP && CONFIG_IPROUTE)
-       config CONFIG_FEATURE_IP_ROUTE
-               bool "  route"
-               default y
-               depends on CONFIG_IP
-               help
-                 Add support for routing table management to "ip".
-endif
-
-if CONFIG_IP && CONFIG_IPTUNNEL
-       config CONFIG_FEATURE_IP_TUNNEL
-               default y
-       comment "  tunnel (forced enabled for iptunnel)"
-endif
-if !(CONFIG_IP && CONFIG_IPTUNNEL)
-       config CONFIG_FEATURE_IP_TUNNEL
-               bool "  tunnel"
-               default n
-               depends on CONFIG_IP
-               help
-                 Add support for tunneling commands to "ip".
-endif
-
-config CONFIG_IPCALC
-       bool "ipcalc"
-       default n
+config FEATURE_IP_ADDRESS
+       bool "ip address"
+       default y
+       depends on IP
        help
-         ipcalc takes an IP address and netmask and calculates the
-         resulting broadcast, network, and host range.
+         Address manipulation support for the "ip" applet.
+
+config FEATURE_IP_LINK
+       bool "ip link"
+       default y
+       depends on IP
+       help
+         Configure network devices with "ip".
 
-config CONFIG_FEATURE_IPCALC_FANCY
-       bool "  Fancy IPCALC, more options, adds 1 kbyte"
+config FEATURE_IP_ROUTE
+       bool "ip route"
        default y
-       depends on CONFIG_IPCALC
+       depends on IP
+       help
+         Add support for routing table management to "ip".
+
+config FEATURE_IP_TUNNEL
+       bool "ip tunnel"
+       default n
+       depends on IP
        help
-         Adds the options hostname, prefix and silent to the output of "ipcalc".
+         Add support for tunneling commands to "ip".
 
-config CONFIG_IPADDR
-       bool "ipaddr"
+config FEATURE_IP_RULE
+       bool "ip rule"
        default n
+       depends on IP
        help
-         Equivalent to selecting address support to "ip", above.
+         Add support for rule commands to "ip".
+
+config FEATURE_IP_SHORT_FORMS
+       bool "Support short forms of ip commands"
+       default n
+       depends on IP
+       help
+         Also support short-form of ip <OBJECT> commands:
+         ip addr   -> ipaddr
+         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 CONFIG_IPLINK
-       bool "iplink"
+config FEATURE_IP_RARE_PROTOCOLS
+       bool "Support displaying rarely used link types"
        default n
+       depends on IP
        help
-         Equivalent to selecting link support to "ip", above.
+         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 IPADDR
+       bool
+       default y
+       depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_ADDRESS
+
+config IPLINK
+       bool
+       default y
+       depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_LINK
+
+config IPROUTE
+       bool
+       default y
+       depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_ROUTE
+
+config IPTUNNEL
+       bool
+       default y
+       depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_TUNNEL
+
+config IPRULE
+       bool
+       default y
+       depends on FEATURE_IP_SHORT_FORMS && FEATURE_IP_RULE
 
-config CONFIG_IPROUTE
-       bool "iproute"
+config IPCALC
+       bool "ipcalc"
        default n
        help
-         Equivalent to selecting route support to "ip", above.
+         ipcalc takes an IP address and netmask and calculates the
+         resulting broadcast, network, and host range.
 
-config CONFIG_IPTUNNEL
-       bool "iptunnel"
+config FEATURE_IPCALC_FANCY
+       bool "Fancy IPCALC, more options, adds 1 kbyte"
+       default y
+       depends on IPCALC
+       help
+         Adds the options hostname, prefix and silent to the output of
+         "ipcalc".
+
+config FEATURE_IPCALC_LONG_OPTIONS
+       bool "Enable long options"
        default n
+       depends on IPCALC && GETOPT_LONG
        help
-         Equivalent to selecting tunnel support to "ip", above.
+         Support long options for the ipcalc applet.
 
-config CONFIG_NAMEIF
+config NAMEIF
        bool "nameif"
        default n
+       select FEATURE_SYSLOG
        help
          nameif is used to rename network interface by its MAC address.
          Renamed interfaces MUST be in the down state.
          It is possible to use a file (default: /etc/mactab)
          with list of new interface names and MACs.
-         Maximum interface name length: IF_NAMESIZE = 16
+         Maximum interface name length: IFNAMSIZ = 16
          File fields are separated by space or tab.
          File format:
          # Comment
          new_interface_name    XX:XX:XX:XX:XX:XX
 
-config CONFIG_NC
+config FEATURE_NAMEIF_EXTENDED
+       bool "Extended nameif"
+       default n
+       depends on NAMEIF
+       help
+         This extends the nameif syntax to support the bus_info and driver
+         checks. The syntax is compatible to the normal nameif.
+         File format:
+           new_interface_name  driver=asix bus=usb-0000:00:08.2-3
+           new_interface_name  bus=usb-0000:00:08.2-3 00:80:C8:38:91:B5
+           new_interface_name  mac=00:80:C8:38:91:B5
+           new_interface_name  00:80:C8:38:91:B5
+
+config NC
        bool "nc"
        default n
        help
          A simple Unix utility which reads and writes data across network
          connections.
 
-config CONFIG_NC_GAPING_SECURITY_HOLE
-       bool "gaping security hole"
+config NC_SERVER
+       bool "Netcat server options (-l)"
+       default n
+       depends on NC
+       help
+         Allow netcat to act as a server.
+
+config NC_EXTRA
+       bool "Netcat extensions (-eiw and filename)"
        default n
-       depends on CONFIG_NC
+       depends on 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 CONFIG_NETSTAT
+config NETSTAT
        bool "netstat"
        default n
        help
          netstat prints information about the Linux networking subsystem.
 
-config CONFIG_NSLOOKUP
+config FEATURE_NETSTAT_WIDE
+       bool "Enable wide netstat output"
+       default n
+       depends on NETSTAT
+       help
+         Add support for wide columns. Useful when displaying IPv6 addresses
+         (-W option).
+
+config FEATURE_NETSTAT_PRG
+       bool "Enable PID/Program name output"
+       default n
+       depends on NETSTAT
+       help
+         Add support for -p flag to print out PID and program name.
+         +700 bytes of code.
+
+config NSLOOKUP
        bool "nslookup"
        default n
        help
          nslookup is a tool to query Internet name servers.
 
-config CONFIG_PING
+config PING
        bool "ping"
        default n
        help
          ping uses the ICMP protocol's mandatory ECHO_REQUEST datagram to
          elicit an ICMP ECHO_RESPONSE from a host or gateway.
 
-config CONFIG_FEATURE_FANCY_PING
-       bool "  Enable fancy ping output"
-       default y
-       depends on CONFIG_PING
-       help
-         Make the output from the ping applet include statistics, and at the
-         same time provide full support for ICMP packets.
-
-config CONFIG_PING6
+config PING6
        bool "ping6"
        default n
-       depends on CONFIG_FEATURE_IPV6
+       depends on FEATURE_IPV6 && PING
        help
          This will give you a ping that can talk IPv6.
 
-config CONFIG_FEATURE_FANCY_PING6
-       bool "  Enable fancy ping6 output"
+config FEATURE_FANCY_PING
+       bool "Enable fancy ping output"
        default y
-       depends on CONFIG_PING6
+       depends on 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 CONFIG_ROUTE
+config PSCAN
+       bool "pscan"
+       default n
+       help
+         Simple network port scanner.
+
+config ROUTE
        bool "route"
        default n
        help
          Route displays or manipulates the kernel's IP routing tables.
 
-config CONFIG_TELNET
+config SLATTACH
+       bool "slattach"
+       default n
+       help
+         slattach is a small utility to attach network interfaces to serial
+         lines.
+
+#config TC
+#      bool "tc"
+#      default n
+#      help
+#        show / manipulate traffic control settings
+#
+#config FEATURE_TC_INGRESS
+#      def_bool n
+#      depends on TC
+
+config TELNET
        bool "telnet"
        default n
        help
          Telnet is an interface to the TELNET protocol, but is also commonly
          used to test other simple protocols.
 
-config CONFIG_FEATURE_TELNET_TTYPE
-       bool "  Pass TERM type to remote host"
+config FEATURE_TELNET_TTYPE
+       bool "Pass TERM type to remote host"
        default y
-       depends on CONFIG_TELNET
+       depends on TELNET
        help
          Setting this option will forward the TERM environment variable to the
-         remote host you are connecting to.  This is useful to make sure that
+         remote host you are connecting to. This is useful to make sure that
          things like ANSI colors and other control sequences behave.
 
-config CONFIG_FEATURE_TELNET_AUTOLOGIN
-       bool "  Pass USER type to remote host"
+config FEATURE_TELNET_AUTOLOGIN
+       bool "Pass USER type to remote host"
        default y
-       depends on CONFIG_TELNET
+       depends on TELNET
        help
          Setting this option will forward the USER environment variable to the
          remote host you are connecting to. This is useful when you need to
          log into a machine without telling the username (autologin). This
          option enables `-a' and `-l USER' arguments.
 
-config CONFIG_TELNETD
+config TELNETD
        bool "telnetd"
        default n
+       select 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
-         sends passwords in plain text.  If you can't afford the space for an
-         SSH daemon and you trust your network, you may say 'y' here.  As a
+         running the daemon. Please keep in mind that the TELNET protocol
+         sends passwords in plain text. If you can't afford the space for an
+         SSH daemon and you trust your network, you may say 'y' here. As a
          more secure alternative, you should seriously consider installing the
          very small Dropbear SSH daemon instead:
                http://matt.ucc.asn.au/dropbear/dropbear.html
 
          Note that for busybox telnetd to work you need several things:
          First of all, your kernel needs:
-                 CONFIG_UNIX98_PTYS=y
-                 CONFIG_DEVPTS_FS=y
+                 UNIX98_PTYS=y
+                 DEVPTS_FS=y
 
          Next, you need a /dev/pts directory on your root filesystem:
 
@@ -566,8 +767,8 @@ config CONFIG_TELNETD
 
                  mount -t devpts devpts /dev/pts
 
-         You need to be sure that Busybox has CONFIG_LOGIN and
-         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,121 +777,144 @@ config CONFIG_TELNETD
          with all that done, telnetd _should_ work....
 
 
-config CONFIG_FEATURE_TELNETD_INETD
-       bool "  Support call from inetd only"
+config FEATURE_TELNETD_STANDALONE
+       bool "Support standalone telnetd (not inetd only)"
        default n
-       depends on CONFIG_TELNETD
+       depends on 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 CONFIG_TFTP
+config TFTP
        bool "tftp"
        default n
        help
-         This enables the Trivial File Transfer Protocol client program.  TFTP
+         This enables the Trivial File Transfer Protocol client program. TFTP
          is usually used for simple, small transfers such as a root image
          for a network-enabled bootloader.
 
-config CONFIG_FEATURE_TFTP_GET
-       bool "  Enable \"get\" command"
+config TFTPD
+       bool "tftpd"
+       default n
+       help
+         This enables the Trivial File Transfer Protocol server program.
+         It expects that stdin is a datagram socket and a packet
+         is already pending on it. It will exit after one transfer.
+         In other words: it should be run from inetd in nowait mode,
+         or from udpsvd. Example: "udpsvd -E 0 69 tftpd DIR"
+
+config FEATURE_TFTP_GET
+       bool "Enable \"get\" command"
        default y
-       depends on CONFIG_TFTP
+       depends on TFTP || TFTPD
        help
-         Add support for the GET command within the TFTP client.  This allows
+         Add support for the GET command within the TFTP client. This allows
          a client to retrieve a file from a TFTP server.
+         Also enable upload support in tftpd, if tftpd is selected.
 
-config CONFIG_FEATURE_TFTP_PUT
-       bool "  Enable \"put\" command"
+config FEATURE_TFTP_PUT
+       bool "Enable \"put\" command"
        default y
-       depends on CONFIG_TFTP
+       depends on TFTP || TFTPD
        help
-         Add support for the PUT command within the TFTP client.  This allows
+         Add support for the PUT command within the TFTP client. This allows
          a client to transfer a file to a TFTP server.
+         Also enable download support in tftpd, if tftpd is selected.
 
-config CONFIG_FEATURE_TFTP_BLOCKSIZE
-       bool "  Enable \"blocksize\" command"
+config FEATURE_TFTP_BLOCKSIZE
+       bool "Enable \"blksize\" protocol option"
        default n
-       depends on CONFIG_TFTP
+       depends on TFTP || TFTPD
        help
-         Allow the client to specify the desired block size for transfers.
+         Allow tftp to specify block size, and tftpd to understand
+         "blksize" option.
 
-config CONFIG_FEATURE_TFTP_DEBUG
-       bool "  Enable debug"
+config TFTP_DEBUG
+       bool "Enable debug"
        default n
-       depends on CONFIG_TFTP
+       depends on TFTP || TFTPD
        help
-         Enable debug settings for tftp.  This is useful if you're running
+         Enable debug settings for tftp. This is useful if you're running
          into problems with tftp as the protocol doesn't help you much when
          you run into problems.
 
-config CONFIG_TRACEROUTE
+config TRACEROUTE
        bool "traceroute"
        default n
        help
          Utility to trace the route of IP packets
 
-config CONFIG_FEATURE_TRACEROUTE_VERBOSE
-       bool "  Enable verbose output"
+config FEATURE_TRACEROUTE_VERBOSE
+       bool "Enable verbose output"
        default n
-       depends on CONFIG_TRACEROUTE
+       depends on TRACEROUTE
        help
-         Add some verbosity to traceroute.  This includes amongst other things
+         Add some verbosity to traceroute. This includes among other things
          hostnames and ICMP response types.
 
-config CONFIG_FEATURE_TRACEROUTE_SOURCE_ROUTE
-       bool "  Enable loose source route"
+config FEATURE_TRACEROUTE_SOURCE_ROUTE
+       bool "Enable loose source route"
        default n
-       depends on CONFIG_TRACEROUTE
+       depends on TRACEROUTE
        help
          Add option to specify a loose source route gateway
          (8 maximum).
 
-config CONFIG_FEATURE_TRACEROUTE_USE_ICMP
-       bool "  Use ICMP instead of UDP"
+config FEATURE_TRACEROUTE_USE_ICMP
+       bool "Use ICMP instead of UDP"
        default n
-       depends on CONFIG_TRACEROUTE
+       depends on TRACEROUTE
        help
-         Add feature to allow for ICMP ECHO instead of UDP datagrams.
+         Add option -I to use ICMP ECHO instead of UDP datagrams.
+
+source networking/udhcp/Config.in
 
+config IFUPDOWN_UDHCPC_CMD_OPTIONS
+       string "ifup udhcpc command line options"
+       default "-R -n"
+       depends on IFUPDOWN && APP_UDHCPC
+       help
+         Command line options to pass to udhcpc from ifup.
+         Intended to alter options not available in /etc/network/interfaces.
+         (IE: --syslog --background etc...)
 
-config CONFIG_VCONFIG
+config VCONFIG
        bool "vconfig"
        default n
        help
          Creates, removes, and configures VLAN interfaces
 
-config CONFIG_WGET
+config WGET
        bool "wget"
        default n
        help
          wget is a utility for non-interactive download of files from HTTP,
          HTTPS, and FTP servers.
 
-config CONFIG_FEATURE_WGET_STATUSBAR
-       bool "  Enable a nifty process meter (+2k)"
+config FEATURE_WGET_STATUSBAR
+       bool "Enable a nifty process meter (+2k)"
        default y
-       depends on CONFIG_WGET
+       depends on WGET
        help
          Enable the transfer progress bar for wget transfers.
 
-config CONFIG_FEATURE_WGET_AUTHENTICATION
-       bool "  Enable HTTP authentication"
+config FEATURE_WGET_AUTHENTICATION
+       bool "Enable HTTP authentication"
        default y
-       depends on CONFIG_WGET
+       depends on WGET
        help
          Support authenticated HTTP transfers.
 
-config CONFIG_FEATURE_WGET_IP6_LITERAL
-       bool "  Enable IPv6 literal addresses"
-       default y
-       depends on CONFIG_WGET && CONFIG_FEATURE_IPV6
+config FEATURE_WGET_LONG_OPTIONS
+       bool "Enable long options"
+       default n
+       depends on WGET && GETOPT_LONG
        help
-         Support IPv6 address literal notation in URLs.
+         Support long options for the wget applet.
 
-config CONFIG_ZCIP
+config ZCIP
        bool "zcip"
        default n
+       select FEATURE_SYSLOG
        help
          ZCIP provides ZeroConf IPv4 address selection, according to RFC 3927.
          It's a daemon that allocates and defends a dynamically assigned
@@ -699,5 +923,32 @@ config CONFIG_ZCIP
          See http://www.zeroconf.org for further details, and "zcip.script"
          in the busybox examples.
 
-endmenu
+config TCPSVD
+       bool "tcpsvd"
+       default n
+       help
+         tcpsvd listens on a TCP port and runs a program for each new
+         connection.
+
+config TUNCTL
+       bool "tunctl"
+       default n
+       help
+         tunctl creates or deletes tun devices.
+
+config FEATURE_TUNCTL_UG
+       bool "Support owner:group assignment"
+       default n
+       depends on TUNCTL
+       help
+         Allow to specify owner and group of newly created interface.
+         340 bytes of pure bloat. Say no here.
 
+config UDPSVD
+       bool "udpsvd"
+       default n
+       help
+         udpsvd listens on an UDP port and runs a program for each new
+         connection.
+
+endmenu