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