oweals/busybox.git
13 years agodeluser: make it simpler, fix inability to delete user from group
Harald Becker [Wed, 22 Sep 2010 12:50:15 +0000 (14:50 +0200)]
deluser: make it simpler, fix inability to delete user from group

Also makes menuconfig order more sensible

Signed-off-by: Harald Becker <ralda@gmx.de>
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: use smaller EXP_FLAG_foo constants
Denys Vlasenko [Tue, 21 Sep 2010 10:35:39 +0000 (12:35 +0200)]
hush: use smaller EXP_FLAG_foo constants

function                                             old     new   delta
expand_string_to_string                              126     124      -2
parse_stream                                        2376    2370      -6
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-8)               Total: -8 bytes

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agofix build failure for pmap
Dan Fandrich [Sun, 19 Sep 2010 15:13:21 +0000 (17:13 +0200)]
fix build failure for pmap

Signed-off-by: Dan Fandrich <dan@coneharvesters.com>
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agoshell/math: better comment. no code changes
Denys Vlasenko [Fri, 17 Sep 2010 16:02:17 +0000 (18:02 +0200)]
shell/math: better comment. no code changes

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agomove read_base64 to libbb/uuencode.c
Denys Vlasenko [Thu, 16 Sep 2010 16:10:04 +0000 (18:10 +0200)]
move read_base64 to libbb/uuencode.c

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agolibbb: merge mail and uudecode's base64 decoders
Denys Vlasenko [Thu, 16 Sep 2010 15:51:13 +0000 (17:51 +0200)]
libbb: merge mail and uudecode's base64 decoders

function                                             old     new   delta
read_base64                                            -     378    +378
uudecode_main                                        306     315      +9
parse                                                953     958      +5
read_stduu                                           250     254      +4
base64_main                                          217     219      +2
read_base64                                          358       -    -358
decode_base64                                        371       -    -371
------------------------------------------------------------------------------
(add/remove: 2/2 grow/shrink: 4/0 up/down: 398/-729)         Total: -331 bytes

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: move shell_ver from globals to main's stack.
Denys Vlasenko [Thu, 16 Sep 2010 14:12:00 +0000 (16:12 +0200)]
hush: move shell_ver from globals to main's stack.

function                                             old     new   delta
hush_main                                            995    1011     +16
pseudo_exec_argv                                     253     251      -2
execvp_or_die                                         50      48      -2
maybe_set_to_sigexit                                  50      47      -3
hush_exit                                             78      75      -3
builtin_wait                                         274     271      -3
check_and_run_traps                                  205     200      -5
init_sigmasks                                        214     190     -24
builtin_trap                                         465     441     -24
reset_traps_to_defaults                              238     211     -27
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/9 up/down: 16/-93)            Total: -77 bytes

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agosimpler check for od
Denys Vlasenko [Thu, 16 Sep 2010 13:46:20 +0000 (15:46 +0200)]
simpler check for od

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agobuild system: test that od is present in the host system
Denys Vlasenko [Thu, 16 Sep 2010 11:23:15 +0000 (13:23 +0200)]
build system: test that od is present in the host system

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agoshell/math: deconvolute and explain ?: handling. Give better error message
Denys Vlasenko [Thu, 16 Sep 2010 09:50:46 +0000 (11:50 +0200)]
shell/math: deconvolute and explain ?: handling. Give better error message

function                                             old     new   delta
arith_apply                                         1271    1283     +12

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agoshell/math: return string error indicator, not integer
Denys Vlasenko [Wed, 15 Sep 2010 11:33:02 +0000 (13:33 +0200)]
shell/math: return string error indicator, not integer

function                                             old     new   delta
expand_and_evaluate_arith                             87     106     +19
expand_one_var                                      1563    1570      +7
arith                                                 12      18      +6
evaluate_string                                      678     680      +2
arith_apply                                         1269    1271      +2
builtin_umask                                        133     132      -1
ash_arith                                            118      75     -43
expand_vars_to_list                                 1094    1038     -56
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 5/3 up/down: 36/-100)           Total: -64 bytes

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agosleep: make it non-NOFORK. Fixes ^C in standalone shell
Denys Vlasenko [Tue, 14 Sep 2010 10:57:05 +0000 (12:57 +0200)]
sleep: make it non-NOFORK. Fixes ^C in standalone shell

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agoshell/math.c: stop using bss variable
Denys Vlasenko [Mon, 13 Sep 2010 10:49:52 +0000 (12:49 +0200)]
shell/math.c: stop using bss variable

function                                             old     new   delta
evaluate_string                                        -     678    +678
expand_one_var                                      1543    1563     +20
builtin_type                                         114     116      +2
expand_and_evaluate_arith                             89      87      -2
prev_chk_var_recursive                                 4       -      -4
ash_arith                                            122     118      -4
arith_lookup_val                                     142     132     -10
arith                                                674      12    -662
------------------------------------------------------------------------------
(add/remove: 1/1 grow/shrink: 2/4 up/down: 700/-682)           Total: 18 bytes

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agoshell/math.c: rename arith_eval_hooks to arith_state, put error code into it
Denys Vlasenko [Mon, 13 Sep 2010 10:49:03 +0000 (12:49 +0200)]
shell/math.c: rename arith_eval_hooks to arith_state, put error code into it

function                                             old     new   delta
expand_and_evaluate_arith                             79      89     +10
arith                                                675     674      -1
arith_lookup_val                                     151     142      -9
ash_arith                                            135     122     -13
arith_apply                                         1304    1269     -35
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/4 up/down: 10/-58)            Total: -48 bytes

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agoshell/math.c: small code shrink; fixed incomprehensible comments
Denys Vlasenko [Mon, 13 Sep 2010 09:11:40 +0000 (11:11 +0200)]
shell/math.c: small code shrink; fixed incomprehensible comments

function                                             old     new   delta
arith_apply                                         1334    1304     -30

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agoshell: small code shrink
Denys Vlasenko [Sun, 12 Sep 2010 23:09:11 +0000 (01:09 +0200)]
shell: small code shrink

function                                             old     new   delta
arith                                                680     675      -5

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agoshell: shrink arith code; and prepare for returning text error codes
Denys Vlasenko [Sun, 12 Sep 2010 22:34:26 +0000 (00:34 +0200)]
shell: shrink arith code; and prepare for returning text error codes

function                                             old     new   delta
arith                                                701     680     -21

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: optional support for history saving
Denys Vlasenko [Sun, 12 Sep 2010 15:34:13 +0000 (17:34 +0200)]
hush: optional support for history saving

function                                             old     new   delta
hush_main                                            945     995     +50

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agosmemcap: use correct tar magic
Denys Vlasenko [Sun, 12 Sep 2010 15:13:29 +0000 (17:13 +0200)]
smemcap: use correct tar magic

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years ago*: s/perror/bb_simple_perror_msg/g
Marek Polacek [Sun, 12 Sep 2010 15:06:43 +0000 (17:06 +0200)]
*: s/perror/bb_simple_perror_msg/g

function                                             old     new   delta
readLines                                            448     446      -2
doCommands                                          2449    2438     -11
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-13)             Total: -13 bytes

Signed-off-by: Marek Polacek <mmpolacek@gmail.com>
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agoFixed a couple of failing tar tests
Dan Fandrich [Sat, 11 Sep 2010 07:28:50 +0000 (00:28 -0700)]
Fixed a couple of failing tar tests

The tar symlinks mode test is fixed similarly to the hardlinks
test in 0d7cb4cc, and the read-only test is skipped by
SKIP_KNOWN_BUGS.

Signed-off-by: Dan Fandrich <dan@coneharvesters.com>
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agobusybox: add "busybox --list[-full]" to help text
Denys Vlasenko [Sun, 12 Sep 2010 14:17:37 +0000 (16:17 +0200)]
busybox: add "busybox --list[-full]" to help text

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: move the EXIT trap comment. no code changes
Denys Vlasenko [Sun, 12 Sep 2010 14:13:44 +0000 (16:13 +0200)]
hush: move the EXIT trap comment. no code changes

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: fix EXIT trap display inside exit trap handler
Denys Vlasenko [Sun, 12 Sep 2010 13:38:04 +0000 (15:38 +0200)]
hush: fix EXIT trap display inside exit trap handler

function                                             old     new   delta
hush_exit                                             84      78      -6

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agoshell/match.c: shrink by dropping double bool inversion
Denys Vlasenko [Sun, 12 Sep 2010 13:06:42 +0000 (15:06 +0200)]
shell/match.c: shrink by dropping double bool inversion

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: fix handling of \" in quoted/unquoted `cmd`
Denys Vlasenko [Sun, 12 Sep 2010 13:05:39 +0000 (15:05 +0200)]
hush: fix handling of \" in quoted/unquoted `cmd`

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agoash: shrink by folding an if check into setprompt; unindent big block
Denys Vlasenko [Sun, 12 Sep 2010 13:04:27 +0000 (15:04 +0200)]
ash: shrink by folding an if check into setprompt; unindent big block

function                                             old     new   delta
setprompt_if                                           -      66     +66
parseheredoc                                         126     124      -2
parsecmd                                              68      66      -2
redirect                                            1254    1249      -5
xxreadtoken                                          351     343      -8
readtoken1                                          3219    3204     -15
setprompt                                             62       -     -62
------------------------------------------------------------------------------
(add/remove: 1/1 grow/shrink: 0/5 up/down: 66/-94)            Total: -28 bytes

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agoash: add missing casts to match CTLfoo; add TODO comments
Denys Vlasenko [Sun, 12 Sep 2010 13:03:16 +0000 (15:03 +0200)]
ash: add missing casts to match CTLfoo; add TODO comments

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: remove forgotten commented-out block. no code changes
Denys Vlasenko [Fri, 10 Sep 2010 13:34:53 +0000 (15:34 +0200)]
hush: remove forgotten commented-out block. no code changes

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: do fewer strdups in % and hash expansions
Denys Vlasenko [Fri, 10 Sep 2010 09:06:01 +0000 (11:06 +0200)]
hush: do fewer strdups in % and hash expansions

function                                             old     new   delta
builtin_umask                                        133     132      -1
expand_one_var                                      1552    1543      -9

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: better function and parameter names
Denys Vlasenko [Fri, 10 Sep 2010 08:44:23 +0000 (10:44 +0200)]
hush: better function and parameter names

Also, trim code which isn't needed for non-bash compat.
No logic changes.

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: fixes to testsuite
Denys Vlasenko [Fri, 10 Sep 2010 08:19:22 +0000 (10:19 +0200)]
hush: fixes to testsuite

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: fix var_bash5.tests failure
Denys Vlasenko [Fri, 10 Sep 2010 08:17:53 +0000 (10:17 +0200)]
hush: fix var_bash5.tests failure

function                                             old     new   delta
expand_one_var                                      1513    1552     +39
expand_pseudo_dquoted                                118     135     +17
expand_string_to_string                              110     126     +16
setup_heredoc                                        298     308     +10
expand_and_evaluate_arith                             69      79     +10
parse_stream_dquoted                                 233     241      +8
setup_redirects                                      220     225      +5
run_list                                             956     961      +5
expand_assignments                                    76      81      +5
run_pipe                                            1587    1590      +3
parse_stream                                        2371    2374      +3
builtin_umask                                        132     133      +1
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 12/0 up/down: 122/0)            Total: 122 bytes

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: fix var_bash3.tests failure
Denys Vlasenko [Fri, 10 Sep 2010 08:15:18 +0000 (10:15 +0200)]
hush: fix var_bash3.tests failure

function                                             old     new   delta
expand_one_var                                      1513    1538     +25
parse_stream_dquoted                                 233     241      +8
expand_pseudo_dquoted                                118     126      +8
setup_heredoc                                        298     303      +5
expand_and_evaluate_arith                             69      74      +5
parse_stream                                        2371    2374      +3
builtin_umask                                        132     133      +1
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 7/0 up/down: 55/0)               Total: 55 bytes

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: remove useless ESC_GLOB_CHARS clears/resotres
Denys Vlasenko [Fri, 10 Sep 2010 08:12:34 +0000 (10:12 +0200)]
hush: remove useless ESC_GLOB_CHARS clears/resotres

function                                             old     new   delta
o_addQstr                                             43     165    +122
expand_on_ifs                                        210     189     -21
expand_vars_to_list                                 1122    1094     -28
o_addqblock                                          139       -    -139
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 1/2 up/down: 122/-188)          Total: -66 bytes

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: fix a bug where expand_one_var wasn't restoring 1st char of the encoded $var
Denys Vlasenko [Thu, 9 Sep 2010 12:38:46 +0000 (14:38 +0200)]
hush: fix a bug where expand_one_var wasn't restoring 1st char of the encoded $var

function                                             old     new   delta
expand_one_var                                      1515    1513      -2
expand_vars_to_list                                 1133    1122     -11

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: make parse_dollar flag quited status regardless of glob escaping status
Denys Vlasenko [Thu, 9 Sep 2010 12:04:57 +0000 (14:04 +0200)]
hush: make parse_dollar flag quited status regardless of glob escaping status

function                                             old     new   delta
parse_stream_dquoted                                 228     233      +5
parse_stream                                        2369    2371      +2
parse_dollar                                         730     717     -13
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/1 up/down: 7/-13)              Total: -6 bytes

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: simplification in parse_stream, parse_stream_dquoted
Denys Vlasenko [Thu, 9 Sep 2010 11:32:21 +0000 (13:32 +0200)]
hush: simplification in parse_stream, parse_stream_dquoted

function                                             old     new   delta
parse_stream                                        2354    2369     +15
parse_stream_dquoted                                 250     228     -22

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: simplify parse_stream_dquoted
Denys Vlasenko [Thu, 9 Sep 2010 10:58:19 +0000 (12:58 +0200)]
hush: simplify parse_stream_dquoted

function                                             old     new   delta
parse_stream_dquoted                                 303     250     -53

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: straighten out the logic in parse_stream
Denys Vlasenko [Thu, 9 Sep 2010 10:40:03 +0000 (12:40 +0200)]
hush: straighten out the logic in parse_stream

function                                             old     new   delta
parse_stream                                        2399    2354     -45

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agoAvoid side effects in putc(), which may be implemented as a macro
Dan Fandrich [Wed, 8 Sep 2010 06:38:28 +0000 (23:38 -0700)]
Avoid side effects in putc(), which may be implemented as a macro

Signed-off-by: Dan Fandrich <dan@coneharvesters.com>
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: eliminate redundant parameter of expand_vars_to_list()
Denys Vlasenko [Wed, 8 Sep 2010 11:58:55 +0000 (13:58 +0200)]
hush: eliminate redundant parameter of expand_vars_to_list()

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: replace flag bytes in struct o_string with bit flags
Denys Vlasenko [Wed, 8 Sep 2010 11:44:34 +0000 (13:44 +0200)]
hush: replace flag bytes in struct o_string with bit flags

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: remove unused enum typedef
Denys Vlasenko [Wed, 8 Sep 2010 11:33:26 +0000 (13:33 +0200)]
hush: remove unused enum typedef

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: fix set -- q w e; (IFS='' echo "$*"; IFS=''; echo "$*"); echo "$*"
Denys Vlasenko [Wed, 8 Sep 2010 11:31:53 +0000 (13:31 +0200)]
hush: fix set -- q w e; (IFS='' echo "$*"; IFS=''; echo "$*"); echo "$*"

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agonc: show help text on bad parameters
Denys Vlasenko [Tue, 7 Sep 2010 16:41:56 +0000 (18:41 +0200)]
nc: show help text on bad parameters

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agolineedit: do not hang on error, but return error indicator.
Denys Vlasenko [Tue, 7 Sep 2010 16:40:53 +0000 (18:40 +0200)]
lineedit: do not hang on error, but return error indicator.

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agoshell: unify endofname() in hush and ash
Denys Vlasenko [Tue, 7 Sep 2010 10:19:33 +0000 (12:19 +0200)]
shell: unify endofname() in hush and ash

function                                             old     new   delta
builtin_umask                                        132     133      +1
changepath                                           195     194      -1
expand_and_evaluate_arith                             77      69      -8
ash_arith                                            143     135      -8
expand_one_var                                      1551    1515     -36
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/4 up/down: 1/-53)             Total: -52 bytes

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: a few relatively trivial simplifications
Denys Vlasenko [Tue, 7 Sep 2010 07:56:34 +0000 (09:56 +0200)]
hush: a few relatively trivial simplifications

function                                             old     new   delta
helper_export_local                                  130     135      +5
set_vars_and_save_old                                 89      85      -4
expand_variables                                     147     141      -6
get_ptr_to_local_var                                  77      70      -7
get_local_var_value                                  171     164      -7
delete_finished_bg_job                                31      16     -15
hush_exit                                            101      84     -17
free_pipe_list                                        31      12     -19
check_and_run_traps                                  232     205     -27
free_pipe                                            205     130     -75
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/9 up/down: 5/-177)           Total: -172 bytes

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: style cleanups. no code changes
Denys Vlasenko [Tue, 7 Sep 2010 07:53:50 +0000 (09:53 +0200)]
hush: style cleanups. no code changes

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agoAgain fix license line format
Denys Vlasenko [Mon, 6 Sep 2010 15:41:46 +0000 (17:41 +0200)]
Again fix license line format

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agoblockdev: code shrink
Denys Vlasenko [Mon, 6 Sep 2010 15:37:52 +0000 (17:37 +0200)]
blockdev: code shrink

function                                             old     new   delta
blockdev_main                                        292     255     -37

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agoblockdev: make "blockdev --rereadpt /dev/sda EXTRA_ARG" complain. +6 bytes.
Denys Vlasenko [Mon, 6 Sep 2010 14:31:18 +0000 (16:31 +0200)]
blockdev: make "blockdev --rereadpt /dev/sda EXTRA_ARG" complain. +6 bytes.

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agomade 3 license strings to follow the usual form ("or later" bit is not changed!)
Denys Vlasenko [Mon, 6 Sep 2010 14:22:25 +0000 (16:22 +0200)]
made 3 license strings to follow the usual form ("or later" bit is not changed!)

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agoblockdev: -2 bytes
Denys Vlasenko [Mon, 6 Sep 2010 13:34:15 +0000 (15:34 +0200)]
blockdev: -2 bytes

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agotweak blockdev's help text
Denys Vlasenko [Mon, 6 Sep 2010 12:15:46 +0000 (14:15 +0200)]
tweak blockdev's help text

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agotweak udhcpd help text
Denys Vlasenko [Mon, 6 Sep 2010 11:39:59 +0000 (13:39 +0200)]
tweak udhcpd help text

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agoblockdev: new applet
Sergey Naumov [Mon, 6 Sep 2010 11:35:58 +0000 (13:35 +0200)]
blockdev: new applet

function                                             old     new   delta
blockdev_main                                          -     287    +287
bdcommands                                             -     160    +160
packed_usage                                       27203   27298     +95
applet_names                                        2297    2306      +9
applet_main                                         1352    1356      +4
applet_nameofs                                       676     678      +2
applet_install_loc                                   169     170      +1
------------------------------------------------------------------------------
(add/remove: 3/0 grow/shrink: 5/0 up/down: 558/0)             Total: 558 bytes

Signed-off-by: Sergey Naumov <sknaumov@gmail.com>
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: revert a recent buggy change which resulted in two HUSH_VERSIONs
Denys Vlasenko [Mon, 6 Sep 2010 10:10:51 +0000 (12:10 +0200)]
hush: revert a recent buggy change which resulted in two HUSH_VERSIONs

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agofix typo in comment
Denys Vlasenko [Mon, 6 Sep 2010 09:47:55 +0000 (11:47 +0200)]
fix typo in comment

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: fix another corner case with backslashes in heredocs
Denys Vlasenko [Mon, 6 Sep 2010 09:46:03 +0000 (11:46 +0200)]
hush: fix another corner case with backslashes in heredocs

function                                             old     new   delta
parse_stream                                        2395    2432     +37

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: fix backslash and terminator handling in <<[-]["]heredoc["]
Denys Vlasenko [Mon, 6 Sep 2010 09:27:32 +0000 (11:27 +0200)]
hush: fix backslash and terminator handling in <<[-]["]heredoc["]

function                                             old     new   delta
parse_stream                                        2339    2395     +56
expand_pseudo_dquoted                                104     118     +14
parse_stream_dquoted                                 296     300      +4
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/0 up/down: 74/0)               Total: 74 bytes

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: fix globbing+backslashes in unquoted $var expansion
Denys Vlasenko [Mon, 6 Sep 2010 08:26:37 +0000 (10:26 +0200)]
hush: fix globbing+backslashes in unquoted $var expansion

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: remove disabled CMD_SINGLEWORD_NOGLOB_COND, rename o_glob->perform_glob
Denys Vlasenko [Mon, 6 Sep 2010 08:22:13 +0000 (10:22 +0200)]
hush: remove disabled CMD_SINGLEWORD_NOGLOB_COND, rename o_glob->perform_glob

+ other small tweaks to comments and such

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agoshell: remove lash and bbsh
Denys Vlasenko [Mon, 6 Sep 2010 08:18:21 +0000 (10:18 +0200)]
shell: remove lash and bbsh

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agorunit_lib: remove/inline a few more things
Denys Vlasenko [Sun, 5 Sep 2010 17:28:29 +0000 (19:28 +0200)]
runit_lib: remove/inline a few more things

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agotar: add a test for extraction of read-only directory
Dan Fandrich [Sun, 5 Sep 2010 14:16:46 +0000 (16:16 +0200)]
tar: add a test for extraction of read-only directory

Signed-off-by: Dan Fandrich <dan@coneharvesters.com>
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agoremove redundant ENABLE_DESKTOP in procps/ps.c
Cristian Ionescu-Idbohrn [Sun, 5 Sep 2010 12:34:42 +0000 (14:34 +0200)]
remove redundant ENABLE_DESKTOP in procps/ps.c

Signed-off-by: Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn@axis.com>
Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: big reordering: move parser functions to the beginning. no code changes
Denys Vlasenko [Sun, 5 Sep 2010 12:50:59 +0000 (14:50 +0200)]
hush: big reordering: move parser functions to the beginning. no code changes

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: rename o_quoted to has_quoted_part; small code shrink
Denys Vlasenko [Sun, 5 Sep 2010 12:49:40 +0000 (14:49 +0200)]
hush: rename o_quoted to has_quoted_part; small code shrink

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: move variable expansion into a separate function. No logic changes
Denys Vlasenko [Sun, 5 Sep 2010 12:48:11 +0000 (14:48 +0200)]
hush: move variable expansion into a separate function. No logic changes

function                                             old     new   delta
expand_one_var                                         -    1551   +1551
expand_vars_to_list                                 2833    1175   -1658
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/1 up/down: 1551/-1658)       Total: -107 bytes

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: add support for ${var/pattern/repl}, conditional on bash compat
Denys Vlasenko [Sun, 5 Sep 2010 12:45:38 +0000 (14:45 +0200)]
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>
13 years agohush: optimize #[#] and %[%] for speed. size -2 bytes.
Denys Vlasenko [Sat, 4 Sep 2010 19:21:07 +0000 (21:21 +0200)]
hush: optimize #[#] and %[%] for speed. size -2 bytes.

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agohush: fix handling of backslashes in variable assignment
Denys Vlasenko [Sat, 4 Sep 2010 17:52:44 +0000 (19:52 +0200)]
hush: fix handling of backslashes in variable assignment

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agolzop: fix misordered "v=NULL; free(v)", small code shrink
Denys Vlasenko [Sat, 4 Sep 2010 17:46:52 +0000 (19:46 +0200)]
lzop: fix misordered "v=NULL; free(v)", small code shrink

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agofix false positive in testsuite/tar.tests
Denys Vlasenko [Fri, 3 Sep 2010 15:22:56 +0000 (17:22 +0200)]
fix false positive in testsuite/tar.tests

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agoFix some test cases
Dan Fandrich [Fri, 3 Sep 2010 01:38:00 +0000 (18:38 -0700)]
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>
13 years agoifupdown: %client%, not %clientid%
Denys Vlasenko [Fri, 3 Sep 2010 14:58:37 +0000 (16:58 +0200)]
ifupdown: %client%, not %clientid%

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agolineedit: on tab completion, show filenames obly in all cases (bash compat)
Denys Vlasenko [Fri, 3 Sep 2010 12:11:08 +0000 (14:11 +0200)]
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>
13 years agolineedit: allocate matchBuf only temporarily: saves MAX_LINELEN bytes
Denys Vlasenko [Fri, 3 Sep 2010 12:09:24 +0000 (14:09 +0200)]
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>
13 years agolineedit: de-indent large block in input_tab. No logic changes.
Denys Vlasenko [Fri, 3 Sep 2010 12:08:24 +0000 (14:08 +0200)]
lineedit: de-indent large block in input_tab. No logic changes.

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agolineedit: rename tmp -> chosen_match; small code shrink
Denys Vlasenko [Fri, 3 Sep 2010 11:05:51 +0000 (13:05 +0200)]
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>
13 years agolineedit: stop using permanent int_buf[] (16k!): allocate it
Denys Vlasenko [Fri, 3 Sep 2010 11:02:47 +0000 (13:02 +0200)]
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>
13 years agolineedit: remove pos_buf[] array (up to 16k!); fix compat bugs
Denys Vlasenko [Fri, 3 Sep 2010 10:59:15 +0000 (12:59 +0200)]
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>
13 years agolineedit: return prefix len from tab completion helpers
Denys Vlasenko [Fri, 3 Sep 2010 10:56:36 +0000 (12:56 +0200)]
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>
13 years agolineedit: clean up tab completion code (variable reuse, comments)
Denys Vlasenko [Fri, 3 Sep 2010 10:53:15 +0000 (12:53 +0200)]
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>
13 years agopreparatory cleanup patch for tab completion fixes
Denys Vlasenko [Fri, 3 Sep 2010 10:51:36 +0000 (12:51 +0200)]
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>
13 years agolineedit: small readability improvement (same code)
Denys Vlasenko [Thu, 2 Sep 2010 10:44:39 +0000 (12:44 +0200)]
lineedit: small readability improvement (same code)

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agolineedit: fix completion with Unicode chars
Denys Vlasenko [Thu, 2 Sep 2010 10:03:11 +0000 (12:03 +0200)]
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>
13 years agolineedit: preparatory cleanup patch for Unicode completion fix
Denys Vlasenko [Thu, 2 Sep 2010 10:01:11 +0000 (12:01 +0200)]
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>
13 years agolibbb: xfunc_error_retval can be a byte
Denys Vlasenko [Wed, 1 Sep 2010 14:04:24 +0000 (16:04 +0200)]
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>
13 years agouudecode,base64: code shrink
Denys Vlasenko [Wed, 1 Sep 2010 11:24:05 +0000 (13:24 +0200)]
uudecode,base64: code shrink

function                                             old     new   delta
read_base64                                          373     358     -15

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agobetter shared strings trick
Denys Vlasenko [Wed, 1 Sep 2010 10:01:17 +0000 (12:01 +0200)]
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>
13 years agogetty: small code shrink
Denys Vlasenko [Wed, 1 Sep 2010 09:31:43 +0000 (11:31 +0200)]
getty: small code shrink

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agofind: add rudimentary support for -exec {} +
Denys Vlasenko [Tue, 31 Aug 2010 17:17:42 +0000 (19:17 +0200)]
find: add rudimentary support for -exec {} +

function                                             old     new   delta
parse_params                                        1421    1414      -7

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agobase64: new applet
Denys Vlasenko [Tue, 31 Aug 2010 12:09:22 +0000 (14:09 +0200)]
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>
13 years agolibbb: add xfstat function
Denys Vlasenko [Tue, 31 Aug 2010 10:42:06 +0000 (12:42 +0200)]
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>
13 years agomkswap: clear 1st kilobyte. Closes bug 1831
Denys Vlasenko [Mon, 30 Aug 2010 23:50:03 +0000 (01:50 +0200)]
mkswap: clear 1st kilobyte. Closes bug 1831

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
13 years agoiplink: another compat #ifndef/#define tweak
Denys Vlasenko [Mon, 30 Aug 2010 17:20:09 +0000 (19:20 +0200)]
iplink: another compat #ifndef/#define tweak

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>
13 years agoash: small code shrink (-21 bytes)
Denys Vlasenko [Mon, 30 Aug 2010 13:20:07 +0000 (15:20 +0200)]
ash: small code shrink (-21 bytes)

Signed-off-by: Denys Vlasenko <dvlasenk@redhat.com>