aboutsummaryrefslogtreecommitdiff
path: root/applets/applets.c
AgeCommit message (Collapse)Author
2007-04-14hush: use NOFORK applets as appropriate. Net reduction of code size.Denis Vlasenko
2007-04-12pass a copy of argv[i] to NOFORK applets (they may permute it etc).Denis Vlasenko
set/save/restore more shared global variables whan call one applet from another
2007-04-12style fixes. No code changesDenis Vlasenko
2007-04-11rename: run_applet_by_name -> run_applet_and_exitDenis Vlasenko
2007-04-11add more convenient defines for [NO]MMU:Denis Vlasenko
"#ifndef BB_NOMMU" is a double negative
2007-04-10random NOMMU fixes. compressed --help really does work for NOMMU! /me happyDenis Vlasenko
2007-04-10make compressed help code NOMMU- and NOFORK-friendly -Denis Vlasenko
no forking anymore, bunzip2 unpack routine now does all it in memory.
2007-04-10make a few struct bb_applet members conditionalDenis Vlasenko
rename sllep_and_die -> xfunc_die make fflush_stdout_and_exit NOFORK-safe fix some buglets found by randomconfig
2007-04-10- very minor shrinkage (-3b)Bernhard Reutner-Fischer
2007-04-09make xfunctions optionally longjump instead of exit.Denis Vlasenko
use it for making NOFORK more practical. touch: make it a NOFORK applet
2007-04-09busybox: fix "<applet>: applet not found" messageDenis Vlasenko
2007-04-09Improve STANDALONE_SHELL. "safe" applets are renamed NOEXEC appletsDenis Vlasenko
and now this fact is recorded in applets.h, not ash.c. Several fixes to "--help + STANDALONE_SHELL" scenarios. function old new delta run_current_applet_and_exit - 355 +355 arith 2064 2073 +9 refresh 1148 1156 +8 getopt32 1068 1073 +5 telnet_main 1510 1514 +4 md5_sha1_sum_main 565 566 +1 xstrtoul_range_sfx 255 251 -4 packed_usage 22523 22514 -9 tryexec 255 203 -52 static.safe_applets 152 - -152 .rodata 131320 131128 -192 run_applet_by_name 869 506 -363 ------------------------------------------------------------------------------ (add/remove: 1/1 grow/shrink: 5/5 up/down: 382/-772) Total: -390 bytes ./busybox ash -c 'i=20000; while test $i != 0; do touch z; i=$((i-1)); done' runs more than twice as fast with STANDALONE_SHELL versus without.
2007-04-09merge busybox.c into applets.cDenis Vlasenko
2007-03-24applets.c, xfunc.c: style cleanupDenis Vlasenko
2007-03-11kill superfluous returns at the end of void functionsDenis Vlasenko
2007-02-03do not put all <applet>_main() declarationsDenis Vlasenko
in busybox.h - this produces false dependencies
2007-01-29preparatory patch for -Wwrite-strings #1Denis Vlasenko
2007-01-24accumulated post-1.4.0 fixesDenis Vlasenko
2006-12-24random tiny size savingsDenis Vlasenko
2006-12-18A bunch of defined(__GLIBC__) added. static-linking warning expandedDenis Vlasenko
2006-11-10wget: fix error message.Denis Vlasenko
Bad: wget http://127.0.0.1:81/fgdg/Makefile Connecting to 127.0.0.1[127.0.0.1]:81 : HTTP/1.0 404 Not Foundror 404 Not Found Good: wget http://127.0.0.1:81/fgdg/Makefile Connecting to 127.0.0.1[127.0.0.1]:81 get: server returned error: HTTP/1.0 404 Not Found nslookup: fix my mistake applets: make Bernhard Fischer <rep.nop@aon.at> happy :)
2006-11-09add && !defined(__UCLIBC__) to static link warning checkDenis Vlasenko
2006-11-01mostly style fixesDenis Vlasenko
2006-10-29"#warning: http://...." doesn't work (gcc thinks that it's a comment!)Denis Vlasenko
2006-10-23__GLIBC__ -> defined(__GLIBC__)Denis Vlasenko
2006-10-20Added compile-time warning for STATIC+GLIBC buildDenis Vlasenko
2006-10-20message string changes, mostly for consistency, also -32 bytes in .rodataDenis Vlasenko
2006-10-16mount: support user mounts if CONFIG_DESKTOPDenis Vlasenko
2006-10-08attempt to regularize atoi mess.Denis Vlasenko
2006-10-05build system overhaulDenis Vlasenko
2006-10-03bb_applet_name -> applet_nameDenis Vlasenko
2006-10-03rename bb_default_error_retval -> xfunc_error_retvalDenis Vlasenko
2006-09-23applets.c: fix indentationDenis Vlasenko
2006-07-26Unbreak allbareconfig. (Todo item: rewrite dependency checker. Yeah, IRob Landley
already have that one, but it moves up the list...)
2006-07-16Cleaup read() and write() variants, plus a couple of new functions likeRob Landley
xlseek and fdlength() for the new mkswap.
2006-06-18skip_whitespace() shouldn't claim its return value is const, it doesn't knowRob Landley
that and callers wind up typecasting it back.
2006-06-02- move #include busybox.h to the very top so we pull in the configBernhard Reutner-Fischer
and eventual platform specific includes in early.
2006-05-03Rich Felker writes:Rob Landley
mistake in a macro caused statement before declaration.
2006-05-01Fixup a build break if ENABLE_SHOW_USAGE switched off. (Fallout from theRob Landley
compressed usage messages patch).
2006-04-27Patch from Dennis Vlasenko to add the option to compress help text.Rob Landley
2006-03-31- add option to suppress the terse usage messages. Saves 6.8k for defconfig:Bernhard Reutner-Fischer
text data bss dec hex filename 861791 11264 1039140 1912195 1d2d83 busybox.have-terse-usage 854799 11264 1039140 1905203 1d1233 busybox.no-terse
2006-03-23- correct typoBernhard Reutner-Fischer
2006-03-06Robert P. Day removed 8 gazillion occurrences of "extern" on functionRob Landley
definitions. (That should only be on prototypes.)
2006-01-15- shared libbusybox.Bernhard Reutner-Fischer
- IMA compilation option (aka IPO, IPA,..) Please holler if i broke something..
2005-12-07Macro was wrong, name(void) vs name(x), and apparently gcc 2.95 cares aboutRob Landley
matching up macro arguments even when the macro substitutes to nothing...
2005-10-28- remove warning about "'static' is not at beginning of declaration".Bernhard Reutner-Fischer
2005-10-12show_usage should use bb_default_error_retval.Rob Landley
2005-09-05Fixes so "make allnoconfig" works again.Rob Landley
The configure system's save function edited out sub-menus that wouldn't be displayed in the current configuration, meaning config.h wouldn't have #udef entries for those symbols, meaning bb_config.h would have the relevant ENABLE_ missing instead of defined to 0. This broke the build. So I fixed it, and then reorganized the applets.c and busybox.c to take away the warnings this revealed (code that would be optimized out was making calls to functions that hadn't been prototyped. So I added an #else case to those #ifdefs to #define the relevant functions to empty macros to placate the warnings. I also reorganized the applets.c code to make adding such an #else case less of a pain (and make the need for prototyping go away by moving the functions up before they were used, and generally wind up with fewer #ifdefs in the code by putting all the logic in one place). This resulted in a huge seeming patch, when most if it just moves code from one place to another without touching it... Upside: make allyesconfig and make allnoconfig should both work now.
2005-09-04General cleanup of command line parsing to allow "busybox" to work as a prefix.Rob Landley
(I.E. any argv[0] that starts with "busybox" winds up in busybox_main().) Added testing/busybox.tests which tests the following permutations: ./busybox ./busybox-suffix ./busybox cat ./busybox-suffix cat ./busybox --help ./busybox-suffix --help ./busybox --help cat ./busybox-suffix --help cat ./busybox --help unknown ./busybox-suffix --help unknown ./unknown Also repair the test suite so ./runtest calls the ".tests" scripts properly. Note: you can now go "busybox busybox busbox ls -l" and it'll take it. The new code is pretty generic. I can block that if anybody can come up with a good reason to...
2005-09-01Busybox should only multiplex based on argv[1] when it's called as "busybox".Rob Landley
Otherwise if you build busybox without a given applet you get the wrong error message when you call it via a symlink to that applet. (You also get the wrong behavior; it tries to use argv[1] as the command name just like busybox does for _any_ unknown, and although I doubt "echo rm -rf *" is common usage there's no upside and enough downside to make me nervous.) This fixes it.