Denis Vlasenko
d18f52bd18
actually add bb_qsort.c
...
*: s/Denis/Denys/
2008-03-02 12:53:15 +00:00
Denis Vlasenko
574f2f4394
*: add optimization barrier to all "G trick" locations
2008-02-27 18:41:59 +00:00
Denis Vlasenko
394eebed66
lpd: spool mode added by Vladimir
...
lpr: more robust error reporting
*: introduce and use xchroot
libbb: full_read/write now will report partial data counts prior to error
isdirectory.c: style fixes
lpd_main 249 486 +237
xchroot - 29 +29
get_response_or_say_and_die 110 139 +29
full_write 52 60 +8
full_read 55 63 +8
static.newline 1 - -1
switch_root_main 404 400 -4
chpst_main 1089 1079 -10
getopt32 1370 1359 -11
chroot_main 115 101 -14
------------------------------------------------------------------------------
(add/remove: 1/1 grow/shrink: 4/4 up/down: 311/-40) Total: 271 bytes
text data bss dec hex filename
798472 728 7484 806684 c4f1c busybox_old
798775 728 7484 806987 c504b busybox_unstripped
2008-02-25 20:30:24 +00:00
Denis Vlasenko
cb448fe01b
libbb: introduce and use xrename and rename_or_warn.
2008-02-17 14:28:53 +00:00
Denis Vlasenko
25591c322c
libbb: introduce bb_signals and bb_signals_recursive,
...
which sets same handler for many signals. sig_catch is nuked
(bb_signals_recursive is more descriptive name).
*: use them as appropriate.
function old new delta
bb_signals_recursive - 95 +95
bb_signals - 52 +52
run_command 258 273 +15
svlogd_main 1368 1377 +9
runsv_main 1746 1752 +6
runsvdir_main 1643 1646 +3
UNSPEC_print 64 66 +2
time_main 1128 1127 -1
...
resize_main 246 210 -36
sig_catch 63 - -63
set_fatal_sighandler 85 14 -71
------------------------------------------------------------------------------
(add/remove: 2/1 grow/shrink: 5/24 up/down: 182/-548) Total: -366 bytes
2008-02-16 22:58:56 +00:00
Denis Vlasenko
3718832a15
*: more readable handling of pipe fds. No code changes.
2008-02-16 13:20:56 +00:00
Denis Vlasenko
847fa779af
*: tidy up usage of char **environ
2008-01-28 22:45:43 +00:00
Denis Vlasenko
fb0eba706c
libbb: introduce and use safe_waitpid (loops in EINTR)
...
*: use more approproate (shorter) versions of wait()
function old new delta
safe_waitpid - 48 +48
wait_any_nohang - 17 +17
send_tree 365 369 +4
processorstop 432 435 +3
text_yank 110 108 -2
make_human_readable_str 202 200 -2
crond_main 1368 1366 -2
handle_sigchld 49 43 -6
reapchild 166 159 -7
custom 260 250 -10
checkscript 191 177 -14
wait_nohang 17 - -17
wait_pid 43 - -43
------------------------------------------------------------------------------
(add/remove: 2/2 grow/shrink: 2/7 up/down: 72/-103) Total: -31 bytes
2008-01-02 19:55:04 +00:00
Denis Vlasenko
6bef3d1d22
fbset: fix buglet where we were using wrong pointer
...
readahead: stop using stdio.h
*: style fixes
2007-11-06 03:05:54 +00:00
Denis Vlasenko
7ab5e3dfcd
svlogd: fix compat problem: svlogd -tt should timestanp stderr too
2007-10-22 15:53:34 +00:00
Denis Vlasenko
9b49a5ed85
add -fvisibility=hidden to CC flags, mark XXX_main functions
...
EXTERNALLY_VISIBLE. 5% size reduction of libbusybox.so
2007-10-11 10:05:36 +00:00
Denis Vlasenko
339936be00
chpst: fix whitespace damage
...
svlogd: fix bug (two different "line" variables); stop using data/bss
function old new delta
processorstop 419 432 +13
rotate 514 525 +11
buffer_pwrite 493 499 +6
sig_term_handler 68 70 +2
sig_hangup_handler 34 36 +2
sig_alarm_handler 34 36 +2
rmoldest 305 307 +2
processorstart 401 403 +2
logdir_close 188 190 +2
tmaxflag 1 - -1
rotateasap 1 - -1
repl 1 - -1
reopenasap 1 - -1
linecomplete 1 - -1
exitasap 1 - -1
wstat 4 - -4
verbose 9 5 -4
replace 4 - -4
nearest_rotate 4 - -4
linemax 4 - -4
linelen 4 - -4
line 4 - -4
fndir 4 - -4
fl_flag_0 4 - -4
fdwdir 4 - -4
dirn 4 - -4
dir 4 - -4
blocked_sigset 4 - -4
sig_child_handler 248 239 -9
logdirs_reopen 1263 1240 -23
buffer_pread 532 473 -59
svlogd_main 1466 1367 -99
------------------------------------------------------------------------------
(add/remove: 0/18 grow/shrink: 9/5 up/down: 42/-248) Total: -206 bytes
text data bss dec hex filename
770916 989 9496 781401 bec59 busybox_old
770768 980 9448 781196 beb8c busybox_unstripped
2007-10-05 22:11:06 +00:00
Denis Vlasenko
23e3e25df6
chpst: stop using data/bss
...
function old new delta
chpst_main 1066 1089 +23
set_user 4 - -4
root 4 - -4
nicelvl 4 - -4
limitt 4 - -4
limits 196 192 -4
limitr 4 - -4
limitp 4 - -4
limito 4 - -4
limitl 4 - -4
limitf 4 - -4
limitd 4 - -4
limitc 4 - -4
limita 4 - -4
env_user 4 - -4
env_dir 4 - -4
------------------------------------------------------------------------------
(add/remove: 0/14 grow/shrink: 1/1 up/down: 23/-60) Total: -37 bytes
text data bss dec hex filename
770892 1029 9520 781441 bec81 busybox_old
770916 989 9496 781401 bec59 busybox_unstripped
2007-10-05 21:23:49 +00:00
Denis Vlasenko
96e1b38586
introduce and use close_on_exec_on(fd). -50 bytes.
2007-09-30 23:50:48 +00:00
Denis Vlasenko
b925605441
assorted static vars removal
...
function old new delta
tcpudpsvd_main 1829 1839 +10
update_status 567 569 +2
sigterm 1 - -1
.........
dhcprelay_signal_handler 8 - -8
nfs_strerror 60 49 -11
singlemount 4579 4564 -15
static.p 16 - -16
svstatus 20 - -20
dhcprelay_xid_list 32 - -32
runsv_main 1785 1746 -39
static.buf 74 28 -46
svd 56 - -56
dhcprelay_main 1141 1080 -61
------------------------------------------------------------------------------
(add/remove: 0/20 grow/shrink: 2/10 up/down: 12/-386) Total: -374 bytes
2007-09-28 10:29:17 +00:00
Denis Vlasenko
4daad9004d
introduce bb_putchar(). saves ~1800 on uclibc (less on glibc).
2007-09-27 10:20:47 +00:00
Denis Vlasenko
5d61e71c3a
introduce safe_poll (fixes a problem in top)
...
function old new delta
safe_poll - 77 +77
svlogd_main 1470 1466 -4
zcip_main 1530 1524 -6
forkexec 1345 1338 -7
decode_format_string 795 788 -7
collect_blk 474 467 -7
buffer_pread 540 532 -8
tftp 1182 1172 -10
microcom_main 763 749 -14
arpping 441 424 -17
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/9 up/down: 77/-80) Total: -3 bytes
text data bss dec hex filename
770162 1034 10404 781600 bed20 busybox_old
770158 1034 10404 781596 bed1c busybox_unstripped
2007-09-27 10:09:59 +00:00
Denis Vlasenko
c9dc2ac578
make variables static
2007-09-27 10:08:02 +00:00
Denis Vlasenko
137fbe495d
runsvdir: fix "linear wait time" bug
2007-09-26 12:18:07 +00:00
Denis Vlasenko
7bc5360bba
isrv: use monotonic_sec
...
runsv: do not use clock_gettime if !MONOTONIC_CLOCK
2007-08-31 21:45:52 +00:00
Denis Vlasenko
6ee023cf62
*: compile fixes for 64-bit build
2007-08-23 10:52:52 +00:00
Denis Vlasenko
72b6a65b2f
httpd: fix buglet in hex conversion. Remove alloca NULL checks
...
(never happens, app just crashes if stack overflows)
svlogd: cosmetic messages and style fixes
2007-08-21 11:18:25 +00:00
Denis Vlasenko
45946f8b51
runit/*: get rid of tai[a] time abstraction, it's too bloaty.
...
text data bss dec hex filename
772537 1058 11092 784687 bf92f busybox.t0/busybox
772459 1058 11060 784577 bf8c1 busybox.t1/busybox
772326 1058 11028 784412 bf81c busybox.t2/busybox
772158 1058 10980 784196 bf744 busybox.t3/busybox
771490 1055 10988 783533 bf4ad busybox.t4/busybox
2007-08-20 17:27:40 +00:00
Denis Vlasenko
d37f22225b
libbb,crond,lash: fix getopt32 (don't know how it managed to slip through)
...
*: fcntl(fd, F_GETFL) doesn't require third parameter at all.
2007-08-19 13:42:08 +00:00
Denis Vlasenko
fe7cd642b0
don't pass argc in getopt32, it's superfluous
...
(add/remove: 0/0 grow/shrink: 12/131 up/down: 91/-727) Total: -636 bytes
text data bss dec hex filename
773469 1058 11092 785619 bfcd3 busybox_old
772644 1058 11092 784794 bf99a busybox_unstripped
2007-08-18 15:32:12 +00:00
Denis Vlasenko
a27a11bb2c
introduce and use xdup2(int, int)
...
stop checking whether setsockopt_reuseaddr(int fd) was successful (it always is)
remove second parameter (sockllen) from xmalloc_sockaddr2xxxxx functions
sockaddr2str 142 156 +14
collect_blk 467 474 +7
xdup2 28 33 +5
singlemount 4456 4454 -2
print_host 214 212 -2
nslookup_main 139 137 -2
ftpgetput_main 414 412 -2
udhcpd_main 1258 1255 -3
udhcpc_main 2405 2402 -3
traceroute_main 4125 4122 -3
nc_main 1072 1069 -3
buffer_fill_and_print 76 73 -3
xmalloc_sockaddr2hostonly_noport 18 14 -4
xmalloc_sockaddr2host_noport 18 14 -4
xmalloc_sockaddr2host 15 11 -4
xmalloc_sockaddr2dotted_noport 18 14 -4
xmalloc_sockaddr2dotted 18 14 -4
wget_main 2618 2614 -4
ping_main 393 389 -4
ip_port_str 120 115 -5
dhcprelay_main 1146 1141 -5
dnsd_main 1531 1525 -6
passwd_main 1110 1102 -8
udhcp_kernel_packet 206 197 -9
udhcp_listen_socket 154 144 -10
getty_main 2576 2566 -10
setup 655 640 -15
xmove_fd 51 34 -17
dolisten 759 742 -17
tcpudpsvd_main 1866 1836 -30
startservice 339 299 -40
2007-08-18 14:16:39 +00:00
Denis Vlasenko
f223efbcde
svlogd: fix timestamping; do not warn if config is missing
...
sv: extend help text
2007-08-03 10:58:12 +00:00
Denis Vlasenko
f868963c67
multiplier suffixes are short, store them directly in struct suffix_mult
...
function old new delta
xstrtoul_range_sfx 226 217 -9
xstrtoull_range_sfx 291 280 -11
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-20) Total: -20 bytes
text data bss dec hex filename
669128 2668 13616 685412 a7564 busybox_old
669108 2668 13616 685392 a7550 busybox_unstripped
2007-07-27 15:06:25 +00:00
Denis Vlasenko
557fb713e0
chpasswd: fixes and code shrink
...
update_passwd 732 734 +2
chpasswd_main 318 292 -26
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/1 up/down: 2/-26) Total: -24 bytes
text data bss dec hex filename
781564 1168 11900 794632 c2008 busybox_old
781548 1168 11900 794616 c1ff8 busybox_unstripped
2007-07-21 13:25:28 +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
5a6aeddfa7
xpipe: introduce (saves ~170 bytes)
...
udhcp/signalpipe.c: use pipe instead of socketpair.
2007-05-26 16:44:20 +00:00
Denis Vlasenko
b952835efe
svlogd: fix 'SEGV on uninitialized data' and make it honor TERM
2007-05-06 01:37:21 +00:00
Denis Vlasenko
ac678ec2f1
style fixes, no code changes
2007-04-16 22:32:04 +00:00
Denis Vlasenko
ff131b980d
style fixes. No code changes.
2007-04-10 15:42:06 +00:00
Denis Vlasenko
2856dab477
tcpsvd: new applet
...
It's a GPL-ed 'clone' of Dan Bernstein's tcpserver.
Author: Gerrit Pape <pape@smarden.org>
http://smarden.sunsite.dk/ipsvd/
size tcpsvd.o
text data bss dec hex filename
2571 4 16 2591 a1f tcpsvd.o
2007-04-01 01:18:20 +00:00
Denis Vlasenko
53091ecd20
Attempt to get more applets compile for NOMMU.
...
TODO_config_nommu documents what I managed to compile so far
(yay! msh works! cool). inetd, telnetd, httpd still do not compile. TODO
Also make fork(), daemon() produce warnings on compile stage
(in addition to erros on link stage).
2007-03-26 13:35:09 +00:00
Denis Vlasenko
cad04ef4f3
add NOMMU fixme's; move move_fd from runit_lib to libbb; nuke fd_copy
2007-03-25 23:21:05 +00:00
Denis Vlasenko
8a164052bf
add missing copyright statements and doc for sv
2007-03-12 23:34:52 +00:00
Denis Vlasenko
d55a36255d
sv: make code trivially smaller
2007-03-12 23:14:42 +00:00
Denis Vlasenko
baca175912
kill superfluous returns at the end of void functions
2007-03-11 13:43:10 +00:00
Denis Vlasenko
3aba666514
runsv: random code savings, ~300 bytes
2007-03-09 22:46:06 +00:00
Denis Vlasenko
d0762e3d52
runsv: add missing {}
2007-02-18 11:07:43 +00:00
Denis Vlasenko
1d76f439da
EXEC_PREFER_APPLETS support by Gabriel L. Somlo <somlo@cmu.edu>
2007-02-06 01:20:12 +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
0aa8490693
sigset_t blocked_sigset is too big for static (128 bytes)
2007-02-03 01:47:56 +00:00
Denis Vlasenko
64392905ef
svlogd: fix performance problems: excessive write,
...
gettimeofday calls. rt_sigprocmask were dealt with
in previous commit
2007-02-03 00:53:43 +00:00
Denis Vlasenko
4f8d27f29a
svlogd: do not set O_NONBLOCK on stdin permanently - that can
...
affect other processes!
2007-02-03 00:52:17 +00:00
Denis Vlasenko
7fca91a3de
sv: fix incorrect option parsing and reduce size
2007-02-02 01:19:09 +00:00
Denis Vlasenko
322661d025
preparatory patch for -Wwrite-strings #6
2007-01-29 23:43:52 +00:00
Denis Vlasenko
ab2aea4447
preparatory patch for -Wwrite-strings #4
2007-01-29 22:51:58 +00:00
Denis Vlasenko
4e1715f4b9
correct bad English
2007-01-28 14:51:32 +00:00
Denis Vlasenko
eeafc1a057
svlogd: batch writes if !timestamp
2007-01-27 23:15:50 +00:00
Denis Vlasenko
ca549c5e69
svlogd: remove unused buffering, stop doing tons of memcpy
2007-01-27 22:24:59 +00:00
Denis Vlasenko
bde74b617f
runit/* cleanup part 3 (just deleting unused code)
2007-01-27 22:22:53 +00:00
Denis Vlasenko
e2473f8c23
runit/* cleanup part 2
2007-01-27 22:22:17 +00:00
Denis Vlasenko
8c78395120
runit cleanup part 1
2007-01-27 22:21:52 +00:00
Denis Vlasenko
3a34d0c08a
random small size optimizations
2007-01-12 22:10:34 +00:00
Denis Vlasenko
f7996f3b70
Trailing whitespace removal over entire tree
2007-01-11 17:20:00 +00:00
Denis Vlasenko
3bba545a54
done a dozen of randconfig test. guess what? ALL failed...
...
these are resulting fixes
2006-12-30 17:57:03 +00:00
Denis Vlasenko
9a44c4f91c
bb_xget[pw/gr]nam were horribly misnamed - fixed.
...
uidgid_get -> get_uidgid, add additional param
(numeric_ok). Make chown use it.
chown: fix "chown user: ...."
install: fix incorrect use of bb_xget[pw/gr]nam
2006-12-28 05:44:47 +00:00
Denis Vlasenko
bf0a201008
style fixes
...
last xcalloc replaced by xzalloc
2006-12-26 10:42:51 +00:00
Denis Vlasenko
a5b3e76c38
missing piece of prev commit: ndelay_off
2006-12-24 07:15:50 +00:00
Denis Vlasenko
cf749bc10c
small fixes:
...
fix xstrdup to not grossly overallocate memory
use xopen instean of xopen3 in several places
etc.
2006-11-26 15:45:17 +00:00
Denis Vlasenko
d031ffa623
tar: sanitize option handling
2006-11-24 21:54:44 +00:00
Denis Vlasenko
75f8d080a2
telnetd: we were having telnetd with is ONLY inetd or ONLY standalone.
...
What if I need to have both?? This patch introduces
CONFIG_FEATURE_TELNETD_STANDALONE: y - both, n - only inetd.
2006-11-22 15:54:52 +00:00
Denis Vlasenko
83edaf3fd6
svlogd: log full lines to stderr too, and also stop using stdio for that
2006-11-19 17:33:54 +00:00
Denis Vlasenko
04c6386c45
forgot about avn add... :(
2006-11-17 18:58:49 +00:00
Denis Vlasenko
8a00f44bf4
runit: add runsv, runsvdir and sv. Oh yes.
...
It even seems to work. +11K. :(
2006-11-17 18:58:16 +00:00
Denis Vlasenko
83ea643d8d
svlogd: new applet. +9k. Still too big, but it was 12k yesterday.
2006-11-16 02:27:24 +00:00
Denis Vlasenko
9bff26cccb
chpst: add overlooked copyright statement
2006-10-20 19:40:44 +00:00
Denis Vlasenko
cba9ef5523
fixes from Vladimir Dronnikov <dronnikov@gmail.ru>
2006-10-10 21:00:47 +00:00
Denis Vlasenko
1385899416
attempt to regularize atoi mess.
2006-10-08 12:49:22 +00:00
Denis Vlasenko
c12f53090b
dnsd fix; option_mask32 added. dnsd needs more love.
2006-10-06 09:49:47 +00:00
Denis Vlasenko
4e6ceb4455
chpst: fix vda's silly mistakes
...
Patch by Vladimir Dronnikov <dronnikov@gmail.ru>
2006-10-06 08:54:49 +00:00
Denis Vlasenko
de59c0f58f
httpd: add -u user[:grp] support
2006-10-05 22:50:22 +00:00
Denis Vlasenko
7d219aab70
build system overhaul
2006-10-05 10:17:08 +00:00
Denis Vlasenko
8f8f268cfd
bb_applet_name -> applet_name
2006-10-03 21:00:43 +00:00
Denis Vlasenko
67b23e6043
getopt_ulflags -> getopt32.
...
It is impossible to formulate sane ABI based on
size of ulong because it can be 32-bit or 64-bit.
Basically it means that you cannot portably use
more that 32 option chars in one call anyway...
Make it explicit.
2006-10-03 21:00:06 +00:00
Denis Vlasenko
f0a97fb43a
Yeah, yeah... I forgot about 'svn add'... fixing that
2006-10-03 17:52:24 +00:00