Denis Vlasenko [Wed, 9 May 2007 21:57:23 +0000 (21:57 -0000)]
awk: don't segfault on printf(%*s). Close 1337.
Denis Vlasenko [Wed, 9 May 2007 21:27:15 +0000 (21:27 -0000)]
cryptpw: size reduction
function old new delta
cryptpw_main 198 140 -58
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-58) Total: -58 bytes
Denis Vlasenko [Wed, 9 May 2007 20:38:04 +0000 (20:38 -0000)]
mount: fix incorrect usage of strtok (inadvertently used NULL sometimes).
the change is "for(xxx)...." -> "if(var) for(xxx)...", but my gcc 4.1.2
adds _158 bytes_!! WTF?? 8(
Denis Vlasenko [Wed, 9 May 2007 18:32:54 +0000 (18:32 -0000)]
less: fix case when regex search finds nothing
Denis Vlasenko [Wed, 9 May 2007 12:50:08 +0000 (12:50 -0000)]
tftp: explain "block# 0" codepath; report our decision to bail out to server
if blocksize option doesn't look good (it was a FIXME. +33 bytes code);
make code more readable.
Denis Vlasenko [Tue, 8 May 2007 23:23:35 +0000 (23:23 -0000)]
cryptpw: forgot svn add... how typical of me :(
Denis Vlasenko [Tue, 8 May 2007 23:12:21 +0000 (23:12 -0000)]
tftp: code diet, and I think retransmits were broken.
function old new delta
static.errcode_str - 32 +32
tftp_main 359 345 -14
tftp_bb_error_msg 32 - -32
.rodata 130931 130899 -32
tftp 1720 1558 -162
------------------------------------------------------------------------------
(add/remove: 1/1 grow/shrink: 0/3 up/down: 32/-240) Total: -208 bytes
Denis Vlasenko [Tue, 8 May 2007 17:52:17 +0000 (17:52 -0000)]
cryptpw: new applet (a bit less than 3k added)
(by Thomas Lundquist <lists@zelow.no>)
Denis Vlasenko [Tue, 8 May 2007 17:27:17 +0000 (17:27 -0000)]
tail: fix SEGV on "tail -N"
config system: clarify PREFER_APPLETS/SH_STANDALONE effects in help text
Denis Vlasenko [Sun, 6 May 2007 22:51:52 +0000 (22:51 -0000)]
kill: improve comment
Denis Vlasenko [Sun, 6 May 2007 22:48:55 +0000 (22:48 -0000)]
kill: fix recent breakage of vda, also make code smaller by 21 bytes.
Denis Vlasenko [Sun, 6 May 2007 14:15:42 +0000 (14:15 -0000)]
hush: fix double-free in "echo TEST &"
Denis Vlasenko [Sun, 6 May 2007 01:37:21 +0000 (01:37 -0000)]
svlogd: fix 'SEGV on uninitialized data' and make it honor TERM
Denis Vlasenko [Sat, 5 May 2007 15:11:40 +0000 (15:11 -0000)]
hush: stop generating extra empty pipes in parse stage.
Denis Vlasenko [Sat, 5 May 2007 15:10:52 +0000 (15:10 -0000)]
hush: preparatory patch for removing extra empty pipes generation
in parse stage. No real code change here.
Denis Vlasenko [Fri, 4 May 2007 21:38:14 +0000 (21:38 -0000)]
fix -Werror compile
Denis Vlasenko [Fri, 4 May 2007 21:37:27 +0000 (21:37 -0000)]
hush: fix "while true; do true; done" + ctrl-z
Denis Vlasenko [Fri, 4 May 2007 14:54:36 +0000 (14:54 -0000)]
applets: fix compile-time warning
Denis Vlasenko [Fri, 4 May 2007 13:07:27 +0000 (13:07 -0000)]
hush: add parse tree debug print
Denis Vlasenko [Thu, 3 May 2007 23:39:35 +0000 (23:39 -0000)]
udhcpc: stop deleting our own pidfile if we daemonize.
udhcp[cd]: stop using atexit magic fir pidfile removal.
Denis Vlasenko [Thu, 3 May 2007 22:57:56 +0000 (22:57 -0000)]
awk: guard against empty environment
Denis Vlasenko [Thu, 3 May 2007 22:45:39 +0000 (22:45 -0000)]
hush: fix "true | exit 3; echo $?" bug
Denis Vlasenko [Wed, 2 May 2007 23:39:04 +0000 (23:39 -0000)]
hush: remove env builtin (it is buggy). Add comments
Denis Vlasenko [Wed, 2 May 2007 23:01:32 +0000 (23:01 -0000)]
fix suid config handling
Denis Vlasenko [Wed, 2 May 2007 22:22:23 +0000 (22:22 -0000)]
ifupdown: small optimization (avoid doing useless work if we are
not going to update state file)
Mike Frysinger [Wed, 2 May 2007 22:07:03 +0000 (22:07 -0000)]
allow people to stick custom things into Makefile.local so they dont need to update busybox files while integrating into other build systems (like uClinux-dist)
Denis Vlasenko [Wed, 2 May 2007 22:04:38 +0000 (22:04 -0000)]
ifupdown: mke it possible to use DHCP clients different from udhcp.
Denis Vlasenko [Wed, 2 May 2007 21:40:23 +0000 (21:40 -0000)]
hush: simplify debugging prints a little bit
Denis Vlasenko [Wed, 2 May 2007 21:39:29 +0000 (21:39 -0000)]
klogd: remove dependency on syslogd
Denis Vlasenko [Wed, 2 May 2007 21:38:44 +0000 (21:38 -0000)]
ifupdown: reread state file before rewriting it.
Fixes "ifup started another ifup" state corruption bug.
Patch by Natanael Copa <natanael.copa@gmail.com>.
Denis Vlasenko [Wed, 2 May 2007 15:35:45 +0000 (15:35 -0000)]
hush: add debugging for tracing execution,
add FIXME for 'true | exit 3; echo $?' case
Denis Vlasenko [Wed, 2 May 2007 15:34:47 +0000 (15:34 -0000)]
hush: fix incorrect exitcodes without job control
Denis Vlasenko [Tue, 1 May 2007 20:07:29 +0000 (20:07 -0000)]
test: code size saving, no logic changes
ps: fix warning, make a bit smaller
kill -l: make smaller & know much more signals
function old new delta
get_signum 121 153 +32
kill_main 826 843 +17
get_signame 44 36 -8
signals 252 224 -28
.rodata 131955 131923 -32
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/3 up/down: 49/-68) Total: -19 bytes
Denis Vlasenko [Sun, 29 Apr 2007 23:42:54 +0000 (23:42 -0000)]
ash,kill: use common code for kill applet/builtin
# make bloatcheck
function old new delta
evaltreenr 644 654 +10
evaltree 644 654 +10
parse_conf 1440 1444 +4
dpkg_deb_main 426 429 +3
ed_main 3319 3321 +2
passwd_main 2093 2091 -2
kill_main 830 826 -4
singlemount 4609 4601 -8
find_command 962 954 -8
get_lcm 123 105 -18
.rodata 132243 132147 -96
killcmd 449 120 -329
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 5/7 up/down: 29/-465) Total: -436 bytes
# size busybox_old busybox_unstripped
text data bss dec hex filename
723901 2940 27504 754345 b82a9 busybox_old
723457 2940 27504 753901 b80ed busybox_unstripped
Denis Vlasenko [Sun, 29 Apr 2007 23:38:12 +0000 (23:38 -0000)]
run_parts: do not check path portion of a name for "bad chars".
Needed for ifupdown. Patch by "Gabriel L. Somlo" <somlo@cmu.edu>
Denis Vlasenko [Sat, 28 Apr 2007 22:39:02 +0000 (22:39 -0000)]
ash: fix infinite loop on exit if tty is not there anymore
Denis Vlasenko [Sat, 28 Apr 2007 16:48:27 +0000 (16:48 -0000)]
hush: make job control and interactiveness configurable, part 2
Denis Vlasenko [Sat, 28 Apr 2007 16:48:04 +0000 (16:48 -0000)]
hush: make job control and interactiveness configurable, part 1
Denis Vlasenko [Sat, 28 Apr 2007 16:47:08 +0000 (16:47 -0000)]
hush: make hush properly detect EOF on stdin (even interactive one -
think about pty being destroyed) and exit.
Denis Vlasenko [Sat, 28 Apr 2007 16:45:59 +0000 (16:45 -0000)]
hush: add Ctrl-C handling to nofork case
Denis Vlasenko [Sat, 28 Apr 2007 16:45:22 +0000 (16:45 -0000)]
hush: better signal handling across ctrl-z
Denis Vlasenko [Sat, 28 Apr 2007 16:43:18 +0000 (16:43 -0000)]
hush: fix nofork + ctrl-Z clobbering of globals
Denis Vlasenko [Sat, 28 Apr 2007 16:42:11 +0000 (16:42 -0000)]
hush: add ctrl-Z handling for nofork'ed case
Denis Vlasenko [Sat, 21 Apr 2007 23:28:03 +0000 (23:28 -0000)]
find_root_device: use lstat - don't follow links
Denis Vlasenko [Sat, 21 Apr 2007 23:27:30 +0000 (23:27 -0000)]
hush: make Ctrl-Z work (at least sometimes)
Denis Vlasenko [Sat, 21 Apr 2007 17:28:51 +0000 (17:28 -0000)]
hust: add a comment
Denis Vlasenko [Sat, 21 Apr 2007 13:42:52 +0000 (13:42 -0000)]
hush: fix more backgrounding bugs. Plenty of them remains still.
Denis Vlasenko [Sat, 21 Apr 2007 10:01:14 +0000 (10:01 -0000)]
hush: explain why "pipe; exit $?" doesn't show correct exitcode
Denis Vlasenko [Sat, 21 Apr 2007 10:00:01 +0000 (10:00 -0000)]
hush: do not print message if killed by signal;
move some functions up before main()
Denis Vlasenko [Sat, 21 Apr 2007 00:03:36 +0000 (00:03 -0000)]
hush: begin fixing non-functional job control
Denis Vlasenko [Fri, 20 Apr 2007 08:35:45 +0000 (08:35 -0000)]
hush: small code shrink; style fixes
Denis Vlasenko [Thu, 19 Apr 2007 20:16:14 +0000 (20:16 -0000)]
dd: NOEXEC fix
dd: correct wrongly capitalized constant
Denis Vlasenko [Thu, 19 Apr 2007 20:08:19 +0000 (20:08 -0000)]
dd: fix skip= parse error (spotted by Dirk Clemens <develop@cle-mens.de>)
Denis Vlasenko [Thu, 19 Apr 2007 19:55:54 +0000 (19:55 -0000)]
stty: fix option parsing bug (spotted by Sascha Hauer <s.hauer@pengutronix.de>)
Denis Vlasenko [Thu, 19 Apr 2007 17:26:34 +0000 (17:26 -0000)]
doc: add README on shell job control
Denis Vlasenko [Thu, 19 Apr 2007 14:47:11 +0000 (14:47 -0000)]
procps: remove all global variables
text data bss dec hex filename
1462 14 24 1500 5dc busybox.t2/procps/ps.o
1484 0 0 1484 5cc busybox.t3/procps/ps.o
3122 0 252 3374 d2e busybox.t1/procps/top.o
3117 0 0 3117 c2d busybox.t3/procps/top.o
Denis Vlasenko [Thu, 19 Apr 2007 14:46:14 +0000 (14:46 -0000)]
ps: add -o tty and -o rss support
1373 14 24 1411 583 busybox.t1/procps/ps.o
1462 14 24 1500 5dc busybox.t2/procps/ps.o
Denis Vlasenko [Thu, 19 Apr 2007 00:09:34 +0000 (00:09 -0000)]
loop device code: readability improvement
Denis Vlasenko [Wed, 18 Apr 2007 21:40:30 +0000 (21:40 -0000)]
switch_root: error_msg -> perror_msg, reduce by 22 bytes while at it.
Denis Vlasenko [Wed, 18 Apr 2007 21:14:46 +0000 (21:14 -0000)]
"Unify base64 handling" is done, remove TODO
Denis Vlasenko [Wed, 18 Apr 2007 21:00:21 +0000 (21:00 -0000)]
make "busybox" w/o args work again, and save 10 bytes in the process.
Denis Vlasenko [Wed, 18 Apr 2007 17:21:28 +0000 (17:21 -0000)]
hush: remove stray semicolon (should change nothing)
Denis Vlasenko [Mon, 16 Apr 2007 23:23:33 +0000 (23:23 -0000)]
ether-wake: save a few more bytes of code
Denis Vlasenko [Mon, 16 Apr 2007 23:16:37 +0000 (23:16 -0000)]
ether-wake: close bug 1317. Reorder fuctions to avoid
forward refs while at it
Denis Vlasenko [Mon, 16 Apr 2007 22:34:39 +0000 (22:34 -0000)]
shells: remove few statics and duplicated code
(much more of the same remains, alas)
function old new delta
doset 330 332 +2
warn 53 51 -2
onecommand 463 461 -2
ioecho 40 38 -2
forkexec 1412 1410 -2
err 81 79 -2
setdash 59 56 -3
flag 4 - -4
msh_main 1389 1384 -5
eval 388 381 -7
subgetc 759 747 -12
static.local 14 - -14
b_adduint 70 52 -18
------------------------------------------------------------------------------
(add/remove: 0/2 grow/shrink: 1/10 up/down: 2/-73) Total: -71 bytes
Denis Vlasenko [Mon, 16 Apr 2007 22:32:04 +0000 (22:32 -0000)]
style fixes, no code changes
Denis Vlasenko [Mon, 16 Apr 2007 20:55:27 +0000 (20:55 -0000)]
applet.c: ruid is needed only if FEATURE_SUID=y
Bernhard Reutner-Fischer [Mon, 16 Apr 2007 18:25:46 +0000 (18:25 -0000)]
- we unconditionally need ruid. Fixes build error in line 334
Bernhard Reutner-Fischer [Mon, 16 Apr 2007 14:56:01 +0000 (14:56 -0000)]
- fix compilation when ENABLE_FEATURE_IP_RULE was off
Bernhard Reutner-Fischer [Mon, 16 Apr 2007 12:21:05 +0000 (12:21 -0000)]
- fix compilation if ENABLE_FEATURE_DD_IBS_OBS is off
Denis Vlasenko [Sun, 15 Apr 2007 13:21:01 +0000 (13:21 -0000)]
lineedit: state->hist_file doesn't exist if !FEATURE_EDITING_SAVEHISTORY,
#ifdef it out
Denis Vlasenko [Sun, 15 Apr 2007 11:50:41 +0000 (11:50 -0000)]
doc: fix code example which may provoke warning
Denis Vlasenko [Sun, 15 Apr 2007 11:48:27 +0000 (11:48 -0000)]
e2fsprogs: stop using statics in chattr. Minor code shrinkage (-130 bytes)
Denis Vlasenko [Sun, 15 Apr 2007 08:43:23 +0000 (08:43 -0000)]
deluser: add optional support for removing users from groups
(by Tito <farmatito@tiscali.it>)
Denis Vlasenko [Sun, 15 Apr 2007 08:39:39 +0000 (08:39 -0000)]
update style-guide.txt
Denis Vlasenko [Sun, 15 Apr 2007 08:38:50 +0000 (08:38 -0000)]
xargs: simplify word list management
Denis Vlasenko [Sat, 14 Apr 2007 15:08:41 +0000 (15:08 -0000)]
msh: style fixes
shell/README - a place to record things about busybox shells
Denis Vlasenko [Sat, 14 Apr 2007 13:22:09 +0000 (13:22 -0000)]
lineedit: nuke two unused variables and code which sets them
applets: do not even try to read config if run by real root
msh: use named constants (O_RDONLY etc) in open() instead of magic numbers,
other minor code size reduction.
Denis Vlasenko [Sat, 14 Apr 2007 11:16:29 +0000 (11:16 -0000)]
lash: recognize and use NOFORK applets
lash,hush: fix kill buglet (didn't properly recognize ESRCH)
Denis Vlasenko [Sat, 14 Apr 2007 10:10:40 +0000 (10:10 -0000)]
lineedit: do not try to open NULL history file
Denis Vlasenko [Sat, 14 Apr 2007 10:09:57 +0000 (10:09 -0000)]
hush: use NOFORK applets as appropriate. Net reduction of code size.
Denis Vlasenko [Fri, 13 Apr 2007 23:59:52 +0000 (23:59 -0000)]
teach find_root_device to deal with /dev/ subdirs
(by "Kirill K. Smirnov" <lich@math.spbu.ru>)
Denis Vlasenko [Fri, 13 Apr 2007 23:22:58 +0000 (23:22 -0000)]
dpkg: use nitfields which are a bit closer to typical ushort.
Code size -800.
Denis Vlasenko [Fri, 13 Apr 2007 23:22:00 +0000 (23:22 -0000)]
style fixes
Denis Vlasenko [Fri, 13 Apr 2007 22:07:21 +0000 (22:07 -0000)]
sourse_route_list -> source_route_list
Denis Vlasenko [Fri, 13 Apr 2007 21:26:20 +0000 (21:26 -0000)]
make xsocket die with address family printed (if VERBOSE_RESOLUTION_ERRORS=y)
Denis Vlasenko [Fri, 13 Apr 2007 19:56:56 +0000 (19:56 -0000)]
hush: more style fixes.
Denis Vlasenko [Fri, 13 Apr 2007 19:55:50 +0000 (19:55 -0000)]
hush: comment out and replace bug in set_local_var:
- if (value == 0 && ++value == 0) {
+ /*if (value == 0 && ++value == 0) ??? -vda */
+ if (value == NULL || value[1] == '\0') {
Style fixes.
Denis Vlasenko [Fri, 13 Apr 2007 19:44:22 +0000 (19:44 -0000)]
shell/: add SUSv3 doc for fast & easy reference
Denis Vlasenko [Fri, 13 Apr 2007 16:32:26 +0000 (16:32 -0000)]
fix typo in comment
Denis Vlasenko [Fri, 13 Apr 2007 10:00:12 +0000 (10:00 -0000)]
find: add support for -delete, -path (by Natanael Copa)
Denis Vlasenko [Thu, 12 Apr 2007 21:20:25 +0000 (21:20 -0000)]
sed: fix escaped newlines in -f; fix multiple -f and -e
(broke when getopt32 was fixed to not reverse the list)
Denis Vlasenko [Thu, 12 Apr 2007 20:33:01 +0000 (20:33 -0000)]
login: fixing my brainfart: xspawn(t_argv) <- was using argv!
Mike Frysinger [Thu, 12 Apr 2007 18:29:27 +0000 (18:29 -0000)]
make sure we free the grep data as well
Denis Vlasenko [Thu, 12 Apr 2007 17:10:45 +0000 (17:10 -0000)]
lash: "forking" applets are actually can be treated the same way as "non-forked".
Also save a bit of space on trailing NULL array elements.
Denis Vlasenko [Thu, 12 Apr 2007 17:08:53 +0000 (17:08 -0000)]
fix realloc-of-non-malloced pointer, and reduce size while at it
Denis Vlasenko [Thu, 12 Apr 2007 12:31:02 +0000 (12:31 -0000)]
login: remove setpgrp call (makes it work from shell prompt again).
login: sanitize stdio descriptors (we are suid, need to be careful!)
shrink login and set_environment by ~100 bytes.
Denis Vlasenko [Thu, 12 Apr 2007 12:27:32 +0000 (12:27 -0000)]
pass a copy of argv[i] to NOFORK applets (they may permute it etc).
set/save/restore more shared global variables whan call one applet from another
Bernhard Reutner-Fischer [Thu, 12 Apr 2007 11:36:56 +0000 (11:36 -0000)]
- shrink iproute a bit (-200 bytes). Untested
Bernhard Reutner-Fischer [Thu, 12 Apr 2007 11:34:39 +0000 (11:34 -0000)]
- add xsendto and use where appropriate; shrink iplink; sanitize libiproute a bit.
-916 byte