Denys Vlasenko
36f774a0cd
hush: add support for ${var/pattern/repl}, conditional on bash compat
...
function old new delta
expand_vars_to_list 2386 2833 +447
expand_string_to_string 69 110 +41
parse_dollar 681 721 +40
hush_main 963 945 -18
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/1 up/down: 528/-18) Total: 510 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-05 14:47:58 +02:00
Denys Vlasenko
701e127f7d
hush: optimize #[#] and %[%] for speed. size -2 bytes.
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-04 21:21:07 +02:00
Denys Vlasenko
e298ce69ba
hush: fix handling of backslashes in variable assignment
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-04 19:52:44 +02:00
Denys Vlasenko
8ae6e9be5c
lzop: fix misordered "v=NULL; free(v)", small code shrink
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-04 19:46:52 +02:00
Denys Vlasenko
0d7cb4cc9e
fix false positive in testsuite/tar.tests
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-03 17:22:56 +02:00
Dan Fandrich
eb2bf5b6bf
Fix some test cases
...
The tar tests still don't pass, but at least now it's because of
a problem with Busybox and not the tests themselves.
Signed-off-by: Dan Fandrich <dan@coneharvesters.com>
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-03 17:09:51 +02:00
Denys Vlasenko
2ab3acb274
ifupdown: %client%, not %clientid%
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-03 16:58:37 +02:00
Denys Vlasenko
3926363214
lineedit: on tab completion, show filenames obly in all cases (bash compat)
...
function old new delta
complete_cmd_dir_file 731 730 -1
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-03 14:11:08 +02:00
Denys Vlasenko
76939e7b72
lineedit: allocate matchBuf only temporarily: saves MAX_LINELEN bytes
...
function old new delta
input_tab 1027 1041 +14
build_match_prefix 590 562 -28
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/1 up/down: 14/-28) Total: -14 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-03 14:09:24 +02:00
Denys Vlasenko
ba0e103a66
lineedit: de-indent large block in input_tab. No logic changes.
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-03 14:08:24 +02:00
Denys Vlasenko
a46e16ef52
lineedit: rename tmp -> chosen_match; small code shrink
...
function old new delta
input_tab 1016 1012 -4
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-03 13:05:51 +02:00
Denys Vlasenko
9b56bf5416
lineedit: stop using permanent int_buf[] (16k!): allocate it
...
Now it is allocated temporarily only for the duretion of prefix generation,
and also we only allocate the needed size, not maximally possible.
function old new delta
build_match_prefix 579 590 +11
remove_chunk 43 28 -15
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/1 up/down: 11/-15) Total: -4 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-03 13:02:47 +02:00
Denys Vlasenko
81254ed387
lineedit: remove pos_buf[] array (up to 16k!); fix compat bugs
...
pos_buf is a strange hack, easy to do without it.
This also allows lines >32k long to be handled.
Also simplified match prefix generations and made behavior more like bash.
function old new delta
remove_chunk - 43 +43
collapse_pos 79 - -79
build_match_prefix 804 579 -225
------------------------------------------------------------------------------
(add/remove: 1/1 grow/shrink: 0/1 up/down: 43/-304) Total: -261 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-03 12:59:15 +02:00
Denys Vlasenko
3c460b005c
lineedit: return prefix len from tab completion helpers
...
This kills horrific logic which deletes and re-adds prefix (!)
function old new delta
complete_cmd_dir_file 705 731 +26
complete_username 121 124 +3
input_tab 1041 1016 -25
build_match_prefix 838 804 -34
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/2 up/down: 29/-59) Total: -30 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-03 12:56:36 +02:00
Denys Vlasenko
2679e3c8cc
lineedit: clean up tab completion code (variable reuse, comments)
...
Noted bugs in behavior.
Added debugging machinery.
Decoupled variables reused for unrelated purposes: apparently,
when not forced to use liveness analysis, gcc fares better.
function old new delta
complete_cmd_dir_file 699 705 +6
collapse_pos 75 79 +4
build_match_prefix 892 838 -54
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/1 up/down: 10/-54) Total: -44 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-03 12:53:15 +02:00
Denys Vlasenko
57ea9b488b
preparatory cleanup patch for tab completion fixes
...
renames and deinlines a few functions
function old new delta
input_tab - 1041 +1041
complete_cmd_dir_file - 699 +699
complete_username - 121 +121
username_completion 121 - -121
read_line_input 5002 3313 -1689
------------------------------------------------------------------------------
(add/remove: 3/1 grow/shrink: 0/1 up/down: 1861/-1810) Total: 51 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-03 12:51:36 +02:00
Denys Vlasenko
7063e86d0d
lineedit: small readability improvement (same code)
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-02 12:44:39 +02:00
Denys Vlasenko
61a36af45d
lineedit: fix completion with Unicode chars
...
function old new delta
read_line_input 4966 5002 +36
bb_wcstombs 170 159 -11
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/1 up/down: 36/-11) Total: 25 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-02 12:03:11 +02:00
Denys Vlasenko
b068bd7a41
lineedit: preparatory cleanup patch for Unicode completion fix
...
Some logic changes and function renames. The fix will follow this patch,
to mkae it distinct from cleanup.
function old new delta
build_match_prefix - 892 +892
username_completion - 121 +121
read_line_input 4902 4966 +64
username_tab_completion 235 - -235
find_match 892 - -892
------------------------------------------------------------------------------
(add/remove: 2/2 grow/shrink: 1/0 up/down: 1077/-1127) Total: -50 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-02 12:01:11 +02:00
Denys Vlasenko
7aa63042d0
libbb: xfunc_error_retval can be a byte
...
function old new delta
xfunc_die 55 60 +5
log_and_exit 43 45 +2
hush_main 961 963 +2
xfunc_error_retval 4 1 -3
tty_main 87 84 -3
sv_main 1183 1180 -3
sort_main 804 801 -3
run_applet_no_and_exit 440 437 -3
puts_maybe_newline 198 195 -3
nohup_main 228 225 -3
httpd_main 753 750 -3
get_header_tar 1496 1493 -3
fsck_minix_main 2972 2969 -3
expr_main 110 107 -3
cmp_main 641 638 -3
chat_main 1359 1356 -3
builtin_exit 48 45 -3
arping_main 1587 1584 -3
BB_EXECVP_or_die 47 44 -3
send_cgi_and_exit 901 895 -6
diff_main 1197 1191 -6
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/18 up/down: 9/-60) Total: -51 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-01 16:04:24 +02:00
Denys Vlasenko
6f80fe71f0
uudecode,base64: code shrink
...
function old new delta
read_base64 373 358 -15
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-01 13:24:05 +02:00
Denys Vlasenko
0004e99493
better shared strings trick
...
text data bss dec hex filename
861980 441 7540 869961 d4649 busybox_old
861914 441 7540 869895 d4607 busybox_unstripped
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-01 12:01:17 +02:00
Denys Vlasenko
9dc04124d5
getty: small code shrink
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-09-01 11:31:43 +02:00
Denys Vlasenko
a61ff51b49
find: add rudimentary support for -exec {} +
...
function old new delta
parse_params 1421 1414 -7
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-08-31 19:17:42 +02:00
Denys Vlasenko
ee06264a29
base64: new applet
...
function old new delta
base64_main - 217 +217
packed_usage 27181 27229 +48
read_base64 348 373 +25
applet_names 2299 2306 +7
bbconfig_config_bz2 4942 4948 +6
applet_main 1352 1356 +4
applet_nameofs 676 678 +2
applet_install_loc 169 170 +1
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 7/0 up/down: 310/0) Total: 310 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-08-31 14:09:22 +02:00
Denys Vlasenko
8d3e225a2d
libbb: add xfstat function
...
function old new delta
xfstat - 25 +25
mkfs_ext2_main 2421 2423 +2
mkfs_reiser_main 1197 1194 -3
next 312 307 -5
ar_main 533 522 -11
mkfs_minix_main 2938 2924 -14
mkfs_vfat_main 1511 1495 -16
writeTarFile 272 255 -17
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 1/6 up/down: 27/-66) Total: -39 bytes
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-08-31 12:42:06 +02:00
Denys Vlasenko
4e7dd3c363
mkswap: clear 1st kilobyte. Closes bug 1831
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-31 01:50:03 +02:00
Denys Vlasenko
c71ec70616
iplink: another compat #ifndef/#define tweak
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-08-30 19:20:09 +02:00
Denys Vlasenko
0ff78a0166
ash: small code shrink (-21 bytes)
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-08-30 15:20:07 +02:00
Denys Vlasenko
f7a8433535
ash: add another ${v/a/b} test we currently fail
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-08-30 13:54:12 +02:00
Denys Vlasenko
25b4755302
typo fix in comment
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-30 01:19:47 +02:00
Denys Vlasenko
d493e9361f
remove stray debugging stuff
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-29 14:39:45 +02:00
Denys Vlasenko
9ce07e778f
bbconfig: add COMPRESS_BBCONFIG option
...
function old new delta
bbconfig_config_bz2 - 4905 +4905
bbconfig_main 13 70 +57
bbconfig_config 21811 - -21811
------------------------------------------------------------------------------
(add/remove: 1/1 grow/shrink: 1/0 up/down: 4962/-21811) Total: -16849 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-29 14:36:11 +02:00
Baruch Siach
7715b48c36
nandwrite: always check the first erase block
...
Current code does not check the first erase block when mtdoffset is not erase
block aligned. Fix this.
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-29 13:30:22 +02:00
Denys Vlasenko
b32a543663
nandwrite: complain on malformed -s NUM
...
Elsewhere: use common error message. -30 bytes net size change
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-29 13:29:02 +02:00
Baruch Siach
a78227dc73
nandwrite: allow hex values in the -s parameter
...
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-29 13:15:57 +02:00
Denys Vlasenko
cc131534e2
showkey: code shrink
...
function old new delta
signal_handler 52 45 -7
showkey_main 461 454 -7
xset1 40 29 -11
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-29 05:00:40 +02:00
Dan Fandrich
140ac91fe1
testsuite: show the number of failures after a test run
...
Signed-off-by: Dan Fandrich <dan@coneharvesters.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-29 04:47:03 +02:00
Denys Vlasenko
91234b9be0
typo fixes in config help text
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-29 02:06:50 +02:00
Alexander Shishkin
0834a6d3b9
pmap: new applet. +1k.
...
pmap is a tool used to look at processes' memory maps, normally found
in procps package. It provides more readable and easily sortable output
(one line per mapping) from maps/smaps files in /proc/PID/. This would
help in debugging memory usage issues, especially on devices where lots
of typing is not a viable option.
This patch does'n implement -d and -A command line options of GNU pmap,
since those are not that must have features and I was afraid of going
blind from looking at its code.
The implementation takes smaps scanning part out of procps_scan() function
and moves it into procps_read_smaps(), which does more detailed processing
of a single PID's smaps data.
Signed-off-by: Alexander Shishkin <virtuoso@slind.org>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-28 23:20:34 +02:00
Denys Vlasenko
74c992af5c
ntpd: with -q, exit after 60 seconds even if time is not synced.
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-27 02:15:01 +02:00
Denys Vlasenko
1cd0d86005
modutils: explain why we no longer quote params
...
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-08-25 18:26:46 +02:00
Carmelo AMOROSO
1396221d5a
insmod: Do not add a pair of "" around the arguments of the module.
...
If there are some spaces in the insmod command line, then
this will be splitted in single words as separate elements of
argv. It just needs to chain them together in the options string
passed to the sys_init_module syscall.
Signed-off-by: Carmelo Amoroso <carmelo.amoroso@st.com>
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-08-25 18:19:22 +02:00
Baruch Siach
6f32ea4039
nandwrite: new applet
...
function old new delta
nandwrite_main - 382 +382
packed_usage 27119 27135 +16
applet_names 2275 2285 +10
applet_main 1340 1344 +4
applet_nameofs 670 672 +2
------------------------------------------------------------------------------
(add/remove: 2/0 grow/shrink: 4/0 up/down: 414/0) Total: 414 bytes
Signed-off-by: Baruch Siach <baruch@tkos.co.il>
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
2010-08-25 16:36:17 +02:00
Dan Fandrich
159677c884
Rename a struct member from "interrupt"
...
This is nonstandard, but common, keyword in embedded compilers.
Signed-off-by: Dan Fandrich <dan@coneharvesters.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-24 07:38:34 +02:00
Denys Vlasenko
7ff6836db3
split: use xopen_stdin()
...
function old new delta
split_main 558 543 -15
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-23 03:06:46 +02:00
Denys Vlasenko
3d8b96d58d
grep: fix -o match with empty string (suggested by Colin Watson <cjwatson@ubuntu.com>)
...
function old new delta
grep_file 1216 1251 +35
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-23 02:39:47 +02:00
Denys Vlasenko
b276e41835
ip: add a #define for older kernels
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-22 10:02:55 +02:00
Denys Vlasenko
adbe3b5b98
build system: make 3.82 fix. Closes bug 2323
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-22 09:28:46 +02:00
Denys Vlasenko
e7b0a9e5bc
patch: support "patch [FILE [PATCH]]" format
...
function old new delta
xopen_stdin - 15 +15
patch_main 2075 2041 -34
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2010-08-22 05:39:15 +02:00