summaryrefslogtreecommitdiff
path: root/shell/hush.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* add -fvisibility=hidden to CC flags, mark XXX_main functionsDenis Vlasenko2007-10-111-1/+1
| | | | | EXTERNALLY_VISIBLE. 5% size reduction of libbusybox.so
* get rid of global "struct bb_applet *current_applet"Denis Vlasenko2007-10-101-3/+2
|
* hush: fix glob() abuse. Code was making unfounded assumptions howDenis Vlasenko2007-10-011-69/+120
| | | | | glob() works, and it broke horribly on specific uclibc config.
* hush: int->smallint for flag vars; make some names more "greppable"Denis Vlasenko2007-10-011-28/+32
|
* hush: feeble attempt at making it more NOMMU-friendlyDenis Vlasenko2007-10-011-16/+22
|
* hush: stop doing manual acounting of open fd's, kernel can do it for usDenis Vlasenko2007-10-011-45/+3
|
* introduce and use close_on_exec_on(fd). -50 bytes.Denis Vlasenko2007-09-301-3/+5
|
* introduce bb_putchar(). saves ~1800 on uclibc (less on glibc).Denis Vlasenko2007-09-271-1/+1
|
* trylink: produce even more info about final link stageDenis Vlasenko2007-08-121-2/+3
| | | | | | | | | 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
* Consolidate ARRAY_SIZE macro; remove one unneeded global var (walter harms ↵Denis Vlasenko2007-06-251-2/+2
| | | | <wharms@bfs.de>)
* *: BB_BANNER -> bb_banner (it is not a const or #define)!Denis Vlasenko2007-06-131-1/+1
| | | | | | | | | | | | 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
* hush: fix read builtin to not read ahead past eol and to not useDenis Vlasenko2007-06-131-13/+3
| | | | | insane amounts of stack. Testsuite updated.
* make busybox --install work even if /proc/self/exe doesn't existDenis Vlasenko2007-06-081-1/+1
| | | | | | | | # 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
* hush: trivial buglet found by randomconfig testingDenis Vlasenko2007-05-301-0/+2
|
* whitespace fixesDenis Vlasenko2007-05-301-4/+4
|
* usage.c: remove reference to busybox.hDenis Vlasenko2007-05-261-1/+4
| | | | | *: s/include "busybox.h"/include "libbb.h"
* xpipe: introduce (saves ~170 bytes)Denis Vlasenko2007-05-261-4/+2
| | | | | udhcp/signalpipe.c: use pipe instead of socketpair.
* hush: fix 'echo abc`sleep 5`def' + Ctrl-Z and Ctrl-C bugs. +50 bytes of code.Denis Vlasenko2007-05-251-6/+18
|
* hush: avoid duplicating HUSH_VERSIONDenis Vlasenko2007-05-251-15/+16
|
* hush: micro-optimization in new variable codeDenis Vlasenko2007-05-251-5/+5
|
* hush: we can't do without variable->value member, saving 25 bytes of codeDenis Vlasenko2007-05-251-42/+38
| | | | and some runtime memory. Rename few variables.
* hush: rework variable storage and environment handling.Denis Vlasenko2007-05-251-167/+163
| | | | | | More that -100 bytes of code + memory leak plugged. Added a testcase for it.
* hush: fix segfaulting syntax error in interactive hushDenis Vlasenko2007-05-241-23/+29
|
* hush: fix handling of unmatched ${name (without closing '}') -Denis Vlasenko2007-05-241-5/+7
| | | | | | | was eating all remaining input, potentially megabytes. nofork: save/restore die_jmp too nofork: use -2222 instead of -111 as "special" return valur for zero (-111 is used by some applets. -2222 won't fit in exitcode and thus safer)
* hush: make syntax error messages a bit more usefulDenis Vlasenko2007-05-231-29/+37
|
* hush: fix job control with eval /bin/external_progDenis Vlasenko2007-05-231-92/+93
| | | | | | hush: fix parsing of unterminated "str with no EOL hush: improved make_string() (smaller, faster, needs less RAM) hush: renamed several functions
* hush: fix a bit different instance of "No EOL" bug,Denis Vlasenko2007-05-231-38/+46
| | | | add testsuite for that. Expand another testsuite.
* hush: add 3 CONFIG_xxx, allowing for smaller and less capable hush.Denis Vlasenko2007-05-211-38/+91
| | | | Minimal hush is ~9k now (lash is ~7k).
* hush: using smallints where we can. save ~20 bytes in code andDenis Vlasenko2007-05-211-47/+50
| | | | some data storage at runtime.
* hush: fix shift + $0 bug; add testcaseDenis Vlasenko2007-05-201-1/+1
|
* hush: trivial size optimizationDenis Vlasenko2007-05-201-5/+6
|
* hush: make process substitution configurable; add a testcaseDenis Vlasenko2007-05-201-1/+13
|
* hush: do "struct globals" trick. hush.o data+bss = 0 bytes now.Denis Vlasenko2007-05-171-105/+134
| | | | +60 bytes to image, but -8000 bytes in bss.
* hush: consolidated variable expansion for assignments and "normal" one.Denis Vlasenko2007-05-171-87/+39
| | | | -435 bytes. Tested against testsuite.
* more compile fixes from randomconfig runDenis Vlasenko2007-05-171-8/+8
|
* hush: take care of several easy FIXMEs. -228 bytes.Denis Vlasenko2007-05-161-124/+68
|
* hush: another microscopic typo fixDenis Vlasenko2007-05-161-1/+1
|
* hush: fix English in commentDenis Vlasenko2007-05-161-1/+1
|
* hush: simplify read builtin; fix set_local_var (misplaced 'goto skip;')Denis Vlasenko2007-05-161-42/+18
|
* hush: fix expansion of quoted $VAR, $* and $@Denis Vlasenko2007-05-161-13/+32
|
* hush: fix incorrect processing of echo "'$var'".Denis Vlasenko2007-05-161-25/+25
| | | | | | hush: rename map[] and MAP_xxx, making them easier to understand. hush: move testcase (which now passes) from hush-bugs to hush-parsing
* hush: more fixes to variable expansion, more testcasesDenis Vlasenko2007-05-141-29/+40
|
* hush: move towards more correct variable expansionDenis Vlasenko2007-05-141-63/+304
| | | | | hush: fix a few cases in FOR v IN ... construct unfortunately, code growth is big - ~600 bytes
* hush: fix '{ false; echo $?; }' bug.Denis Vlasenko2007-05-131-96/+108
| | | | | hush: expand testsuite. variable expansion is still very broken
* hush: fix bug in interactive shell introduced yesterdayDenis Vlasenko2007-05-111-42/+46
| | | | | hush: fix `process subst` (2 bugs) NB: will delete and re-add hush_test in order to change file modes
* hush: fix "unterminated last line loops forever" bugDenis Vlasenko2007-05-101-59/+70
| | | | hush: add testsuite infrastructure
* hush: fix recent breakage (VAR=VAL stopped working)Denis Vlasenko2007-05-101-1/+1
|
* hush: fix double-free in "echo TEST &"Denis Vlasenko2007-05-061-78/+105
|
* hush: stop generating extra empty pipes in parse stage.Denis Vlasenko2007-05-051-13/+15
|
* hush: preparatory patch for removing extra empty pipes generationDenis Vlasenko2007-05-051-80/+90
| | | | in parse stage. No real code change here.