Commit Graph

278 Commits

Author SHA1 Message Date
Denis Vlasenko
990d0f63ee Replace index_in_[sub]str_array with index_in_[sub]strings,
which scans thru "abc\0def\0123\0\0" type strings. Saves 250 bytes.

   text    data     bss     dec     hex filename
 781266    1328   11844  794438   c1f46 busybox_old
 781010    1328   11844  794182   c1e46 busybox_unstripped
2007-07-24 15:54:42 +00:00
Denis Vlasenko
4652daace9 grep: implement -m MAX_MATCHES; fix help text
grep_file                                            771     822     +51
packed_usage                                       22573   22610     +37
.rodata                                           128058  128090     +32
grep_main                                            842     853     +11
max_matches                                            -       4      +4
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 4/0 up/down: 135/0)             Total: 135 bytes
2007-07-15 12:39:08 +00:00
Denis Vlasenko
8d5aa870a6 grep: fix buglets with context printing
print_line                                           152     170     +18
did_print_line                                         -       1      +1
grep_file                                            788     771     -17
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 1/1 up/down: 19/-17)              Total: 2 bytes
   text    data     bss     dec     hex filename
 673368    2740   13968  690076   a879c busybox_old
 673368    2740   13968  690076   a879c busybox_unstripped
2007-07-15 12:38:18 +00:00
Denis Vlasenko
4b9b0ced30 find: fix build failure on certain configs
(found by Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn@axis.com>)
2007-07-01 17:35:17 +00:00
Denis Vlasenko
99fcc62523 find: style fix 2007-07-01 17:29:44 +00:00
Denis Vlasenko
dc757aa16c introduce and use bb_basename()
function                                             old     new   delta
bb_basename                                            -      26     +26
sv_main                                             1226    1225      -1
passwd_main                                         1985    1983      -2
showdirs                                             482     478      -4
sendCgi                                             1811    1807      -4
make_device                                         1354    1350      -4
handleIncoming                                      2443    2439      -4
func_name                                             82      78      -4
service_name                                        2292    2285      -7
main                                                 909     901      -8
cmp_main                                             555     547      -8
test_main                                            434     422     -12
act                                                  228     216     -12
find_pair                                            180     164     -16
rmmod_main                                           298     280     -18
find_pid_by_name                                     156     134     -22
modprobe_main                                       1606    1576     -30
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/16 up/down: 26/-156)         Total: -130 bytes
   text    data     bss     dec     hex filename
 734933    3028   14400  752361   b7ae9 busybox_old
 734801    3028   14400  752229   b7a65 busybox_unstripped
2007-06-30 08:04:05 +00:00
Denis Vlasenko
a19faf8bb7 find: -context support for SELinux (KaiGai Kohei <kaigai@kaigai.gr.jp>)
find: make it a bit smaller

function                                             old     new   delta
.rodata                                           129018  129050     +32
parse_params                                        1509    1346    -163
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/1 up/down: 32/-163)          Total: -131 bytes
2007-06-19 22:22:57 +00:00
Denis Vlasenko
53a0e97196 find: make -size match GNU find 2007-06-16 00:30:52 +00:00
Denis Vlasenko
b941129ccb find: add conditional support for -maxdepth and -regex
(needed for Linux 2.6.22-rc4 build)

-maxdepth:
# size busybox_old busybox_unstripped
   text    data     bss     dec     hex filename
 675622    2792   15728  694142   a977e busybox_old
 675770    2792   15728  694290   a9812 busybox_unstripped

-regex:
# size busybox_old busybox_unstripped
   text    data     bss     dec     hex filename
 675770    2792   15728  694290   a9812 busybox_old
 675894    2792   15728  694414   a988e busybox_unstripped
2007-06-15 23:43:11 +00:00
Denis Vlasenko
9acfed2d14 grep: selection done by FEATURE_GREP_EGREP_ALIAS was broken, fix.
(Maxime Bizon <mbizon@freebox.fr>  (Freebox))
2007-06-08 15:41:27 +00:00
Denis Vlasenko
b6adbf1be2 usage.c: remove reference to busybox.h
*: s/include "busybox.h"/include "libbb.h"
2007-05-26 19:00:18 +00:00
Denis Vlasenko
58394b1e29 xargs: simplify word list management 2007-04-15 08:38:50 +00:00
Denis Vlasenko
f5294e1f4c hush: use NOFORK applets as appropriate. Net reduction of code size. 2007-04-14 10:09:57 +00:00
Denis Vlasenko
62f0479cf1 find: add support for -delete, -path (by Natanael Copa) 2007-04-13 10:00:12 +00:00
Mike Frysinger
3a62a737f7 make sure we free the grep data as well 2007-04-12 18:29:27 +00:00
Denis Vlasenko
51742f4bb0 style fixes. No code changes 2007-04-12 00:32:05 +00:00
Denis Vlasenko
8905496444 xargs: fix my brain fart (resulted in memory leak) 2007-04-10 21:41:16 +00:00
Denis Vlasenko
99912ca733 audit small applets and mark some of them as NOFORK.
Put big scary warnings in relevant places.
2007-04-10 15:43:37 +00:00
Denis Vlasenko
cd7001f705 factor out NOFORK/NOEXEC code from find. Use it for xargs too. 2007-04-09 21:32:30 +00:00
Denis Vlasenko
1b4b2cb20e xargs: shrink code, ~80 bytes
applets.h: +#undef APPLET_NOEXEC
2007-04-09 21:30:53 +00:00
Denis Vlasenko
7e754f12d3 Implement first instance of NOFORK applet - echo
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
2007-04-09 13:04:50 +00:00
Denis Vlasenko
b04b4357ff find: fix -prune more. Add big comment about it. 2007-04-08 11:10:43 +00:00
Denis Vlasenko
bbd695d801 find: fix handling of -prune
recursive_actions: uppercase flag constants
2007-04-08 10:52:28 +00:00
Bernhard Reutner-Fischer
6d79dd66cb - size and prune were mixed up 2007-04-05 09:40:12 +00:00
Denis Vlasenko
7d6c9296e7 find: missed 'ststic' on const data 2007-04-05 00:35:43 +00:00
Denis Vlasenko
56fce00fc7 find: un-DESKTOPize (Kai Schwenzfeier <niteblade@gmx.net>)
find: -group, -depth (Natanael Copa <natanael.copa@gmail.com>)
find: make constant array static, declare PARM_xx constants with enum
2007-04-04 23:41:35 +00:00
Bernhard Reutner-Fischer
febe3c4211 - sed -e "s/char[[:space:]]*\*[[:space:]]*argv\[\]/char **argv/g" 2007-04-04 20:52:03 +00:00
Bernhard Reutner-Fischer
a87ed2c716 - use index_in_str_array also for find_main
text    data     bss     dec     hex filename
   2605       1      12    2618     a3a find.o.r18274
   2602       1      12    2615     a37 find.o.r18275
2007-03-29 13:56:49 +00:00
Bernhard Reutner-Fischer
307d27df4f - remove bloated switch statement.
text    data     bss     dec     hex filename
   2706       1      12    2719     a9f find.o.r18273
   2605       1      12    2618     a3a find.o.r18274
2007-03-29 13:56:02 +00:00
Bernhard Reutner-Fischer
557b458767 - implement a TODO: Use index_in_str_array in parse_params
text    data     bss     dec     hex filename
   2771       1      12    2784     ae0 find.o.r18272
   2749       1      12    2762     aca find.o.-try-switch
   2706       1      12    2719     a9f find.o.r18273
2007-03-29 13:55:17 +00:00
Bernhard Reutner-Fischer
32773aca55 - Purely cosmetic type fiddling 2007-03-29 13:54:17 +00:00
Bernhard Reutner-Fischer
3e816c1252 - fold recurse, depthFirst and dereference params into one param flags.
Minor size improvement (-16b for size, -24b according to bloat-o-meter).
2007-03-29 10:30:50 +00:00
Denis Vlasenko
f8ea0f3a66 grep: "implement" -a and -I by ignoring them 2007-02-25 02:38:54 +00:00
Denis Vlasenko
385304d449 grep: implement -w 2007-02-25 02:38:20 +00:00
Denis Vlasenko
4222ae440a ash: replace xstrdup (shell shall not die)
grep: fix mis-indented block
2007-02-25 02:37:49 +00:00
Denis Vlasenko
b292264bfd find: fix -not support 2007-02-06 17:38:29 +00:00
Denis Vlasenko
1d76f439da EXEC_PREFER_APPLETS support by Gabriel L. Somlo <somlo@cmu.edu> 2007-02-06 01:20:12 +00:00
Bernhard Reutner-Fischer
7154b99c89 - improve wording 2007-02-04 17:24:53 +00:00
Bernhard Reutner-Fischer
01986e9c6f - remove duplicate menu entry 2007-02-04 17:21:55 +00:00
Denis Vlasenko
cf787cf3a5 find: support for ! 2007-02-04 17:11:25 +00:00
Bernhard Reutner-Fischer
10b7996c1b - strip 12 bytes off by using a smaller type for need_print.
- add TODO to switch this applet to index_in_str_array()
2007-02-04 16:09:04 +00:00
Denis Vlasenko
06af216528 suppress warnings about easch <applet>_main() having
no preceding prototype
2007-02-03 17:28:39 +00:00
Denis Vlasenko
4c97863109 assorted fixes for bugs found with randomconfig 2007-02-03 03:31:13 +00:00
Denis Vlasenko
a100707c04 find -user support by Natanael Copa <natanael.copa@gmail.com> 2007-02-02 01:17:52 +00:00
Denis Vlasenko
ab2aea4447 preparatory patch for -Wwrite-strings #4 2007-01-29 22:51:58 +00:00
Denis Vlasenko
b6aae0f381 preparatory patch for -Wwrite-strings #2 2007-01-29 22:51:25 +00:00
Denis Vlasenko
434ad5456b fix warning in find.c 2007-01-27 13:45:17 +00:00
Denis Vlasenko
fc7f92253a find: fix -mtime, -mmin, -perm (+ add symbolic perm handling)
chmod: better name for a variable
2007-01-26 23:00:05 +00:00
Denis Vlasenko
769d1e05e6 fix warning from needlessly-global functions 2007-01-22 23:04:27 +00:00
Denis Vlasenko
c9d34da375 find: fix misplaced #else (fix by Harald Kuthe <trhoudini@hotmail.com>) 2007-01-03 03:15:58 +00:00