Denis Vlasenko
084266ed52
fix several problems with config parser:
...
a bug where it underflows the string
a bug where it never frees parser_t struct
make read_config() return 0 if parser is NULL,
make config_close() accept and ignore NULL parser -
eliminates many if() blocks
reverse the sense of parser bit flags - negative flags
are harder to grok.
hexdump: revert the change to use config parser, it is BIGGER
and also requires additional quirks in parser
*: explicitly use PARSER_NORMAL instead of 0
function old new delta
login_main 1575 1596 +21
config_close 18 29 +11
bbunpack 383 391 +8
qgravechar 106 109 +3
rtnl_tab_initialize 121 117 -4
expand 1697 1693 -4
man_main 717 712 -5
nameif_main 674 668 -6
hexdump_main 597 591 -6
read_config 217 209 -8
dnsd_main 1478 1470 -8
sysctl_main 203 189 -14
config_open2 44 25 -19
make_device 1177 1141 -36
config_read 597 549 -48
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 4/11 up/down: 43/-158) Total: -115 bytes
2008-07-26 23:08:31 +00:00
Denis Vlasenko
df96df9c7c
mdev: do not complain if mdev.conf does not exist;
...
use #if to prevent gcc from generating dead code
(sadly, it's more ugly this way)
2008-07-26 18:35:10 +00:00
Denis Vlasenko
9b366f4136
libbb/parse_config.c: fix small buglet (by Vladimir)
2008-07-20 17:50:58 +00:00
Denis Vlasenko
adc772a5f2
tar: fix handling of tarballs with symlinks with size field != 0
2008-07-20 17:10:43 +00:00
Denis Vlasenko
2e157ddf9e
libbb: updated config_parse() from Vladimir
...
function old new delta
config_read 385 460 +75
runsvdir_main 1701 1716 +15
readit 331 338 +7
passwd_main 1049 1053 +4
parse_command 1504 1507 +3
decode_format_string 822 824 +2
bb__parsespent 117 119 +2
udhcp_get_option 221 222 +1
changepath 196 194 -2
parse_inittab 400 396 -4
nameif_main 683 679 -4
make_device 1176 1172 -4
config_open 48 40 -8
expand_main 698 689 -9
readcmd 1012 1002 -10
config_free_data 37 21 -16
SynchronizeFile 683 643 -40
sleep_main 474 362 -112
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 8/10 up/down: 109/-209) Total: -100 bytes
2008-07-19 09:27:19 +00:00
Denis Vlasenko
bd28f6bf7f
test: fix parser to prefer binop over unop, as coreutils does.
...
remove bogus workaround in main(). rename atrocious variables/functions.
much expand testsuite.
libbb: fix --help to not affect "test --help"
function old new delta
run_applet_no_and_exit 421 440 +19
nexpr 817 825 +8
static.no_op - 6 +6
test_main 397 257 -140
------------------------------------------------------------------------------
(add/remove: 2/1 grow/shrink: 2/1 up/down: 104/-211) Total: -107 bytes
2008-07-19 08:15:13 +00:00
Denis Vlasenko
5f116629d8
printf: do not print garbage on "%Ld". closes bug 4214.
...
function old new delta
printf_main 633 637 +4
multiconvert 99 79 -20
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/1 up/down: 4/-20) Total: -16 bytes
2008-07-18 18:41:55 +00:00
Denis Vlasenko
a48656b441
printf: fix %b, fix several bugs in %*.*, fix compat issues with
...
aborting too early, support %zd; expand testsuite
function old new delta
get_width_prec - 46 +46
multiconvert 82 99 +17
conv_strtod 44 54 +10
print_direc 382 391 +9
printf_main 629 633 +4
conv_strtoul 20 16 -4
conv_strtol 20 16 -4
my_xstrtoul 20 - -20
my_xstrtol 20 - -20
my_xstrtod 21 - -21
------------------------------------------------------------------------------
(add/remove: 1/3 grow/shrink: 4/2 up/down: 86/-69) Total: 17 bytes
2008-07-18 11:10:51 +00:00
Denis Vlasenko
0f683f818c
printf: protect against bogus format specifiers. Hopefully closes bug 4184
2008-07-17 09:17:51 +00:00
Denis Vlasenko
bb13079c8e
comm: almost total rewrite; add testsuite
...
function old new delta
writeline 128 125 -3
comm_main 540 239 -301
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-304) Total: -304 bytes
2008-07-15 06:45:14 +00:00
Denis Vlasenko
29ec0b94a4
cpio: testsuite for http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=466771
...
which was fixed in proevious commit
2008-07-11 21:43:11 +00:00
Denis Vlasenko
abe49fa54f
testsuite: uniformly use $ECHO with -n -e
2008-07-11 21:41:14 +00:00
Denis Vlasenko
5d62462a8c
mount: testsuite for "-o mand"
2008-07-08 02:57:40 +00:00
Denis Vlasenko
7987a1844b
ssd: do not stat -x EXECUTABLE, it is not needed anymore
...
ssd: use PATH
ssd: fix -a without -x case
ssd: fix help text
ssd: CLOSE_EXTRA_FDS in MMU case too
ssd: add testsuite
2008-07-01 10:00:46 +00:00
Denis Vlasenko
3bb2bbd684
awk: fix a case with multiple -f options. simplify -f file reading.
...
function old new delta
parse_expr 833 841 +8
qrealloc 33 36 +3
next_input_file 203 198 -5
afopen 22 - -22
ftello 41 - -41
ftell 41 - -41
__GI_ftell 41 - -41
awk_main 1002 944 -58
------------------------------------------------------------------------------
(add/remove: 0/4 grow/shrink: 2/2 up/down: 11/-208) Total: -197 bytes
text data bss dec hex filename
804232 610 6804 811646 c627e busybox_old
804120 610 6804 811534 c620e busybox_unstripped
2008-07-01 01:57:36 +00:00
Denis Vlasenko
5fb79535ee
bunzip2: fix an uncompression error. Add the example to testsuite.
2008-06-26 20:27:42 +00:00
Denis Vlasenko
a05c0716c2
grep: make "-f -" work (+ testsuite)
...
diff: small code shrink
function old new delta
grep_main 722 714 -8
diffreg 1825 1793 -32
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-40) Total: -40 bytes
2008-06-07 05:19:31 +00:00
Denis Vlasenko
50120dab4e
added testsuite for printf by Cristian Ionescu-Idbohrn
2008-06-05 08:27:26 +00:00
Denis Vlasenko
81e97a1380
testsuite instrumentation fixes by Christian
2008-05-15 22:43:48 +00:00
Denis Vlasenko
380bcfc9f7
cpio.tests: remove useless command
2008-05-06 12:08:19 +00:00
Denis Vlasenko
96b99b860c
uniq: support -w. closes bug 3094.
...
function old new delta
packed_usage 24136 24132 -4
uniq_main 399 384 -15
2008-05-03 07:21:27 +00:00
Denis Vlasenko
687a26fe0d
more fixes to testsuite by Cristian and vda
2008-05-02 21:46:30 +00:00
Denis Vlasenko
4e79049e10
clarify grep version
2008-05-02 13:26:18 +00:00
Denis Vlasenko
32dcc53b71
mdev: fix a bug where we were eating argv[0] of helper
2008-05-02 13:21:24 +00:00
Denis Vlasenko
6da9b00f4f
fix grep test false positive
2008-05-02 12:34:59 +00:00
Denis Vlasenko
2dea01ca11
testing.sh: bashisms are eradicated.
...
By Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn AT axis.com>
2008-05-02 09:39:09 +00:00
Denis Vlasenko
57be4abcf8
runtest: the saga continues :(
2008-05-02 09:19:29 +00:00
Denis Vlasenko
dcbd350ccf
echo: fix echo -e -n "msg\n\0"
...
(by "Pinedo, David" <david.pinedo AT hp.com>)
2008-04-30 00:39:22 +00:00
Denis Vlasenko
3c07e4b877
runtest: more cleanups
2008-04-29 14:11:57 +00:00
Denis Vlasenko
a0c103a30a
tar: add testsuite entries
2008-04-29 04:40:15 +00:00
Denis Vlasenko
e4ed64067e
date: better version of previous commit; + fix testsuite
...
to have it checked
2008-04-28 00:25:22 +00:00
Denis Vlasenko
c0431ed455
cp: fix "cp -RL" to create regular files even if src is a symlink
2008-04-27 22:06:24 +00:00
Denis Vlasenko
4809a9f78e
date: fix date-works test, add date-works-1 one (currently fails)
2008-04-27 20:58:43 +00:00
Denis Vlasenko
7dff4333d6
runtest: fix fallout from mucking with runtest :( [vda's fault]
2008-04-27 20:48:49 +00:00
Denis Vlasenko
5d0f4aaa99
runtest: even more fixes from Cristian
2008-04-27 13:34:43 +00:00
Denis Vlasenko
92a6f878e9
runtest: further fixes from Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn AT axis.com>
2008-04-27 03:33:29 +00:00
Denis Vlasenko
64d5bfda1a
runtest: use numeric compare instead of string where appropriate
2008-04-26 10:14:25 +00:00
Denis Vlasenko
95842fbc16
testsuite/runtest: remove (last) bashism
...
mkswap: fix selinux build
2008-04-25 08:43:01 +00:00
Denis Vlasenko
4d89a8bd1d
date: make it accept ISO date format. Fix help text.
...
make testsuite actually test something useful.
function old new delta
date_main 1094 1149 +55
2008-04-25 02:14:07 +00:00
Denis Vlasenko
ad6cab1834
partially fix date testsuite
2008-04-24 19:37:11 +00:00
Denis Vlasenko
71e3ab327a
testsuite: fix du testsuite to not use changing directories
2008-04-23 07:02:02 +00:00
Denis Vlasenko
58dc274a7a
testsuite: runtest enhancements by Cristian Ionescu-Idbohrn
2008-04-23 06:45:11 +00:00
Denis Vlasenko
fa5b05ab07
testsuite: fix
2008-04-23 06:42:49 +00:00
Denis Vlasenko
3cfebe44c7
od: fix testsuite
2008-04-14 19:56:46 +00:00
Denis Vlasenko
7089c31d57
od: fix "od -b"
2008-04-14 19:50:06 +00:00
Denis Vlasenko
0a38bcf570
cpio: actually add testsuite entry...
2008-04-05 02:46:47 +00:00
Denis Vlasenko
a7f4e4bbd8
expr: fix comparisons 'a < b' where we were overflowing a-b
...
(not to mention that we used int, not arith_t). closes bug 2744.
Also, shrink a bit and add testsuite entry
function old new delta
nextarg 75 84 +9
tostring 38 35 -3
toarith 89 86 -3
str_value 35 32 -3
eval6 555 552 -3
int_value 29 23 -6
eval4 128 120 -8
eval3 112 104 -8
eval2 512 417 -95
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/8 up/down: 9/-129) Total: -120 bytes
2008-04-02 20:24:09 +00:00
Denis Vlasenko
f2f3868e0d
mdev: optional support for regex pattern group substitution.
...
+142 bytes.
2008-03-29 17:26:10 +00:00
Denis Vlasenko
cae11b51aa
mdev: fix "foo 0:0 444 >bar/baz" rule handling. make_device() +23 bytes
2008-03-29 15:11:07 +00:00
Denis Vlasenko
4461564c77
mdev: fix a bug where it was not stopping on first matching rule
...
(testsuite entry added). Revamped line parsing while at it.
function old new delta
next_field - 36 +36
make_device 1104 1022 -82
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/1 up/down: 36/-82) Total: -46 bytes
2008-03-29 13:10:57 +00:00