Commit Graph

10127 Commits

Author SHA1 Message Date
Denis Vlasenko
4144504912 modutils: remove redundant sanitization 2009-04-13 20:32:31 +00:00
Denis Vlasenko
2b2183a77d hush: make function support configurable 2009-04-13 14:23:12 +00:00
Denis Vlasenko
323cbbfaa2 mdev: fix a bug where \t is not treated as delimiter after [>|=PATH] 2009-04-13 13:59:26 +00:00
Denis Vlasenko
aafbae6181 mdev: make usage text more useful
function                                             old     new   delta
packed_usage                                       26235   26291     +56
2009-04-13 13:33:02 +00:00
Denis Vlasenko
e8a796828e dhcprelay: fix usage text. Simplify and make code more readable.
Add TODOs.
2009-04-13 03:33:46 +00:00
Denis Vlasenko
1f63229a8e rmmod: fix bug 263
"modutils/rmmod can't remove modules with dash in name on 2.4 kernels"

function                                             old     new   delta
rmmod_main                                           187     220     +33
2009-04-13 02:25:40 +00:00
Denis Vlasenko
1fb26da071 mdev: ignore events with "$SUBSYSTEM" == "firmware" && "$ACTION" == "remove"
function                                             old     new   delta
mdev_main                                            665     676     +11
2009-04-13 02:15:57 +00:00
Denis Vlasenko
1d925affa9 website: add http://www.dream-multimedia-tv.de/ to list of products
using bbox
2009-04-13 00:55:42 +00:00
Denis Vlasenko
bc56974062 hush: pass functions to child shells on NOMMU
function                                             old     new   delta
new_function                                           -     123    +123
hush_main                                           1198    1262     +64
re_execute_shell                                     341     387     +46
run_pipe                                            1872    1790     -82
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 2/1 up/down: 233/-82)           Total: 151 bytes
2009-04-12 20:35:19 +00:00
Denis Vlasenko
ef1b439669 dnsd: stop using oversized buffer. trim comment. 2009-04-12 19:03:01 +00:00
Denis Vlasenko
e12c90217b halt/reboot/powerdown: accept and ignore -i 2009-04-12 15:59:35 +00:00
Denis Vlasenko
51056b382a modutils: small optimization
function                                             old     new   delta
bb_init_module_24                                   4570    4565      -5
2009-04-12 14:21:29 +00:00
Denis Vlasenko
f1df35c40b mdev: do not complain if /sys/block doesn't exist 2009-04-12 14:00:12 +00:00
Denis Vlasenko
67b5eeb933 awk: fix long field separators case. By Ian Wienand (ianw AT vmware.com) 2009-04-12 13:54:13 +00:00
Denis Vlasenko
32a385f5b0 getty: fix handling of speed 0;
stop using non-portable way of setting speeds.

function                                             old     new   delta
cfsetispeed                                            -      76     +76
cfsetospeed                                            -      57     +57
cfgetispeed                                            -      20     +20
2009-04-12 13:05:40 +00:00
Denis Vlasenko
5c32993009 mount: users report that CIFS support is breaking things,
mostly remove it.
2009-04-12 12:16:21 +00:00
Denis Vlasenko
f8de411e24 dnsd: removed highly questionable setting of signals to SIG_IGN 2009-04-12 04:20:22 +00:00
Denis Vlasenko
ddbf3bf35f dnsd: fix a number of bugs. Ideas by Ming-Ching Tiew (mctiew AT yahoo.com)
function                                             old     new   delta
undot                                                  -      42     +42
dnsd_main                                           1394    1213    -181
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/1 up/down: 42/-181)          Total: -139 bytes
2009-04-12 04:09:09 +00:00
Denis Vlasenko
135cecbbce ash: fix warning in debug build 2009-04-12 00:00:57 +00:00
Denis Vlasenko
c43430f1b9 hush: remove functions from TODOs 2009-04-11 11:07:22 +00:00
Denis Vlasenko
0701dca88c hush: improve debugging output 2009-04-11 10:38:47 +00:00
Denis Vlasenko
ed055214bb hush: fix "while...do f1() {a;}; f1; f1 {b;}; f1; done" bug 2009-04-11 10:37:10 +00:00
Denis Vlasenko
75bccfa375 hush: tweak tests 2009-04-10 23:48:03 +00:00
Denis Vlasenko
ce4acbbab6 hush: add function tests 2009-04-10 23:23:41 +00:00
Denis Vlasenko
6ba6f546ac hush: pass $n to functions
function                                             old     new   delta
run_pipe                                            1183    1325    +142
run_list                                            1219    1220      +1
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/0 up/down: 143/0)             Total: 143 bytes
2009-04-10 21:57:50 +00:00
Denis Vlasenko
c0ea329297 hush: fix a few thinkos in function support; make it work on NOMMU;
functions in child shells now even have $n passed to them! :)
 (in main shell it still doesn't work)
2009-04-10 21:22:02 +00:00
Denis Vlasenko
b7d8c0dbbd hush: first stab at function support. argv passing is not coded yet.
Only very rudimentary testing was done.
 With function support off, code growth is zero, with it on:

function                                             old     new   delta
run_list                                            2158    2339    +181
parse_stream                                        1929    2044    +115
find_builtin                                          24      67     +43
find_function                                          -      36     +36
file_get                                             244     264     +20
pseudo_exec_argv                                     145     160     +15
free_strings                                           -       7      +7
free_pipe                                            183     181      -2
done_word                                            735     728      -7
expand_variables                                    2227    2204     -23
------------------------------------------------------------------------------
(add/remove: 2/0 grow/shrink: 5/3 up/down: 417/-32)           Total: 385 bytes
2009-04-10 19:05:43 +00:00
Denis Vlasenko
835fcfd33d hush: reinstate accidentally reverted comment fix 2009-04-10 13:51:56 +00:00
Denis Vlasenko
0b677d8337 hush: fix some TODOs. TODO in export builting: +250 bytes.
simplify unexpected EOF handling.

function                                             old     new   delta
builtin_export                                       117     374    +257
o_reset_to_empty_unquoted                              -      21     +21
parse_stream                                        1926    1929      +3
syntax_error_unterm_ch                                31      32      +1
handle_dollar                                        644     641      -3
parse_stream_dquoted                                 307     298      -9
add_till_backquote                                   106      97      -9
add_till_closing_paren                               303     286     -17
o_reset                                               21       -     -21
------------------------------------------------------------------------------
(add/remove: 1/1 grow/shrink: 3/4 up/down: 282/-59)           Total: 223 bytes
2009-04-10 13:49:10 +00:00
Denis Vlasenko
1fd1ea4395 hush: tighten up "for" variable name check.
Add TODOs.
 Disable redir4.right part where we differ from bash.
 It is not a bug per standards.
 Add a few tests, one is in hush-bugs section:
 and_or_and_backgrounding.right. It will likely bite users
 in real world usage.
2009-04-10 12:03:20 +00:00
Denis Vlasenko
551bdfecb7 hush: fix typo in comment 2009-04-10 11:13:26 +00:00
Denis Vlasenko
ed7823738c fix segfault on syntax error code path 2009-04-10 00:45:02 +00:00
Denis Vlasenko
c96865f445 hush: readability improvements.
fix some more obscure bugs.
 a new redir4.tests is known to fail.
2009-04-10 00:20:58 +00:00
Mike Frysinger
e05f9286a9 add test cases for parameter substitution with unset/null strings 2009-04-09 23:01:47 +00:00
Mike Frysinger
57e746781c dont crash if the variable we do substitution on is not set 2009-04-09 23:00:33 +00:00
Denis Vlasenko
d68ae08cde hush: shrink and make more versatile error-reporting machinery
function                                             old     new   delta
syntax_error_unterm_ch                                 -      31     +31
syntax_error_unterm_str                                -      14     +14
parse_stream                                        2356    2361      +5
syntax_error_at                                       12      14      +2
syntax_error                                          25      27      +2
syntax_error_unterminated                             28       -     -28
expand_variables                                    2063    2031     -32
------------------------------------------------------------------------------
(add/remove: 2/1 grow/shrink: 3/1 up/down: 54/-60)             Total: -6 bytes
   text    data     bss     dec     hex filename
  67278     197    3184   70659   11403 busybox_old
  67228     197    3184   70609   113d1 busybox_unstripped
2009-04-09 20:41:34 +00:00
Denis Vlasenko
05d3b7cc0d hush: deal with some easier TODOs
function                                             old     new   delta
is_well_formed_var_name                                -      87     +87
builtin_read                                          49      86     +37
die_if_script                                          -      31     +31
syntax_error_unterminated                              -      28     +28
syntax_error                                          26      51     +25
done_word                                            768     788     +20
syntax_error_at                                        -      12     +12
parse_stream_dquoted                                 320     328      +8
expand_variables                                    2064    2063      -1
run_list                                            1225    1220      -5
add_till_closing_paren                               308     303      -5
add_till_backquote                                   111     106      -5
handle_dollar                                        812     803      -9
parse_stream                                        2378    2356     -22
parse_redirect                                       408     372     -36
maybe_die                                             44       -     -44
is_assignment                                        215     134     -81
------------------------------------------------------------------------------
(add/remove: 4/1 grow/shrink: 4/8 up/down: 248/-208)           Total: 40 bytes
2009-04-09 19:16:15 +00:00
Denis Vlasenko
1943aec2ec hush: plug the leak of expanded heredoc 2009-04-09 14:15:57 +00:00
Denis Vlasenko
efea9d2819 hush: fix EXIT trap recursion case; check redirection failures
function                                             old     new   delta                          
run_pipe                                            1299    1328     +29                          
hush_exit                                             90     102     +12                          
hush_main                                           1172    1179      +7                          
run_list                                            1226    1225      -1                          
------------------------------------------------------------------------------                    
(add/remove: 0/0 grow/shrink: 3/1 up/down: 48/-1)              Total: 47 bytes
2009-04-09 13:43:11 +00:00
Denis Vlasenko
f81e8dbc74 *: make "pragma GCC visibility push(hidden)" less ugly 2009-04-09 12:35:13 +00:00
Mike Frysinger
327fd47f36 skip some tests when fancy echo support is turned off 2009-04-09 07:50:18 +00:00
Mike Frysinger
c3d91952d6 we arent testing echo -n here so use printf instead 2009-04-09 07:50:02 +00:00
Mike Frysinger
20300d0129 source the .config so tests can signal they need to be skipped due to feature disable 2009-04-09 07:49:43 +00:00
Mike Frysinger
fe013a74ff patch by Stuart Hughes <seh@zee2.com> and Guenter <lists@gknw.net> to make "0" a special baud rate for getty where it uses this as "leave baud rate unchanged" 2009-04-09 07:08:04 +00:00
Denis Vlasenko
f50caac53c hush: typo in comment 2009-04-09 01:40:15 +00:00
Denis Vlasenko
a2218dd862 hush: fix thinko in re_execute_shell; pass even less junk to heredoc helper
function                                             old     new   delta
re_execute_shell                                     284     314     +30
setup_heredoc                                        290     303     +13
execv                                                 23       -     -23
2009-04-09 01:39:02 +00:00
Denis Vlasenko
5c090a96f9 hush: more rodust detection of unterminated strings etc;
fix a case where we forget to copy `cmd` text;
 optimize nommu heredoc helper by not passing environment to it;
 add several tests

function                                             old     new   delta
add_till_closing_paren                               256     308     +52
parse_stream                                        2337    2378     +41
add_till_backquote                                    82     111     +29
re_execute_shell                                     269     284     +15
handle_dollar                                        802     812     +10
parse_stream_dquoted                                 316     320      +4
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 6/0 up/down: 151/0)             Total: 151 bytes
2009-04-08 21:51:33 +00:00
Denis Vlasenko
ffe6f80851 expand leak_all1.tests 2009-04-08 16:59:24 +00:00
Denis Vlasenko
14725f82b6 slight tweak to the leak detector 2009-04-08 16:46:45 +00:00
Denis Vlasenko
cc90f44402 hush: plug leak in run_pipe(). NOMMU only. 2009-04-08 16:40:34 +00:00