aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* bb_full_fd_action: remove potential xmalloc from NOFORK pathDenis Vlasenko2007-04-1120-162/+183
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cat: stop using stdio.h opens libbb: introduce & use open[3]_or_warn function old new delta open3_or_warn - 54 +54 bb_cat 115 144 +29 open_or_warn - 25 +25 unlzma 2404 2412 +8 chattr_main 334 339 +5 xstrtoul_range_sfx 251 255 +4 telnet_main 1514 1510 -4 static.opt 4 - -4 qgravechar 122 118 -4 fuser_add_pid 61 54 -7 fuser_add_inode 154 147 -7 writeFileToTarball 1542 1534 -8 refresh 1156 1148 -8 do_show 856 846 -10 read_leases 212 200 -12 setup_redirects 236 222 -14 iproute_list_or_flush 1582 1568 -14 read_config 427 411 -16 write_leases 284 264 -20 hash_file 338 318 -20 copy_file 1760 1740 -20 do_iproute 2610 2588 -22 bb_full_fd_action 320 269 -51 open_to_or_warn 103 49 -54 fuser_main 1660 1596 -64 .rodata 131160 131096 -64 ------------------------------------------------------------------------------ (add/remove: 2/1 grow/shrink: 4/19 up/down: 125/-423) Total: -298 bytes
* ash: fix kill -l (by Mats Erik Andersson <mats.andersson64@comhem.se>)Denis Vlasenko2007-04-111-1/+1
|
* fix typo in docDenis Vlasenko2007-04-111-1/+1
|
* style fixes, no code changes.Denis Vlasenko2007-04-116-33/+37
|
* rename: run_applet_by_name -> run_applet_and_exitDenis Vlasenko2007-04-118-11/+11
|
* - set the scope properly. Thanks to Jean Wolter, who wrote:Bernhard Reutner-Fischer2007-04-111-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | busybox ip and the original ip utility behave differently when setting the following route (verified with ip route show using the original ip utility): ip route add 10.0.0.138 dev eth0 Result for busybox ip: # ip route add 10.0.0.138 dev eth0 # /usr/local/bin/ip route show 10.0.0.138 dev eth0 Result for ip: # /usr/local/bin/ip route add 10.0.0.138 dev eth0 # /usr/local/bin/ip route show 10.0.0.138 dev eth0 scope link A following "ip route add default via 10.0.0.138" fails for busybox ip, since the kernel can not find a route to 10.0.0.138 (it replies with Network is unreachable). The reasons seems to be that the original ip utility explicitly sets the scope after parsing all parameters. This is missing in busybox, the attached patch fixes this. I took this from the original iproute sources and removed some variables, which are not needed for busybox.
* Add NOFORK/NOEXEC documentation.Denis Vlasenko2007-04-111-0/+70
|
* fix typo in commentDenis Vlasenko2007-04-111-2/+2
|
* fix misplaced #ifDenis Vlasenko2007-04-111-1/+1
|
* add more convenient defines for [NO]MMU:Denis Vlasenko2007-04-116-27/+30
| | | | "#ifndef BB_NOMMU" is a double negative
* random NOMMU fixes. compressed --help really does work for NOMMU! /me happyDenis Vlasenko2007-04-105-9/+28
|
* Rename two config options:Denis Vlasenko2007-04-1017-40/+67
| | | | | | | FEATURE_SH_STANDALONE_SHELL => FEATURE_SH_STANDALONE FEATURE_EXEC_PREFER_APPLETS => FEATURE_PREFER_APPLETS Make SH_STANDALONE depend on PREFER_APPLETS. getopt.c: more randomconfig-induced fixes
* xargs: fix my brain fart (resulted in memory leak)Denis Vlasenko2007-04-101-7/+6
|
* make compressed help code NOMMU- and NOFORK-friendly -Denis Vlasenko2007-04-1011-170/+134
| | | | no forking anymore, bunzip2 unpack routine now does all it in memory.
* make a few struct bb_applet members conditionalDenis Vlasenko2007-04-1018-83/+114
| | | | | | rename sllep_and_die -> xfunc_die make fflush_stdout_and_exit NOFORK-safe fix some buglets found by randomconfig
* - mv ip*_main into ip.c; use a dispatcher to save on needless duplication.Bernhard Reutner-Fischer2007-04-107-136/+51
| | | | Saves a minor 12b.
* - use enum for the OPs as suggested by vda. No obj-code changes.Bernhard Reutner-Fischer2007-04-101-14/+18
|
* - forgot this hunk that corrects the usage text of ipBernhard Reutner-Fischer2007-04-101-3/+15
|
* - rewrite the ip applet to be less bloatyBernhard Reutner-Fischer2007-04-102-23/+49
| | | | | | | | - mark libiproute's matches() as deprecated. Convert to index_in_(sub)str_array()! text data bss dec hex filename 314 0 0 314 13a ip.o.orig 200 0 0 200 c8 ip.o Using a smallint for the key would save another byte.
* - add ATTRIBUTE_DEPRECATED for functions that should be removed in the future.Bernhard Reutner-Fischer2007-04-101-0/+2
| | | | This is ment to provide means to point at cruft marked for cleanup.
* one-liner: fix indentationDenis Vlasenko2007-04-101-1/+1
|
* bunzip2: big style cleanup. No code changes apart from one s/write/safe_write/Denis Vlasenko2007-04-101-190/+208
| | | | (verified with objdump).
* echo: fix regression ("echo" with no arguments didn't print newline.Denis Vlasenko2007-04-101-8/+11
| | | | | | | | | | | | | | | | | | | | | | | echo: use fputs if no options are given. Code growth ~15 bytes. Old: # time ./busybox find $bigdir -exec echo {} \; >/dev/null real 0m2.038s user 0m0.761s sys 0m0.953s New: # time ./busybox find $bigdir -exec echo {} \; >/dev/null real 0m1.781s user 0m0.781s sys 0m0.939s For comparison: without NOFORK: # time find $bigdir -exec echo {} \; >/dev/null real 1m51.129s user 0m38.442s sys 1m3.350s
* audit small applets and mark some of them as NOFORK.Denis Vlasenko2007-04-1041-128/+173
| | | | | Put big scary warnings in relevant places.
* style fixes. No code changes.Denis Vlasenko2007-04-1013-31/+30
|
* - very minor shrinkage (-3b)Bernhard Reutner-Fischer2007-04-102-5/+7
|
* - use skip_non_whitespace() where appropriateBernhard Reutner-Fischer2007-04-103-7/+3
|
* - add prototype for str_tolower()Bernhard Reutner-Fischer2007-04-101-0/+2
|
* - add libbb function str_tolower to convert a string to lowercase.Bernhard Reutner-Fischer2007-04-103-56/+63
| | | | - shrink wget a bit
* make xfunctions optionally longjump instead of exit.Denis Vlasenko2007-04-0910-24/+39
| | | | | use it for making NOFORK more practical. touch: make it a NOFORK applet
* factor out NOFORK/NOEXEC code from find. Use it for xargs too.Denis Vlasenko2007-04-094-68/+76
|
* xargs: shrink code, ~80 bytesDenis Vlasenko2007-04-092-77/+80
| | | | applets.h: +#undef APPLET_NOEXEC
* wait4pid: if passed with pid < 0, do not set errno - it is already set by exec!Denis Vlasenko2007-04-092-34/+33
|
* Implement first instance of NOFORK applet - echoDenis Vlasenko2007-04-096-50/+77
| | | | | | | | | find: use NOFORK/NOEXEC; small -exec buglet also eliminated vfork_daemon_rexec: honor PREFER_APPLETS echo: small size improvements find -exec echo {} \; with PREFER_APPLETS=y runs 4 times faster
* busybox: fix "<applet>: applet not found" messageDenis Vlasenko2007-04-091-1/+5
|
* Improve STANDALONE_SHELL. "safe" applets are renamed NOEXEC appletsDenis Vlasenko2007-04-095-93/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* msh: smallish code shrinkage; cosmeticsDenis Vlasenko2007-04-091-68/+58
|
* merge busybox.c into applets.cDenis Vlasenko2007-04-096-209/+199
|
* applets.h: de-obfuscateDenis Vlasenko2007-04-081-26/+35
|
* add some missed statics on constant objects.Denis Vlasenko2007-04-0810-35/+40
| | | | | | | | | | fix few #ifndef ENABLE_xxx # size busybox_old busybox_unstripped text data bss dec hex filename 677152 2920 18208 698280 aa7a8 busybox_old 676420 2920 18208 697548 aa4cc busybox_unstripped
* adding small script, mostly for documentational purposesDenis Vlasenko2007-04-081-0/+9
|
* getopt32: fix llist_t options ordering. llist_rev is not unused.Denis Vlasenko2007-04-0810-55/+53
| | | | | | | | | | | | | | | | function old new delta tar_main 705 695 -10 sort_main 928 918 -10 decode_format_string 886 876 -10 run_parts_main 197 185 -12 ps_main 513 500 -13 wget_main 2764 2750 -14 awk_main 1014 1000 -14 od_main 2886 2866 -20 llist_rev 25 - -25 ------------------------------------------------------------------------------ (add/remove: 0/1 grow/shrink: 0/8 up/down: 0/-128) Total: -128 bytes
* find: fix -prune more. Add big comment about it.Denis Vlasenko2007-04-081-7/+21
|
* find: fix handling of -pruneDenis Vlasenko2007-04-089-59/+71
| | | | recursive_actions: uppercase flag constants
* busybox.net: micro fixDenis Vlasenko2007-04-071-1/+0
|
* busybox.net: update "screenshot"Denis Vlasenko2007-04-071-35/+39
|
* getopt: use getopt32 for option parsing - inspired by patch by Denis Vlasenko2007-04-071-195/+158
| | | | | | | | | | | | | | | | | | | | | | Mats Erik Andersson <mats.andersson64@comhem.se> function old new delta getopt_main 809 810 +1 static.BUFFER 4 - -4 shell 8 4 -4 quote 4 - -4 quiet_output 4 - -4 quiet_errors 4 - -4 long_options_nr 4 - -4 long_options_length 4 - -4 long_options 388 384 -4 alternative 4 - -4 shortopts 15 - -15 normalize 243 220 -23 .rodata 131832 131800 -32 add_longopt 200 - -200 ------------------------------------------------------------------------------ (add/remove: 0/9 grow/shrink: 1/4 up/down: 1/-306) Total: -305 bytes
* docs: "how to add a patch"Denis Vlasenko2007-04-072-1/+17
|
* libiproute: audit callgraph, shortcut error paths into die() functions.Denis Vlasenko2007-04-0711-319/+247
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Kill a few statics, made other globals smaller: oneline is smallint, _SL_ is char function old new delta print_tunnel 693 731 +38 print_route 1775 1777 +2 print_addrinfo 1495 1497 +2 ipaddr_list_or_flush 2826 2828 +2 oneline 4 1 -3 _SL_ 4 1 -3 ipaddr_modify 1476 1472 -4 parse_address 124 119 -5 ip_parse_common_args 429 423 -6 on_off 53 46 -7 do_del_ioctl 113 106 -7 do_add_ioctl 120 113 -7 do_show 864 856 -8 iprule_list 157 148 -9 do_iptunnel 310 299 -11 do_add 143 126 -17 get_ctl_fd 95 76 -19 set_address 108 84 -24 ip_main 351 323 -28 static.ifr 32 - -32 parse_args 1992 1949 -43 iproute_list_or_flush 1673 1582 -91 do_iplink 1583 1485 -98 filter 280 - -280 ------------------------------------------------------------------------------ (add/remove: 0/2 grow/shrink: 4/18 up/down: 44/-702) Total: -658 bytes
* udhcp: MAC_BCAST_ADDR and blank_chaddr are in fact constant, move to rodata.Denis Vlasenko2007-04-079-156/+169
| | | | | | | | | | | | | | | | | | | | | | a few global variables reduced to smallints function old new delta add_lease 75 227 +152 static.blank_chaddr - 16 +16 MAC_BCAST_ADDR - 6 +6 sockfd 4 8 +4 udhcp_run_script 1153 1155 +2 state 8 5 -3 listen_mode 4 1 -3 perform_release 152 148 -4 fd 8 4 -4 blank_chaddr 16 - -16 udhcpc_main 2518 2497 -21 .rodata 131864 131832 -32 oldest_expired_lease 61 - -61 clear_lease 127 - -127 ------------------------------------------------------------------------------ (add/remove: 2/3 grow/shrink: 3/6 up/down: 180/-271) Total: -91 bytes