82dcc3bff9
bootchartd: fix typo in comment
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-20 13:42:19 +02:00
9e2e0ff4ba
bootchartd: prevent premature stop by device mapper
...
Kernel thread kdmflush was recognized as display manager kdm,
check for string length.
Signed-off-by: Uwe Geuder <busybox2017-ugeuder@snkmail.com >
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-20 13:39:41 +02:00
1ef3ce91c7
sparc: needs -fPIC
...
Pinted out by Thomas Petazzoni.
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-19 17:56:56 +02:00
61f9d76ec5
swapon/swapoff: trim config help text
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-19 14:39:30 +02:00
ae178cee3d
Update remaining menuconfig items with approximate applet sizes
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-19 14:32:54 +02:00
a165603d24
od_bloaty: fix floating point output
...
Currently od_bloaty does this:
$ /bin/echo -en '\x00\x00\x00\x00\x00\x00\x00\x00' | busybox od -f
od: invalid character 'F' in type string 'fF'
$ /bin/echo -en '\x00\x00\x00\x00\x00\x00\x00\x00' | busybox od -t fD
od: invalid character 'D' in type string 'fD'
$ /bin/echo -en '\x00\x00\x00\x00\x00\x00\x00\x00' | busybox od -t f
0000000
0000010
The first two occur because the alphabetic length specifier isn't being
properly skipped. The third is due to the empty length specifier being
treated as alphabetic so we fall off the end of the FDL_sizeof array with
undetermined consequences. Coreutils defaults to printing a double in
this case.
With this patch the output is:
$ /bin/echo -en '\x00\x00\x00\x00\x00\x00\x00\x00' | ./busybox od -f
0000000 0.0000000e+00 0.0000000e+00
0000010
$ /bin/echo -en '\x00\x00\x00\x00\x00\x00\x00\x00' | ./busybox od -t fD
0000000 0.000000000000000e+00
0000010
$ /bin/echo -en '\x00\x00\x00\x00\x00\x00\x00\x00' | ./busybox od -t f
0000000 0.000000000000000e+00
0000010
I guess nobody uses BusyBox od to print floating point numbers.
Signed-off-by: Ron Yorston <rmy@pobox.com >
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-19 13:12:02 +02:00
9880f86d6e
hdparm: remove contradicting size info in config help
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-18 22:25:58 +02:00
8ecd861406
ash: remove contradicting size info in config help
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-18 22:25:12 +02:00
f9d656f787
hush: remove contradicting size info in config help
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-18 22:23:55 +02:00
4eed2c6c50
Update menuconfig items with approximate applet sizes
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-18 22:01:24 +02:00
483405a9b0
Tweaks from mass recompile for 1.27.1 release
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-18 20:17:51 +02:00
d2c15bc763
hush: tweak "help" output
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-18 18:14:42 +02:00
513a2457b6
printf: fix format string sanity check
...
One of the tests for printf checks for an invalid bare '%' in the
format string:
$ busybox printf '%' a b c
printf: %: invalid format
On x86_64 a slightly different test doesn't work correctly:
$ busybox printf '%' d e f
printf: invalid number 'd'
printf: invalid number 'e'
printf: invalid number 'f'
On other platforms the test fails randomly depending on how the
arguments are laid out in memory.
There are two places in the code where strchr is used to determine if
a character in the format string is valid. However, strchr also returns
a valid pointer if the character being searched for is the null terminator
thus causing the code to incorrectly suppose that a valid character has
been found.
Add explicit checks for the null terminator.
Signed-off-by: Ron Yorston <rmy@pobox.com >
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-18 16:00:38 +02:00
cf5110978b
hush: fix readonly2.tests failure
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-18 15:58:02 +02:00
f645e1573c
hush: another testcase for "READONLY_VAR=VAL BLTIN ..."
...
Currently fails.
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-18 03:23:07 +02:00
5b2cc0aaee
hush: do not assign to readonly VAR in "VAR=VAL CMD" syntax too
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-18 02:44:06 +02:00
38ef39a1ab
hush: add readonly testcase, fix fallout
...
function old new delta
helper_export_local 185 214 +29
run_pipe 1549 1560 +11
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/0 up/down: 40/0) Total: 40 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-18 01:40:01 +02:00
3bab36b18b
hush: convert exp/ro/local parameters to bitfields in one flag param
...
function old new delta
helper_export_local 174 185 +11
set_local_var 424 420 -4
run_list 1048 1044 -4
set_vars_and_save_old 88 83 -5
set_local_var_from_halves 27 22 -5
run_pipe 1554 1549 -5
builtin_export 173 168 -5
set_pwd_var 40 34 -6
builtin_readonly 70 64 -6
expand_one_var 1625 1618 -7
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/9 up/down: 11/-47) Total: -36 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-18 01:05:24 +02:00
6b0695bb66
hush: HUSH_READONLY depends on HUSH
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-17 21:47:27 +02:00
6b48e1f121
hush: forgot to emit error on (failing) second "readonly VAR=VAL"
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-17 21:31:17 +02:00
b95ee96e75
hush: smaller code in !READONLY configs
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-17 21:19:53 +02:00
1e660422b1
hush: implement "readonly" builtin
...
function old new delta
builtin_readonly - 70 +70
helper_export_local 152 174 +22
bltins1 348 360 +12
expand_one_var 1620 1625 +5
builtin_export 168 173 +5
set_pwd_var 36 40 +4
set_local_var 410 414 +4
set_vars_and_save_old 85 88 +3
set_local_var_from_halves 24 27 +3
run_pipe 1551 1554 +3
run_list 1046 1048 +2
builtin_type 116 114 -2
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 10/1 up/down: 133/-2) Total: 131 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-17 21:10:50 +02:00
826360ff23
ash: more general format ${var:EXPR:EXPR}
...
function old new delta
subevalvar 1171 1202 +31
localcmd 364 366 +2
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-17 17:49:11 +02:00
4f8079de87
ash: "you disabled math" is wrong: user did not disable it, builder of ash did
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-17 17:11:48 +02:00
0ba80e4fa2
hush: small fix to last commit
...
die_if_script() indeed dies only in scripts! Must handle the case where it continues.
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-17 16:50:20 +02:00
e32b6503e7
hush: support ${VAR:N:-M}
...
function old new delta
expand_one_var 1602 1615 +13
builtin_type 114 116 +2
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-17 16:46:57 +02:00
203fd7bc66
shells: expand TODO comments, no code changes
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-17 16:13:35 +02:00
68e980545a
ttysize: if stdin is not tty, try stdout, then stderr
...
function old new delta
ttysize_main 135 175 +40
packed_usage 31686 31672 -14
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-16 20:36:48 +02:00
b24e55da84
hush: fix "cmd1 && cmd2 &" handling on NOMMU
...
function old new delta
done_pipe 234 238 +4
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-16 20:29:35 +02:00
c49638b7d2
arch: new applet (same as unmae -m). ~30 bytes.
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-16 16:43:41 +02:00
9f904a22ff
shell: and_or_and_backgrounding.tests is no longer "UNFIXED BUG"
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-15 22:54:46 +02:00
ee553b929c
hush: fix and_or_and_backgrounding.tests failure
...
function old new delta
done_pipe 133 218 +85
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-15 22:51:55 +02:00
2c8929c7af
config: reorder items in "Busybox Settings", improve help
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-15 21:14:16 +02:00
a3df2fa525
config: merge "Busybox Settings" and "Busybox Library Tuning" into one menu
...
Tweak a few help texts while at it
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-15 20:49:32 +02:00
2c1258c620
Move get_unaligned_le32() macros to platform.h
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-15 20:22:25 +02:00
08dfafc437
fix more instances of ": $((a++))" in shell scripts
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-15 19:20:45 +02:00
ed2b922537
make_single_applets: fix ": $((fail++))" expansion error
...
$((fail++)) is not a required expression in POSIX, and in "dash" it
could produce an error like this:
./make_single_applets.sh: 61: arithmetic expression: expecting primary: "fail++"
Replace this with something portable: fail=$((fail+1)) would work.
Signed-off-by: Kang-Che Sung <explorer09@gmail.com >
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-15 19:20:45 +02:00
c4ddf04b68
config: fix tab-damaged help text
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-15 17:34:33 +02:00
3d7ec48da0
tls: remove last int16 local variables in pstm code
...
function old new delta
pstm_mul_comba 439 447 +8
pstm_sqr_comba 475 478 +3
pstm_montgomery_reduce 399 381 -18
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/1 up/down: 11/-18) Total: -7 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-15 17:19:38 +02:00
79376ecdbd
tls: fix pstm asm constraint problem
...
function old new delta
pstm_sqr_comba 551 475 -76
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-15 17:13:08 +02:00
367a55c7d7
build system: FEATURE_LIBBUSYBOX_STATIC - try to pull libc/libm into libbusybox
...
It variously fails with different toolchains I tried...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-15 14:52:26 +02:00
8ea061eac3
blkdiscard: provide our own BLK[SEC]DISCARD if necessary
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-15 13:53:41 +02:00
9887f93eef
tls: fix build problem on non-static i386
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-15 13:42:19 +02:00
e9a25ac924
Makefile: include per-arch Makefile before Makefile.flags
...
Makefile.flags contains:
ARCH_FPIC ?= -fpic
ARCH_FPIE ?= -fpie
However, arch/$(ARCH)/Makefile gets included *after* Makefile.flags,
and therefore doesn't get the chance to provide its own value.
Fix this by including arch/$(ARCH)/Makefile *before* Makefile.flags.
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com >
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-15 11:53:53 +02:00
e5b1f5af73
copyfd: guard use of munmap() with #if (windows builds need this)
...
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-15 11:44:13 +02:00
9d4dc84a76
ash: protect WIFSTOPPED use with #if JOBS
...
This change fixes the build in setups where there are
no headers defining WIFSTOPPED and WSTOPSIG (where JOBS has to be
set to 0).
This partially reverts 4700fb5be
(ash: make dowait() a bit more
readable. Logic is unchanged, 2015-10-09).
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de >
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-15 11:38:00 +02:00
7d7c7bb220
libbb: hide getnetbyaddr() inside "#if ENABLE_FEATURE_ETC_NETWORKS" block
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-14 20:17:17 +02:00
2ed74e25d3
hush: make "wait %1" work even if the job is dead
...
Example script:
sleep 1 | (sleep 1;exit 3) &
sleep 2
echo Zero:$?
wait %1
echo Three:$?
function old new delta
clean_up_last_dead_job - 24 +24
process_wait_result 426 447 +21
builtin_wait 285 293 +8
insert_job_into_table 264 269 +5
builtin_jobs 68 73 +5
remove_job_from_table 59 57 -2
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 4/1 up/down: 63/-2) Total: 61 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-14 19:58:46 +02:00
0c5657e911
hush: remove superfluous comparison
...
function old new delta
builtin_wait 291 285 -6
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-14 19:27:03 +02:00
7b6e8f3f1a
uuencode: allow space instead of "`" as padding char. Closes 10046
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-14 17:24:59 +02:00