18e781dc02
config: do not use `a' quoting in help texts
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-08-02 14:12:48 +02:00
72089cf6b4
config: deindent all help texts
...
Those two spaces after tab have no effect, and always a nuisance when editing.
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-07-21 09:50: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
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
265062d59d
shells: make hush test optional, rename ASH_BUILTIN_foo -> ASH_foo
...
This makes hash and ash more symmetrical wrt config menu and config
options.
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2017-01-10 15:13:30 +01:00
af3f420116
Convert all coreutils/* applets to "new style" applet definitions
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2016-11-23 14:46:56 +01:00
4a79224cfc
printf: short-circuit output when argument to %b includes \c
...
printf wasn't correctly handling \c in an argument to the %b format
specifier.
printf %bXX OK\\c
returned 'OK\cXX' rather than the expected 'OK'.
function old new delta
printf_main 886 899 +13
Signed-off-by: Ron Yorston <rmy@pobox.com >
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2016-01-31 22:23:05 +01:00
69d81a1c1b
printf: fix this case: printf "%b" '\0057usr\0057bin\n'
...
It was not accepting \0NNN. Standard printf tool does.
function old new delta
printf_main 869 886 +17
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2012-03-07 11:57:47 +01:00
d4acaf70c5
printf: trim help text
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2012-03-07 11:44:15 +01:00
34425389e0
move help text from include/usage.src.h to coreutils/*.c
...
Signed-off-by: Pere Orga <gotrunks@gmail.com >
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2011-03-31 14:43:25 +02:00
5360059131
libbb: introduce and use strcpy_and_process_escape_sequences
...
function old new delta
strcpy_and_process_escape_sequences - 50 +50
bb_process_escape_sequence 148 138 -10
printf_main 789 776 -13
getty_main 1897 1831 -66
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/3 up/down: 50/-89) Total: -39 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2010-10-23 21:06:06 +02:00
b32a543663
nandwrite: complain on malformed -s NUM
...
Elsewhere: use common error message. -30 bytes net size change
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2010-08-29 13:29:02 +02:00
0ef64bdb40
*: make GNU licensing statement forms more regular
...
This change retains "or later" state! No licensing _changes_ here,
only form is adjusted (article, space between "GPL" and "v2" and so on).
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2010-08-16 20:14:46 +02:00
7e6034309e
printf: (allegedly) fix testsuite failure
...
Signed-off-by: Colin Watson <cjwatson@ubuntu.com >
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2009-06-27 00:07:23 +02:00
bf4aeed129
printf: fix exit code on conversion error
...
Signed-off-by: Colin Watson <cjwatson@ubuntu.com >
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2009-06-18 22:22:04 +02:00
71016baf55
printf: accept negative numbers for %x; sh: overflowed numbers are 0
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com >
2009-06-05 16:24:29 +02:00
6852effbc2
printf: fix 1.12.0 breakage (from %*d fix). It was misinterpreting "*"
2009-03-03 14:14:44 +00:00
cb39a7ca6d
printf: make integer format strings print long long-sized values.
...
function old new delta
printf_main 668 834 +166
bb_strtoll - 84 +84
print_direc 391 431 +40
conv_strtoull - 19 +19
conv_strtoll - 19 +19
conv_strtoul 16 - -16
conv_strtol 16 - -16
------------------------------------------------------------------------------
(add/remove: 4/2 grow/shrink: 2/0 up/down: 342/-32) Total: 296 bytes
2009-01-04 02:58:58 +00:00
311c19a661
ash: printf builtin with no arguments should not exit
2008-12-10 11:51:45 +00:00
6a0ad25061
ash: dont allow e.g. exec <&10 to attach to stript's fd!
...
function old new delta
is_hidden_fd - 61 +61
redirect 1135 1164 +29
popstring 134 140 +6
printf_main 635 637 +2
evalvar 1374 1376 +2
echo_main 294 296 +2
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 5/0 up/down: 102/0) Total: 102 bytes
2008-07-25 13:34:05 +00:00
0f293b96dc
fix all cases of strcpy on overlapping strings.
2008-07-22 20:16:55 +00:00
5f116629d8
printf: do not print garbage on "%Ld". closes bug 4214.
...
function old new delta
printf_main 633 637 +4
multiconvert 99 79 -20
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/1 up/down: 4/-20) Total: -16 bytes
2008-07-18 18:41:55 +00:00
a48656b441
printf: fix %b, fix several bugs in %*.*, fix compat issues with
...
aborting too early, support %zd; expand testsuite
function old new delta
get_width_prec - 46 +46
multiconvert 82 99 +17
conv_strtod 44 54 +10
print_direc 382 391 +9
printf_main 629 633 +4
conv_strtoul 20 16 -4
conv_strtol 20 16 -4
my_xstrtoul 20 - -20
my_xstrtol 20 - -20
my_xstrtod 21 - -21
------------------------------------------------------------------------------
(add/remove: 1/3 grow/shrink: 4/2 up/down: 86/-69) Total: 17 bytes
2008-07-18 11:10:51 +00:00
0f683f818c
printf: protect against bogus format specifiers. Hopefully closes bug 4184
2008-07-17 09:17:51 +00:00
a60f84ebf0
*: rename ATTRIBUTE_XXX to just XXX.
2008-07-05 09:18:54 +00:00
cd2663f15e
ash: optional printf builtin. +25 bytes if off, +35 if on.
...
by Cristian Ionescu-Idbohrn.
2008-06-01 22:36:39 +00:00
a76669c595
printf: fix a trivial bug
2008-05-31 18:32:56 +00:00
1d1bba4e99
printf: code shrink by eliminating string alloc/copy
...
function old new delta
print_direc 428 382 -46
2008-05-31 11:41:50 +00:00
636a1f85e8
- use EXIT_{SUCCESS,FAILURE}. No object-code changes
2008-05-19 09:29:47 +00:00
b6c4855f1d
printf: fix printf -%s- foo, printf -- -%s- foo (bug 3354)
...
function old new delta
printf_main 577 548 -29
2008-05-18 14:28:40 +00:00
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
4daad9004d
introduce bb_putchar(). saves ~1800 on uclibc (less on glibc).
2007-09-27 10:20:47 +00:00
b6adbf1be2
usage.c: remove reference to busybox.h
...
*: s/include "busybox.h"/include "libbb.h"
2007-05-26 19:00:18 +00:00
339f5eb2e0
printf: allow hex/oct numbers; move functions around
...
so that we have no forward declarations
2007-03-09 16:43:01 +00:00
06af216528
suppress warnings about easch <applet>_main() having
...
no preceding prototype
2007-02-03 17:28:39 +00:00
a41fdf331a
preparatory patch for -Wwrite-strings #1
2007-01-29 22:51:00 +00:00
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
1385899416
attempt to regularize atoi mess.
2006-10-08 12:49:22 +00:00
c290563319
remove unneeded #includes, fix indentation
2006-09-23 16:01:09 +00:00
101a470068
- make append_option and multiconvert static.
2006-04-03 15:46:14 +00:00
5c2b238b3a
more busybox's style: close bug 745
2006-02-28 10:15:42 +00:00
c1ef7bdd8d
just whitespace
2006-01-25 00:08:53 +00:00
251161f75c
Bug 624 wants quoted char support for printf, so you can do something like:
...
printf '%d\n' '"x"'
and have it print out 120. This is the smallest implementation I can think
of at the moment.
2006-01-06 20:28:05 +00:00
240a91d8a1
Patch by Felipe Kellermann, use the common escape handling function and remove some unused code.
2004-09-15 02:05:23 +00:00
c7bda1ce65
Remove trailing whitespace. Update copyright to include 2004.
2004-03-15 08:29:22 +00:00
2479445562
Fix/eliminate use of atol
2004-03-06 22:11:45 +00:00
6c0e0fb8ac
Fix a stupid bug I introduced several months ago
2003-08-08 07:39:57 +00:00
a2d1982841
cleanup a bit to remove needless verify() function
2003-05-26 18:09:14 +00:00
cad5364599
Major coreutils update.
2003-03-19 09:13:01 +00:00
7ef54de672
locale correction patch from Vladimir
2001-03-19 19:25:49 +00:00