Commit Graph

287 Commits

Author SHA1 Message Date
Denis Vlasenko
66496d75a7 build system: echo and test features may be enabled
even if these applets are enabled as ash builtins only
testsuite: add some awk tests
2008-08-29 08:37:07 +00:00
Denis Vlasenko
3fd15e197e grep: option to use GNU regex matching instead of POSIX one.
This fixes problems with NULs in files being scanned, but
 costs +800 bytes. The same can be done to sed (TODO).
2008-08-09 16:15:14 +00:00
Denis Vlasenko
82ad032e26 xargs: fix -e default to match newer GNU xargs, add SUS mandated -E.
closes bug 4414
2008-08-04 21:30:55 +00:00
Denis Vlasenko
5db861a9eb fix some testsuite false positives 2008-08-04 14:40:58 +00:00
Denis Vlasenko
cc08ad26fe xargs: fix xargs -e; added test for that 2008-08-03 19:12:25 +00:00
Denis Vlasenko
e1fa817995 makedevs: shrink (by Vladimir); testsuite
function                                             old     new   delta
makedevs_main                                       1153    1071     -82
2008-08-01 02:15:05 +00:00
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
Denis Vlasenko
b9ad75fa60 copy_file: handle "cp /dev/foo file" (almost) compatibly to coreutils.
(almost because we do not copy mode, which is probably wasn't intended).
+61 bytes.
2008-03-28 17:49:31 +00:00
Denis Vlasenko
cf26ab70c1 mdev: plug a few memory and fd leaks; simplify code a bit 2008-03-27 22:45:44 +00:00
Denis Vlasenko
e1caabbb75 mdev: add testsuite entry 2008-03-27 20:49:26 +00:00
Denis Vlasenko
08ec67bc62 patch: add support for -R. ~ +110 byte. By Pascal Bellard <pascal.bellard AT ads-lu.com>
fbsplash: new applet by Michele Sanges <michele.sanges AT otomelara.it

function                                             old     new   delta
fbsplash_main                                          -    1525   +1525
fb_drawfullrectangle                                   -     118    +118
static.param_value                                     -     100    +100
packed_usage                                       23776   23872     +96
applet_names                                        1843    1852      +9
applet_main                                         1120    1124      +4
read_line_input                                     3156    3158      +2
applet_nameofs                                       560     562      +2
applet_install_loc                                   140     141      +1
------------------------------------------------------------------------------
(add/remove: 3/0 grow/shrink: 6/0 up/down: 1857/0)           Total: 1857 bytes
   text    data     bss     dec     hex filename
 799233     641    7380  807254   c5156 busybox_old
 801202     641    7380  809223   c5907 busybox_unstripped
2008-03-26 13:32:30 +00:00
Denis Vlasenko
cc2965fd23 patch: fix vda's thinko: we need to open new_filename.orig, always!
plug memory leak; add testsuite

patch_main                                          1009     988     -21
2008-03-25 14:15:39 +00:00
Denis Vlasenko
cee01cfb2e diff: add testsuite entry for it 2008-03-24 20:33:47 +00:00
Denis Vlasenko
69ca5a70fd tail: fix fallout from tail -c optimization 2008-03-23 03:28:40 +00:00
Denis Vlasenko
45ecfc2f5c taskset: fix false failure in testsuite 2008-03-22 17:46:16 +00:00
Denis Vlasenko
d02db89244 clean up TODO file. No real code changes. 2008-03-17 09:05:21 +00:00
Denis Vlasenko
f39c7c0c86 sed: n cmd must reset "we had successful subst" flag. closes bug 1214. 2008-02-28 17:59:01 +00:00
Mike Frysinger
25cd7fd702 add a test case for usage strings to catch people forgetting to add trailing escape in middle of usage 2008-02-15 01:42:28 +00:00
Denis Vlasenko
3b92eaac53 sort: -z outputs NUL terminated lines. Closes bug 1591. 2008-02-13 14:30:33 +00:00
Denis Vlasenko
1e2a7e4ed1 test: fix mishandling of 'test ! arg1 op arg2 more args'; add testsuite 2008-02-09 05:48:42 +00:00
Denis Vlasenko
7ab3699b58 mkfs.minix: add testsuite; disable code which makes images variable 2007-12-02 08:55:34 +00:00
Denis Vlasenko
e2532ab5f2 dd: fix a bug where we don't report write errors
testsuite: small cleanup

full_write_or_warn                                    38      40      +2
write_and_stats                                       66      67      +1
dd_main                                             1358    1335     -23
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/1 up/down: 3/-23)             Total: -20 bytes
2007-12-02 01:44:42 +00:00
Denis Vlasenko
1796e2c495 dd: add testsuite entry for write errors 2007-12-02 01:43:18 +00:00
Denis Vlasenko
30297a5b83 fix vda's testsuite bogons, part 2 2007-11-26 07:23:27 +00:00
Denis Vlasenko
bd9a48bc9c fix vda's testsuite bogons, part 1 2007-11-26 07:23:09 +00:00
Denis Vlasenko
4e1e720523 testsuite: add tests for cut and grep;
slight improvements to infrastructure
2007-11-26 05:38:20 +00:00
Denis Vlasenko
6446c2d4ab which: fix testsuite failure
pidof: do not output empty line if nothing found
testsuite: disable false positive
2007-11-25 04:54:13 +00:00
Denis Vlasenko
8d0a734d91 tr: more of code shrink (getopt32-ification)
runtest: cleanup. Method of getting $applets was truly bizarre

function                                             old     new   delta
tr_main                                              655     527    -128
2007-11-13 22:23:57 +00:00
Denis Vlasenko
40276648ab sed: support GNU-like '\t' escape in substitutions 2007-11-13 16:48:10 +00:00
Denis Vlasenko
0beaff8c19 update Glenn McGrath's email address 2007-09-21 13:16:32 +00:00
Denis Vlasenko
3952f20c24 expand, unexpand: new applets from Tito <farmatito@tiscali.it> 2007-08-13 14:10:24 +00:00
Denis Vlasenko
8274e06677 sed: fix 'q' command handling ("Nguyen Thai Ngoc Duy" <pclouds@gmail.com>)
add testsuite entry for it. Fix applet order checker. Fix cmp yelling.
trylink: fix error file and map file generation
applets: fix applet order
2007-08-06 03:41:08 +00:00
Denis Vlasenko
de1c8b2e92 fix unpacker testsuite to match actual output 2007-07-18 18:47:13 +00:00
Denis Vlasenko
960eca66b5 awk: actually do "svn add" for testsuite 2007-07-18 18:33:18 +00:00
Denis Vlasenko
cd0df46d8c remove bashisms from testsuite 2007-06-05 22:29:14 +00:00
Bernhard Reutner-Fischer
eceecea568 - fix bug where we did not reject invalid classes like '[[:alpha'
- debloat while at it:
   text    data     bss     dec     hex filename
   1554       0      19    1573     625 tr.o.oorig
   1357       0      16    1373     55d tr.o
2007-03-30 14:43:27 +00:00
Denis Vlasenko
c86e052b81 fix accumulated whitespace and indentation damage 2007-03-20 11:30:28 +00:00
Denis Vlasenko
4b0bb9e0fd sed: fix very obscure case of escaped newline in sed command
(needed for uclibc build, btw). Add testcase for it.
2007-03-16 23:36:58 +00:00
Denis Vlasenko
36b7e28fa0 missed end-of-line 2007-03-07 23:08:26 +00:00
Denis Vlasenko
ab9eef21a5 bunzip2/gunzip/uncompress/unlzma: merge into common code -
fix few corner cases, reduce size by 450 bytes. Update testsuite.
2007-03-07 22:02:23 +00:00
Denis Vlasenko
018e085d44 stop using bash'isms ('function')
runtest: do not depend on busybox.links
2007-02-25 00:40:37 +00:00
Denis Vlasenko
54cf511ce1 sort: fix multiple -k (was ignoring all except last) 2007-02-17 18:11:45 +00:00
Denis Vlasenko
86811803e3 add to testsuite and fix yet another sed corner case 2007-01-29 17:10:19 +00:00
Denis Vlasenko
fe7a9f1277 sed: fix 2 bugs (one testsuite entry + one newly found)
but more importantly make code more understandable
2007-01-29 14:31:47 +00:00
Denis Vlasenko
826c85f382 fix all known regressions with sed and also make it simpler 2007-01-28 23:26:15 +00:00
Denis Vlasenko
dccb1a5343 wc can emit unpredictable amount of whitespace 2007-01-28 16:59:30 +00:00
Bernhard Reutner-Fischer
14813c5943 - add a very few simple test for sum.
The very first is currently broken
2007-01-27 22:07:54 +00:00
Bernhard Reutner-Fischer
70722ec4ce - pull taskset.tests from the busybox_scratch branch 2007-01-07 15:19:34 +00:00
Denis Vlasenko
8336f080cb diff: small optimizations; do not try to diff non-seekable stream
(currently we don't support that)
sort: fixes. testsuites fixed:
sort with non-default leading delim 1
sort with non-default leading delim 2
sort key doesn't strip leading blanks, disables fallback global sort
2007-01-07 00:21:41 +00:00
Denis Vlasenko
9213a9e0f2 whitespace cleanup 2006-09-17 16:28:10 +00:00
Denis Vlasenko
21afc7dc29 uuencode: common implementation for wget and uuencode (closing bug 694) 2006-09-03 15:49:40 +00:00