Denis Vlasenko
9ec0ecbfdd
init: remove wait() loop on restart, it may be dangerous
2009-01-31 19:26:12 +00:00
Denis Vlasenko
4ae8a05b13
init: fix a bug where on reload order of entries might be wrong
...
function old new delta
run_shutdown_and_kill_processes - 97 +97
pause_and_low_level_reboot - 48 +48
run_actions 81 107 +26
restart_handler 56 81 +25
new_init_action 137 150 +13
run 576 579 +3
open_stdio_to_tty 110 98 -12
check_delayed_sigs 195 170 -25
waitfor 354 318 -36
low_level_reboot 53 - -53
kill_all_processes 115 - -115
------------------------------------------------------------------------------
(add/remove: 2/2 grow/shrink: 4/3 up/down: 212/-241) Total: -29 bytes
2009-01-31 18:55:54 +00:00
Denis Vlasenko
e35af56790
modutils-24: use xasprintf and xzalloc where appropriate,
...
remove unreachanble code
build system: correct some dependencies in config system
init: convert one #if into if() - for Rob.
function old new delta
obj_string_patch 136 129 -7
bb_init_module_24 4759 4615 -144
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-151) Total: -151 bytes
2009-01-31 14:22:24 +00:00
Denis Vlasenko
fc2a4fc2ba
init: small correction in a comment
2009-01-31 01:07:05 +00:00
Denis Vlasenko
72c99af0b4
init: major improvement in documentation and signal handling.
...
Lots of nasty, but hard to trip, races are fixed.
text data bss dec hex filename
1038828 924 10932 1050684 10083c busybox_old
1038787 924 10932 1050643 100813 busybox_unstripped
2009-01-31 01:03:45 +00:00
Denis Vlasenko
cab28aa7de
init: preparatory patch, no code changes
2009-01-31 01:02:07 +00:00
Denis Vlasenko
6c62246a35
init: reinstate proper handling of !ENABLE_FEATURE_USE_INITTAB
2009-01-29 02:01:04 +00:00
Denis Vlasenko
b2b2c404b5
init: reduce ifdef forest (specially for Rob's happiness)
2009-01-28 23:56:31 +00:00
Denis Vlasenko
4e12b1a2a9
libbb: introduce and use xmalloc_ttyname (-32 in bss).
...
ash: small code shrink
text data bss dec hex filename
793669 504 7524 801697 c3ba1 busybox_old
793659 504 7492 801655 c3b77 busybox_unstripped
2008-12-23 23:36:47 +00:00
Denis Vlasenko
1bcdcd2ef0
init: do not eat last char in messages;
...
do not print duplicate "init:" prefix to syslog
2008-12-09 21:23:31 +00:00
Denis Vlasenko
a34b8a4d30
init: O_NONBLOCK needs more thought. reverted for now
2008-11-29 23:14:37 +00:00
Denis Vlasenko
3fa36e2350
*: a bit of code shrink
...
function old new delta
stop_handler 41 38 -3
sulogin_main 508 504 -4
got_cont 4 - -4
cont_handler 11 - -11
startservice 309 297 -12
processorstart 423 409 -14
tcpudpsvd_main 1861 1843 -18
------------------------------------------------------------------------------
(add/remove: 0/2 grow/shrink: 0/5 up/down: 0/-66) Total: -66 bytes
2008-11-09 00:15:11 +00:00
Denis Vlasenko
202ac504e1
*: code shrink by adding a wrapper around very common tcsetattr(0, TCSANOW, xx) op
...
function old new delta
tcsetattr_stdin_TCSANOW - 14 +14
set_sane_term 116 113 -3
top_main 1277 1273 -4
make_new_session 421 415 -6
rawmode 133 126 -7
reset_term 18 10 -8
die 43 35 -8
cookmode 62 54 -8
vlock_main 425 415 -10
read_line_input 3165 3155 -10
bb_askpass 357 347 -10
fsck_minix_main 3079 3065 -14
getty_main 2375 2332 -43
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/12 up/down: 14/-131) Total: -117 bytes
2008-11-05 13:20:58 +00:00
Denis Vlasenko
5cb54b5adc
init: downgrade ENABLE_DEBUG_INIT to just a #define to prevent people
...
from selecting it in error. It has to be used ONLY for debugging
init, never in production, as resulting init has serious differences.
2008-10-21 17:14:26 +00:00
Denis Vlasenko
ea7c9b3366
whitespace fixes
2008-09-25 10:39:10 +00:00
Denis Vlasenko
b8d1a4cd5f
init: set stderr to NONBLOCK
...
*: s/setenv(a,b,1)/xsetenv(a,b)/
function old new delta
init_main 856 895 +39
message 146 144 -2
crond_main 1418 1416 -2
run 661 658 -3
zcip_main 1409 1403 -6
edit_file 910 901 -9
environment 20 - -20
2008-09-20 16:28:59 +00:00
Denis Vlasenko
9725daa03a
halt: reinstate -w even if !FEATURE_WTMP; beautify code in halt.c
2008-09-11 09:54:23 +00:00
Bernhard Reutner-Fischer
2bdc99f600
- remove excess whitespace (Vladimir Dronnikov)
2008-09-01 15:26:12 +00:00
Bernhard Reutner-Fischer
d93179fd5b
- halt's -w depends on FEATURE_WTMP (Vladimir Dronnikov)
2008-09-01 15:24:52 +00:00
Denis Vlasenko
1e28f6171f
halt: signal init regardless of ENABLE_INIT
2008-08-03 18:43:45 +00:00
Denis Vlasenko
084266ed52
fix several problems with config parser:
...
a bug where it underflows the string
a bug where it never frees parser_t struct
make read_config() return 0 if parser is NULL,
make config_close() accept and ignore NULL parser -
eliminates many if() blocks
reverse the sense of parser bit flags - negative flags
are harder to grok.
hexdump: revert the change to use config parser, it is BIGGER
and also requires additional quirks in parser
*: explicitly use PARSER_NORMAL instead of 0
function old new delta
login_main 1575 1596 +21
config_close 18 29 +11
bbunpack 383 391 +8
qgravechar 106 109 +3
rtnl_tab_initialize 121 117 -4
expand 1697 1693 -4
man_main 717 712 -5
nameif_main 674 668 -6
hexdump_main 597 591 -6
read_config 217 209 -8
dnsd_main 1478 1470 -8
sysctl_main 203 189 -14
config_open2 44 25 -19
make_device 1177 1141 -36
config_read 597 549 -48
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 4/11 up/down: 43/-158) Total: -115 bytes
2008-07-26 23:08:31 +00:00
Bernhard Reutner-Fischer
3e8669f359
- wrap overlong lines (Cristian Ionescu-Idbohrn)
...
- s/\. /. /g;# (me)
2008-07-22 18:27:53 +00:00
Denis Vlasenko
5415c856ea
libbb: [x]fopen_for_{read,write} introduced and used.
...
(by Valdimir)
function old new delta
config_open2 - 41 +41
config_read 507 542 +35
find_pair 169 187 +18
fopen_for_write - 14 +14
fopen_for_read - 14 +14
find_main 406 418 +12
xfopen_for_write - 10 +10
xfopen_for_read - 10 +10
popstring 134 140 +6
parse_inittab 396 401 +5
next_token 923 928 +5
pack_gzip 1659 1661 +2
bb__parsespent 117 119 +2
fallbackSort 1719 1717 -2
evalvar 1376 1374 -2
qrealloc 36 33 -3
...
...
...
...
singlemount 4579 4569 -10
process_stdin 443 433 -10
patch_main 1111 1101 -10
ifupdown_main 2175 2165 -10
file_action_grep 90 80 -10
uuidcache_init 649 637 -12
hush_main 797 785 -12
read_config 230 217 -13
dpkg_main 3835 3820 -15
read_line_input 3134 3110 -24
sysctl_main 232 203 -29
config_open 40 10 -30
WARN_BAD_LINE 44 - -44
login_main 1714 1575 -139
------------------------------------------------------------------------------
(add/remove: 5/1 grow/shrink: 8/74 up/down: 174/-737) Total: -563 bytes
2008-07-21 23:05:26 +00:00
Denis Vlasenko
b74a2dba57
whitespace fixes, no code changed
2008-07-21 21:34:51 +00:00
Bernhard Reutner-Fischer
a53de7f7c2
- fix spelling
2008-07-21 13:46:54 +00:00
Bernhard Reutner-Fischer
5259361957
- remove superfluous forward declaration
2008-07-21 11:53:04 +00:00
Bernhard Reutner-Fischer
ef9876a40e
- document -f
2008-07-21 11:30:51 +00:00
Bernhard Reutner-Fischer
ad2fa65fc0
- no obj-code changes. Fix indentation, use existing defines.
2008-07-21 11:16:39 +00:00
Denis Vlasenko
2e157ddf9e
libbb: updated config_parse() from Vladimir
...
function old new delta
config_read 385 460 +75
runsvdir_main 1701 1716 +15
readit 331 338 +7
passwd_main 1049 1053 +4
parse_command 1504 1507 +3
decode_format_string 822 824 +2
bb__parsespent 117 119 +2
udhcp_get_option 221 222 +1
changepath 196 194 -2
parse_inittab 400 396 -4
nameif_main 683 679 -4
make_device 1176 1172 -4
config_open 48 40 -8
expand_main 698 689 -9
readcmd 1012 1002 -10
config_free_data 37 21 -16
SynchronizeFile 683 643 -40
sleep_main 474 362 -112
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 8/10 up/down: 109/-209) Total: -100 bytes
2008-07-19 09:27:19 +00:00
Denis Vlasenko
a474b68991
init: fix compile-time error; fix exiting on broken config file
...
parse_config: cosmetics
2008-07-17 17:58:44 +00:00
Bernhard Reutner-Fischer
54d50a0b47
- fix "noreduce" flag of config_read (didn't work at all, at least for me).
...
- convert init's inittab parsing to the new config parser:
function old new delta
config_read 393 386 -7
static.actions 72 64 -8
.rodata 121772 121764 -8
parse_inittab 554 393 -161
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/4 up/down: 0/-184) Total: -184 bytes
2008-07-17 14:00:42 +00:00
Denis Vlasenko
d48e81f0cd
mdev: do not follow symlinks in /sys (as was intended prior to rev 18811).
...
If this breaks things, please document why!
mdev,init: use shared code for fd sanitization
function old new delta
bb_daemonize_or_rexec 155 172 +17
mdev_main 500 505 +5
init_main 907 856 -51
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/1 up/down: 22/-51) Total: -29 bytes
2008-07-06 07:00:11 +00:00
Denis Vlasenko
a60f84ebf0
*: rename ATTRIBUTE_XXX to just XXX.
2008-07-05 09:18:54 +00:00
Bernhard Reutner-Fischer
62d8503589
- use ut_user rather than ut_name (Cristian Ionescu-Idbohrn)
...
- use ut_tv.tv_sec rather than ut_time (me)
- shrink halt a little bit (me):
halt_main 464 433 -31
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/1 up/down: 0/-31) Total: -31 bytes
2008-06-01 10:10:22 +00:00
Bernhard Reutner-Fischer
5e25ddb7d3
- use STD*_FILENO some more. No object-code changes
2008-05-19 09:48:17 +00:00
Bernhard Reutner-Fischer
636a1f85e8
- use EXIT_{SUCCESS,FAILURE}. No object-code changes
2008-05-19 09:29:47 +00:00
Denis Vlasenko
ad4da989e3
init: fix askfirst not working as intended
2008-04-05 04:24:23 +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
c693840fe8
*: whitespace fixes, no code changes
2008-03-24 02:18:03 +00:00
Denis Vlasenko
e421b5ebf6
init: do not close all descriptors > 2. We were doing it - sometimes.
...
Good choices are "do it, always" or "don't do it". Second is smaller.
2008-03-17 22:01:42 +00:00
Denis Vlasenko
fb274df079
init: do not use bb_sanitize_stdio(), "/dev/null" may be missing (yet)
2008-03-17 13:26:51 +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
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
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
671ca33aa1
init: make it NOMMU-capable
...
httpd: trivial compile fix
2008-02-19 14:13:20 +00:00
Denis Vlasenko
a58a637bed
init: fix comments
2008-02-19 12:10:18 +00:00
Denis Vlasenko
99a61842df
init: HUP should not be temporarily set to "restart",
...
we use it for config reload, and we have QUIT for "restart".
2008-02-19 12:08:38 +00:00
Denis Vlasenko
a37e7134f7
init: fix bug 1111: restart actions were not splitting words:
...
::restart:/sbin/rc restart
resulted in:
exec of '/sbin/rc restart' failed: No such file or directory
2008-02-19 02:57:07 +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