Denys Vlasenko [Sun, 12 May 2013 00:45:23 +0000 (02:45 +0200)]
hush: fix build failure if FEATURE_EDITING=y && !HUSH_INTERACTIVE
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Sun, 12 May 2013 00:34:38 +0000 (02:34 +0200)]
Fix build failures caused by not compiling open_transformer.c
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Sun, 12 May 2013 00:13:24 +0000 (02:13 +0200)]
telnet: code shrink
function old new delta
telnet_main 1519 1515 -4
con_escape 296 285 -11
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Oliver Metz [Wed, 8 May 2013 18:21:29 +0000 (20:21 +0200)]
volume_id: fix ntfs attribute search
len is declared as uint32_t but le16_to_cpu macro is used
Signed-off-by: Oliver Metz <oliver.metz@gmx.de>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Sun, 21 Apr 2013 13:51:41 +0000 (15:51 +0200)]
vi: make regexp search case-insensitive if ":set ignorecase" is active
Reported by Dan Moinescu <dan@moinescu.net>.
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Flemming Madsen [Sun, 7 Apr 2013 16:47:24 +0000 (18:47 +0200)]
ash,hush: history builtin
function old new delta
show_history - 39 +39
builtin_history - 16 +16
historycmd - 13 +13
bltins1 312 324 +12
builtintab 336 344 +8
popstring 134 140 +6
hush_main 1048 1046 -2
ash_main 1398 1396 -2
size_from_HISTFILESIZE 44 40 -4
------------------------------------------------------------------------------
(add/remove: 3/0 grow/shrink: 3/3 up/down: 94/-8) Total: 86 bytes
Signed-off-by: Flemming Madsen <busybox@themadsens.dk>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Sun, 7 Apr 2013 16:16:58 +0000 (18:16 +0200)]
hush: fix for "while false && true; do echo BUG; break; done". closes 6170
function old new delta
run_list 959 941 -18
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Tue, 2 Apr 2013 12:37:06 +0000 (14:37 +0200)]
mdev: call index_in_strings on $ACTION only after we checked it for NULL
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Tue, 2 Apr 2013 11:26:24 +0000 (13:26 +0200)]
examples/mdev.conf.change_blockdev.sh: update
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Sat, 30 Mar 2013 15:23:12 +0000 (16:23 +0100)]
examples: add mdev example for Android phone
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Fri, 29 Mar 2013 13:35:44 +0000 (14:35 +0100)]
examples/inittab: fix a few incorrect statements about init
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Fri, 29 Mar 2013 12:21:53 +0000 (13:21 +0100)]
lineedit: \W on "/bin" should show "bin", not "/bin"
function old new delta
parse_and_put_prompt 793 785 -8
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Fri, 29 Mar 2013 12:09:05 +0000 (13:09 +0100)]
lineedit: implement \T \t \A \@ prompts escapes, fix \W escape, drop \!
function old new delta
parse_and_put_prompt 742 793 +51
read_line_input 3836 3826 -10
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Fri, 29 Mar 2013 11:30:33 +0000 (12:30 +0100)]
libbb: introduce and use strftime_[YYYYMMDD]HHMMSS()
function old new delta
strftime_fmt - 53 +53
strftime_YYYYMMDDHHMMSS - 12 +12
strftime_HHMMSS - 12 +12
human_time 44 43 -1
fmtstr_t 9 - -9
step_time 361 345 -16
watch_main 261 232 -29
------------------------------------------------------------------------------
(add/remove: 3/1 grow/shrink: 0/3 up/down: 77/-55) Total: 22 bytes
text data bss dec hex filename
919203 932 17692 937827 e4f63 busybox_old
919209 932 17692 937833 e4f69 busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Thu, 28 Mar 2013 12:20:12 +0000 (13:20 +0100)]
lineedit: add handling of \H in prompt
Based on the patch by Arnaud RĂ©billout <rebillout@syscom.ch>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Wed, 27 Mar 2013 14:18:32 +0000 (15:18 +0100)]
hexdump: need to use xstrtoull for off_t
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Wed, 27 Mar 2013 14:15:33 +0000 (15:15 +0100)]
hexdump: don't unconditionally limit the usable address range
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Wed, 27 Mar 2013 13:30:18 +0000 (14:30 +0100)]
man: install to /usr/bin, not /sbin
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Mon, 25 Mar 2013 22:27:00 +0000 (23:27 +0100)]
httpd: don't allow tabs and multiple spaces in request string
HTTP standard doesn't allow it and no sane clients should ever use it.
function old new delta
handle_incoming_and_exit 2795 2785 -10
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Bernhard Reutner-Fischer [Fri, 22 Mar 2013 16:04:51 +0000 (17:04 +0100)]
setserial: Fix typo: s/baund_rate/baud_rate/g
as noted by Christoph Handel opensource at macht-blau.org
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Denys Vlasenko [Mon, 18 Mar 2013 17:47:16 +0000 (18:47 +0100)]
sendmail: code shrink on top of previous patches
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Aaro Koskinen [Sun, 24 Feb 2013 22:45:12 +0000 (00:45 +0200)]
sendmail: don't add multiple To: headers
When adding To: header, add only a single header. If there are multiple
addresses, make it multiline.
Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Aaro Koskinen [Sun, 24 Feb 2013 22:45:11 +0000 (00:45 +0200)]
sendmail: don't add To: header if it already exists
If the message we are sending already has To: header, don't add a new one.
Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Aaro Koskinen [Sun, 24 Feb 2013 22:45:10 +0000 (00:45 +0200)]
sendmail: support long header fields for recipients
Support long header fields in To:, Cc: and Bcc: headers.
Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Aaro Koskinen [Sun, 24 Feb 2013 22:45:09 +0000 (00:45 +0200)]
sendmail: support address lists
Headers To:, Cc: and Bcc: may have a list of comma-separated
addresses. Add support for that. Commas inside double quotes are ignored.
Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Aaro Koskinen [Sun, 24 Feb 2013 22:45:08 +0000 (00:45 +0200)]
sendmail: support addresses inside angle brackets
When we extract addresses from the e-mail, try to first check for an
address inside angle brackets.
Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Aaro Koskinen [Sun, 24 Feb 2013 22:45:07 +0000 (00:45 +0200)]
sendmail: don't mangle e-mail headers
Leave the original To: and Cc: headers untouched, when we try to extract
addresses from them.
Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Aaro Koskinen [Sun, 24 Feb 2013 22:45:06 +0000 (00:45 +0200)]
sendmail: avoid sending mail to wrong addresses
If we get an address we cannot parse properly, we currently just strip
the unknown characters and still try to send it. This is considered
harmful as the resulting address may still be valid but different from
what the user originally intended.
Instead, skip sending to an address we cannot fully understand and
print the characters what we have scanned so far. Leading and trailing
whitespace is allowed and silently stripped.
Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Mon, 18 Mar 2013 01:26:58 +0000 (02:26 +0100)]
mkfs_minix: use get_volume_size_in_bytes instead of local version
Hopefully this also closes 4730
function old new delta
valid_offset 55 - -55
mkfs_minix_main 2925 2674 -251
------------------------------------------------------------------------------
(add/remove: 0/1 grow/shrink: 0/1 up/down: 0/-306) Total: -306 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Sun, 17 Mar 2013 22:01:17 +0000 (23:01 +0100)]
mdev: fix build failure
The error was "error: 'struct globals' has no member named 'parser'"
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Sun, 17 Mar 2013 21:59:51 +0000 (22:59 +0100)]
nc: fix build failure ("subscripted value is neither array nor pointer")
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Sun, 17 Mar 2013 13:25:22 +0000 (14:25 +0100)]
ash: add comment about failures in source builtin. No code changes.
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Sun, 17 Mar 2013 13:11:04 +0000 (14:11 +0100)]
hush: source builtin should override $N only if it has args
function old new delta
builtin_source 174 184 +10
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Stefan Hellermann [Fri, 15 Mar 2013 01:45:50 +0000 (02:45 +0100)]
ash: read $HOME/.profile instead of $(pwd)/.profile
ash --login should read ~/.profile instead of .profile in the current
directory. I noticed it while trying to figure out why /root/.profile
is only read sometimes.
function old new delta
ash_main 1374 1398 +24
Signed-off-by: Stefan Hellermann <stefan@the2masters.de>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Stefan Hellermann [Sun, 3 Mar 2013 14:29:32 +0000 (15:29 +0100)]
ash: move code to allow setting $HOME in /etc/profile
move HISTFILE=$HOME/.ash_history below reading /etc/profile,
so that /etc/profile can set $HOME. HOME can be unset when
directly invoking ash --login from init without going through
getty.
Signed-off-by: Stefan Hellermann <stefan@the2masters.de>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Fri, 15 Mar 2013 01:17:29 +0000 (02:17 +0100)]
vi: code shrink
function old new delta
status_line_bold_errno - 32 +32
colon 2891 2873 -18
file_insert 354 313 -41
------------------------------------------------------------------------------
(add/remove: 1/0 grow/shrink: 0/2 up/down: 32/-59) Total: -27 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Ron Yorston [Thu, 7 Mar 2013 20:37:23 +0000 (20:37 +0000)]
vi: fix adjustment of buffer on partial file read
The second argument to text_hole_delete was incorrect: it should
be a pointer to the end of the hole.
Signed-off-by: Ron Yorston <rmy@tigress.co.uk>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Fri, 15 Mar 2013 00:50:35 +0000 (01:50 +0100)]
sysklogd: trim help text
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Guilherme Maciel Ferreira [Fri, 8 Mar 2013 19:50:51 +0000 (16:50 -0300)]
traceroute: free some memory allocated by xzalloc()
Signed-off-by: Guilherme Maciel Ferreira <guilherme.maciel.ferreira@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Alexander Shiyan [Thu, 14 Mar 2013 23:42:39 +0000 (00:42 +0100)]
flash_eraseall: implement -N
Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Alexander Shiyan [Thu, 14 Mar 2013 23:27:41 +0000 (00:27 +0100)]
nanddump: fix build if nandwrite isn't enabled
Signed-off-by: Alexander Shiyan <shc_work@mail.ru>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Thu, 14 Mar 2013 23:11:35 +0000 (00:11 +0100)]
ping[6]: accept and ignore -n. Code shrink
function old new delta
print_stats_and_exit 270 232 -38
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Thu, 14 Mar 2013 01:18:52 +0000 (02:18 +0100)]
udhcpd: also add -I ADDR to help text
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Wed, 13 Mar 2013 21:27:37 +0000 (22:27 +0100)]
udhcpd: add -I LOCAL_ADDR option
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Bernhard Reutner-Fischer [Wed, 6 Mar 2013 20:01:05 +0000 (21:01 +0100)]
awk: Fix handling of functions with empty body
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Mandeep Singh Baines [Tue, 5 Mar 2013 00:33:12 +0000 (16:33 -0800)]
losetup: fix util-linux compatibility
Added -a support. Also made sure -f works as follows:
losetup [-r] [-o offset] {-f|loopdev} file
Removed support for 'losetup -r' with no arguments.
Signed-off-by: Mandeep Singh Baines <msb@chromium.org>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Tue, 12 Mar 2013 15:38:03 +0000 (11:38 -0400)]
readlink: note that our -f is really -e
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Tue, 12 Mar 2013 15:14:24 +0000 (11:14 -0400)]
readlink: uClibc supports automatic allocation too now
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Tue, 12 Mar 2013 15:13:22 +0000 (11:13 -0400)]
platform: use KERNEL_VERSION to simplify uClibc version checking
This makes reading the logic (as well as adding new code) a lot simpler,
and fixes one or two cases that were broken due to incorrect sub-version
tests.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Tue, 12 Mar 2013 14:48:09 +0000 (10:48 -0400)]
udhcpc: use readlink rather than realpath
The realpath utility requires all paths exist when canonicalizing
symlinks. If /etc/resolv.conf points to a tmpfs, then it might
not exist initially. Use `readlink -f` so that we follow all
symlinks that are available.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Denys Vlasenko [Mon, 4 Mar 2013 02:04:38 +0000 (03:04 +0100)]
hostid: do not output sign-extended host id. Closes 6056
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Mike Frysinger [Sun, 3 Mar 2013 05:48:53 +0000 (00:48 -0500)]
archival: note implicit dependencies between lzop & bbunzip
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Denys Vlasenko [Fri, 1 Mar 2013 13:48:10 +0000 (14:48 +0100)]
decompress_unlzma: move function, no code changes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Fri, 1 Mar 2013 13:43:07 +0000 (14:43 +0100)]
decompress_unlzma: 10% speedup in "small" code
text data bss dec hex filename
1796 0 0 1796 704 decompress_unlzma.o
1801 0 0 1801 709 decompress_unlzma.o
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Fri, 1 Mar 2013 13:37:58 +0000 (14:37 +0100)]
decompress_unlzma: make "fast" version a bit smaller
It is not slower. In fact it seems a tiny bit faster too.
text data bss dec hex filename
2827 0 0 2827 b0b decompress_unlzma.o
2797 0 0 2797 aed decompress_unlzma.o
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Fri, 1 Mar 2013 07:25:45 +0000 (08:25 +0100)]
lzop: fiq -q and OPTION_DECOMPRESS mismatch
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Mike Frysinger [Fri, 1 Mar 2013 02:28:21 +0000 (21:28 -0500)]
bbunzip: fix order of flags vs bit defines
Too much code shuffling.
Reported-by: Mandeep Singh Baines <msb@chromium.org>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Thu, 28 Feb 2013 22:21:50 +0000 (17:21 -0500)]
bbunzip: ignore the -q flag with the decompressors
The -q flag is used in shell scripts for suppressing output.
Have our applets swallow the flag for compatibility.
Reported-by: Mandeep Singh Baines <msb@chromium.org>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Denys Vlasenko [Thu, 28 Feb 2013 18:01:28 +0000 (19:01 +0100)]
ifupdown: support "source" stanza in /etc/network/interfaces
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Thu, 28 Feb 2013 17:37:04 +0000 (18:37 +0100)]
zcat: fix "zcat FILE" trying to do detection twice
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Thu, 28 Feb 2013 17:06:09 +0000 (18:06 +0100)]
zcat: if seamless uncompressors are defined, autodetect file's format
function old new delta
bbunpack 526 622 +96
packed_usage 29335 29341 +6
gunzip_main 64 67 +3
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Thu, 28 Feb 2013 17:04:22 +0000 (18:04 +0100)]
fix error message on failure to oen /dev/null; fix zcat's help text
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Thu, 28 Feb 2013 15:38:25 +0000 (16:38 +0100)]
code shrink in check_errors_in_children()
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Thu, 28 Feb 2013 14:51:55 +0000 (15:51 +0100)]
pgrep: fix a "missing closing paren" build error
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Thu, 28 Feb 2013 11:50:09 +0000 (12:50 +0100)]
ifplugd: make -k send SIGINT, not SIGQUIT
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Bernhard Walle [Thu, 28 Feb 2013 11:42:38 +0000 (12:42 +0100)]
pgrep: fix -x option
Because when -x is used (exact match), then we cannot compile the
regular expression with REG_NOSUB. The manual page regcomp(3) states
in section "Byte offsets":
Unless REG_NOSUB was set for the compilation of the pattern
buffer, it is possible to obtain substring match addressing
information.
The problem was detected on an ARM system with glibc 2.16.
Signed-off-by: Bernhard Walle <bernhard@bwalle.de>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Thu, 28 Feb 2013 11:39:27 +0000 (12:39 +0100)]
Fix config help text
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Thu, 28 Feb 2013 11:34:18 +0000 (12:34 +0100)]
make --help return exitcode 0. Closes 5612
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Peter Korsgaard [Thu, 28 Feb 2013 11:25:49 +0000 (12:25 +0100)]
run-parts: fix unicode creep in --help
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Thu, 28 Feb 2013 11:20:06 +0000 (12:20 +0100)]
nc_bloaty: support -ll and -lk. Closes 2245
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Thu, 28 Feb 2013 10:09:14 +0000 (11:09 +0100)]
nc: don't redirect stderr to network in -e PROG mode
This in incompatible with nc-1.10, but makes a lot of sense.
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Thomas De Schampheleire [Thu, 28 Feb 2013 09:31:54 +0000 (10:31 +0100)]
nameif: fix use-after-free in ENABLE_FEATURE_CLEAN_UP code
Signed-off-by: Thomas De Schampheleire <thomas.de.schampheleire@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Thu, 28 Feb 2013 09:22:49 +0000 (10:22 +0100)]
run-parts: stop providing incompatible short options
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Peter Korsgaard [Thu, 28 Feb 2013 08:59:23 +0000 (09:59 +0100)]
run-parts: add --exit-on-error | -e support
The "big" run-parts supports a handy --exit-on-error to stop execution on
errors, so lets support it as well.
Upstream doesn't have a short option for it, but I've used '-e' for busybox.
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Leonid Lisovskiy [Wed, 27 Feb 2013 17:32:58 +0000 (18:32 +0100)]
xz: fix put_unaligned_{l,b}e32
Signed-off-by: Leonid Lisovskiy <lly.dev@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Shawn J. Goff [Wed, 27 Feb 2013 17:30:05 +0000 (18:30 +0100)]
lineedit: initialize delptr
In vi mode, the 'p' and 'P' commands caused a segfault when nothing had
been put in the buffer yet because the delptr was not initialized.
Signed-off-by: Shawn J. Goff <shawn7400@gmail.com>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Lasse Collin [Wed, 27 Feb 2013 16:26:40 +0000 (17:26 +0100)]
xz: support concatenated .xz streams
function old new delta
xz_dec_reset - 77 +77
unpack_xz_stream 2402 2397 -5
Signed-off-by: Lasse Collin <lasse.collin@tukaani.org>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Lasse Collin [Wed, 27 Feb 2013 15:41:36 +0000 (16:41 +0100)]
xz: mention xzminidec.c in README
Signed-off-by: Lasse Collin <lasse.collin@tukaani.org>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Lasse Collin [Wed, 27 Feb 2013 15:39:56 +0000 (16:39 +0100)]
xz: fix incorrect XZ_BUF_ERROR
xz_dec_run() could incorrectly return XZ_BUF_ERROR if
all of the following was true:
- The caller knows how many bytes of output to expect
and only provides that much output space.
- When the last output bytes are decoded, the
caller-provided input buffer ends right before
the LZMA2 end of payload marker. So LZMA2 won't
provide more output anymore, but it won't know it
yet and thus won't return XZ_STREAM_END yet.
- A BCJ filter is in use and it hasn't left any
unfiltered bytes in the temp buffer. This can happen
with any BCJ filter, but in practice it's more likely
with filters other than the x86 BCJ.
This fixes <https://bugzilla.redhat.com/show_bug.cgi?id=735408>
where Squashfs thinks that a valid file system is corrupt.
Thanks to Jindrich Novy for telling me that such a bug report
exists, Phillip Lougher for providing excellent debug info,
and other people on #fedora-ppc.
This also fixes a similar bug in single-call mode where the
uncompressed size of a XZ Block using BCJ + LZMA2 was 0 bytes
and caller provided no output space. Many empty .xz files
don't contain any Blocks and thus don't trigger this bug.
This also tweaks a closely related detail: xz_dec_bcj_run()
could call xz_dec_lzma2_run() to decode into temp buffer when
it was known to be useless. This was harmless although it
wasted a minuscule number of CPU cycles.
Signed-off-by: Lasse Collin <lasse.collin@tukaani.org>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Lasse Collin [Wed, 27 Feb 2013 15:38:06 +0000 (16:38 +0100)]
xz: fix decoding of LZMA2 streams having no uncompressed data.
No .xz encoder creates files with empty LZMA2 streams,
but such files would still be valid and decompressors
must accept them.
Note that empty .xz files are a different thing than
empty LZMA2 streams. This bug didn't affect typical .xz
files that had no uncompressed data.
Signed-off-by: Lasse Collin <lasse.collin@tukaani.org>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Lasse Collin [Wed, 27 Feb 2013 15:37:18 +0000 (16:37 +0100)]
cz: add C++ support to xz.h
Signed-off-by: Lasse Collin <lasse.collin@tukaani.org>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Lasse Collin [Wed, 27 Feb 2013 15:36:17 +0000 (16:36 +0100)]
xz: remove an empty line from xz_dec_lzma2.c
Signed-off-by: Lasse Collin <lasse.collin@tukaani.org>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Lasse Collin [Wed, 27 Feb 2013 15:34:06 +0000 (16:34 +0100)]
xz: make bcj_x86_test_msbyte() an inline function
Signed-off-by: Lasse Collin <lasse.collin@tukaani.org>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Lasse Collin [Wed, 27 Feb 2013 15:32:03 +0000 (16:32 +0100)]
xz: add a comment about using uint32_t as vli_type
Signed-off-by: Lasse Collin <lasse.collin@tukaani.org>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Lasse Collin [Wed, 27 Feb 2013 15:28:33 +0000 (16:28 +0100)]
xz: avoid "NOTE:" in xz.h
Signed-off-by: Lasse Collin <lasse.collin@tukaani.org>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Lasse Collin [Wed, 27 Feb 2013 15:26:03 +0000 (16:26 +0100)]
xz: update README
Signed-off-by: Lasse Collin <lasse.collin@tukaani.org>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Lasse Collin [Wed, 27 Feb 2013 15:23:05 +0000 (16:23 +0100)]
xz: omit explicit \0 from HEADER_MAGIC
Signed-off-by: Lasse Collin <lasse.collin@tukaani.org>
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Wed, 27 Feb 2013 14:49:38 +0000 (15:49 +0100)]
Fix move_to_unaligned16
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Wed, 27 Feb 2013 09:51:41 +0000 (10:51 +0100)]
mdev: improve $SEQ handling; improve debug logging
Sequential run of concurrent mdev's was too simplistic:
they waited for /dev/mdev.seq to match. This could sometimes
cause cumulative loss of time on the order of a second.
Added SIGCHLD signaling from exiting mdev to all other mdev's.
Added debugging required to see that code actually works as intended.
Example of /dev/mdev.log (with "woken up" elevated from dbg lvl 3 to 2):
mdev[1023]: first seq written
^^^^ seq, not pid
mdev[1023]: 35.022395 ACTION:add SUBSYSTEM:module DEVNAME:(null) DEVPATH:/module/lib80211
mdev[1023]: rule matched, line -1
^^^^^^^ means "default rule"
mdev[1023]: 35.022676 exiting
^^^^^^^^^ second,usec timestamp
mdev[1024]: 35.069691 ACTION:add SUBSYSTEM:vc DEVNAME:vcs9 DEVPATH:/devices/virtual/vc/vcs9
mdev[1024]: dev 7,9
mdev[1025]: 35.069889 waiting for '1024'
mdev[1026]: 35.069946 waiting for '1024'
mdev[1027]: 35.070151 waiting for '1024'
mdev[1024]: rule matched, line -1
mdev[1024]: mknod vcs9 (7,9) 20660 0:0
mdev[1024]: 35.070346 exiting
mdev[1025]: woken up
mdev[1026]: woken up
mdev[1025]: 35.071213 ACTION:add SUBSYSTEM:vc DEVNAME:vcsa9 DEVPATH:/devices/virtual/vc/vcsa9
^^^^^^^^^ took only a millisecond to start running after prev mdev exited
mdev[1025]: dev 7,137
mdev[1027]: woken up
mdev[1025]: rule matched, line -1
mdev[1025]: mknod vcsa9 (7,137) 20660 0:0
mdev[1025]: 35.072109 exiting
function old new delta
mdev_main 849 1372 +523
curtime - 59 +59
dirAction 87 134 +47
static.ts - 8 +8
keywords 19 12 -7
make_device 2189 2119 -70
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Mike Frysinger [Wed, 27 Feb 2013 06:05:34 +0000 (01:05 -0500)]
udhcpc: tweak math shell style with the metric var
Some shells (like dash) are lame and omit the POSIX increment/decrement
feature (because it is listed as optional). Tweak the shell script to
work in all POSIX variants.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger [Wed, 27 Feb 2013 06:01:43 +0000 (01:01 -0500)]
udhcpc: support resolv.conf symlinks
Often it is desirable to have /etc/ be on read-only storage (well, the
whole rootfs) but have things like /etc/resolv.conf be symlinks to a
writable location. Tweak the simple script to support that.
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Denys Vlasenko [Mon, 25 Feb 2013 23:40:46 +0000 (00:40 +0100)]
mdev: add environment variable match
function old new delta
make_device 1998 2189 +191
clean_up_cur_rule 61 96 +35
dirAction 75 87 +12
mdev_main 838 849 +11
packed_usage 29272 29273 +1
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 5/0 up/down: 250/0) Total: 250 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Mon, 25 Feb 2013 23:36:53 +0000 (00:36 +0100)]
move endofname() to libbb
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Mon, 25 Feb 2013 06:24:44 +0000 (07:24 +0100)]
tail: make help text for -n +N syntax more correct
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Mon, 25 Feb 2013 00:26:09 +0000 (01:26 +0100)]
head: support -n -NUM and -c -NUM
function old new delta
head_main 406 832 +426
packed_usage 29234 29252 +18
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 2/0 up/down: 444/0) Total: 444 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Mon, 25 Feb 2013 00:24:32 +0000 (01:24 +0100)]
head,tail: use common suffix struct. simplify help text.
function old new delta
head_tail_suffixes - 32 +32
head_main 415 406 -9
packed_usage 29252 29234 -18
tail_suffixes 32 - -32
head_suffixes 32 - -32
------------------------------------------------------------------------------
(add/remove: 2/2 grow/shrink: 0/2 up/down: 32/-91) Total: -59 bytes
text data bss dec hex filename
890474 497 7584 898555 db5fb busybox_old
890415 497 7584 898496 db5c0 busybox_unstripped
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Wed, 20 Feb 2013 15:01:48 +0000 (16:01 +0100)]
rpm: unmap rpm file before working with next one
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Wed, 20 Feb 2013 15:01:10 +0000 (16:01 +0100)]
rpm: stop using statics; move main() to the end of the source file
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Wed, 20 Feb 2013 14:58:42 +0000 (15:58 +0100)]
rpm: use "create+rename" method of replacing existing files
Users were reporting getting errors like
"ls: error while loading shared libraries: libc.so.6: ELF load command past end of file"
while rpm was unpacking glibc tarball.
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Denys Vlasenko [Wed, 20 Feb 2013 14:57:39 +0000 (15:57 +0100)]
rpm: make -ql display more compatible; improve help text
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>