Denys Vlasenko
2f28b2bdbb
fsync,sync: merge into one source module
...
With FEATURE_SYNC_FANCY not set:
function old new delta
fsync_main 130 123 -7
With FEATURE_SYNC_FANCY set, should be much larger code size savings.
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2019-04-02 14:55:29 +02:00
Denys Vlasenko
4f74bb6059
fsync,sync: make them similar
...
sync: add O_NOCTTY
fsync: drop O_NOATIME, add O_NONBLOCK, set exitcode to 1 if fsync() fails,
update --help message to be similar to sync.
both: reformat code to minimize "diff -u sync.c fsync.c":
in particular, they use same open() flags now
function old new delta
fsync_main 126 130 +4
packed_usage 33316 33317 +1
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/0 up/down: 5/0) Total: 5 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2019-04-02 14:39:56 +02:00
Denys Vlasenko
4a6748662a
top: tweak --help
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2019-02-27 16:45:39 +01:00
Ron Yorston
e563f9e851
du: don't count duplicate arguments. Closes 5288
...
Since coreutils 8.6 (2010-10-15) du no longer counts duplicate arguments.
Revert the relevant part of commit 618a3027ed
(du: fix "du /dir /dir"
case).
function old new delta
du_main 302 297 -5
reset_ino_dev_hashtable 78 - -78
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 0/1 up/down: 0/-83) Total: -83 bytes
Signed-off-by: Ron Yorston <rmy@pobox.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2019-02-19 17:08:39 +01:00
Rostislav Skudnov
d712edc6d8
dd: add 'oflag=append'
...
Signed-off-by: Rostislav Skudnov <rostislav@tuxera.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2019-02-14 13:01:46 +01:00
Denys Vlasenko
ecf02e8b83
date: improve help text for -D
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2019-01-09 12:58:52 +01:00
Denys Vlasenko
edca770d11
sleep: support "inf"
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2019-01-07 15:20:56 +01:00
Martijn Dekker
f83292cfc4
ls: make -i compatible with coreutils: don't follow symlink by default
...
Signed-off-by: Martijn Dekker <martijn@inlv.org>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2019-01-04 18:55:53 +01:00
Denys Vlasenko
b86b39bfda
config: more tweaks
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-12-28 17:52:43 +01:00
Denys Vlasenko
b097a84d62
config: update size information
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-12-28 03:20:17 +01:00
Denys Vlasenko
c100535571
cat,nl: fix handling of open errors
...
$ cat -n does_not_exist; echo $?
cat: does_not_exist: No such file or directory
1
function old new delta
print_numbered_lines 118 129 +11
nl_main 196 201 +5
cat_main 421 425 +4
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/0 up/down: 20/0) Total: 20 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-11-29 11:44:10 +01:00
Denys Vlasenko
93ef5dd640
printf: fix printf "%u\n" +18446744073709551614
...
function old new delta
conv_strtoll 19 32 +13
conv_strtoull 49 61 +12
bb_strtoll 89 84 -5
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/1 up/down: 25/-5) Total: 20 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-10-30 23:24:18 +01:00
Denys Vlasenko
9ab5a8d560
dd: do not have 'ocount' variable if ibs/obs support is not enabled
...
function old new delta
packed_usage 32964 32961 -3
dd_main 1033 1021 -12
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 0/2 up/down: 0/-15) Total: -15 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-10-30 17:04:52 +01:00
Rostislav Skudnov
3f6a978a0d
dd: add 'oflag=seek_bytes'
...
Allow specifying position in the output file in bytes instead of
obs-sized blocks, improve compatibility with GNU dd.
function old new delta
dd_main 1632 1693 +61
packed_usage 33130 33150 +20
static.oflag_words - 12 +12
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 2/0 up/down: 93/0) Total: 93 bytes
Signed-off-by: Rostislav Skudnov <rostislav@tuxera.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-10-30 16:55:09 +01:00
Bernhard Reutner-Fischer
3db4e7f84c
printf: fix printing +-prefixed numbers
...
Thanks to Cristian Ionescu-Idbohrn for noticing.
Also fix "%d" ' 42' to skip leading whitespace.
function old new delta
print_direc 435 454 +19
bb_strtoll 99 103 +4
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/0 up/down: 23/0) Total: 23 bytes
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
2018-10-19 15:27:42 +02:00
Denys Vlasenko
349d72c19c
unzip: use printable_string() for printing filenames
...
function old new delta
unzip_main 2726 2792 +66
printable_string2 - 57 +57
identify 4329 4336 +7
expmeta 659 663 +4
add_interface 99 103 +4
beep_main 286 289 +3
changepath 192 194 +2
builtin_type 115 117 +2
devmem_main 469 470 +1
input_tab 1076 1074 -2
create_J 1821 1819 -2
poplocalvars 314 311 -3
doCommands 2222 2214 -8
do_load 918 902 -16
printable_string 57 9 -48
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 8/6 up/down: 146/-79) Total: 67 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-09-30 16:56:56 +02:00
Denys Vlasenko
c9720a761e
timeout: fix arguments to match coreutils
...
Was: timeout [-t SECS] [-s SIG] PROG ARGS
Is: timeout [-s SIG] SECS PROG ARGS
function old new delta
timeout_main 312 319 +7
packed_usage 32882 32858 -24
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/1 up/down: 7/-24) Total: -17 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-08-03 18:28:17 +02:00
Denys Vlasenko
4c20d9f2b0
extend fractional duration support to "top -d N.N" and "timeout"
...
function old new delta
parse_duration_str - 168 +168
sleep_for_duration - 157 +157
top_main 885 928 +43
timeout_main 269 312 +43
handle_input 571 614 +43
duration_suffixes - 40 +40
sfx 40 - -40
sleep_main 364 79 -285
------------------------------------------------------------------------------
(add/remove: 4/1 grow/shrink: 3/1 up/down: 494/-325) Total: 169 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-08-03 18:17:12 +02:00
Lauri Kasanen
a380aacca6
ls: When -h is passed, the total should also be in human units
...
Signed-off-by: Lauri Kasanen <cand@gmx.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-08-01 19:47:15 +02:00
Denys Vlasenko
d01c9aa7ca
cp: placate gcc8
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-08-01 18:29:41 +02:00
Denys Vlasenko
1fbb73fc4c
cp: add missing quote in config snippet
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-07-17 00:16:16 +02:00
Denys Vlasenko
79fb6ac7a5
cp: optional --reflink support
...
function old new delta
cp_main 428 512 +84
copy_file 1676 1742 +66
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-07-13 20:30:02 +02:00
Denys Vlasenko
cbe8c65e59
sort: add -V "sort version"
...
function old new delta
packed_usage 32855 32858 +3
get_key 500 503 +3
sort_opt_str 36 37 +1
sort_main 1037 1036 -1
compare_keys 795 783 -12
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/2 up/down: 7/-13) Total: -6 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-07-08 01:37:54 +02:00
haroon maqsood
4a85d56c4c
nproc: implement --all --ignore=N
...
function old new delta
nproc_main 98 242 +144
packed_usage 32799 32816 +17
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/0 up/down: 161/0) Total: 161 bytes
Signed-off-by: haroon maqsood <maqsood3525@live.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-07-06 16:19:04 +02:00
Denys Vlasenko
34254f9dde
install: fix "-D -t DIR1/DIR2/DIR3" creating only DIR1/DIR2, closes 11106
...
function old new delta
install_main 758 767 +9
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-06-22 18:59:10 +02:00
Kartik Agaram
43b17b1cd0
restore documentation on the build config language
...
Kconfig-language.txt was deleted in commit 4fa499a17b
back in 2006.
Move to docs/ as suggested by Xabier Oneca:
http://lists.busybox.net/pipermail/busybox/2014-May/080914.html
Also update references to it everywhere.
Signed-off-by: Kartik Agaram <akkartik@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-06-06 15:16:48 +02:00
Denys Vlasenko
747162109f
realpath,readlink -f: coreutils compat, closes 11021
...
function old new delta
xmalloc_realpath_coreutils - 121 +121
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-05-24 17:31:00 +02:00
Denys Vlasenko
d80eecb868
cat: fix cat -e and cat -v erroneously numbering 1st line
...
function old new delta
cat_main 418 421 +3
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-04-29 14:05:43 +02:00
Denys Vlasenko
3632cb15f1
shell: add comments about [[, no code changes
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-04-10 15:25:41 +02:00
Denys Vlasenko
38ccd6af8a
bzip2: fix two crashes on corrupted archives
...
As it turns out, longjmp'ing into freed stack is not healthy...
function old new delta
unpack_usage_messages - 97 +97
unpack_bz2_stream 369 409 +40
get_next_block 1667 1677 +10
get_bits 156 155 -1
start_bunzip 212 183 -29
bb_show_usage 181 120 -61
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 2/3 up/down: 147/-91) Total: 56 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-04-08 20:05:04 +02:00
Denys Vlasenko
7bcde5f00d
libbb.h: always include sys/resource.h
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-04-08 17:23:27 +02:00
Denys Vlasenko
77cb6b99a4
libbb: rename bb_ask -> bb_ask_noecho, bb_ask_confirmation -> bb_ask_y_confirmation
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-04-07 15:08:12 +02:00
Denys Vlasenko
d1d6d9c5d8
sort: smaller and more agressive FEATURE_SORT_OPTIMIZE_MEMORY
...
function old new delta
sort_main 1098 1037 -61
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-04-06 16:44:50 +02:00
Denys Vlasenko
759ca8a4cb
sort: move misplaced comment
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-04-04 17:07:21 +02:00
Denys Vlasenko
c29c2e60d8
sort: FEATURE_SORT_OPTIMIZE_MEMORY
...
On sorting all kernel/linux/arch/ *.[ch] files,
this reduces memory usage by 6%.
yes | head -99999999 | sort
goes down from 1900Mb to 380 Mb.
function old new delta
sort_main 862 1098 +236
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-04-04 17:03:41 +02:00
Denys Vlasenko
7bf304f371
stat: fix a typo: s/romfs/ramfs/, closes 10876
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-03-31 02:45:22 +02:00
Denys Vlasenko
694bc06345
md5sum: use config help text similar to other "sum" tools
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-03-08 12:49:39 +01:00
Denys Vlasenko
e20a703fd3
df: do "rootfs" check sooner
...
function old new delta
df_main 1065 1064 -1
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-02-23 17:08:32 +01:00
Denys Vlasenko
58cd6e1ade
df: 4TB+ support on 32 bits arch
...
Reported for Pascal Bellard.
function old new delta
df_main 1054 1065 +11
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-02-23 17:00:23 +01:00
Denys Vlasenko
3177626033
od: move address_fmt[] from data to globals. 8 less bytes in data section
...
function old new delta
od_main 2164 2179 +15
address_fmt 8 - -8
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 1/0 up/down: 15/-8) Total: 7 bytes
text data bss dec hex filename
930954 481 6852 938287 e512f busybox_old
930977 473 6852 938302 e513e busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-02-22 12:14:55 +01:00
Denys Vlasenko
2709acbbda
sort: fix potentially buggy use of OPT_STR
...
This also makes OPT_STR reused:
text data bss dec hex filename
930979 481 6852 938312 e5148 busybox_old
930954 481 6852 938287 e512f busybox_unstripped
^^^^^^
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-02-22 11:03:23 +01:00
Denys Vlasenko
427ae18348
sort: in -s handling, return 1/-1, not 1/0 compare result
...
function old new delta
compare_keys 794 795 +1
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-02-22 10:54:55 +01:00
Denys Vlasenko
7d285c78a3
sort: fix -s. Closes 10671
...
function old new delta
sort_main 786 862 +76
compare_keys 720 794 +74
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/0 up/down: 150/0) Total: 150 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-02-21 20:08:54 +01:00
Denys Vlasenko
7f441403cb
cp: fix option handling in non-longopt config
...
the patch getopt32: remove opt_complementary 22542eca18
introduced a regressed in the cp command since it removed all aliases of arguments
if long_opts is not configured.
Patch by Sebastian Gottschall <s.gottschall@dd-wrt.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-02-11 21:25:23 +01:00
Denys Vlasenko
da49e7057a
cksum: code shrink
...
function old new delta
cksum_main 281 262 -19
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-02-01 11:44:52 +01:00
Aaro Koskinen
d15d7a0a4b
cp: implement -T
...
Implement "cp -T". Some Linux kernel Makefiles started using this recently,
so allow also building on systems using busybox cp.
function old new delta
cp_main 360 428 +68
copy_file 1678 1676 -2
packed_usage 32290 32259 -31
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/2 up/down: 76/-39) Total: 35 bytes
Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-02-01 09:30:59 +01:00
Nicholas Clark
77a6678c42
dd: add 'fullblock' iflag
...
Adds a fullblock iflag for improved compatibility with GNU dd.
The new iflag can be used to ensure that dd calls retrieve the
expected amount of data when reading from pipes or unusual
filesystems.
function old new delta
packed_usage 32249 32334 +85
dd_main 1582 1632 +50
static.iflag_words 12 22 +10
------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 3/0 up/down: 145/0) Total: 145 bytes
Signed-off-by: Nicholas Clark <nicholas.clark@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-01-25 19:00:19 +01:00
Denys Vlasenko
2b9a45b9e8
od_bloaty: fix debug code
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-01-23 14:49:12 +01:00
Denys Vlasenko
88663e481f
mv: make it NOEXEC
...
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-01-14 14:41:52 +01:00
Denys Vlasenko
2c876774a9
dd: fixed partial count logic
...
$ busybox dd if=/dev/zero of=/dev/loop0 bs=100M count=8; echo $?
8+0 records in
7+0 records out <=========== FIXED, was 7+1
805220352 bytes (767.9MB) copied, 0.464010 seconds, 1.6GB/s
1
function old new delta
write_and_stats 97 99 +2
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
2018-01-10 11:04:09 +01:00