1# 2# For a description of the syntax of this configuration file, 3# see scripts/kbuild/config-language.txt. 4# 5 6menu "Busybox Library Tuning" 7 8INSERT 9 10config PASSWORD_MINLEN 11 int "Minimum password length" 12 default 6 13 range 5 32 14 help 15 Minimum allowable password length. 16 17config MD5_SIZE_VS_SPEED 18 int "MD5: Trade bytes for speed (0:fast, 3:slow)" 19 default 2 20 range 0 3 21 help 22 Trade binary size versus speed for the md5sum algorithm. 23 Approximate values running uClibc and hashing 24 linux-2.4.4.tar.bz2 were: 25 user times (sec) text size (386) 26 0 (fastest) 1.1 6144 27 1 1.4 5392 28 2 3.0 5088 29 3 (smallest) 5.1 4912 30 31config FEATURE_FAST_TOP 32 bool "Faster /proc scanning code (+100 bytes)" 33 default y 34 help 35 This option makes top (and ps) ~20% faster (or 20% less CPU hungry), 36 but code size is slightly bigger. 37 38config FEATURE_ETC_NETWORKS 39 bool "Support for /etc/networks" 40 default n 41 help 42 Enable support for network names in /etc/networks. This is 43 a rarely used feature which allows you to use names 44 instead of IP/mask pairs in route command. 45 46config FEATURE_USE_TERMIOS 47 bool "Use termios to manipulate the screen" 48 default y 49 depends on MORE || TOP || POWERTOP 50 help 51 This option allows utilities such as 'more' and 'top' to determine 52 the size of the screen. If you leave this disabled, your utilities 53 that display things on the screen will be especially primitive and 54 will be unable to determine the current screen size, and will be 55 unable to move the cursor. 56 57config FEATURE_EDITING 58 bool "Command line editing" 59 default y 60 help 61 Enable line editing (mainly for shell command line). 62 63config FEATURE_EDITING_MAX_LEN 64 int "Maximum length of input" 65 range 128 8192 66 default 1024 67 depends on FEATURE_EDITING 68 help 69 Line editing code uses on-stack buffers for storage. 70 You may want to decrease this parameter if your target machine 71 benefits from smaller stack usage. 72 73config FEATURE_EDITING_VI 74 bool "vi-style line editing commands" 75 default n 76 depends on FEATURE_EDITING 77 help 78 Enable vi-style line editing. In shells, this mode can be 79 turned on and off with "set -o vi" and "set +o vi". 80 81config FEATURE_EDITING_HISTORY 82 int "History size" 83 # Don't allow way too big values here, code uses fixed "char *history[N]" struct member 84 range 0 9999 85 default 255 86 depends on FEATURE_EDITING 87 help 88 Specify command history size (0 - disable). 89 90config FEATURE_EDITING_SAVEHISTORY 91 bool "History saving" 92 default y 93 depends on FEATURE_EDITING 94 help 95 Enable history saving in shells. 96 97config FEATURE_REVERSE_SEARCH 98 bool "Reverse history search" 99 default y 100 depends on FEATURE_EDITING_SAVEHISTORY 101 help 102 Enable readline-like Ctrl-R combination for reverse history search. 103 Increases code by about 0.5k. 104 105config FEATURE_TAB_COMPLETION 106 bool "Tab completion" 107 default y 108 depends on FEATURE_EDITING 109 help 110 Enable tab completion. 111 112config FEATURE_USERNAME_COMPLETION 113 bool "Username completion" 114 default n 115 depends on FEATURE_TAB_COMPLETION 116 help 117 Enable username completion. 118 119config FEATURE_EDITING_FANCY_PROMPT 120 bool "Fancy shell prompts" 121 default y 122 depends on FEATURE_EDITING 123 help 124 Setting this option allows for prompts to use things like \w and 125 \$ and escape codes. 126 127config FEATURE_EDITING_ASK_TERMINAL 128 bool "Query cursor position from terminal" 129 default n 130 depends on FEATURE_EDITING 131 help 132 Allow usage of "ESC [ 6 n" sequence. Terminal answers back with 133 current cursor position. This information is used to make line 134 editing more robust in some cases. 135 If you are not sure whether your terminals respond to this code 136 correctly, or want to save on code size (about 400 bytes), 137 then do not turn this option on. 138 139config FEATURE_NON_POSIX_CP 140 bool "Non-POSIX, but safer, copying to special nodes" 141 default y 142 help 143 With this option, "cp file symlink" will delete symlink 144 and create a regular file. This does not conform to POSIX, 145 but prevents a symlink attack. 146 Similarly, "cp file device" will not send file's data 147 to the device. (To do that, use "cat file >device") 148 149config FEATURE_VERBOSE_CP_MESSAGE 150 bool "Give more precise messages when copy fails (cp, mv etc)" 151 default n 152 help 153 Error messages with this feature enabled: 154 $ cp file /does_not_exist/file 155 cp: cannot create '/does_not_exist/file': Path does not exist 156 $ cp file /vmlinuz/file 157 cp: cannot stat '/vmlinuz/file': Path has non-directory component 158 If this feature is not enabled, they will be, respectively: 159 cp: cannot create '/does_not_exist/file': No such file or directory 160 cp: cannot stat '/vmlinuz/file': Not a directory 161 This will cost you ~60 bytes. 162 163config FEATURE_COPYBUF_KB 164 int "Copy buffer size, in kilobytes" 165 range 1 1024 166 default 4 167 help 168 Size of buffer used by cp, mv, install, wget etc. 169 Buffers which are 4 kb or less will be allocated on stack. 170 Bigger buffers will be allocated with mmap, with fallback to 4 kb 171 stack buffer if mmap fails. 172 173config FEATURE_SKIP_ROOTFS 174 bool "Skip rootfs in mount table" 175 default y 176 help 177 Ignore rootfs entry in mount table. 178 179 In Linux, kernel has a special filesystem, rootfs, which is initially 180 mounted on /. It contains initramfs data, if kernel is configured 181 to have one. Usually, another file system is mounted over / early 182 in boot process, and therefore most tools which manipulate 183 mount table, such as df, will skip rootfs entry. 184 185 However, some systems do not mount anything on /. 186 If you need to configure busybox for one of these systems, 187 you may find useful to turn this option off to make df show 188 initramfs statistic. 189 190 Otherwise, choose Y. 191 192config MONOTONIC_SYSCALL 193 bool "Use clock_gettime(CLOCK_MONOTONIC) syscall" 194 default n 195 select PLATFORM_LINUX 196 help 197 Use clock_gettime(CLOCK_MONOTONIC) syscall for measuring 198 time intervals (time, ping, traceroute etc need this). 199 Probably requires Linux 2.6+. If not selected, gettimeofday 200 will be used instead (which gives wrong results if date/time 201 is reset). 202 203config IOCTL_HEX2STR_ERROR 204 bool "Use ioctl names rather than hex values in error messages" 205 default y 206 help 207 Use ioctl names rather than hex values in error messages 208 (e.g. VT_DISALLOCATE rather than 0x5608). If disabled this 209 saves about 1400 bytes. 210 211config FEATURE_HWIB 212 bool "Support infiniband HW" 213 default y 214 help 215 Support for printing infiniband addresses in 216 network applets. 217 218endmenu 219