Denis Vlasenko
b520271f65
lineedit: filename completion on symlinks-to-dirs should add / too
2008-04-24 04:42:52 +00:00
Denis Vlasenko
765c1c3c31
getopt32: fix "tar x" case; fix memory leak
2008-04-23 07:22:31 +00:00
Denis Vlasenko
be002adb2f
add forgotten files. I am forgetting it all the time :(
2008-04-22 18:07:41 +00:00
Denis Vlasenko
5d89fbaa2e
*: remove remaining instances of ".data" hack
2008-04-22 00:08:27 +00:00
Denis Vlasenko
9137341851
getopt32: fix recently broken opt_complementary "--"
2008-04-21 22:04:21 +00:00
Denis Vlasenko
5bb2fc2dc1
tentative fix for ppc64 problems with ioctl.
...
Zero code size impact.
2008-04-21 03:23:59 +00:00
Denis Vlasenko
0a1446275d
xmalloc_open_read_close: use fstat to get file size (instead of lseek).
...
by Joakim Tjernlund <Joakim.Tjernlund AT transmode.se>
function old new delta
xmalloc_open_read_close 190 181 -9
2008-04-20 14:45:43 +00:00
Denis Vlasenko
25cfe4996e
libbb: prevent xmalloc_open_read_close from dying on seek failure
...
start_stop_daemon: use open_read_close instead of xmalloc_open_read_close
start_stop_daemon: use local structure instead of global one
function old new delta
check 1620 1661 +41
xmalloc_open_read_close 171 190 +19
start_stop_daemon_main 976 954 -22
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/1 up/down: 60/-22) Total: 38 bytes
2008-04-20 01:27:59 +00:00
Denis Vlasenko
f3745ea489
libbb: introduce xmalloc_xopen_read_close and use where appropriate
...
instead of xmalloc_open_read_close.
function old new delta
xmalloc_xopen_read_close - 34 +34
xmalloc_open_read_close 163 171 +8
passwd_main 1070 1074 +4
rexecve 254 257 +3
handle_incoming_and_exit 2657 2659 +2
parse_command 1509 1510 +1
buffer_fill_and_print 76 73 -3
evaltreenr 599 589 -10
evaltree 599 589 -10
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 5/3 up/down: 52/-23) Total: 29 bytes
2008-04-19 19:32:08 +00:00
Denis Vlasenko
6c10657c4a
style fixes. no code changes
2008-04-19 19:05:12 +00:00
Denis Vlasenko
867bd37c7f
fix english in comment
2008-04-13 02:27:39 +00:00
Denis Vlasenko
7465dbcf2a
ash: speed up NOFORK code in ash by eliminating second find_applet().
...
some code reduction along the way.
function old new delta
run_list 1971 1981 +10
run_nofork_applet_prime 181 182 +1
unsetcmd 97 96 -1
delete_cmd_entry 54 53 -1
describe_command 399 397 -2
cmdlookup 152 150 -2
evaltreenr 602 599 -3
evaltree 602 599 -3
clearcmdentry 101 98 -3
cdcmd 675 672 -3
hashcmd 305 301 -4
find_command 933 910 -23
evalcommand 1371 1229 -142
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/11 up/down: 11/-187) Total: -176 bytes
2008-04-13 02:25:53 +00:00
Denis Vlasenko
93b8263652
fix build with gcc -combine
2008-04-11 11:27:29 +00:00
Denis Vlasenko
858ebf130a
actually adding xfuncs_printf.c :(
2008-04-09 00:33:53 +00:00
Denis Vlasenko
b12b1c87b5
Splitting xfuncs.c into two parts. No code chabges.
2008-04-09 00:33:23 +00:00
Denis Vlasenko
79cedcb2c0
Avoid linking in printf/bsearch if possible. -20k for static bbox with
...
"basename", "true" and "false" only.
function old new delta
full_write2_str - 25 +25
bb_show_usage 183 202 +19
main 883 898 +15
run_applet_and_exit 501 507 +6
2008-04-08 21:13:28 +00:00
Denis Vlasenko
278a1c2264
brctl: optional support for "show" cmd (by L. Gabriel Somlo <somlo AT cmu.edu>)
...
function old new delta
brctl_main 739 1186 +447
if_indextoname - 104 +104
static.keywords 827 841 +14
static.ops - 7 +7
packed_usage 23978 23976 -2
2008-04-06 07:17:02 +00:00
Denis Vlasenko
0edbdd8ac8
xfunc_die: resurrect (actually, it's "svn add" being forgotten again)
2008-04-01 17:43:03 +00:00
Denis Vlasenko
468aea2d88
shells: do not frocibly enable test, echo and kill _applets_,
...
just build relevant source and use xxx_main functions.
build system: add a special case when we have exactly one applet enabled
(makes "true", "false", "basename" REALLY tiny).
getopt32: do not use stdio.
function old new delta
getopt32 1385 1412 +27
make_device 1187 1200 +13
basename_main 120 127 +7
tcpudpsvd_main 1922 1926 +4
testcmd 5 - -5
echocmd 5 - -5
fuser_main 1243 1231 -12
------------------------------------------------------------------------------
(add/remove: 0/2 grow/shrink: 4/1 up/down: 51/-22) Total: 29 bytes
2008-04-01 14:47:57 +00:00
Denis Vlasenko
b9ad75fa60
copy_file: handle "cp /dev/foo file" (almost) compatibly to coreutils.
...
(almost because we do not copy mode, which is probably wasn't intended).
+61 bytes.
2008-03-28 17:49:31 +00:00
Denis Vlasenko
2570b2e575
whitespace fixes
2008-03-28 01:00:09 +00:00
Denis Vlasenko
cf26ab70c1
mdev: plug a few memory and fd leaks; simplify code a bit
2008-03-27 22:45:44 +00:00
Denis Vlasenko
8ee649a02e
*: more uniform naming: s/xmalloc_getline/xmalloc_fgetline/
2008-03-26 20:04:27 +00:00
Denis Vlasenko
08ec67bc62
patch: add support for -R. ~ +110 byte. By Pascal Bellard <pascal.bellard AT ads-lu.com>
...
fbsplash: new applet by Michele Sanges <michele.sanges AT otomelara.it
function old new delta
fbsplash_main - 1525 +1525
fb_drawfullrectangle - 118 +118
static.param_value - 100 +100
packed_usage 23776 23872 +96
applet_names 1843 1852 +9
applet_main 1120 1124 +4
read_line_input 3156 3158 +2
applet_nameofs 560 562 +2
applet_install_loc 140 141 +1
------------------------------------------------------------------------------
(add/remove: 3/0 grow/shrink: 6/0 up/down: 1857/0) Total: 1857 bytes
text data bss dec hex filename
799233 641 7380 807254 c5156 busybox_old
801202 641 7380 809223 c5907 busybox_unstripped
2008-03-26 13:32:30 +00:00
Denis Vlasenko
c693840fe8
*: whitespace fixes, no code changes
2008-03-24 02:18:03 +00:00
Denis Vlasenko
0b6c6a9c9f
lpd: fix OOM vulnerability (was eating arbitrarily large commands)
2008-03-24 00:04:42 +00:00
Denis Vlasenko
9230582315
inetd: use change_identity().
...
libbb: shrink our internal initgroups().
httpd: remove stray 'else' and 'index_page = "index.html"'
function old new delta
httpd_main 750 743 -7
inetd_main 2033 2011 -22
bb_internal_initgroups 251 228 -23
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/3 up/down: 0/-52) Total: -52 bytes
2008-03-20 15:12:58 +00:00
Denis Vlasenko
104d544fd7
die_if_bad_username: shrink: 88 -> 77 bytes
2008-03-19 23:25:00 +00:00
Denis Vlasenko
dd5702d696
...and actually adding new file now...
2008-03-19 23:15:55 +00:00
Denis Vlasenko
a7d6c8bab9
adduser/addgroup: check username for invalid chars
...
(by Tito <farmatito AT tiscali.it>). +129 bytes when enabled.
2008-03-19 23:15:26 +00:00
Denis Vlasenko
d1277c6052
remove extra spaces in help text; delete duplicate #define
2008-03-17 09:37:24 +00:00
Denis Vlasenko
4ee7cd4f6f
*: mode tcp/udpsvd to networking, delete ipsvd/*
...
*/Config.in: fixes to text
svlogd: make it NOMMU capable
function old new delta
processorstart 378 420 +42
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/0 up/down: 42/0) Total: 42 bytes
text data bss dec hex filename
797153 662 7420 805235 c4973 busybox_old
797196 662 7420 805278 c499e busybox_unstripped
2008-03-17 09:13:22 +00:00
Denis Vlasenko
1d42665b6b
*: shrink: use Vladimir's "o+" specifier instead of xatou(opt_param)
...
function old new delta
getopt32 1370 1385 +15
sulogin_main 490 494 +4
realpath_main 84 86 +2
sleep_main 76 77 +1
mt_main 256 257 +1
printenv_main 75 74 -1
fdformat_main 546 545 -1
usleep_main 44 42 -2
setlogcons_main 77 75 -2
ed_main 2654 2649 -5
deallocvt_main 69 64 -5
addgroup_main 373 368 -5
mkfs_minix_main 2989 2982 -7
tail_main 1221 1213 -8
sv_main 1254 1241 -13
du_main 348 328 -20
tftp_main 325 302 -23
split_main 581 558 -23
nc_main 1000 977 -23
diff_main 891 868 -23
arping_main 1797 1770 -27
ls_main 893 847 -46
od_main 2797 2750 -47
readprofile_main 1944 1895 -49
tcpudpsvd_main 1973 1922 -51
udhcpc_main 2590 2513 -77
grep_main 824 722 -102
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 5/22 up/down: 23/-560) Total: -537 bytes
text data bss dec hex filename
796973 658 7428 805059 c48c3 busybox_old
796479 662 7420 804561 c46d1 busybox_unstripped
2008-03-17 09:09:09 +00:00
Denis Vlasenko
62a90cdd74
*: shrink by using [f]open_or_warn_stdin where appropriate
...
function old new delta
lsattr_main 62 143 +81
open_or_warn_stdin - 36 +36
fclose_if_not_stdin 20 47 +27
xfopen_stdin - 20 +20
tac_main 336 356 +20
cksum_main 249 259 +10
bb_argv_dash - 8 +8
su_main 448 455 +7
cmp_main 630 633 +3
passwd_main 1072 1074 +2
uudecode_main 317 315 -2
text_yank 110 108 -2
handle_incoming_and_exit 2653 2651 -2
flags 5 1 -4
write_leases 235 230 -5
fopen_or_warn_stdin 48 42 -6
fold_main 648 642 -6
static.argv_dash 8 - -8
sum_main 142 128 -14
tail_main 1237 1221 -16
sed_main 711 695 -16
cmp_xfopen_input 17 - -17
bb_cat 113 96 -17
catv_main 328 306 -22
strings_main 457 434 -23
hash_file 298 274 -24
sum_file 353 325 -28
sort_main 904 859 -45
expand_main 736 686 -50
cut_main 1116 1065 -51
md5_sha1_sum_main 549 493 -56
lsattr_args 90 - -90
read_stduu 408 255 -153
------------------------------------------------------------------------------
(add/remove: 3/3 grow/shrink: 7/20 up/down: 214/-657) Total: -443 bytes
text data bss dec hex filename
797417 658 7428 805503 c4a7f busybox_old
796973 658 7428 805059 c48c3 busybox_unstripped
2008-03-17 09:07:36 +00:00
Denis Vlasenko
d02db89244
clean up TODO file. No real code changes.
2008-03-17 09:05:21 +00:00
Denis Vlasenko
85c247161b
*: fix fallout from -Wunused-parameter
...
function old new delta
bbunpack 358 366 +8
passwd_main 1070 1072 +2
handle_incoming_and_exit 2651 2653 +2
getpty 88 86 -2
script_main 975 972 -3
inetd_main 2036 2033 -3
dname_enc 377 373 -4
make_new_session 474 462 -12
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/5 up/down: 12/-24) Total: -12 bytes
text data bss dec hex filename
797429 658 7428 805515 c4a8b busybox_old
797417 658 7428 805503 c4a7f busybox_unstripped
2008-03-17 09:04:04 +00:00
Denis Vlasenko
081eb71ebd
dnsd: properly set _src_ IP:port on outgoing UDP packets
...
function old new delta
send_to_from - 258 +258
dnsd_main 1500 1568 +68
interrupt 17 19 +2
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 2/0 up/down: 328/0) Total: 328 bytes
text data bss dec hex filename
797101 658 7428 805187 c4943 busybox_old
797429 658 7428 805515 c4a8b busybox_unstripped
2008-03-17 09:02:21 +00:00
Denis Vlasenko
68404f13d4
*: add -Wunused-parameter; fix resulting breakage
...
function old new delta
procps_scan 1265 1298 +33
aliascmd 278 283 +5
parse_file_cmd 116 120 +4
dname_enc 373 377 +4
setcmd 90 93 +3
execcmd 57 60 +3
count_lines 72 74 +2
process_command_subs 340 339 -1
test_main 409 407 -2
mknod_main 179 177 -2
handle_incoming_and_exit 2653 2651 -2
argstr 1312 1310 -2
shiftcmd 131 128 -3
exitcmd 46 43 -3
dotcmd 297 294 -3
breakcmd 86 83 -3
evalpipe 353 349 -4
evalcommand 1180 1176 -4
evalcmd 109 105 -4
send_tree 374 369 -5
mkfifo_main 82 77 -5
evalsubshell 152 147 -5
typecmd 75 69 -6
letcmd 61 55 -6
add_cmd 1190 1183 -7
main 891 883 -8
ash_main 1415 1407 -8
parse_stream 1377 1367 -10
alloc_procps_scan 55 - -55
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 7/21 up/down: 54/-148) Total: -94 bytes
text data bss dec hex filename
797195 658 7428 805281 c49a1 busybox_old
797101 658 7428 805187 c4943 busybox_unstripped
2008-03-17 09:00:54 +00:00
Denis Vlasenko
cdf62770af
dos2unix: tiny shrink
...
login,su: fix setup_environment() so that it works as intended
(parameter names were a bit misleading)
fdisk: shrink
help text: shrink
function old new delta
login_main 1658 1701 +43
setup_environment 206 203 -3
dos_compatible_flag 4 1 -3
dos2unix_main 383 375 -8
get_boot 1724 1702 -22
fdisk_main 2949 2889 -60
packed_usage 24250 23948 -302
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/6 up/down: 43/-398) Total: -355 bytes
text data bss dec hex filename
798768 661 7428 806857 c4fc9 busybox_old
798327 658 7428 806413 c4e0d busybox_unstripped
2008-03-17 08:42:43 +00:00
Denis Vlasenko
3f165fa5b3
libbb: introduce and use sigprocmask_allsigs and sigaction_set.
...
libbb: rename sig_pause to wait_for_any_sig.
2008-03-17 08:29:08 +00:00
Denis Vlasenko
8e2cfec1cd
libbb: introduse and use signal_[no_]SA_RESTART_empty_mask and sigaction_set
...
signal_SA_RESTART_empty_mask - 65 +65
signal_no_SA_RESTART_empty_mask - 54 +54
dd_main 1325 1369 +44
sigaction_set - 19 +19
dname_enc 373 377 +4
UNSPEC_print 64 66 +2
setsignal 296 294 -2
bb_signals_recursive 95 92 -3
bb_askpass 367 361 -6
inetd_main 1810 1797 -13
rx_main 912 883 -29
sigdelset 32 - -32
__sigdelset 32 - -32
__GI_sigdelset 32 - -32
sighup_handler 84 37 -47
arping_main 1844 1797 -47
fsck_main 1869 1807 -62
run_list 1917 1844 -73
vlock_main 492 409 -83
progressmeter 883 798 -85
handle_incoming_and_exit 2737 2651 -86
------------------------------------------------------------------------------
(add/remove: 3/3 grow/shrink: 3/12 up/down: 188/-632) Total: -444 bytes
2008-03-12 23:19:35 +00:00
Denis Vlasenko
4cf1d08fc2
nc: remove a bit of bloat
...
inetd: more NOMMU fixes
rx: shrink
devfsd: minor shrink
vlock: shrink
tcpudp: narrow down window where we have no wildcard socket
parse_one_line 1015 1102 +87
init_ring - 53 +53
xzalloc_lsa - 48 +48
read_byte 51 50 -1
rearm_alarm 28 25 -3
nc_main 1028 1000 -28
initring 53 - -53
vlock_main 583 496 -87
reread_config_file 1089 991 -98
rx_main 1046 912 -134
------------------------------------------------------------------------------
(add/remove: 2/1 grow/shrink: 1/6 up/down: 188/-404) Total: -216 bytes
text data bss dec hex filename
800120 661 7428 808209 c5511 busybox_old
799796 661 7428 807885 c53cd busybox_unstripped
2008-03-12 23:13:50 +00:00
Denis Vlasenko
4e6d5117b8
inetd: make it NOMMU-capable and IPv6-friendly. Lots of renames
...
of variable/function names
Total: -2474 bytes
text data bss dec hex filename
802215 661 7452 810328 c5d58 busybox_old
800120 661 7428 808209 c5511 busybox_unstripped
2008-03-12 22:14:34 +00:00
Denis Vlasenko
4e6c8120a5
crond: make it NOMMU-capable
...
function old new delta
safe_setenv4 - 62 +62
ForkJob 472 511 +39
change_identity 21 57 +36
ParseField 564 571 +7
SynchronizeDir 178 176 -2
LogLevel 4 - -4
LogFile 4 - -4
FileBase 4 - -4
DebugOpt 4 - -4
CDir 4 - -4
DeleteFile 141 132 -9
packed_usage 24248 24228 -20
crondlog 157 113 -44
change_identity_e2str 54 - -54
SynchronizeFile 729 671 -58
crond_main 1555 1404 -151
------------------------------------------------------------------------------
(add/remove: 1/6 grow/shrink: 3/6 up/down: 144/-358) Total: -214 bytes
2008-03-12 22:10:25 +00:00
Paul Fox
b4a5087ee0
define DEBUG as 0, for when ENABLE_FEATURE_DEVPTS is not on.
2008-03-05 22:01:45 +00:00
Denis Vlasenko
d18f52bd18
actually add bb_qsort.c
...
*: s/Denis/Denys/
2008-03-02 12:53:15 +00:00
Denis Vlasenko
fb29038b59
libbb: inntroduce and use bb_pstrcmp() and qsort_string_vector()
...
msh: glob0/glob1/glob2/glob3 are just a sorting routine! remove them.
bb_pstrcmp - 25 +25
qsort_string_vector - 24 +24
expand 2209 2227 +18
getopt32 1359 1370 +11
passwd_main 1072 1074 +2
handle_incoming_and_exit 2737 2735 -2
UNSPEC_print 66 64 -2
forkexec 1343 1339 -4
input_tab 3338 3330 -8
get_dir 185 177 -8
expmeta 481 473 -8
cmdputs 405 397 -8
xstrcmp 12 - -12
find_pair 187 167 -20
match_compare 25 - -25
dir_strcmp 25 - -25
glob2 27 - -27
glob3 34 - -34
glob1 256 - -256
------------------------------------------------------------------------------
(add/remove: 2/6 grow/shrink: 3/8 up/down: 80/-439) Total: -359 bytes
2008-03-02 12:51:26 +00:00
Denis Vlasenko
574f2f4394
*: add optimization barrier to all "G trick" locations
2008-02-27 18:41:59 +00:00
Denis Vlasenko
c8f2f74ddd
libbb: add forgotten part of "script" applet change
2008-02-27 14:33:28 +00:00
Denis Vlasenko
5014dada3f
script: new applet by Pascal Bellard <pascal.bellard AT ads-lu.com>
2008-02-27 11:54:59 +00:00
Denis Vlasenko
d686482d05
actually add libbb/safe_gethostname.c
2008-02-25 23:24:32 +00:00
Denis Vlasenko
6f1713f216
*: intrduce and use safe_gethostname. By Tito <farmatito AT tiscali.it>
...
safe_gethostname - 48 +48
glob3 35 37 +2
timestamp_and_log 314 315 +1
udhcp_send_kernel_packet 234 231 -3
scan_tree 275 271 -4
passwd_main 1074 1070 -4
print_login_prompt 68 58 -10
obscure 392 377 -15
syslogd_main 882 866 -16
print_login_issue 516 478 -38
hostname_main 278 223 -55
parse_and_put_prompt 825 756 -69
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 2/9 up/down: 51/-214) Total: -163 bytes
text data bss dec hex filename
798791 728 7484 807003 c505b busybox_old
798631 728 7484 806843 c4fbb busybox_unstripped
2008-02-25 23:23:58 +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
f99afb5dff
lpd: new applet by Vladimir Dronnikov <dronnikov AT gmail.com>
2008-02-24 23:32:36 +00:00
Denis Vlasenko
400d8bb45e
less,klogd,syslogd,nc,tcpudp: exit on signal by killing itself, not exit(1)
...
*: minor shrink
2008-02-24 13:36:01 +00:00
Denis Vlasenko
32b2a9fd6a
small code readability and typo fixes
2008-02-22 22:43:22 +00:00
Denis Vlasenko
68444b9f0c
lpr and lpq applets by Walter Harms.
...
text data bss dec hex filename
392 0 0 392 188 lpq.o
1378 0 0 1378 562 lpr.o
142 0 0 142 8e parse_prt.o
2008-02-22 22:24:48 +00:00
Denis Vlasenko
081efd1232
corrected English in comment
2008-02-20 22:57:24 +00:00
Denis Vlasenko
e376d454bb
libbb: introduce and use nonblock_safe_read(). Yay!
...
Our shells are immune from this nasty O_NONBLOCK now!
function old new delta
nonblock_safe_read - 78 +78
file_get 276 295 +19
generateMTFValues 428 435 +7
read_line_input 1776 1772 -4
preadbuffer 543 450 -93
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 2/2 up/down: 104/-97) Total: 7 bytes
text data bss dec hex filename
615190 715 23924 639829 9c355 busybox_old
615168 715 23924 639807 9c33f busybox_unstripped
2008-02-20 22:23:24 +00:00
Denis Vlasenko
6f04391cec
lineedit: tiny shrink
2008-02-18 22:28:03 +00:00
Denis Vlasenko
c9ca0a3274
mount: recognize "dirsync" (closes bug 835)
...
mount: sanitize environ if called by non-root
*: adjust for slightly different sanitize routine
2008-02-18 11:08:33 +00:00
Denis Vlasenko
56244736ec
whitespace fixes
2008-02-17 15:14:04 +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
Mike Frysinger
977bc6a137
we need to pass back the rtc device name that was actually used so that we can turn around and check its sysfs status
2008-02-15 07:19:03 +00:00
Mike Frysinger
6b160e490d
split some rtc funcs out of hwclock and into an rtc header/lib so that the new rtcwake applet as well as hwclock can utilize the same code
2008-02-15 02:27:19 +00:00
Denis Vlasenko
39487e2d6a
libbb: filename completion should match dangling symlinks too
2008-02-14 19:55:58 +00:00
Denis Vlasenko
d5fe880a57
cp: add ENABLE_FEATURE_VERBOSE_CP_MESSAGE. Closes bug 1470
2008-02-13 16:52:00 +00:00
Bernhard Reutner-Fischer
a985d306a1
- spelling fixes
2008-02-11 11:44:38 +00:00
Denis Vlasenko
04e11c9209
getpot: add support for "a+" specifier for nonnegative int parameters.
...
By Vladimir Dronnikov <dronnikov at gmail.com>.
fdisk and top are converted as an example.
function old new delta
getopt32 1340 1370 +30
top_main 1137 1120 -17
fdisk_main 3033 2949 -84
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/2 up/down: 30/-101) Total: -71 bytes
2008-02-10 19:44:20 +00:00
Denis Vlasenko
80667e30fb
msh: fix Ctrl-C handling with line editing
2008-02-02 18:35:55 +00:00
Bernhard Reutner-Fischer
8c69afd992
- be C99 friendly. Anonymous unions are a GNU extension. This change is
...
size-neutral WRT -std=gnu99 and fixes several compilation errors for strict
C99 mode.
2008-01-29 10:33:34 +00:00
Denis Vlasenko
9772816570
*: move getopt reset code to better place(s)
2008-01-28 22:57:10 +00:00
Denis Vlasenko
b5c60fc787
mkswap, readahead: stop using fdlength, it is reported to be unreliable
2008-01-27 23:41:34 +00:00
Denis Vlasenko
c4e4be9414
tentatively fix getopt state corruption for NOFORK applets
2008-01-27 22:39:55 +00:00
Bernhard Reutner-Fischer
f470196a41
- fix conflicting decls of syslog related facilitynames and prioritynames tables
2008-01-27 12:50:12 +00:00
Denis Vlasenko
a5549c9617
fdisk: fix a case where break was reached only for DOS labels
2008-01-24 22:49:15 +00:00
Paul Fox
518d8dd979
eliminated CONFIG_FEATURE_EDITING_FANCY_KEYS. the size savings
...
was small, compared to the total size of the command-line editing
features, and it removed key bindings that most wouldn't consider
"fancy", like ^U, and 'l' and 'h' in vi mode, ^F and ^B in emacs
mode.
2008-01-18 20:41:24 +00:00
Paul Fox
84bbac5a09
enable use of ^V prefix to allow forced insertion of any character. in
...
particular, without this it's impossible to enter a TAB on the commandline
(whether tab completion is enabled or not).
2008-01-11 16:50:08 +00:00
Paul Fox
ee8e3ee919
allow 8-bit characters
2008-01-11 16:12:57 +00:00
Denis Vlasenko
6b404431aa
ps: fix build breakage from vda's recent commit
...
*: whitespace fixes
2008-01-07 16:13:14 +00:00
Denis Vlasenko
56ea65ca5f
ps: fix overflow in USER and VSZ columns
...
function old new delta
smart_ulltoa4 - 280 +280
smart_ulltoa5 283 408 +125
ulltoa6_and_space - 25 +25
scale 28 38 +10
bbunpack 358 366 +8
ps_main 259 261 +2
glob3 35 37 +2
fill_bounds 172 174 +2
process_stdin 456 446 -10
smart_ulltoa6 406 - -406
------------------------------------------------------------------------------
(add/remove: 2/1 grow/shrink: 6/1 up/down: 454/-416) Total: 38 bytes
2008-01-06 03:26:53 +00:00
Denis Vlasenko
5fee2e1a79
ps: add conditional support for -o [e]time
2008-01-05 03:26:41 +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
27963980db
adding libbb/printable.c
2007-12-30 20:13:39 +00:00
Denis Vlasenko
d3c042fc60
libbb: introduce fputc_printable (from ed)
...
netstat: print control chars as ^C etc
vi: style fixlet
function old new delta
fputc_printable - 100 +100
unix_do_one 451 487 +36
printLines 258 190 -68
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 1/1 up/down: 136/-68) Total: 68 bytes
2007-12-30 01:59:53 +00:00
Denis Vlasenko
abee3d0e0d
Fix xmalloc_fgets_str so that it really does NOT strip terminator.
...
Add xmalloc_fgetline_str which does strip terminator,
and use it in dpkg instead of xmalloc_fgets_str.
netstat: use xmalloc_fgets_str - allows to eat strings with NULs
(this fixes bug with some weird /proc/net/unix input)
function old new delta
xmalloc_fgets_internal - 191 +191
xmalloc_fgetline_str - 18 +18
do_info 116 120 +4
unix_do_one 451 447 -4
tcp_do_one 423 419 -4
send_tree 369 365 -4
xmalloc_fgets_str 178 15 -163
------------------------------------------------------------------------------
(add/remove: 2/0 grow/shrink: 1/4 up/down: 213/-175) Total: 38 bytes
text data bss dec hex filename
778445 832 7344 786621 c00bd busybox_old
778483 832 7344 786659 c00e3 busybox_unstripped
2007-12-26 20:44:45 +00:00
Denis Vlasenko
f7be20e70c
nameif: extended matching (Nico Erfurth <masta@perlgolf.de>)
...
*: whitespace fixes
function old new delta
prepend_new_eth_table - 304 +304
nameif_main 620 684 +64
cc_macaddr 51 - -51
------------------------------------------------------------------------------
(add/remove: 1/1 grow/shrink: 1/0 up/down: 368/-51) Total: 317 bytes
2007-12-24 14:09:19 +00:00
Denis Vlasenko
fcfb5c04bb
defconfig: update
...
appletli.c: add vda's (C)
top: fixlet for incorrect display of "0"
Makefile: reduce stack size from 20k to 16k
2007-12-24 12:16:24 +00:00
Denis Vlasenko
94e3365b8f
perror_nomsg: don't print extra colon
...
losetup: print name of loop device in error messages
2007-12-22 15:44:23 +00:00
Denis Vlasenko
2cd4a747e5
num conversions: allow for leading '+' (renice needs that)
2007-12-11 13:15:11 +00:00
Denis Vlasenko
9cb220be9d
lineedit: don't violate API if we do simple fgets
...
ash: cosmetic style fixes, no code changes
2007-12-09 10:03:28 +00:00
Denis Vlasenko
b851c42a14
signal names hack was wrong, it broke "get signal name" function.
...
Reverting :(
2007-12-04 21:44:52 +00:00
Denis Vlasenko
c689fcfdb0
Make signal table a bit smaller
...
get_signum 136 151 +15
signals 224 192 -32
2007-12-04 10:20:48 +00:00
Denis Vlasenko
5f934b0785
guard against SIGxxx >= 32 (no code changes on i386)
2007-12-04 10:05:28 +00:00
Denis Vlasenko
7221c8c22d
lineedit: reduce stack usage
...
netstat: reduce stack usage; fix handling of NULs in unix socket filenames
static.has_inode 1 - -1
do_info 119 116 -3
deinit_S 60 51 -9
unix_do_one 578 451 -127
parse_and_put_prompt 966 825 -141
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 0/4 up/down: 0/-281) Total: -281 bytes
2007-12-03 10:45:14 +00:00
Denis Vlasenko
8003e266ed
explain why we use mmap instead of malloc
2007-12-02 07:18:29 +00:00
Denis Vlasenko
4c13922961
Introduce FEATURE_COPYBUF_KB.
...
People who want smaller stack at any cost may use it
to reduce cp's stack usage (FEATURE_COPYBUF_KB=1).
Desktop people may get faster copy of big files
(FEATURE_COPYBUF_KB=32 is ~30% faster than 4kb)
2007-12-02 03:27:42 +00:00
Denis Vlasenko
6672c8e480
test: stop using lots of bss.
...
function old new delta
test_main 425 456 +31
t_lex 69 73 +4
syntax 100 104 +4
ptr_to_statics 8 12 +4
t_wp_op 4 - -4
t_wp 4 - -4
ngroups 4 - -4
group_array 4 - -4
binop 590 585 -5
oexpr 104 97 -7
aexpr 101 94 -7
nexpr 831 820 -11
leaving 156 - -156
------------------------------------------------------------------------------
(add/remove: 0/5 grow/shrink: 4/4 up/down: 43/-202) Total: -159 bytes
text data bss dec hex filename
775098 929 9084 785111 bfad7 busybox_old
775107 933 8908 784948 bfa34 busybox_unstripped
2007-11-30 07:29:05 +00:00
Denis Vlasenko
745cd17926
Further optimize applet tables; prettify build output
...
text data bss dec hex filename
775923 929 9100 785952 bfe20 busybox_old
775565 929 9100 785594 bfcba busybox_unstripped
2007-11-29 03:31:20 +00:00
Denis Vlasenko
1aa7e477b1
reorganize applet table. Eliminates pointers to names.
...
Should be a big win for libbusybox. busybox wins too:
text data bss dec hex filename
776524 929 9100 786553 c0079 busybox_old
775903 929 9100 785932 bfe0c busybox_unstripped
2007-11-28 06:49:03 +00:00
Denis Vlasenko
6446c2d4ab
which: fix testsuite failure
...
pidof: do not output empty line if nothing found
testsuite: disable false positive
2007-11-25 04:54:13 +00:00
Denis Vlasenko
9d6c46955f
Introduce FEATURE_PREFER_IPV4_ADDRESS. If selected, we have:
...
function old new delta
str2sockaddr 328 344 +16
2007-11-14 10:18:33 +00:00
Denis Vlasenko
73cb1fdfea
lineedit: stop using both data/bss and tons of stack.
...
stack usage was ~10 kb!
unfortunately, noticeable code size growth:
text data bss dec hex filename
9252 12 181 9445 24e5 busybox.t7/libbb/lineedit.o
9714 4 0 9718 25f6 busybox.t8/libbb/lineedit.o
2007-11-10 01:35:47 +00:00
Denis Vlasenko
d031b203c7
syslogd: support "symlink to symlink" for /dev/log; reduce stack usage
...
function old new delta
create_socket - 134 +134
syslogd_main 1132 865 -267
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/1 up/down: 134/-267) Total: -133 bytes
text data bss dec hex filename
775603 974 9420 785997 bfe4d busybox_old
775445 974 9420 785839 bfdaf busybox_unstripped
2007-11-10 01:28:19 +00:00
Bernhard Reutner-Fischer
9bd8d0c23e
- commentary fixes
...
- use common exit sequence for failure path:
text data bss dec hex filename
308 0 0 308 134 libbb/xreadlink.o.pgf
296 0 0 296 128 libbb/xreadlink.o
2007-11-08 21:11:43 +00:00
Paul Fox
599bbfbd9b
xmalloc_follow_symlinks() -- fix ELOOP issue with absolute paths,
...
return full path in cases where path doesn't resolve to a link.
change name to better differentiate from xmalloc_readlink().
2007-11-08 20:00:36 +00:00
Denis Vlasenko
abbd363261
xreadlink: code shrink
...
udhcp: add missing tryagain member to client_config
function old new delta
xmalloc_readlink_follow 169 154 -15
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-15) Total: -15 bytes
2007-11-08 17:40:23 +00:00
Paul Fox
53bd4015aa
follow symlinks to find the true passwd file before updating.
2007-11-08 01:12:38 +00:00
Paul Fox
459a2ba1ef
new xmalloc_readlink_follow() routine to fully expand trailing symlinks
...
to get to a "real" file (or directory).
2007-11-08 01:11:41 +00:00
Denis Vlasenko
5281630229
login: clear dangerous environment variables if started by non-root
2007-11-06 05:26:51 +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
bfc3d82256
ifconfig: code shrink
...
adjtimex: code shrink
libbb: move nth_string function into libbb
hdparm: nth_string was here
text data bss dec hex filename
730013 10334 12032 752379 b7afb busybox_old
730093 10134 12032 752259 b7a83 busybox_unstripped
2007-11-04 04:10:17 +00:00
Denis Vlasenko
b68979aefa
insmod: code shrink, stop exporting insmod_ng_main.
...
function old new delta
add_ksymoops_symbols - 421 +421
static.section_names 20 40 +20
lsmod_main 425 424 -1
set_tainted 153 150 -3
main_opts 4 - -4
obj_symbol_patch 47 42 -5
obj_string_patch 144 139 -5
already_loaded 144 138 -6
check_dep 348 341 -7
append_option 75 68 -7
obj_allocate_commons 515 501 -14
new_process_module_arguments 1039 1018 -21
arch_new_symbol 31 9 -22
check_module_name_match 85 61 -24
obj_create_alloced_section 164 136 -28
include_conf 930 902 -28
modprobe_main 1643 1535 -108
obj_load 924 777 -147
insmod_ng_main 245 - -245
insmod_main 4122 3794 -328
------------------------------------------------------------------------------
(add/remove: 1/2 grow/shrink: 1/16 up/down: 441/-1003) Total: -562 bytes
text data bss dec hex filename
776020 974 9420 786414 bffee busybox_old
775384 974 9420 785778 bfd72 busybox_unstripped
2007-11-02 23:31:10 +00:00
Denis Vlasenko
15ca51e3e2
appletlib.c: make it actally follow _BB_SUID_ALWAYS rules
...
adduser: implement -S and code shrink / fix uid selection
*: sanitize getspnam_r use
text data bss dec hex filename
777042 974 9676 787692 c04ec busybox_old
776883 974 9676 787533 c044d busybox_unstripped
2007-10-29 19:25:45 +00:00
Denis Vlasenko
5a28a25b9d
syscall: code shrink
...
text data bss dec hex filename
777209 974 9676 787859 c0593 busybox_old
777042 974 9676 787692 c04ec busybox_unstripped
2007-10-29 19:22:13 +00:00
Denis Vlasenko
e5387a0574
bb_askpass: handle Ctrl-C, restore termoios on Ctrl-C.
...
sulogin: remove alarm handling, as it is redundant there.
code shrink. After all differences cancel out:
text data bss dec hex filename
777543 1000 9532 788075 c066b busybox_old
777543 1000 9532 788075 c066b busybox_unstripped
2007-10-20 19:20:22 +00:00
Denis Vlasenko
037576d77b
read_line_input: fix it to not do any fancy editing if echoing is disabled.
...
ash: make read handling both more correct and smaller
read_line_input 4037 4101 +64
input_backward 140 139 -1
readcmd 1079 1070 -9
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/2 up/down: 65/-10) Total: 54 bytes
text data bss dec hex filename
777575 1000 9532 788107 c068b busybox_old
777629 1000 9532 788161 c06c1 busybox_unstripped
2007-10-20 18:30:38 +00:00
Denis Vlasenko
2edbc2ab85
ping: fix breakage from -I fix
...
passwd: SELinux support by KaiGai Kohei <kaigai@ak.jp.nec.com>
2007-10-20 02:00:49 +00:00
Denis Vlasenko
aa7a888e42
kbd_mode: new applet by Loïc Grenié <loic.grenie@gmail.com>
...
kbd_mode_main - 189 +189
packed_usage 22745 22833 +88
applets 3132 3144 +12
static.opts 7 12 +5
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 3/0 up/down: 294/0) Total: 294 bytes
text data bss dec hex filename
777210 1000 9532 787742 c051e busybox_old
777575 1000 9532 788107 c068b busybox_unstripped
2007-10-20 00:17:34 +00:00
Denis Vlasenko
f74194e942
xatonum.h: add comment
...
lineedit: fix typo in comment
httpd: support for proxying connection to other http server
(by Alex Landau <landau_alex@yahoo.com>)
2007-10-18 12:54:39 +00:00
Denis Vlasenko
16e74b7464
another fix for build failure found by randomconfig
2007-10-17 09:59:01 +00:00
Denis Vlasenko
aff3a306b8
even more fixes from randomconfig runs
2007-10-16 23:00:50 +00:00
Denis Vlasenko
3f5fdc7572
remove trailing whitespace
2007-10-14 04:55:59 +00:00
Denis Vlasenko
15cb4a4272
fix a problem with two different applet_name's
2007-10-11 10:06:26 +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
724d196c75
Move applets/applet.c into libbb, allows to get rid of --whole-archive
...
(smaller code). Tested in static and shared mode.
2007-10-10 14:41:07 +00:00
Denis Vlasenko
82d38dab91
get rid of global "struct bb_applet *current_applet"
2007-10-10 14:38:47 +00:00
Denis Vlasenko
d419a9f830
whitespace fix
2007-10-08 20:45:42 +00:00
Denis Vlasenko
ac7d0e375e
add libbb/appletlib.c
2007-10-08 19:32:12 +00:00
Denis Vlasenko
d62fd84d4b
libbusybox: move (possibly compressed) help stuff into libbusybox.
...
Makes individual binaries much smaller.
2007-10-07 20:46:34 +00:00
Denis Vlasenko
feb7ae7f01
printf("%s\n") -> puts()
2007-10-01 12:05:12 +00:00
Denis Vlasenko
0c97c9d437
'simple' error message functions by Loic Grenie <loic.grenie@gmail.com>.
...
263 bytes saved.
2007-10-01 11:58:38 +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
a4f4de9b7e
print_signames_and_exit -> print_signames (because of "ash calls kill_main")
2007-09-30 16:32:01 +00:00
Denis Vlasenko
304a97a1ec
trivial typo fix
2007-09-29 22:49:26 +00:00
Denis Vlasenko
72e1c89d97
pgrep,pkill: new applets by Loic Grenie <loic.grenie@gmail.com>
2007-09-29 22:26:01 +00:00
Denis Vlasenko
2450e4ba44
xrealloc_getcwd_or_warn: smaller cod and less wasted RAM at run time
2007-09-29 19:19:55 +00:00
Denis Vlasenko
1ebd0a6d91
remove if() which is always true
2007-09-29 18:27:14 +00:00
Denis Vlasenko
ab8c9378c9
more "if (p) free(p)" fixes; fix a typo in comment
2007-09-28 22:13:55 +00:00
Denis Vlasenko
e918e155ed
remove stray semicolon
2007-09-28 21:56:36 +00:00
Denis Vlasenko
8607677529
libbb: make const_int_0 reside in rodata
2007-09-27 20:49:57 +00:00
Denis Vlasenko
1d31f0f380
libbb: align bb_common_bufsiz1 to "long long"
2007-09-27 20:46:08 +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
86b29ea9e8
lineedit: plug memory leak
2007-09-27 10:17:16 +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
6a5377ac14
documentation bits in comments, no code changes
2007-09-25 18:35:28 +00:00
Denis Vlasenko
818322b9b1
*: kill bb_get_last_path_component, replace with two functions
...
(one which strips trailing slash and one which does not)
wget: straighten out as a result of above change
text data bss dec hex filename
5056 1 0 5057 13c1 busybox.t4/networking/wget.o
5022 0 0 5022 139e busybox.t5/networking/wget.o
2007-09-24 18:27:04 +00:00
Denis Vlasenko
a9335eafcf
cp: make it a bit closer to POSIX, but still refuse to open and
...
write to dest which is a symlink.
2007-09-11 16:28:14 +00:00
Denis Vlasenko
fa05074eee
cp: make "cp file /dev/node" special case; explained in comments
...
function old new delta
copy_file 1487 1538 +51
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/0 up/down: 51/0) Total: 51 bytes
text data bss dec hex filename
772502 1051 10724 784277 bf795 busybox_old
772554 1051 10724 784329 bf7c9 busybox_unstripped
2007-09-11 10:39:13 +00:00
Denis Vlasenko
976690afe0
run_shell: code shrink for selinux
2007-09-10 17:17:01 +00:00
Denis Vlasenko
a2f61012b6
setup_environment: code shrink
...
run_shell: mark as NORETURN
setup_environment, run_shell: add usage comments
login: add FIXME :(
function old new delta
UNSPEC_print 64 66 +2
sulogin_main 509 506 -3
mkfs_minix_main 3070 3067 -3
login_main 1615 1612 -3
su_main 461 448 -13
setup_environment 261 206 -55
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/5 up/down: 2/-77) Total: -75 bytes
text data bss dec hex filename
772578 1051 10724 784353 bf7e1 busybox_old
772502 1051 10724 784277 bf795 busybox_unstripped
2007-09-10 13:15:28 +00:00
Denis Vlasenko
ff6e8e2974
top: TOPMEM feature - 's(how sizes)' command. +2.5k when enabled,
...
+80 bytes when disabled (mainly because of text wrapping fixes
in display_process_list).
2007-09-08 16:51:19 +00:00
Denis Vlasenko
c8d4d2f11d
messages: by popular request allow PATH to be customized at build time
...
mount: smallish code shrink
2007-09-07 19:33:56 +00:00
Denis Vlasenko
beffd43d8e
busybox --install -s: prevent puzzling "/bin/busybox: Invalid argument" message
...
libbb: comment out realpath, add readlink which doesn't warn
2007-09-05 11:30:34 +00:00
Denis Vlasenko
76c476f817
smart_ulltoa5: emit small letters k,m,g... - makes top
...
more readable
2007-08-28 20:04:15 +00:00
Denis Vlasenko
b308d81e92
top: use poll instead of select for waiting on one descriptor
...
smart_ulltoa5: make it more cryptic. -50 bytes.
function old new delta
passwd_main 1095 1103 +8
getNum 557 565 +8
buffer_fill_and_print 73 76 +3
udhcpc_main 2393 2395 +2
mkfs_minix_main 3071 3070 -1
dname_enc 377 373 -4
expmeta 480 472 -8
smart_ulltoa5 334 283 -51
top_main 911 815 -96
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 4/5 up/down: 21/-160) Total: -139 bytes
text data bss dec hex filename
770872 1063 10788 782723 bf183 busybox_old
770732 1063 10788 782583 bf0f7 busybox_unstripped
2007-08-28 19:35:34 +00:00
Denis Vlasenko
0f214ecef0
cp: fix recursion check to not waste bytes remembering names of dirs
2007-08-27 17:02:19 +00:00
Denis Vlasenko
8a5fab6333
cp: detect and prevent infinite recursion
2007-08-27 16:51:30 +00:00
Denis Vlasenko
512499c8ca
ps: fix RSS parsing (rss field in /proc/PID/stat is in pages, not bytes)
2007-08-26 18:23:13 +00:00
Denis Vlasenko
30bab71f7b
make copy_file() a bit easier to understand, and smaller
...
function old new delta
copy_file 1565 1447 -118
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-118) Total: -118 bytes
text data bss dec hex filename
770938 1063 10788 782789 bf1c5 busybox_old
770814 1063 10788 782665 bf149 busybox_unstripped
2007-08-25 21:14:55 +00:00
Denis Vlasenko
737d131e5e
support "#!/bin/busybox"-style wrappers. Needed for SELinux.
...
Patch by Yuichi Nakamura <ynakam@hitachisoft.jp>
2007-08-25 18:25:24 +00:00
Denis Vlasenko
6666ac42a5
cp,mv: simpler arg[cv] handling -> smallish code savings
2007-08-24 21:46:24 +00:00
Denis Vlasenko
3d829627fb
cp: make POSIX-me-harder mode complain with a bit less insane message
2007-08-24 14:23:57 +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
367960ba9a
make standalone httpd work on NOMMU machines
2007-08-18 14:20:21 +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
1b97efd66a
httpd shring and logging update, part 1 or 7
...
text data bss dec hex filename
9836 0 0 9836 266c busybox.t1/networking/httpd.o.orig
9724 0 0 9724 25fc busybox.t2/networking/httpd.o
9657 0 0 9657 25b9 busybox.t3/networking/httpd.o
9342 0 0 9342 247e busybox.t4/networking/httpd.o
9342 0 0 9342 247e busybox.t5/networking/httpd.o
9262 0 0 9262 242e busybox.t6/networking/httpd.o
9283 0 0 9283 2443 busybox.t7/networking/httpd.o
9334 0 0 9334 2476 busybox.t8/networking/httpd.o
2007-08-17 19:18:06 +00:00
Denis Vlasenko
a0319ba936
hdparm: shrink rodata by ~250 bytes
2007-08-16 10:37:49 +00:00
Denis Vlasenko
6a2f7f41cf
whitespace fixes, no code changes
2007-08-16 10:35:17 +00:00
Denis Vlasenko
ab9c44b1a4
v[hp]error_msg have 2-3 callsites only -> incorporate there.
2007-08-15 20:07:53 +00:00
Denis Vlasenko
bb23c06919
if pidfile turned out to be !regular file, do not unlink it.
...
It's most probably the /dev/null.
2007-08-15 20:05:37 +00:00
Denis Vlasenko
384b1d12f9
httpd: add -v[v]: prints client addresses, HTTP codes returned [and URLs]
...
get_line - 70 +70
packed_usage 22811 22863 +52
handle_incoming_and_exit 2246 2277 +31
httpd_main 1141 1155 +14
sendHeaders 489 482 -7
getLine 77 - -77
------------------------------------------------------------------------------
(add/remove: 1/1 grow/shrink: 3/1 up/down: 167/-84) Total: 83 bytes
text data bss dec hex filename
774335 1058 11092 786485 c0035 busybox_old
774447 1058 11092 786597 c00a5 busybox_unstripped
2007-08-14 16:55:01 +00:00
Denis Vlasenko
dbe6e66d6a
trylink: automatically use custom link script if user provides one
...
vinfo_msg: one user (info_msg), incorporate in it
*: style fixes
2007-08-14 16:43:01 +00:00
Denis Vlasenko
3952f20c24
expand, unexpand: new applets from Tito <farmatito@tiscali.it>
2007-08-13 14:10:24 +00:00
Denis Vlasenko
e324184c05
s/#ifdef CONFIG_/#if ENABLE_/g
2007-08-13 10:36:25 +00:00
Denis Vlasenko
6ca409e0e4
trylink: produce even more info about final link stage
...
trylink: explain how to modify link and drastically decrease amount
of padding (unfortunately, needs hand editing ATM).
*: add ALIGN1 / ALIGN2 to global strings and arrays of bytes and shorts
size saving: 0.5k
2007-08-12 20:58:27 +00:00
Denis Vlasenko
e5d37ccb6e
httpd: fix CGI handling bug (we were closing wrong fd).
2007-08-11 20:20:02 +00:00
Denis Vlasenko
f893da875a
ls,ps,watch: measure terminal width on fd 0, not 1
2007-08-09 08:27:24 +00:00
Denis Vlasenko
501bfe2630
stat: fix option -Z segv (bug 1454)
2007-08-09 08:10:13 +00:00
Denis Vlasenko
e5dbba22af
bb_uudecode: now this is the more thorough fix... I hope...
2007-08-06 15:49:12 +00:00
Denis Vlasenko
4661117911
bb_uuencode: fix obscure case where we were using data past last byte of source
...
(fixes testsuite failure)
bb_uuencode 154 160 +6
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/0 up/down: 6/0) Total: 6 bytes
text data bss dec hex filename
770284 1096 11228 782608 bf110 busybox_old
770288 1096 11228 782612 bf114 busybox_unstripped
2007-08-06 15:43:17 +00:00
Denis Vlasenko
0e2c9fb4e0
mount: print errno on NFS error (again)
2007-08-03 14:16:24 +00:00
Denis Vlasenko
80edead5ea
udhcp: slight shrink
...
udhcpd_main 1171 1208 +37
udhcpc_main 2363 2387 +24
dhcprelay_main 1145 1146 +1
dhcprelay_stopflag 4 1 -3
dhcprelay_signal_handler 11 8 -3
client_background 46 42 -4
udhcp_read_interface 230 211 -19
udhcp_make_pidfile 76 - -76
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 3/4 up/down: 62/-105) Total: -43 bytes
text data bss dec hex filename
770052 1096 11228 782376 bf028 busybox_old
769980 1096 11228 782304 befe0 busybox_unstripped
2007-08-02 22:31:05 +00:00
Denis Vlasenko
1caca34aa6
start_stop_daemon: NOMMU fixes, round 2 by Alex Landau <landau_alex@yahoo.com>
...
dhcpc: fixed "ifupdown + udhcpc_without_pidpile_creation" bug
2007-08-02 10:14:29 +00:00
Denis Vlasenko
a1b16f4d5c
start_stop_daemon: NOMMU fix; smaller fixes
2007-07-31 17:09:44 +00:00
Denis Vlasenko
1bab1de698
fix for suffix optimization (which was in previous commit)
2007-07-27 15:30:39 +00:00
Denis Vlasenko
3734b946bf
bb_getpwuid, bb_getgrgid: change order of arguments to more intuitive one;
...
comment thoroughly when they die and when they dont.
2007-07-27 11:20:10 +00:00
Denis Vlasenko
f4cee7a174
getopt32: fix getopt32 breakage (forgot to memset(0) it) -- thanks rockeychu
2007-07-25 17:18:06 +00:00
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
5bfcb4d5ae
getopt32 must remain NOFORK-safe (no mallocs!). Using alloca and pretending
...
stack is infinite. Unfortunately, +79 bytes.
2007-07-23 17:40:35 +00:00
Denis Vlasenko
bdc88fdc68
rework long option handling. saves ~1.2k
...
function old new delta
tar_longopts - 222 +222
static.udhcpc_longopts - 192 +192
start_stop_daemon_longopts - 150 +150
getopt32 1045 1185 +140
static.wget_longopts - 111 +111
static.od_longopts - 105 +105
getopt_longopts - 96 +96
install_longopts - 67 +67
ipcalc_longopts - 63 +63
static.hwclock_longopts - 54 +54
ftpgetput_longopts - 52 +52
static.dumpleases_longopts - 32 +32
env_longopts - 31 +31
runparts_longopts - 30 +30
mv_longopts - 24 +24
mkdir_longopts - 19 +19
find_pair 164 180 +16
bb_null_long_options - 16 +16
setconsole_longopts - 10 +10
display_speed 91 98 +7
collect_blk 467 474 +7
show_color 4 1 -3
ls_main 913 904 -9
bb_default_long_options 16 - -16
ls_color_opt 32 10 -22
setconsole_long_options 32 - -32
arith 2077 2030 -47
mv_long_options 48 - -48
mkdir_long_options 48 - -48
env_long_options 48 - -48
static.options 248 184 -64
runparts_long_options 80 - -80
ftpgetput_long_options 96 - -96
static.hwclock_long_options 112 - -112
install_long_options 112 - -112
static.long_options 144 - -144
static.wget_long_options 160 - -160
longopts 160 - -160
static.arg_options 304 - -304
tar_long_options 320 - -320
long_options 384 - -384
------------------------------------------------------------------------------
(add/remove: 17/15 grow/shrink: 4/5 up/down: 1444/-2209) Total: -765 bytes
text data bss dec hex filename
782618 1328 11900 795846 c24c6 busybox_old
781354 1328 11900 794582 c1fd6 busybox_unstripped
2007-07-23 17:14:14 +00:00
Denis Vlasenko
b71c668c57
style fix (stray space before ';')
2007-07-21 15:08:09 +00:00
Denis Vlasenko
091965768d
libbb: nuke BB_GETOPT_ERROR, always die if there are mutually exclusive options
...
find_pair 164 180 +16
passwd_main 1222 1230 +8
display_speed 91 96 +5
msh_main 1335 1339 +4
qrealloc 38 36 -2
refresh 1190 1182 -8
cut_main 543 532 -11
sendCgi 1807 1794 -13
getopt32 1063 1045 -18
arith 2077 2030 -47
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 4/6 up/down: 33/-99) Total: -66 bytes
text data bss dec hex filename
781548 1168 11900 794616 c1ff8 busybox_old
781452 1168 11900 794520 c1f98 busybox_unstripped
2007-07-21 13:27:44 +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
1ec5eaecba
chpasswd: now with svn add
2007-07-20 21:29:49 +00:00
Denis Vlasenko
21d1014b5b
chpasswd: new applet by Alexander Shishkin <virtuoso@slind.org>
2007-07-20 21:28:41 +00:00
Denis Vlasenko
2f6ae43b9c
stray trailing tabs removed
2007-07-19 22:50:47 +00:00
Denis Vlasenko
49a128a156
remove accumulated stray trailing whitespace
2007-07-17 21:42:59 +00:00
Denis Vlasenko
fb79a2e2cf
xioctl and friends by Tito <farmatito@tiscali.it>
...
function old new delta
do_iptunnel 203 977 +774
process_dev 5328 5494 +166
ioctl_or_perror - 54 +54
ioctl_or_perror_and_die - 51 +51
ioctl_alt_func - 49 +49
bb_ioctl_or_warn - 47 +47
do_add_ioctl 102 145 +43
bb_xioctl - 39 +39
print_value_on_off - 31 +31
get_lcm 105 123 +18
arp_main 2155 2167 +12
..................
zcip_main 1576 1566 -10
setlogcons_main 92 82 -10
dumpkmap_main 263 253 -10
do_get_ioctl 85 75 -10
setkeycodes_main 165 154 -11
write_table 244 232 -12
vconfig_main 318 306 -12
do_del_ioctl 93 81 -12
set_address 75 62 -13
maybe_set_utc 30 16 -14
loadfont_main 495 479 -16
slattach_main 712 695 -17
do_loadfont 191 174 -17
do_iplink 1155 1136 -19
getty_main 2583 2562 -21
fbset_main 2058 2035 -23
do_time 588 565 -23
xioctl 25 - -25
read_rtc 186 160 -26
parse_conf 1299 1270 -29
udhcp_read_interface 269 239 -30
bb_ioctl 45 - -45
bb_ioctl_alt 70 - -70
bb_ioctl_on_off 78 - -78
.rodata 129370 129018 -352
do_show 799 - -799
------------------------------------------------------------------------------
(add/remove: 6/5 grow/shrink: 13/49 up/down: 1316/-1864) Total: -548 bytes
text data bss dec hex filename
675352 2740 13968 692060 a8f5c busybox_old
674804 2740 13968 691512 a8d38 busybox_unstripped
2007-07-14 22:07:14 +00:00
Denis Vlasenko
d166f83d74
md5_sha1_sum: fix mishandling when run as /bin/md5sum (with path)
...
chown/chgrp: completely match coreutils 6.8 wrt symlink handling
function old new delta
recursive_action 411 422 +11
arith 2033 2042 +9
collect_blk 467 474 +7
dhcprelay_main 1122 1125 +3
fsck_main 1909 1911 +2
singlemount 4555 4547 -8
xmalloc_realpath 14 - -14
get_lcm 123 105 -18
ed_main 3111 3084 -27
chown_main 217 183 -34
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 5/4 up/down: 32/-101) Total: -69 bytes
text data bss dec hex filename
684132 2744 14000 700876 ab1cc busybox_old
684060 2744 14000 700804 ab184 busybox_unstripped
2007-07-05 00:12:55 +00:00
Denis Vlasenko
54e19da86d
correct_password: if password is 'x' or '*' and there is no shadow, use
...
fake encrypted password 'aa' (which is guaranteed to fail password check).
2007-07-03 10:28:46 +00:00
Denis Vlasenko
e190c16636
correct_password: do not print "no shadow passwd..." message
...
function old new delta
correct_password 204 191 -13
.rodata 129530 129466 -64
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-77) Total: -77 bytes
text data bss dec hex filename
675984 2744 13968 692696 a91d8 busybox_old
675908 2744 13968 692620 a918c busybox_unstripped
2007-07-03 06:15:42 +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
98ebab8b76
top,ps: improve /proc/PID/cmdinfo reading code
...
function old new delta
display_status - 1231 +1231
read_cmdline - 101 +101
parse_conf 1284 1303 +19
arith 2033 2042 +9
collect_blk 467 474 +7
fsck_main 1909 1911 +2
dhcprelay_main 1125 1122 -3
singlemount 4555 4547 -8
read_close 50 36 -14
get_lcm 123 105 -18
ed_main 3111 3084 -27
func_args 73 28 -45
procps_scan 732 658 -74
top_main 2187 899 -1288
------------------------------------------------------------------------------
(add/remove: 2/0 grow/shrink: 4/8 up/down: 1369/-1477) Total: -108 bytes
text data bss dec hex filename
676048 2744 13968 692760 a9218 busybox_old
675940 2744 13968 692652 a91ac busybox_unstripped
2007-06-30 14:47:41 +00:00
Denis Vlasenko
8b1409896d
add bb_basename.c
2007-06-30 10:58:08 +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
f7d07b1723
killall, pidof: use argv0 for process matching too
...
top: show cmdline, not comm field
(fixes problems with re-execed applets showing as processes with name "exe",
and not being found by pidof/killall by applet name)
function old new delta
find_pid_by_name 98 156 +58
procps_scan 692 732 +40
top_main 2724 2762 +38
find_pair 164 180 +16
collect_int 114 123 +9
cmp_main 547 555 +8
collect_fork 112 119 +7
collect_ctx 112 119 +7
read_package_field 253 257 +4
passwd_main 1983 1985 +2
process_stdin 435 433 -2
xstrtoul_range_sfx 229 226 -3
get_next_block 1852 1849 -3
arith 2042 2033 -9
sv_main 1236 1226 -10
singlemount 4690 4672 -18
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 10/6 up/down: 189/-45) Total: 144 bytes
text data bss dec hex filename
734789 3028 14400 752217 b7a59 busybox_old
734933 3028 14400 752361 b7ae9 busybox_unstripped
2007-06-30 08:03:26 +00:00
Denis Vlasenko
42ee26d00c
procps: shrink /proc scanning code a bit
...
function old new delta
skip_fields 16 15 -1
.rodata 144266 144258 -8
procps_scan 739 692 -47
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/3 up/down: 0/-56) Total: -56 bytes
text data bss dec hex filename
734845 3028 14400 752273 b7a91 busybox_old
734789 3028 14400 752217 b7a59 busybox_unstripped
2007-06-30 08:01:04 +00:00
Denis Vlasenko
e8240f19bd
uuencode: shrink
...
function old new delta
uuencode_main 427 337 -90
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-90) Total: -90 bytes
text data bss dec hex filename
734981 3028 14400 752409 b7b19 busybox_old
734889 3028 14400 752317 b7abd busybox_unstripped
2007-06-26 15:59:37 +00:00
Denis Vlasenko
80b8b39899
Consolidate ARRAY_SIZE macro; remove one unneeded global var (walter harms <wharms@bfs.de>)
2007-06-25 10:55:35 +00:00
Denis Vlasenko
198badafd8
pidof: size optimizations (-50 bytes)
2007-06-23 14:56:43 +00:00
Denis Vlasenko
931de892cc
random shrinkage of statics, -60 bytes saved
2007-06-21 12:43:45 +00:00
Denis Vlasenko
88976d00d8
remove extra ')'
2007-06-21 07:09:18 +00:00
Denis Vlasenko
7510384107
do not do utime() on links, it acts on link targets, and we don't want that.
...
rename link_name to link_target, less confusing this way.
2007-06-20 14:49:47 +00:00
Denis Vlasenko
31789a81d5
top,ps: 'stringify' tty only when needed. -60 bytes.
2007-06-19 14:43:17 +00:00
Denis Vlasenko
362c6ec694
top: speedup if tty info is not requested
2007-06-19 13:53:12 +00:00
Denis Vlasenko
3afac4ce06
top,ps: reduce CPU usage in decimal conversion (optional)
...
text data bss dec hex filename
734651 3040 14416 752107 b79eb busybox_old
734751 3040 14416 752207 b7a4f busybox_unstripped
2007-06-19 13:46:24 +00:00
Denis Vlasenko
a61cb92f2d
make /etc/network parsing configurable. -200 bytes when off.
2007-06-19 11:24:47 +00:00
Denis Vlasenko
6d9ea24611
networking/interface.c: huke remaining big statics; use malloc for INET[6]_rresolve
...
return value. Went thru callers and adjusted them - code got smaller too.
function old new delta
ip_port_str - 126 +126
INET6_rresolve 165 182 +17
static.cache 20 24 +4
route_main 2092 2091 -1
INET_sprint 61 59 -2
INET_nn 4 - -4
INET6_sprint 59 53 -6
udp_do_one 518 508 -10
tcp_do_one 433 423 -10
raw_do_one 494 484 -10
traceroute_main 4117 4105 -12
INET_rresolve 334 321 -13
bb_displayroutes 494 456 -38
snprint_ip_port 244 - -244
static.buff 264 16 -248
------------------------------------------------------------------------------
(add/remove: 1/2 grow/shrink: 2/10 up/down: 147/-598) Total: -451 bytes
size busybox_old busybox_unstripped
text data bss dec hex filename
751073 3048 14688 768809 bbb29 busybox_old
750873 3048 14440 768361 bb969 busybox_unstripped
2007-06-19 11:12:46 +00:00
Denis Vlasenko
1b16bdaebf
networking/interface.c: reduce bss usage
...
function old new delta
.rodata 158918 158950 +32
display_interfaces 133 153 +20
UNSPEC_print 56 68 +12
pr_ether 59 65 +6
static.proc_read 4 1 -3
interface_opt_a 4 1 -3
in_ether 139 136 -3
ifconfig_main 1296 1293 -3
if_readlist_proc 686 680 -6
ife_print 1350 1338 -12
do_if_print 46 - -46
static.buff 369 264 -105
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 4/7 up/down: 70/-181) Total: -111 bytes
# size busybox_old busybox_unstripped
text data bss dec hex filename
751073 3080 14800 768953 bbbb9 busybox_old
751073 3048 14688 768809 bbb29 busybox_unstripped
2007-06-19 11:10:02 +00:00
Denis Vlasenko
91e149a373
libbb: random hunt for statics
...
function old new delta
bb_askpass 306 321 +15
pw_encrypt 38 39 +1
static.passwd 64 4 -60
static.cipher 128 4 -124
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/2 up/down: 16/-184) Total: -168 bytes
# size busybox_old busybox_unstripped
text data bss dec hex filename
683705 2704 14240 700649 ab0e9 busybox_old
683721 2704 14064 700489 ab049 busybox_unstripped
2007-06-18 10:35:06 +00:00
Mike Frysinger
ebd27aabaa
fix an obvious typo while trying to access the tv_usec member
2007-06-18 07:12:31 +00:00
Denis Vlasenko
bd7bb299c0
wget: use monotonic_sec instead of gettimeofday
...
zcip: use monotonic_us instead of gettimeofday
udhcpcd: simpler, shorter random_xid()
function old new delta
monotonic_sec - 41 +41
find_pair 164 180 +16
run_list_real 2018 2028 +10
cmp_main 547 555 +8
collect_ctx 112 119 +7
singlemount 4544 4549 +5
time_main 1124 1128 +4
static.start_sec - 4 +4
static.lastupdate_sec - 4 +4
sock - 4 +4
read_package_field 253 257 +4
pick 38 40 +2
get_next_line 145 147 +2
count_lines 59 61 +2
process_stdin 435 433 -2
xstrtoul_range_sfx 229 226 -3
static.initialized 4 1 -3
dhcprelay_main 1125 1122 -3
catcher 380 377 -3
arping_main 1969 1966 -3
s 8 4 -4
cfg 4 - -4
static.lastupdate 8 - -8
start 8 - -8
random_xid 95 33 -62
.rodata 129114 129050 -64
zcip_main 1731 1576 -155
progressmeter 1035 867 -168
------------------------------------------------------------------------------
(add/remove: 4/3 grow/shrink: 10/11 up/down: 113/-490) Total: -377 bytes
2007-06-17 23:40:26 +00:00
Denis Vlasenko
459be35234
hwclock: size optimizations
...
libbb/time.c: new file, introducing monotonic_us()
pscan, traceroute, arping: use it instead of gettimeofday
ping, zcip: TODO
function old new delta
monotonic_us - 89 +89
find_pair 164 180 +16
.rodata 129747 129763 +16
refresh 1144 1152 +8
............
timeout 8 4 -4
static.start 8 4 -4
last 8 4 -4
parse_conf 1303 1284 -19
time_main 1149 1124 -25
gettimeofday_us 39 - -39
arping_main 2042 1969 -73
hwclock_main 594 501 -93
catcher 485 380 -105
traceroute_main 4300 4117 -183
------------------------------------------------------------------------------
(add/remove: 2/1 grow/shrink: 8/11 up/down: 157/-562) Total: -405 bytes
2007-06-17 19:09:05 +00:00
Denis Vlasenko
85532fc4d4
remove obsolete comment
2007-06-16 14:16:30 +00:00
Denis Vlasenko
53a0e97196
find: make -size match GNU find
2007-06-16 00:30:52 +00:00
Bernhard Reutner-Fischer
867266059b
- vda perfers not to use the banner
2007-06-15 08:30:33 +00:00
Denis Vlasenko
d8540f71ac
init: make sure fd 0,1,2 are not closed, + related optimizations.
...
init_main 929 920 -9
bb_daemonize_or_rexec 145 127 -18
2007-06-14 07:53:06 +00:00
Denis Vlasenko
ca525b4f24
*: BB_BANNER -> bb_banner (it is not a const or #define)!
...
correct_password: explain in detail why it is ok to use bb_banner
fsck_minix: make it print bb version, not it's own (outdated/irrelevant) one
Marginal size difference:
text data bss dec hex filename
679119 2700 15632 697451 aa46b busybox_old
679091 2700 15632 697423 aa44f busybox_unstripped
2007-06-13 12:27:17 +00:00
Denis Vlasenko
d67cef2425
hush: fix read builtin to not read ahead past eol and to not use
...
insane amounts of stack. Testsuite updated.
2007-06-13 06:47:47 +00:00
Denis Vlasenko
f5f75c5e82
remove nearly-duplicate PATHs in several places
...
function old new delta
bb_PATH_root_path - 35 +35
varunset 60 58 -2
arith 2042 2033 -9
bb_default_root_login_path 30 - -30
.rodata 128794 128762 -32
which_main 152 117 -35
defpathvar 40 - -40
------------------------------------------------------------------------------
(add/remove: 1/2 grow/shrink: 0/4 up/down: 35/-148) Total: -113 bytes
2007-06-12 22:35:19 +00:00
Denis Vlasenko
f312e32662
login: make /etc/nologin support configurable. -240 bytes if not selected.
2007-06-12 22:04:57 +00:00
Denis Vlasenko
3ad5d0cbbe
diff: shrink code (-85 bytes):
...
function old new delta
fiddle_sum 8 - -8
diffreg 2717 2690 -27
prepare 334 284 -50
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 0/2 up/down: 0/-85) Total: -85 bytes
s/ATTRIBUTE_ALWAYS_INLINE/ALWAYS_INLINE/g
2007-06-12 20:54:54 +00:00
Denis Vlasenko
15611bb958
A few more string duplicates found & eliminated
...
# size busybox_old busybox_unstripped
text data bss dec hex filename
679693 2700 15632 698025 aa6a9 busybox_old
679523 2700 15632 697855 aa5ff busybox_unstripped
2007-06-12 08:52:02 +00:00
Denis Vlasenko
aa198dd39c
uudecode: nuke duplicate base64_table[]. saves 65 bytes
2007-06-12 07:24:11 +00:00
Bernhard Reutner-Fischer
d71e45856e
- use bb_msg_full_version instead of a separate string. Saves a minor 3 bytes.
2007-06-11 15:09:21 +00:00
Denis Vlasenko
5a65447e30
top: add config option and code for global CPU % display
2007-06-10 17:11:59 +00:00
Denis Vlasenko
e8a0788b24
moved biggest stack buffers to malloc space, or made their size configurable
...
(8k of shell line edit buffer is an overkill)
# make ARCH=i386 bloatcheck
function old new delta
read_line_input 3933 3967 +34
ifaddrlist 348 345 -3
do_loadfont 208 191 -17
edit_file 840 819 -21
.rodata 129112 129080 -32
uncompress 1305 1268 -37
loadfont_main 566 495 -71
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/6 up/down: 34/-181) Total: -147 bytes
2007-06-10 15:08:44 +00:00
Denis Vlasenko
65e14b4588
login: ask passwords even for wrong usernames.
...
# size busybox_old busybox_unstripped
text data bss dec hex filename
680099 2704 15648 698451 aa853 busybox_old
680110 2704 15648 698462 aa85e busybox_unstripped
2007-06-08 15:27:06 +00:00
Denis Vlasenko
bdbbb7ec49
make busybox --install work even if /proc/self/exe doesn't exist
...
# size busybox_old busybox_unstripped
text data bss dec hex filename
680095 2704 15648 698447 aa84f busybox_old
680099 2704 15648 698451 aa853 busybox_unstripped
2007-06-08 15:02:55 +00:00
Denis Vlasenko
0696b8aae8
ps: fix -Z (by Yuichi Nakamura <ynakam@hitachisoft.jp>)
2007-06-06 07:40:16 +00:00
Denis Vlasenko
5c51a7ca52
nc: make connecting to IPv4 from IPv6-enabled hosts easier
...
(was requiring -s <local addr>)
2007-06-05 20:08:11 +00:00
Denis Vlasenko
74324c8666
Audit bb_common_bufsiz usage, add script which looks for misuse.
...
tr: stop using globals needlessly.
code: -103 bytes
2007-06-04 10:16:52 +00:00
Denis Vlasenko
9a7d38fe24
delete tons of extra #includes
2007-05-31 22:42:12 +00:00
Denis Vlasenko
fad2b86c9e
use "glibc errno" trick not only for ash, but for entire busybox
...
(add/remove: 1/1 grow/shrink: 37/37 up/down: 139/-228) Total: -89 bytes
2007-05-31 22:16:38 +00:00
Denis Vlasenko
4b924f3a5c
whitespace fixes
2007-05-30 00:29:55 +00:00
Denis Vlasenko
4ef7d3a2de
verror_msg: don't printf(NULL)
2007-05-29 21:41: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
b055001b6a
hush: fix handling of unmatched ${name (without closing '}') -
...
was eating all remaining input, potentially megabytes.
nofork: save/restore die_jmp too
nofork: use -2222 instead of -111 as "special" return valur for zero
(-111 is used by some applets. -2222 won't fit in exitcode and thus safer)
2007-05-24 12:18:16 +00:00
Denis Vlasenko
96f67dc69d
more compile fixes from randomconfig run
2007-05-17 13:02:41 +00:00
Denis Vlasenko
d46e6d1a55
fix trivial compile errors found by randomconfig run
2007-05-17 12:58:30 +00:00
Denis Vlasenko
a035e9f1a9
cryptpw: forgot svn add... how typical of me :(
2007-05-08 23:23:35 +00:00
Denis Vlasenko
7e84e539de
cryptpw: new applet (a bit less than 3k added)
...
(by Thomas Lundquist <lists@zelow.no>)
2007-05-08 17:52:17 +00:00
Denis Vlasenko
3bc18253b0
fix suid config handling
2007-05-02 23:01:32 +00:00
Denis Vlasenko
dcf4de20a1
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
2007-05-01 20:07:29 +00:00
Denis Vlasenko
18e19f2b0d
hush: fix nofork + ctrl-Z clobbering of globals
2007-04-28 16:43:18 +00:00
Denis Vlasenko
706fdc98c3
find_root_device: use lstat - don't follow links
2007-04-21 23:28:03 +00:00
Denis Vlasenko
54e7ffb3a4
hush: begin fixing non-functional job control
2007-04-21 00:03:36 +00:00
Denis Vlasenko
8581863a1b
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
2007-04-19 14:47:11 +00:00
Denis Vlasenko
516a0ca2dc
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
2007-04-19 14:46:14 +00:00
Denis Vlasenko
c34d35557b
loop device code: readability improvement
2007-04-19 00:09:34 +00:00
Denis Vlasenko
0922192740
lineedit: state->hist_file doesn't exist if !FEATURE_EDITING_SAVEHISTORY,
...
#ifdef it out
2007-04-15 13:21:01 +00:00
Denis Vlasenko
5f9468e996
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.
2007-04-14 13:22:09 +00:00
Denis Vlasenko
bf3561fd15
lineedit: do not try to open NULL history file
2007-04-14 10:10:40 +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
16abcd90ae
teach find_root_device to deal with /dev/ subdirs
...
(by "Kirill K. Smirnov" <lich@math.spbu.ru>)
2007-04-13 23:59:52 +00:00
Denis Vlasenko
1d6a4aec2c
make xsocket die with address family printed (if VERBOSE_RESOLUTION_ERRORS=y)
2007-04-13 21:26:20 +00:00
Denis Vlasenko
0de3c55b42
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.
2007-04-12 12:31:02 +00:00
Denis Vlasenko
831a20f512
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
2007-04-12 12:27:32 +00:00
Bernhard Reutner-Fischer
b290889f02
- add xsendto and use where appropriate; shrink iplink; sanitize libiproute a bit.
...
-916 byte
2007-04-12 11:34:39 +00:00
Denis Vlasenko
51742f4bb0
style fixes. No code changes
2007-04-12 00:32:05 +00:00
Denis Vlasenko
50f7f446ec
bb_full_fd_action: remove potential xmalloc from NOFORK path
...
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
2007-04-11 23:20:53 +00:00
Denis Vlasenko
d571c08c25
fix misplaced #if
2007-04-11 07:26:56 +00:00
Denis Vlasenko
473dae080a
add more convenient defines for [NO]MMU:
...
"#ifndef BB_NOMMU" is a double negative
2007-04-11 07:04:23 +00:00
Denis Vlasenko
f1a7141cfc
random NOMMU fixes. compressed --help really does work for NOMMU! /me happy
2007-04-10 23:32:37 +00:00
Denis Vlasenko
80d14beae9
Rename two config options:
...
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
2007-04-10 23:03:30 +00:00
Denis Vlasenko
c6758a07c6
make compressed help code NOMMU- and NOFORK-friendly -
...
no forking anymore, bunzip2 unpack routine now does all it in memory.
2007-04-10 21:40:19 +00:00
Denis Vlasenko
335b63d8d1
make a few struct bb_applet members conditional
...
rename sllep_and_die -> xfunc_die
make fflush_stdout_and_exit NOFORK-safe
fix some buglets found by randomconfig
2007-04-10 21:38:30 +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
ff131b980d
style fixes. No code changes.
2007-04-10 15:42:06 +00:00
Bernhard Reutner-Fischer
7e8a53a335
- add libbb function str_tolower to convert a string to lowercase.
...
- shrink wget a bit
2007-04-10 09:37:29 +00:00
Denis Vlasenko
3f3aa2a57d
make xfunctions optionally longjump instead of exit.
...
use it for making NOFORK more practical.
touch: make it a NOFORK applet
2007-04-09 21:35:07 +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
53d445aa75
wait4pid: if passed with pid < 0, do not set errno - it is already set by exec!
2007-04-09 13:21:33 +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
8d9f495d68
getopt32: fix llist_t options ordering. llist_rev is not unused.
...
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
2007-04-08 15:08:42 +00:00
Denis Vlasenko
bbd695d801
find: fix handling of -prune
...
recursive_actions: uppercase flag constants
2007-04-08 10:52:28 +00:00
Denis Vlasenko
04c99ebb4f
random small shrinkage and elimination of statics
2007-04-07 00:44:31 +00:00
Denis Vlasenko
5a30d59c3d
svn add match_fstype.c :(
2007-04-05 22:19:43 +00:00
Denis Vlasenko
bf295dd5b6
[u]mount: extend -t option (Roy Marples <uberlord@gentoo.org>)
2007-04-05 21:57:47 +00:00
Denis Vlasenko
1bb552b1d9
libbb: add xunlink()
...
patch: do not try to delete same file twice
2007-04-05 21:25:15 +00:00
Denis Vlasenko
29fe7265b8
nc: port nc 1.10 to busybox
2007-04-05 20:26:28 +00:00
Bernhard Reutner-Fischer
bdd253e450
- fix segfault in reset_ino_dev_hashtable() when *hashtable was null.
...
Seen in the testsuite for du -l .../testsuite on exit with CLEAN_UP enabled.
2007-04-05 09:21:24 +00:00
Denis Vlasenko
729bd9e0b0
test: comment out unused code
...
udpsvd: fake it compile
tcpsvd: more optimal memorizing of IP's for -C
2007-04-02 12:37:28 +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
Bernhard Reutner-Fischer
eceecea568
- fix bug where we did not reject invalid classes like '[[:alpha'
...
- debloat while at it:
text data bss dec hex filename
1554 0 19 1573 625 tr.o.oorig
1357 0 16 1373 55d tr.o
2007-03-30 14:43:27 +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
450196c119
ps: work around libc bug: printf("%.*s\n", MAX_INT, buffer)
2007-03-28 21:57:12 +00:00
Denis Vlasenko
6a5598c2bc
pidfile creation mode set to 0666 (umask affects it as usual)
2007-03-27 22:05:34 +00:00
Denis Vlasenko
ebf48bb80c
forgotten svn add...
2007-03-27 22:02:06 +00:00
Denis Vlasenko
10457b90db
make pidfile writing configurable.
...
[ui]toa_to_buf: change API. No users yet.
2007-03-27 22:01:31 +00:00
Denis Vlasenko
f4d40c87d3
remove_file: cosmetic code improvement, a few bytes saved
2007-03-26 23:14:38 +00:00
Denis Vlasenko
afa7023b46
zcip: make it work on NOMMU (+ improve NOMMU support machinery)
...
fsck: fix bad English in a comment
2007-03-26 17:25:33 +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
bb7fcb4229
libbb: rework NOMMU helper API so that it makes more sense
...
and easier to use. Doesn't compile - need two more commits.
2007-03-26 13:20:04 +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
219d14d514
random style fixes (extra spaces deleted)
2007-03-24 15:40:16 +00:00
Denis Vlasenko
9067f13be0
NOMMU re-exec trick shuld not depend on existence of "don't daemonize"
...
option for every affected applet (and dnsd, for example, don't have one).
Thus rework re-exec support to not require it. Code got smaller too.
2007-03-24 12:11:17 +00:00
Denis Vlasenko
1b6fa4c57c
applets.c, xfunc.c: style cleanup
2007-03-24 12:08:36 +00:00
Denis Vlasenko
c86e052b81
fix accumulated whitespace and indentation damage
2007-03-20 11:30:28 +00:00
Denis Vlasenko
6b343ddbc8
fix inadvertently leaked PWD_BUFFER_SIZE
2007-03-18 00:57:15 +00:00
Denis Vlasenko
bff32ce4d5
gzip: Improve ptr_to_globals trick, allowing gcc
...
to optimize better. -480 bytes.
2007-03-15 19:48:35 +00:00
Denis Vlasenko
54d14ca1a2
copy_file: comment out one condition which is always false.
...
Add comment explaining POSIX rules for cp - and why
these rules are dangerous. Provide conditionally compiled code
for both POSIX and safe behaviors, select safe for now.
Code shrunk by ~80 bytes.
2007-03-15 13:33:37 +00:00
Denis Vlasenko
24af7201e9
fix TODO: getopt32 should reset optind to 1 itself
2007-03-15 13:28:46 +00:00
Denis Vlasenko
972288e62f
modify ptr_to_globals trick so that we do not violate
...
type safety (well, sort of ;))
2007-03-15 00:57:01 +00:00
Denis Vlasenko
5659407595
swapon: reinstate hole check but reduce it to warning
...
inode_hash: remove unused variable
2007-03-14 22:55:39 +00:00
Denis Vlasenko
6ef06eeed4
stop using big static buffer for inode hash
2007-03-14 22:06:01 +00:00
Denis Vlasenko
75ab6af71e
stop using (yet another) static buffer
2007-03-14 21:56:51 +00:00
Denis Vlasenko
07766bb0e7
gzip: reduce global data footprint, part 3
2007-03-14 00:06:51 +00:00
Denis Vlasenko
da799e8227
gzip: reduce global data footprint, part 2
2007-03-14 00:06:29 +00:00
Denis Vlasenko
5df955fce2
Do not fail password check if shadow password does not exist -
...
fall back to ordinary one
Reduced usage of functions returning datain static buffers.
(mostly passwd/group/shadow related):
function old new delta
correct_password 143 193 +50
sulogin_main 490 533 +43
adduser_main 732 774 +42
passwd_main 1875 1915 +40
addgroup_main 330 365 +35
bb_internal_getspnam 38 - -38
bb_internal_fgetpwent 38 - -38
bb_internal_fgetgrent 38 - -38
static.resultbuf 168 88 -80
static.buffer 1872 1104 -768
------------------------------------------------------------------------------
(add/remove: 0/3 grow/shrink: 5/2 up/down: 210/-962) Total: -752 bytes
2007-03-13 13:01:14 +00:00
Denis Vlasenko
39c651e909
introduce and use setfscreatecon_or_die
...
(patch by Yuichi Nakamura <ynakam@hitachisoft.jp>)
runcon: *yet another* fix for vda's brainfart :(
2007-03-12 18:22:55 +00:00
Denis Vlasenko
1203c9bf2f
next portion of selinux updates: chcon, runcon. From
...
Yuichi Nakamura <himainu-ynakam@miomio.jp>
KaiGai Kohei <busybox@kaigai.gr.jp>
2007-03-11 22:16:02 +00:00
Denis Vlasenko
49622d7846
selinux support by Yuichi Nakamura <ynakam@hitachisoft.jp> (HitachiSoft)
2007-03-10 16:58:49 +00:00
Denis Vlasenko
8e858e2700
clean up accumulated whitespace damage
2007-03-07 09:35:43 +00:00
Denis Vlasenko
c115fdbc80
ifupdown: code to deconstruct the state_list gracefully
...
(patch by Gabriel L. Somlo <somlo@cmu.edu>)
2007-03-06 22:53:10 +00:00
Denis Vlasenko
19c238bc90
ping: don't measure times if ping payload is less than 8 bytes;
...
commonalize some ping code.
2007-03-03 00:36:35 +00:00
Denis Vlasenko
54cf511ce1
sort: fix multiple -k (was ignoring all except last)
2007-02-17 18:11:45 +00:00
Denis Vlasenko
ec27feb045
init: code readability enhancements; very small code changes
2007-02-17 15:52:02 +00:00
Denis Vlasenko
b5368bf437
httpd: a little bit more correct handling of CGI "HTTP/xxx" output
2007-02-13 23:42:54 +00:00
Denis Vlasenko
6ca0444420
syslogd: fix "readpath bug" by using readlink instead
...
libbb: rename xgetcwd and xreadlink
2007-02-11 16:19:28 +00:00
Denis Vlasenko
9ca26d38c5
ping: support -I addr in family neutral manner; reuse a bit of common code
2007-02-09 17:32:16 +00:00
Mike Frysinger
0aa6ba5d44
make sure ps/top output what they claim: vsz, not rss ... down the line we should make the output controllable either at runtime or buildtime as both statistics are quite useful
2007-02-08 08:21:58 +00:00
Denis Vlasenko
0850cdabde
tftp: fix IPv6 fallout
2007-02-07 23:20:32 +00:00
Denis Vlasenko
710694f0e5
fix #ifdef ENABLE_xxx -> #if
2007-02-07 20:27:03 +00:00
Denis Vlasenko
d46d3c292e
new applets: selinux utils by KaiGai Kohei <kaigai@kaigai.gr.jp>
2007-02-06 19:28:50 +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
d909d23451
- indent
2007-02-04 20:32:38 +00:00
Denis Vlasenko
e991303406
udhcp: use improved gethostbyname replacement from IPv6 code
2007-02-04 02:41:57 +00:00
Denis Vlasenko
5870ad9672
mount: (try to) support cifs with IPv6
2007-02-04 02:39:55 +00:00
Denis Vlasenko
42823d597a
add x to IPv6 functions which can die
2007-02-04 02:39:08 +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
e968fcd562
lineedit: add missing #if/#endif
...
init: fix warnings
2007-02-03 02:42:47 +00:00
Denis Vlasenko
4921b54f37
Add BB_EXEC[LV]P() which encapsulate FEATURE_EXEC_PREFER_APPLETS
...
(patch from Gabriel L. Somlo <somlo@cmu.edu>)
2007-02-03 02:17:41 +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
a41fdf331a
preparatory patch for -Wwrite-strings #1
2007-01-29 22:51:00 +00:00
Denis Vlasenko
e06bed30cf
use bb_sanitize_stdio() where appropriate
2007-01-27 22:21:12 +00:00
Denis Vlasenko
434ad5456b
fix warning in find.c
2007-01-27 13:45:17 +00:00
Denis Vlasenko
98c0bba09d
fix bin2hex bug. lowercase = uppercase | 0x20, not | 0x10!
2007-01-26 23:31:05 +00:00
Denis Vlasenko
86724af484
bb_parse_mode: do not do umask() needlessly.
2007-01-26 22:54:01 +00:00
Denis Vlasenko
b9a279ba94
Unify ping and ping6. ping has -4 and -6 which force
...
name resolution into IP or IPv6 only, otherwise
we take address family returned by host2sockaddr()
in lsa->sa.sa_family. IOW: "ping ::1" with do IPv6 ping,
"ping 127.0.0.1" will do IPv4 ping.
ping6 is aliased to "ping -6".
2007-01-24 23:53:22 +00:00
Denis Vlasenko
218f2f4882
accumulated post-1.4.0 fixes
2007-01-24 22:02:01 +00:00
Denis Vlasenko
769d1e05e6
fix warning from needlessly-global functions
2007-01-22 23:04:27 +00:00
Denis Vlasenko
d77f7c3136
remove empty source files
2007-01-22 22:47:07 +00:00
Denis Vlasenko
9adc6ced4f
ping6: stop using xgethostbyname2, remove it from libbb.
2007-01-22 22:45:27 +00:00
Denis Vlasenko
448f0241e0
nslookup: full circle. Here we started IPv6 work. Use "new API"
...
and thus save a few bytes.
2007-01-22 22:43:05 +00:00
Bernhard Reutner-Fischer
835f575b61
- the archivers expect mode to be a mode_t, so do not trip signed/unsigned conversion purposefully
2007-01-22 17:48:08 +00:00
Bernhard Reutner-Fischer
bb8c7c041c
- sed -i -e "/\$Id:/d;"
2007-01-22 17:04:53 +00:00
Denis Vlasenko
703e20235a
cleanups: unnecessary casts, unified const_1, eliminate cross-.c file
...
prototypes (heresy!), add spaces in places like "flags&NETSTAT_CONNECTED",
removed unused #defines, #ifdef -> #if, use uint32_t for ipv4 addrs.
2007-01-22 14:12:08 +00:00
Denis Vlasenko
35d4da0fb5
exterminate u_intXXX.
...
fix ping6 buglet (memset is too short), minor sync between ping and ping6
2007-01-22 14:04:27 +00:00
Denis Vlasenko
85629f08bc
comment out unused old networking API parts
...
sockaddr2dotted: return IPV6 addrs in [addr]:port form (was addr:port)
2007-01-22 09:36:41 +00:00
Denis Vlasenko
95fef7071e
move shell/cmdedit.c -> libbb/lineedit.c
2007-01-22 09:03:42 +00:00
Denis Vlasenko
38f6319421
cmdedit is not a 'command' editing anymore, it's just editing (generic),
...
so rename stuff accordingly.
2007-01-22 09:03:07 +00:00
Denis Vlasenko
2f0c0d0b88
Introduce FEATURE_EXEC_PREFER_APPLETS = "re-execute our own
...
executable if we asked to exec someting with argv[0] == known_applet"
Use it in init. Also respect PATH in init, remove explicit "/sbin" etc
from exec. Patch by Gabriel L. Somlo <somlo@cmu.edu>
2007-01-21 00:41:04 +00:00
Bernhard Reutner-Fischer
af45760cca
- get_terminal_width_height does not and should never write to fd. Cosmetic Precaution
2007-01-20 21:33:50 +00:00
Denis Vlasenko
4ebaf10742
strdup -> xstrdup
...
sed: de-obfuscate piece of code
2007-01-19 21:33:19 +00:00
Denis Vlasenko
2405ad659e
ls: use get_cached_username/groupname
2007-01-19 21:24:17 +00:00
Denis Vlasenko
9af7c9d6b6
openvt,getty,vfork_daemon_rexec,mount: tighten up fd cleanup code
...
(will close all fd's > 2 on daemonization now)
getty: fix "getty -" support, and also do not try to chown/chmod "-"
telnetd: fix "lost ctty" bug
Yet another attempt on saner function names:
bb_sanitize_server_stdio(0/1) -> bb_sanitize_stdio() + bb_daemonize();
2007-01-19 21:19:35 +00:00
Denis Vlasenko
ef44d9d9f2
sed,get_line_from_file: improve comments
2007-01-17 23:16:16 +00:00
Denis Vlasenko
d97c9244b1
Rename bb_sanitize_stdio -> bb_sanitize_server_stdio
...
(name is still bad - it doesn't hint that function
may do daemonization trick for you if asked to).
Small fixes to fakeidentd.
2007-01-14 13:12:06 +00:00
Denis Vlasenko
7a431b3715
By popular request reinstate fakeidentd's standalone mode.
...
Since this is also needed for other applets like telnetd,
introduce generic driver for such things.
It even supports inetd-wait ('linger') mode, when inetd
hands out listen socket to child and waits to it to die,
instead of handing out accepted socket and continuing
listening itself (nowait mode).
Code growth ~200 bytes.
NB: our inetd doesn't support wait mode yet (or mabe it is buggy).
2007-01-14 01:29:06 +00:00
Denis Vlasenko
2418288cac
small fixes to ipv6 infrastructure
2007-01-13 21:05:38 +00:00
Denis Vlasenko
3a34d0c08a
random small size optimizations
2007-01-12 22:10:34 +00:00
Denis Vlasenko
5d68724d5b
next part of ipv6-ization. mostly netcat.
2007-01-12 20:59:31 +00:00
Denis Vlasenko
6536a9b583
next part of ipv6-ization is here: wget & httpd
2007-01-12 10:35:23 +00:00
Denis Vlasenko
f7996f3b70
Trailing whitespace removal over entire tree
2007-01-11 17:20:00 +00:00
Denis Vlasenko
8e9ccba371
ipv6-ization efforts continue. Few bugs are found,
...
unknown number likely introduced...
2007-01-11 16:50:23 +00:00
Denis Vlasenko
bbe514683a
a bit more IPv6-ization work
...
syslogd: converted to use it (in -R host:port)
2007-01-10 20:19:56 +00:00
Denis Vlasenko
9de420c27c
Improve generic ipv4+ipv6 support in libbb.
...
Convert telnet to it. Now this works:
telnetd -b [::1]:1234 - bind to IPv6 non-standard port
telnet [::1]:1234 - connect to IPv6 non-standard port
telnet ::1 1234 - same
This does not require ANY ipv6-specific code in applets
(no struct sockaddr_in6. In fact, no sockaddr_in, too).
2007-01-10 09:28:01 +00:00
Denis Vlasenko
a9b60e93ee
new libbb func: xmalloc_realpath (+ use it where makes sense)
...
syslogd, logread: add debugging code (disabled)
syslogs: drastically smaller bss; fix "-C n" behaviour
2007-01-04 17:59:59 +00:00
Denis Vlasenko
9b1381fd2f
convert calloc to xzalloc
...
fix sleep-on-die option
2007-01-03 02:56:00 +00:00
Denis Vlasenko
4a64c33443
about.html: update maintainer name
...
libbb/Kbuild: less needs xregcomp.o
2006-12-30 22:03:02 +00:00
Denis Vlasenko
6a5dc5d75a
next bunch of fixes for bugs found by randconfig
2006-12-30 18:42:29 +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
666da5e2c6
merge post-1.3.0 fixes
2006-12-26 18:17:42 +00:00
Denis Vlasenko
bf0a201008
style fixes
...
last xcalloc replaced by xzalloc
2006-12-26 10:42:51 +00:00
Denis Vlasenko
5dd7ef0f37
chattr: bugfixes and size reduction
2006-12-26 03:36:28 +00:00
Denis Vlasenko
0de9375ee6
leftover of e2fsck surgery
2006-12-26 02:51:29 +00:00
Denis Vlasenko
7cea262273
small stupid changes. no code changes
2006-12-24 07:30:09 +00:00
Denis Vlasenko
a5b3e76c38
missing piece of prev commit: ndelay_off
2006-12-24 07:15:50 +00:00
Denis Vlasenko
1dc1b37b33
use xbind, xconnect where appropriate.
...
small edits to arping
2006-12-23 02:48:44 +00:00
Denis Vlasenko
2a813e20e2
fix recognitions of -SIGname signals
...
(fix by Jacques LUDER <jacques.luder@thalesgroup.com>)
2006-12-23 01:06:21 +00:00
Denis Vlasenko
8f6c79240d
find: fix spurious -exec error messages
...
(bug reported by Bernhard Fischer <rep.nop@aon.at>)
2006-12-23 00:49:10 +00:00
Denis Vlasenko
714701c890
tar et al: die if bb_copyfd_size copies less than asked for.
...
(we have bb_copyfd_exact_size now for that kind of usage)
2006-12-22 00:21:07 +00:00
Denis Vlasenko
e865e81d34
less: stop dying on bad regexps, quietly pipe data w/o
...
user interaction if stdout is not a tty.
size optimizations
2006-12-21 13:24:58 +00:00
Denis Vlasenko
bf66fbc8e2
introduce LONE_CHAR (optimized strcmp with one-char string)
2006-12-21 13:23:14 +00:00
Denis Vlasenko
3f3190e34c
less: total cleanup and bugfix.
...
Doesn't die horribly on binary files anymore.
In fact, they _100%_ work now. Control chars
are in reverse video, including DEL and that idiocy of VT-10x,
Meta-ESC [inventor of which should be prohibited from reproducing].
Regex search is fixed also. When you specify search ('/' key),
control chars turn into dots (unhighlighted),
and found occurrences highlighted instead. This is reversible.
Memory management fixed (was leaky as hell) and optimized.
Linewrapping fixed and thoroughly tested.
Max buffer size made configurable.
~ 600 bytes saved.
2006-12-21 00:22:03 +00:00
Denis Vlasenko
9a7cef930f
less: somewhat buggy applet, but nice. Muchly reduced
...
xstrdup'ing and memory consumption. Made linewrap saner.
regex matching code was awful - still buggy, but not as
leaky as before. Made buffer size configurable. Killed
several static and on-stack buffers. Hopefully eliminated
staircase effect on Ctrl-C (unable to reproduce).
2006-12-20 02:46:48 +00:00
Denis Vlasenko
b95636c52f
remove casts from xmalloc()
2006-12-19 23:36:04 +00:00
Denis Vlasenko
15b213ef5a
su: make /etc/shells check configurable
...
ash: missing ';'
2006-12-19 00:20:20 +00:00
Denis Vlasenko
7cfecc4b36
xfuncs.c: dietlibc actually HAS fdprintf!
...
platform.h: define strchrnul for dietlibc
ash: stop using few non-standard functions
2006-12-18 22:32:45 +00:00
Denis Vlasenko
c8e6e35ba4
nc: add missing cast
...
xfuncs: add dprintf for dietlibc
2006-12-18 22:10:24 +00:00
Denis Vlasenko
83e5d6f772
A bunch of defined(__GLIBC__) added. static-linking warning expanded
2006-12-18 21:49:06 +00:00
Denis Vlasenko
b131b271a0
start_stop_daemon: fix bug where any program name was "matching"
...
processes for which readlink(/proc/N/exe) fails
2006-12-17 17:30:01 +00:00
Denis Vlasenko
9f739445cd
inline strcmp(s, "-") [actually macro-ize it for now - gcc is too stupid]
2006-12-16 23:49:13 +00:00
Denis Vlasenko
a597aaddfa
s/extern inline/static ATTRIBUTE_ALWAYS_INLINE/g
...
xstrtou: disallow leading '+'
2006-12-16 23:48:13 +00:00
Denis Vlasenko
6a1d661036
diff: fix -q exit code
...
last_char_is: sacrifice 9 bytes but avoid double-scan
2006-12-16 22:18:44 +00:00
Denis Vlasenko
5e2db5e8ee
build system: small fix for "release" target to work
2006-12-12 23:46:31 +00:00
Denis Vlasenko
2ea630f9a5
bb_makedev: fix for glibc 2.3.2
...
sed: fix C++ style declaration
2006-12-10 02:52:19 +00:00
Bernhard Reutner-Fischer
bbda98f14c
- cosmetic change to avoid warnings about eventual padding/packing.
2006-12-04 15:58:27 +00:00
Denis Vlasenko
8b22b07bc5
sed: improve handling of NULs
2006-12-02 17:58:10 +00:00
Denis Vlasenko
becd8c538c
passwd: made smaller by ~130 bytes. size can go negative
...
if current trend will continue ;)
2006-12-01 21:34:20 +00:00
Denis Vlasenko
002526481e
passwd: small size optimization. salt generation improved
...
(really generated different salts even if called back-to-back).
2006-11-30 20:41:28 +00:00
Denis Vlasenko
ab24e18c7a
passwd: rework:
...
* do not make backup copy by copying (just retain old file)
* correctly fall back to /etc/passwd if user is not in shadow
* fix bug with overlong passwd entries
* be permissive on some kinds of failures
* reduce stack usage
* code size: -500 bytes
2006-11-30 16:41:15 +00:00
Denis Vlasenko
c6ce8733dd
cut 0.5k off mkfs.minix
...
assorted strtoul fixes (that's what brought me into minix)...
2006-11-29 18:15:52 +00:00
Denis Vlasenko
df38188367
fix bug in new str -> num convertors
2006-11-28 10:54:16 +00:00
Denis Vlasenko
f1a6c6b362
erase_mtab: do not limit ourself to 40 mtab entries
2006-11-27 17:29:09 +00:00
Denis Vlasenko
d9e15f2068
style cleanup: return(a) -> return a, part 2
2006-11-27 16:49:55 +00:00
Denis Vlasenko
079f8afa0a
style cleanup: return(a) -> return a, part 1
2006-11-27 16:49:31 +00:00
Denis Vlasenko
3ece72dc3f
svn add bb_strtonum.c :(
2006-11-27 15:12:16 +00:00
Denis Vlasenko
d686a045c8
safe_strtoXX interface proved to be a bit unconvenient.
...
Remove it, introduce saner bb_strtoXX.
Saved ~350 bytes.
2006-11-27 14:43:21 +00:00
Denis Vlasenko
e5667c1cfe
Closing bug 730. libbb run_parts is using scandir (a GNUism),
...
and it is used only by run_parts applet, so move it there.
Also saved ~30 bytes (prolly gcc autoinlining...).
2006-11-26 20:13:39 +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
2d27e4ccbb
tee: fix bug: argv[-1] is a no-no!
...
bb_full_fd_action: optimize
die_if_ferror: "<applet>: filename" isn't a good err msg, add "..I/O error"
2006-11-25 23:50:28 +00:00
Denis Vlasenko
43bddf31e9
small improvements in str -> num convertors
2006-11-25 14:49:04 +00:00
Denis Vlasenko
ed836cdc30
regularize str -> num convertors
2006-11-25 14:44:13 +00:00
Denis Vlasenko
809a6e3104
small optimization
2006-11-24 22:42:44 +00:00
Denis Vlasenko
3feb2fc535
tar: fix multiple -t and/or -v options handling.
...
do not process list of files to tar up in reverse order.
2006-11-24 21:55:55 +00:00
Denis Vlasenko
d031ffa623
tar: sanitize option handling
2006-11-24 21:54:44 +00:00
Denis Vlasenko
d6772501db
tar: fix and sanitize handling of long filenames/linknames
...
(GNU extensions 'K' and 'L').
We correctly handle them when untarring now, but unfortunately
we still don't use them when tarring! That stupid 100 char limit
is still there!
The biggest problem is that we don't support 'pax' tar format.
Linux kernel tarballs are in this format... shame
2006-11-24 17:21:44 +00:00
Denis Vlasenko
d398ecab9d
hunt down improper include <>, make mkswap output 4Gb+ friendly
2006-11-24 15:38:03 +00:00
Denis Vlasenko
8023d7df78
svn add makedev.c. Forgot as usual... :(
2006-11-24 15:06:28 +00:00
Denis Vlasenko
b8a8e601df
tar: small fixes:
...
* size-optimize mapping code
* kill double close
2006-11-24 14:59:45 +00:00
Denis Vlasenko
c50f370f98
tar: cache [ug]id->username/groupname mappings. Cuts down amount
...
of open/read/close of /etc/passwd and /etc/group
dramatically (we were rereading those for each untarred file!!!)
2006-11-24 14:57:31 +00:00
Denis Vlasenko
4fbb584a0e
tar: cry murder and bail out if file shrinks under us while we tar it up
2006-11-24 14:55:23 +00:00
Denis Vlasenko
0b35470d9b
glibc makedev() is a large inline. Save 700+ bytes by wrapping it
...
into a function.
2006-11-24 14:54:27 +00:00
Denis Vlasenko
376ce1e775
tar:
...
* unpack: handle tar header fields which are not NUL terminated
* pack: handle 4+GB files correctly
* pack: refuse to store 101+ softlinks (was truncating link
target name)
* pack: mask mode with 07777
2006-11-24 14:51:01 +00:00
Denis Vlasenko
48237b0c88
introduce setsockopt_reuseaddr(int fd), setsockopt_broadcast(int fd),
...
use them where appropriate. 200 bytes saved
2006-11-22 23:22:06 +00:00
Denis Vlasenko
81e264d4af
fix double merge
2006-11-22 17:42:06 +00:00
Denis Vlasenko
c8717cd857
telnetd: move generic stuff into libbb. It will make it easy
...
to make other server applets IPv6-aware too.
2006-11-22 16:10:39 +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
5e618ff439
xgethostbyname: more readable
2006-11-21 20:35:22 +00:00
Denis Vlasenko
7ca3921e5e
bb_INET_default[] is really just a const "default",
...
nothing INET-specific
2006-11-21 20:34:21 +00:00
Denis Vlasenko
89f0b3486d
rodata cleanup. "unable to" == "cannot". -300 bytes
2006-11-18 22:04:09 +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
067e3f031a
wget: fix error message.
...
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-10 23:25:53 +00:00