aboutsummaryrefslogtreecommitdiff
path: root/shell/ash.c
AgeCommit message (Collapse)Author
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
2008-02-19ash: fix fallout from "A=1 B=$A; echo $B" code.Denis Vlasenko
2008-02-17whitespace fixesDenis Vlasenko
2008-02-15ash: handle "A=1 A=2 B=$A; echo $B". closes bug 947.Denis Vlasenko
2008-02-14ash: explain why "set -o BOGUS" doesn't abortDenis Vlasenko
2008-02-14ash: make ash -c 'if set -o barfoo 2>/dev/null; then echo foo; else echo ↵Denis Vlasenko
bar; fi' work (fixes bug 1142) function old new delta options 551 565 +14 ash_main 1397 1411 +14 setcmd 77 90 +13 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 3/0 up/down: 41/0) Total: 41 bytes
2008-02-12ash: fix warning about _GNU_SOURCE being redefined, fix typo in comment.Denis Vlasenko
2008-02-10ash: fix "orwell bug" 1984. Testcase:Denis Vlasenko
trap_handler() { echo trap } trap trap_handler USR1 sleep 3600 & while true; do wait; done
2008-02-03ash: readability enhancement, no code changesDenis Vlasenko
2008-01-29ash: code readability enhancements, no real code changesDenis Vlasenko
2008-01-28*: tidy up usage of char **environDenis Vlasenko
2008-01-02libbb: introduce and use safe_waitpid (loops in EINTR)Denis Vlasenko
*: use more approproate (shorter) versions of wait() function old new delta safe_waitpid - 48 +48 wait_any_nohang - 17 +17 send_tree 365 369 +4 processorstop 432 435 +3 text_yank 110 108 -2 make_human_readable_str 202 200 -2 crond_main 1368 1366 -2 handle_sigchld 49 43 -6 reapchild 166 159 -7 custom 260 250 -10 checkscript 191 177 -14 wait_nohang 17 - -17 wait_pid 43 - -43 ------------------------------------------------------------------------------ (add/remove: 2/2 grow/shrink: 2/7 up/down: 72/-103) Total: -31 bytes
2007-12-21fix buglets found by randomconfigDenis Vlasenko
2007-12-16ash: reduce global data/bss usageDenis Vlasenko
(add/remove: 4/29 grow/shrink: 76/21 up/down: 1007/-1713) Total: -706 bytes text data bss dec hex filename 777206 1084 8976 787266 c0342 busybox_old 778077 908 7568 786553 c0079 busybox_unstripped
2007-12-09lineedit: don't violate API if we do simple fgetsDenis Vlasenko
ash: cosmetic style fixes, no code changes
2007-11-28reorganize applet table. Eliminates pointers to names.Denis Vlasenko
Should be a big win for libbusybox. busybox wins too: text data bss dec hex filename 776524 929 9100 786553 c0079 busybox_old 775903 929 9100 785932 bfe0c busybox_unstripped
2007-11-26ash: make code simpler, and do not do close(-1) - it's rudeDenis Vlasenko
2007-11-24remove echo_main -> bb_echo indirectionDenis Vlasenko
2007-11-22ash: fix bug where redirection of closed fd was leaving it open afterwards.Denis Vlasenko
redirect 983 1024 +41 bb_echo 276 301 +25 popredir 118 132 +14 evalcommand 1163 1176 +13 bbunpack 358 366 +8 echocmd 13 5 -8 echo_main 13 5 -8 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 5/2 up/down: 101/-16) Total: 85 bytes text data bss dec hex filename 774999 962 9236 785197 bfb2d busybox_old 775084 962 9236 785282 bfb82 busybox_unstripped
2007-10-29ash: if tcgetattr(stdin) fails, don't mess with tcsetattrDenis Vlasenko
ash: size-optimize ulimit's table of limits text data bss dec hex filename 777345 974 9676 787995 c061b busybox_old 777253 974 9676 787903 c05bf busybox_unstripped
2007-10-20read_line_input: fix it to not do any fancy editing if echoing is disabled.Denis Vlasenko
ash: make read handling both more correct and smaller read_line_input 4037 4101 +64 input_backward 140 139 -1 readcmd 1079 1070 -9 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 2/2 up/down: 65/-10) Total: 54 bytes text data bss dec hex filename 777575 1000 9532 788107 c068b busybox_old 777629 1000 9532 788161 c06c1 busybox_unstripped
2007-10-17ash: use fdprintf, not dprintf.Denis Vlasenko
*: trailing whitespace removed
2007-10-11add -fvisibility=hidden to CC flags, mark XXX_main functionsDenis Vlasenko
EXTERNALLY_VISIBLE. 5% size reduction of libbusybox.so
2007-10-10get rid of global "struct bb_applet *current_applet"Denis Vlasenko
2007-10-07ash: revert "cat | jobs" fix, it causes more problems than goodDenis Vlasenko
2007-09-30introduce and use close_on_exec_on(fd). -50 bytes.Denis Vlasenko
2007-09-28fix "if (p) free(p)" constructsDenis Vlasenko
2007-09-24ash: fix prompt expansion (Natanael Copa <natanael.copa@gmail.com>)Denis Vlasenko
2007-09-21ash: remove erroneously applied patchDenis Vlasenko
2007-09-21httpd: optional support for partial downloadsDenis Vlasenko
2007-09-21ash: s/int/smallint/. -60 bytes.Denis Vlasenko
2007-09-07*: replace select-for-one descriptor with poll, it's smaller.Denis Vlasenko
$ ./.cmk bloatcheck function old new delta readit 406 364 -42 syslogd_main 1249 1206 -43 traceroute_main 4115 4060 -55 mysleep 112 45 -67 arpping 579 441 -138 tftp 1575 1182 -393 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 0/6 up/down: 0/-738) Total: -738 bytes text data bss dec hex filename 770580 1051 10764 782395 bf03b busybox_old 769820 1051 10764 781635 bed43 busybox_unstripped
2007-08-19libbb,crond,lash: fix getopt32 (don't know how it managed to slip through)Denis Vlasenko
*: fcntl(fd, F_GETFL) doesn't require third parameter at all.
2007-08-12trylink: produce even more info about final link stageDenis Vlasenko
trylink: explain how to modify link and drastically decrease amount of padding (unfortunately, needs hand editing ATM). *: add ALIGN1 / ALIGN2 to global strings and arrays of bytes and shorts size saving: 0.5k
2007-07-29ash: comment non-obvious code partDenis Vlasenko
2007-07-21style fix (stray space before ';')Denis Vlasenko
2007-07-18ash: fix SEGV in forkchild (jp can be NULL). here documents were affected.Denis Vlasenko
2007-07-15ash: make "jobs | cat" work like in bash (was giving empty output)Denis Vlasenko
2007-07-14ash: small size optimizationDenis Vlasenko
function old new delta makejob 263 270 +7 setjobctl 328 332 +4 jobscmd 96 94 -2 stoppedjobs 53 50 -3 jobctl 4 1 -3 job_warning 4 1 -3 forkshell 644 641 -3 cmdloop 422 409 -13 ------------------------------------------------------------------------------ (add/remove: 0/0 grow/shrink: 2/6 up/down: 11/-27) Total: -16 bytes text data bss dec hex filename 675392 2740 13968 692100 a8f84 busybox_old 675380 2740 13968 692088 a8f78 busybox_unstripped
2007-07-14ash: recognize -l as --login equivalent; do not recognize +-loginDenis Vlasenko
2007-07-14ash: fix for buglet in DEBUG code (Nguyen Thai Ngoc Duy <pclouds@gmail.com>)Denis Vlasenko
2007-06-25devfsd: fix formatting (Tito <farmatito@tiscali.it>)Denis Vlasenko
ash: fix SEGV if type has zero parameters
2007-06-25Consolidate ARRAY_SIZE macro; remove one unneeded global var (walter harms ↵Denis Vlasenko
<wharms@bfs.de>)
2007-06-21test: shrink a bitDenis Vlasenko
function old new delta test_main 5 434 +429 bb_test 473 - -473 ------------------------------------------------------------------------------ (add/remove: 0/1 grow/shrink: 1/0 up/down: 429/-473) Total: -44 bytes text data bss dec hex filename 735073 3028 14408 752509 b7b7d busybox_old 735029 3028 14408 752465 b7b51 busybox_unstripped
2007-06-13*: BB_BANNER -> bb_banner (it is not a const or #define)!Denis Vlasenko
correct_password: explain in detail why it is ok to use bb_banner fsck_minix: make it print bb version, not it's own (outdated/irrelevant) one Marginal size difference: text data bss dec hex filename 679119 2700 15632 697451 aa46b busybox_old 679091 2700 15632 697423 aa44f busybox_unstripped
2007-06-13hush: fix read builtin to not read ahead past eol and to not useDenis Vlasenko
insane amounts of stack. Testsuite updated.
2007-06-12remove nearly-duplicate PATHs in several placesDenis Vlasenko
function old new delta bb_PATH_root_path - 35 +35 varunset 60 58 -2 arith 2042 2033 -9 bb_default_root_login_path 30 - -30 .rodata 128794 128762 -32 which_main 152 117 -35 defpathvar 40 - -40 ------------------------------------------------------------------------------ (add/remove: 1/2 grow/shrink: 0/4 up/down: 35/-148) Total: -113 bytes
2007-06-08make busybox --install work even if /proc/self/exe doesn't existDenis Vlasenko
# size busybox_old busybox_unstripped text data bss dec hex filename 680095 2704 15648 698447 aa84f busybox_old 680099 2704 15648 698451 aa853 busybox_unstripped
2007-05-31use "glibc errno" trick not only for ash, but for entire busyboxDenis Vlasenko
(add/remove: 1/1 grow/shrink: 37/37 up/down: 139/-228) Total: -89 bytes