summaryrefslogtreecommitdiff
path: root/shell/ash.c
AgeCommit message (Collapse)Author
2008-07-25ash: dont allow e.g. exec <&10 to attach to stript's fd!Denis Vlasenko
function old new delta is_hidden_fd - 61 +61 redirect 1135 1164 +29 popstring 134 140 +6 printf_main 635 637 +2 evalvar 1374 1376 +2 echo_main 294 296 +2 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 5/0 up/down: 102/0) Total: 102 bytes
2008-07-24ash: prevent exec NN>&- from closing fd used for script readingDenis Vlasenko
2008-07-24ash: fix a bug where redirection fds were not closed afterwards.Denis Vlasenko
optimize close+fcntl(DUPFD) into dup2. add testsuites. function old new delta copyfd 47 68 +21 argstr 1311 1298 -13 popredir 148 131 -17 redirect 1139 1107 -32 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 1/3 up/down: 21/-62) Total: -41 bytes
2008-07-24ash: teach ash about 123>file. It could take only 0..9 beforeDenis Vlasenko
function old new delta redirect 1052 1139 +87 need_to_remember - 36 +36 popredir 132 148 +16 fixredir 86 101 +15 readtoken1 3130 3143 +13 evalvar 1374 1376 +2 popstring 140 134 -6 cmdtxt 592 561 -31 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 5/2 up/down: 169/-37) Total: 132 bytes
2008-07-24ash: ducument where "no fds > 9 in redirects" limitation is.Denis Vlasenko
no code changes.
2008-07-24ash: ditch dupredirect(), it was only making code harder to read.Denis Vlasenko
incorporate it in its single callsite. function old new delta redirect 1054 1052 -2 changepath 196 194 -2
2008-07-24ash: explain redirect code a bitDenis Vlasenko
function old new delta redirect 1059 1054 -5
2008-07-24ash: code shrinkDenis Vlasenko
function old new delta copynode 171 180 +9 evaltreenr 615 621 +6 evaltree 615 621 +6 calcsize 121 127 +6 evalpipe 349 350 +1 redirect 1059 1057 -2 parseheredoc 129 126 -3 makename 35 32 -3 expredir 130 127 -3 parsefname 224 219 -5 popstring 140 134 -6 pipeline 276 268 -8 list 360 351 -9 readtoken1 3157 3130 -27 parse_command 1504 1460 -44 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 5/10 up/down: 28/-110) Total: -82 bytes
2008-07-21- fix spellingBernhard Reutner-Fischer
2008-07-13ash: small code shrinkDenis Vlasenko
2008-07-11ash: fix segfault in "command -v"Denis Vlasenko
2008-07-05*: rename ATTRIBUTE_XXX to just XXX.Denis Vlasenko
2008-07-01sendmail: fix wrong vfork usage here tooDenis Vlasenko
*: shorten error texts function old new delta launch_helper - 151 +151 vfork_or_die 20 - -20 sendgetmail_main 1946 1848 -98 ------------------------------------------------------------------------------ (add/remove: 1/1 grow/shrink: 0/1 up/down: 151/-118) Total: 33 bytes
2008-06-29libbb: shrink monotonic_XXX functions, introduce monotonic_nsDenis Vlasenko
(unused for now) function old new delta get_mono - 31 +31 sv_main 1228 1234 +6 expand 1693 1697 +4 get_address 178 181 +3 utoa_to_buf 108 110 +2 builtin_exit 46 48 +2 qrealloc 36 33 -3 qgravechar 109 106 -3 ash_main 1383 1380 -3 grep_file 850 846 -4 popstring 140 134 -6 monotonic_us 85 60 -25 monotonic_sec 41 16 -25 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 5/7 up/down: 48/-69) Total: -21 bytes
2008-06-27ash: improve commentsDenis Vlasenko
2008-06-27ash: fix very weak $RANDOM generator; and move even more thingsDenis Vlasenko
out of data/bss text data bss dec hex filename 807935 611 6884 815430 c7146 busybox_old 808035 611 6868 815514 c719a busybox_unstripped
2008-06-27ash: move stuff out of data/bssDenis Vlasenko
text data bss dec hex filename 807939 611 6900 815450 c715a busybox_old 807935 611 6884 815430 c7146 busybox_unstripped
2008-06-23fix breakage found by randomconfigDenis Vlasenko
2008-06-23ash: trivial code readability fixesDenis Vlasenko
2008-06-23ash: improve readability of the code. No real code changes.Denis Vlasenko
2008-06-23ash: optional support for $'...\t...\n...' bashismDenis Vlasenko
function old new delta readtoken1 2824 3172 +348 static.C_escapes - 18 +18 parse_command 1504 1500 -4 SIT 89 83 -6 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 1/2 up/down: 366/-10) Total: 356 bytes
2008-06-22ash: minor shrink (mostly smallints) and variable renamingDenis Vlasenko
function old new delta optschanged 85 91 +6 tryexec 115 118 +3 xxreadtoken 290 292 +2 raise_error_unexpected_syntax 75 77 +2 bltincmd 6 8 +2 parseheredoc 128 129 +1 static.is_interactive 4 1 -3 readtoken 156 153 -3 lasttoken 4 1 -3 evalcommand 1147 1144 -3 checkkwd 4 1 -3 back_exitstatus 4 1 -3 pipeline 282 276 -6 list 369 360 -9 ash_main 1402 1393 -9 options 616 606 -10 readtoken1 2823 2811 -12 parse_command 1529 1507 -22 ------------------------------------------------------------------------------ (add/remove: 2/2 grow/shrink: 6/12 up/down: 21/-91) Total: -70 bytes text data bss dec hex filename 807603 611 6908 815122 c7012 busybox_old 807545 611 6900 815056 c6fd0 busybox_unstripped
2008-06-18ash: fix "shift BIGNUM" and "read with no variable name" bugs.Denis Vlasenko
omg. hush testsuite helps to find bugs in ash! what next? function old new delta static.arg_REPLY - 8 +8 readcmd 1023 1021 -2 shiftcmd 129 125 -4 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 0/2 up/down: 8/-6) Total: 2 bytes
2008-06-14ash: small cosmetic changeDenis Vlasenko
2008-06-14ash: fix ${var/s/r} handling, add testcase.Denis Vlasenko
2008-06-09reword the error msg so people realize that they broke it, they buy itMike Frysinger
2008-06-01ash: optional printf builtin. +25 bytes if off, +35 if on.Denis Vlasenko
by Cristian Ionescu-Idbohrn.
2008-05-19- use STD*_FILENO some more. No object-code changesBernhard Reutner-Fischer
2008-05-19- use EXIT_{SUCCESS,FAILURE}. No object-code changesBernhard Reutner-Fischer
2008-05-18ash: more of -Wall fixesDenis Vlasenko
2008-05-15more of -Wall fixes from Cristian Ionescu-Idbohrn.Denis Vlasenko
Some are fixing real bugs. function old new delta syslogd_main 938 958 +20 get_signum 136 143 +7 obj_load 777 782 +5 recv_from_to 210 214 +4 get_next_block 1795 1799 +4 display_topmem_process_list 1117 1121 +4 logread_main 484 487 +3 buffer_fill_and_print 73 76 +3 kill_main 687 689 +2 ll_remember_index 240 241 +1 do_stats 452 453 +1 if_readconf 166 165 -1 display_process_list 1192 1191 -1 run_applet_and_exit 507 505 -2 print_signames 33 31 -2 parse_one_line 1092 1090 -2 find_out_spec 57 55 -2 add_ksymoops_symbols 421 419 -2 ash_main 1407 1402 -5 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 11/8 up/down: 54/-17) Total: 37 bytes
2008-05-06ash: make set -o and set +o work as in dash/bash.Denis Vlasenko
by Cristian Ionescu-Idbohrn. function old new delta options 565 625 +60 getoptscmd 709 698 -11
2008-04-14ash: fix breakage introduced in rev 21481.Denis Vlasenko
Fixes ash-vars/var_posix1.tests testsuite entry.
2008-04-13ash: speed up NOFORK code in ash by eliminating second find_applet().Denis Vlasenko
some code reduction along the way. function old new delta run_list 1971 1981 +10 run_nofork_applet_prime 181 182 +1 unsetcmd 97 96 -1 delete_cmd_entry 54 53 -1 describe_command 399 397 -2 cmdlookup 152 150 -2 evaltreenr 602 599 -3 evaltree 602 599 -3 clearcmdentry 101 98 -3 cdcmd 675 672 -3 hashcmd 305 301 -4 find_command 933 910 -23 evalcommand 1371 1229 -142 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 2/11 up/down: 11/-187) Total: -176 bytes
2008-04-12ash: add FEATURE_SH_NOFORK supportDenis Vlasenko
2008-04-12ash: do not do find_applet() twice in shellexec/tryexecDenis Vlasenko
2008-04-01shells: do not frocibly enable test, echo and kill _applets_,Denis Vlasenko
just build relevant source and use xxx_main functions. build system: add a special case when we have exactly one applet enabled (makes "true", "false", "basename" REALLY tiny). getopt32: do not use stdio. function old new delta getopt32 1385 1412 +27 make_device 1187 1200 +13 basename_main 120 127 +7 tcpudpsvd_main 1922 1926 +4 testcmd 5 - -5 echocmd 5 - -5 fuser_main 1243 1231 -12 ------------------------------------------------------------------------------ (add/remove: 0/2 grow/shrink: 4/1 up/down: 51/-22) Total: 29 bytes
2008-03-25ash: support for && and || in [[ expr ]]; add testsuite checksDenis Vlasenko
2008-03-25ash: comment about [[; code style fixes. No code changes.Denis Vlasenko
2008-03-25ash: optional bash-like pattern subst and substring optsDenis Vlasenko
(by James Simmons <jsimmons AT infradead.org>) TODO: write testsuite! BASH_COMPAT off: scanleft 101 262 +161 subevalvar 346 335 -11 BASH_COMPAT on: subevalvar 346 1397 +1051 scanleft 101 262 +161 readtoken1 2739 2807 +68 cmdputs 397 399 +2 static.vstype 64 48 -16 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 4/1 up/down: 1282/-16) Total: 1266 bytes
2008-03-25ash: add read -u; fix read -t and read -n; add testsuite entries.Denis Vlasenko
2008-03-17*: fix fallout from -Wunused-parameterDenis Vlasenko
function old new delta bbunpack 358 366 +8 passwd_main 1070 1072 +2 handle_incoming_and_exit 2651 2653 +2 getpty 88 86 -2 script_main 975 972 -3 inetd_main 2036 2033 -3 dname_enc 377 373 -4 make_new_session 474 462 -12 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 3/5 up/down: 12/-24) Total: -12 bytes text data bss dec hex filename 797429 658 7428 805515 c4a8b busybox_old 797417 658 7428 805503 c4a7f busybox_unstripped
2008-03-17*: add -Wunused-parameter; fix resulting breakageDenis Vlasenko
function old new delta procps_scan 1265 1298 +33 aliascmd 278 283 +5 parse_file_cmd 116 120 +4 dname_enc 373 377 +4 setcmd 90 93 +3 execcmd 57 60 +3 count_lines 72 74 +2 process_command_subs 340 339 -1 test_main 409 407 -2 mknod_main 179 177 -2 handle_incoming_and_exit 2653 2651 -2 argstr 1312 1310 -2 shiftcmd 131 128 -3 exitcmd 46 43 -3 dotcmd 297 294 -3 breakcmd 86 83 -3 evalpipe 353 349 -4 evalcommand 1180 1176 -4 evalcmd 109 105 -4 send_tree 374 369 -5 mkfifo_main 82 77 -5 evalsubshell 152 147 -5 typecmd 75 69 -6 letcmd 61 55 -6 add_cmd 1190 1183 -7 main 891 883 -8 ash_main 1415 1407 -8 parse_stream 1377 1367 -10 alloc_procps_scan 55 - -55 ------------------------------------------------------------------------------ (add/remove: 0/1 grow/shrink: 7/21 up/down: 54/-148) Total: -94 bytes text data bss dec hex filename 797195 658 7428 805281 c49a1 busybox_old 797101 658 7428 805187 c4943 busybox_unstripped
2008-03-17libbb: introduce and use sigprocmask_allsigs and sigaction_set.Denis Vlasenko
libbb: rename sig_pause to wait_for_any_sig.
2008-03-12libbb: introduse and use signal_[no_]SA_RESTART_empty_mask and sigaction_setDenis Vlasenko
signal_SA_RESTART_empty_mask - 65 +65 signal_no_SA_RESTART_empty_mask - 54 +54 dd_main 1325 1369 +44 sigaction_set - 19 +19 dname_enc 373 377 +4 UNSPEC_print 64 66 +2 setsignal 296 294 -2 bb_signals_recursive 95 92 -3 bb_askpass 367 361 -6 inetd_main 1810 1797 -13 rx_main 912 883 -29 sigdelset 32 - -32 __sigdelset 32 - -32 __GI_sigdelset 32 - -32 sighup_handler 84 37 -47 arping_main 1844 1797 -47 fsck_main 1869 1807 -62 run_list 1917 1844 -73 vlock_main 492 409 -83 progressmeter 883 798 -85 handle_incoming_and_exit 2737 2651 -86 ------------------------------------------------------------------------------ (add/remove: 3/3 grow/shrink: 3/12 up/down: 188/-632) Total: -444 bytes
2008-02-27*: add optimization barrier to all "G trick" locationsDenis Vlasenko
2008-02-21ash: s/ckzmalloc/ckzalloc/Denis Vlasenko
2008-02-21ash: sprinkle a bit more of zeroed allocations.Denis Vlasenko
2008-02-20libbb: introduce and use nonblock_safe_read(). Yay!Denis Vlasenko
Our shells are immune from this nasty O_NONBLOCK now! function old new delta nonblock_safe_read - 78 +78 file_get 276 295 +19 generateMTFValues 428 435 +7 read_line_input 1776 1772 -4 preadbuffer 543 450 -93 ------------------------------------------------------------------------------ (add/remove: 1/0 grow/shrink: 2/2 up/down: 104/-97) Total: 7 bytes text data bss dec hex filename 615190 715 23924 639829 9c355 busybox_old 615168 715 23924 639807 9c33f busybox_unstripped
2008-02-20ash: introduce and use stzalloc and ckzalloc.Denis Vlasenko
function old new delta stzalloc - 29 +29 ckzalloc - 29 +29 recordregion 108 102 -6 cmdlookup 158 152 -6 pipeline 188 181 -7 parseheredoc 135 128 -7 makename 42 35 -7 list 355 348 -7 setvareq 221 212 -9 aliascmd 324 311 -13 pushfile 83 69 -14 readtoken1 2872 2849 -23 parse_command 1430 1391 -39 ------------------------------------------------------------------------------ (add/remove: 2/0 grow/shrink: 0/11 up/down: 58/-138) Total: -80 bytes text data bss dec hex filename 577227 706 23740 601673 92e49 busybox_old 577147 706 23740 601593 92df9 busybox_unstripped