Age | Commit message (Collapse) | Author |
|
A tar file created by toybox tar with values large enough to need
base-256 rather than ASCII octal caused a tar reader to crash, and
caused GNU tar to complain.
I note from the docs at
https://github.com/libarchive/libarchive/blob/master/libarchive/tar.5#L326
that they imply that only the top *bit* should be set to indicate this
format, not the whole top byte, to give a 95-bit or 63-bit field. But I
don't think we can hit that in practice?
Bug: http://issuetracker.google.com/181683612
|
|
|
|
|
|
GNU says "/dev/stdin" for the filename, but we say "-".
|
|
This also changes the other compression options (such as -j) so that we
pass no arguments for compression and just -d for decompression, which
is what -I does to its filter and which appears sufficient. (I think I
used -dc before just out of habit, since that's what I've been typing on
the command line for decades.)
|
|
(Also fix -v output going to stderr when it shouldn't.)
|
|
|
|
|
|
Used by the Linux kernel build when copying kernel headers to
kernel-headers.tar.gz.
Bug: http://b/152244851
|
|
Just re-tar the extracted file and check we get the expected result.
|
|
|
|
|
|
There's no /etc/group on Android.
Loop devices are in different places, but that test doesn't seem to
offer anything beyond the block/char special device tests later, so
remove that rather than fix it.
Fix the block/char special tests (the expectations were missing, but
they're never normally run on the host because the mknod fails).
Likewise add the missing expectation to the "ownership" test, which
isn't normally run on the host because the chown fails.
The "sparse without overflow" test was broken because of the mksh/bash
disagreement about whether in `VAR=val shell_function` that's a
temporary assignment to VAR or one that outlives the command. Switch SUM
to being a function like LST before it. Also rewrite the TARHD stuff
because Android (a) doesn't have hd and (b) doesn't have process
substitution in its shell. (I wish I'd noticed TARHD earlier --- I'd
been manually sending the tar files to xxd for debugging instead!)
With this patch, all the tar tests now pass for me on both the device
and host.
|
|
Used by build/make/tools/mktarball.sh in AOSP. (Which is why today's
switch to toybox tar got reverted.)
|
|
(which doesn't handle "VAR=blah thingy" right if thingy is a function,
the variable winds up staying set after the function returns.)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Also trivial cleanup of pipe -> xpipe.
Bug: http://b/38215123
|
|
|
|
|
|
Pathnames may be longer than the name field in the header, so use
strncpy() instead of xstrncpy() to avoid bailing out.
Also add unit tests to ensure proper handling of short and long
pathnames.
Change-Id: Id025891993746889564b479e5185cf9721b54a55
|
|
Don't rely on ordering of readdir for tests.
Change-Id: Ice24bb64ce453acb0006e3746677d619db933ab1
|
|
|
|
and make ctrl-c kill "make test" more reliably.
|