OSDN Git Service
Elliott Hughes [Mon, 22 Aug 2016 21:09:06 +0000 (21:09 +0000)]
Merge remote-tracking branch 'toybox/master' into HEAD
am:
a0637cef8f
Change-Id: Iff9bf69c0fcb29aa6ba317be0e59481437f1a729
Elliott Hughes [Mon, 22 Aug 2016 20:45:55 +0000 (13:45 -0700)]
Merge remote-tracking branch 'toybox/master' into HEAD
Change-Id: I7018a680508d767b89418cede90c0bd9ba0bd53c
Rob Landley [Sun, 21 Aug 2016 01:24:30 +0000 (20:24 -0500)]
Promote setfattr
Rob Landley [Sun, 21 Aug 2016 01:20:06 +0000 (20:20 -0500)]
Clean up setfattr.
Rob Landley [Fri, 19 Aug 2016 02:33:27 +0000 (21:33 -0500)]
Change xgetpwnamid/xgetgrnamid to xgetuid/xgetgid returning the id number
instead of a struct. This means it can return "12345" even if that user/group
doesn't exist in /etc/passwd and similar.
All the users were immediately dereferencing it to get pw_uid or gr_gid
anyway, so just return it directly and adjust the users. This fixes
things like "chown 12345:23456 filename".
Rob Landley [Tue, 16 Aug 2016 19:14:22 +0000 (14:14 -0500)]
Add length modifier to date escapes, and length sanity check.
Rob Landley [Mon, 15 Aug 2016 07:02:32 +0000 (02:02 -0500)]
Make "stat -c %37G file" and "stat -c %.5G file" work, and fix %U and %G to
not segfault on a lookup failure (they print the number instead of UNKNOWN).
The whitespace in the default output may need some adjusting.
Rob Landley [Mon, 15 Aug 2016 00:04:02 +0000 (19:04 -0500)]
Explain shared library policy, fix an unblanaced tag, add some links.
Rob Landley [Sat, 13 Aug 2016 22:53:32 +0000 (17:53 -0500)]
Document deviations from posix for echo.
Rob Landley [Sat, 13 Aug 2016 22:50:54 +0000 (17:50 -0500)]
Add TOYFLAG_NOHELP to disable --help processing for individual commands,
apply it to "true" and "false".
Rob Landley [Sat, 13 Aug 2016 20:19:29 +0000 (15:19 -0500)]
Move getusername/getgroupname to lib. (Return name or string representation
of number, but never NULL. Both returned in static buffer good through
next call.)
Rob Landley [Thu, 11 Aug 2016 14:46:36 +0000 (09:46 -0500)]
Matthias Urhahn pointed out that %b returns hardwired 512 byte units
(man 2 stat says so) and %B is the units on %b (I.E. always 512), so change
output and help text. This matches what other implementations produce.
Rob Landley [Sun, 7 Aug 2016 00:38:25 +0000 (19:38 -0500)]
Inline setup_inout(), test ftruncate() return value, move gettimeofday() before
seek so seek time is included in total.
Rob Landley [Thu, 4 Aug 2016 15:16:59 +0000 (10:16 -0500)]
Make xopen() skip stdin/stdout/stderr, add xopen_stdio() if you want stdout,
add xopenro() that takes one argument and understands "-" means stdin,
and switch over lots of users.
Elliott Hughes [Tue, 2 Aug 2016 18:12:15 +0000 (11:12 -0700)]
Fix warning: 'XATTR_NAME_SMACK' macro redefined.
Recent Linux uapi <linux/xattr.h> headers define XATTR_NAME_SMACK.
The <sys/xattr.h> include at the top of lib/lsm.h means that even
though the direct include of <linux/xattr.h> is guarded, it may
have already happened transitively anyway.
(The alternative fixes would be to hard-code the correct value for
XATTR_NAME_SMACK here instead, or #undef XATTR_NAME_SMACK.)
Elliott Hughes [Tue, 2 Aug 2016 17:29:58 +0000 (17:29 +0000)]
Merge remote-tracking branch 'toybox/master' into HEAD
am:
a1ce46baab
Change-Id: I29e191c065fa740cd1f89909c6d3ff9e7640fbb2
Elliott Hughes [Tue, 2 Aug 2016 16:08:31 +0000 (09:08 -0700)]
Merge remote-tracking branch 'toybox/master' into HEAD
Change-Id: Ie0bea3ba0de34b8ef14ca4af97772530b6736dc2
Elliott Hughes [Fri, 29 Jul 2016 20:11:04 +0000 (13:11 -0700)]
Fix touch(1) date parsing on tzcode-derived systems.
The IANA tzcode implementation of mktime (used on Android and BSDs) sets
errno in some cases where it doesn't return -1 to indicate failure, so the
existing test always failed on those systems.
I don't think glibc ever sets errno (which is fine by ISO C, but not POSIX).
Other uses of mktime in toybox are already fine. This one would have been
caught by the existing tests if I was running them on the device :-(
Rob Landley [Sat, 30 Jul 2016 16:39:17 +0000 (11:39 -0500)]
Single builds skip commands with 0 in the install location so
"make test_scankey" didn't work.
Rob Landley [Fri, 29 Jul 2016 22:35:29 +0000 (17:35 -0500)]
Izabera reporeted that FLAG_v was never checked in timeout. (Oops.)
Rob Landley [Tue, 26 Jul 2016 18:35:56 +0000 (13:35 -0500)]
Move regexec0 into lib (regexec that takes length and matches after NUL).
Rob Landley [Sat, 23 Jul 2016 23:25:38 +0000 (18:25 -0500)]
Usischev Yury pointed out that id shouldn't use exit() directly.
Rob Landley [Sat, 23 Jul 2016 23:12:48 +0000 (18:12 -0500)]
Usischev Yury pointed out a use after free error.
Rob Landley [Sat, 23 Jul 2016 06:32:23 +0000 (01:32 -0500)]
Many failing tests I need to fix grep to pass while adding --color.
Rob Landley [Thu, 21 Jul 2016 21:37:03 +0000 (16:37 -0500)]
Common test infrastructure says command name, don't have sed.tests say 'sed sed'
Elliott Hughes [Sun, 17 Jul 2016 17:42:31 +0000 (10:42 -0700)]
Add getfattr(1) and setfattr(1).
Plus basic tests.
Rob Landley [Mon, 18 Jul 2016 03:59:44 +0000 (03:59 +0000)]
Merge remote-tracking branch \'toybox/master\' into HEAD
am:
650711a6c9
Change-Id: I757625cd0ec82d482fe4afe474e4865ecf713548
Elliott Hughes [Mon, 18 Jul 2016 03:02:10 +0000 (20:02 -0700)]
Merge remote-tracking branch 'toybox/master' into HEAD
Change-Id: I7bc7dbd93d4227715c572e31025bb16d49356ab8
Rob Landley [Sun, 17 Jul 2016 07:14:35 +0000 (02:14 -0500)]
The recent option parsing changes broke the multiplexer, because the "toybox"
command was trying to parse their options and failing. (Commands
that aren't just disabled but have no option string even in the allyesconfig
case need an OPTSTR of 0.)
This is probably only a partial fix, there's some design work to think through
here.
Elliott Hughes [Fri, 15 Jul 2016 22:14:33 +0000 (15:14 -0700)]
Remove sendevent from the Android roadmap.
Also update the list of things Android builds from pending, which has
shrunk.
Elliott Hughes [Sat, 16 Jul 2016 00:33:05 +0000 (00:33 +0000)]
Add sha224sum, sha256sum, sha384sum, and sha512sum.
am:
63ca146ceb
Change-Id: I55f89145ecca835981f426f7906840d4605d7bcc
Elliott Hughes [Fri, 15 Jul 2016 23:31:22 +0000 (16:31 -0700)]
Add sha224sum, sha256sum, sha384sum, and sha512sum.
All implemented by libcrypto.so, so basically free.
Change-Id: I02e5492d197631222106e1c17bc29fded1dd8f7a
Elliott Hughes [Fri, 15 Jul 2016 22:19:27 +0000 (22:19 +0000)]
Switch to toybox sendevent.
am:
75681dca17
Change-Id: I0edab43119eb42b388cc5f07c9236180b5f26d1b
Elliott Hughes [Fri, 15 Jul 2016 21:19:07 +0000 (14:19 -0700)]
Switch to toybox sendevent.
Change-Id: I4dbe0f946fab36dc6054c98a9fcd92b96bf7385c
Rob Landley [Fri, 15 Jul 2016 18:27:42 +0000 (18:27 +0000)]
Merge remote-tracking branch \'toybox/master\' into HEAD
am:
a126e5f9a2
Change-Id: If2c5d67842d506a82754b3af71d46be62569384b
Elliott Hughes [Fri, 15 Jul 2016 17:14:33 +0000 (10:14 -0700)]
Merge remote-tracking branch 'toybox/master' into HEAD
Change-Id: I02968eafb038766a5190e0576bf810633e9c4d50
Rob Landley [Fri, 15 Jul 2016 09:51:56 +0000 (04:51 -0500)]
Fix non-library md5sum build. (Oops.)
Rob Landley [Fri, 15 Jul 2016 09:45:08 +0000 (04:45 -0500)]
Add optional openssl accelerated versions of hash functions, loosely based on
a patch from Elliott Hughes, who said:
[PATCH] Add support for libcrypto for MD5/SHA.
Orders of magnitude faster (for architectures where OpenSSL/BoringSSL
has optimized assembler).
Also adds sha224sum, sha256sum, sha384sum, and sha512sum for folks
building with libcrypto.
The fallback portable C implementations could easily be refactored
to be API-compatible, but I don't know whether they'd stay here or
move to lib/ so I've left that part alone for now.
Rob Landley [Fri, 15 Jul 2016 09:39:35 +0000 (04:39 -0500)]
Don't close stdin when loopfiles reads "-".
Rob Landley [Fri, 15 Jul 2016 07:50:15 +0000 (02:50 -0500)]
Somebody asked a FAQ on irc, so answer it.
Elliott Hughes [Thu, 14 Jul 2016 00:00:58 +0000 (17:00 -0700)]
Add Android's "sendevent".
The lack of support for named constants is not a regression relative
to the toolbox implementation.
Rob Landley [Thu, 14 Jul 2016 21:53:33 +0000 (16:53 -0500)]
Add -c to md5sum and sha1sum.
Elliott Hughes [Wed, 13 Jul 2016 18:59:42 +0000 (11:59 -0700)]
Increase ps' default RSS and VSIZE widths.
This is enough for everything on Android and everything except Java
on my desktop. Even desktop Chrome fits!
Rob Landley [Wed, 13 Jul 2016 18:46:50 +0000 (13:46 -0500)]
Bugfix: suffixless string was feeding terminating NUL to strchr() and matching.
Rob Landley [Tue, 12 Jul 2016 20:48:25 +0000 (15:48 -0500)]
Implement NOP find -noleaf
Rob Landley [Tue, 12 Jul 2016 19:51:51 +0000 (14:51 -0500)]
Convert atolx() and friends to use long long internally. Update design.html
to use this (and tail) as examples of simplicity of implementation winning
and losing.
Elliott Hughes [Mon, 11 Jul 2016 20:46:56 +0000 (20:46 +0000)]
Merge remote-tracking branch \'toybox/master\' into HEAD
am:
5bb7e2581e
Change-Id: Ic0c5750b789c9aedad09ef64fbd7e0da88903fd7
Elliott Hughes [Mon, 11 Jul 2016 18:44:51 +0000 (11:44 -0700)]
Merge remote-tracking branch 'toybox/master' into HEAD
Change-Id: I446cfc9f3afd6b76c2dc448119bfecd78f511ea8
Elliott Hughes [Fri, 8 Jul 2016 18:36:44 +0000 (18:36 +0000)]
Add file(1).
am:
f3304b364a
Change-Id: Iee009b26b2891a559718ad8df24d556fa906867f
Elliott Hughes [Fri, 8 Jul 2016 17:19:23 +0000 (10:19 -0700)]
Add file(1).
Shows bitness, arch, Android API level (based off crtbrand.o), the BuildID
note, and whether or not the ELF file is stripped.
/system/bin/ndc: ELF shared object, 64-bit LSB arm64, dynamic (/system/bin/linker64), for Android 23, BuildID=
b0dbcbd074276683f06dfe65740411dd, stripped
Change-Id: I7d3d0de8c78c646f07ae1054719dc40075ece498
Elliott Hughes [Fri, 8 Jul 2016 04:48:33 +0000 (21:48 -0700)]
dd improvements.
Support hex (requested by users).
Support status=noxfer and status=none (requested by users).
Fix status output.
Clarify large numbers in --help output.
Use O_TRUNC rather than ftruncate unless we're also seeking.
New tests.
Also partial cleanup (reuse of existing code, removal of non-GLOBALS globals,
and merge dd_main and do_dd).
Elliott Hughes [Fri, 8 Jul 2016 02:32:34 +0000 (19:32 -0700)]
Fix typo in chattr test.
Elliott Hughes [Fri, 8 Jul 2016 02:28:42 +0000 (02:28 +0000)]
Merge remote-tracking branch \'toybox/master\' into HEAD
am:
e7b74ae6b0
Change-Id: I2ed097db74aaacb5e98a44cfb116c676d54be803
Elliott Hughes [Fri, 8 Jul 2016 00:02:37 +0000 (17:02 -0700)]
Merge remote-tracking branch 'toybox/master' into HEAD
Change-Id: I4ea9e215a47aa00990b4acf3af206e4a8bb03a28
Rob Landley [Wed, 6 Jul 2016 00:36:00 +0000 (19:36 -0500)]
Fix generated/make.sh. (Quotes in TOYBOX_VERSION need to wind up in
resulting macro.)
Elliott Hughes [Tue, 5 Jul 2016 22:05:09 +0000 (15:05 -0700)]
Implement xxd -s.
Elliott Hughes [Tue, 5 Jul 2016 20:39:42 +0000 (13:39 -0700)]
Don't try to guess the build id type in file(1).
They're really just arbitrary byte sequences of arbitrary length.
Sure, a 20-byte sequence is _probably_ a SHA-1, but there's no way
to know, so let's stop pretending...
Rob Landley [Tue, 5 Jul 2016 03:25:52 +0000 (22:25 -0500)]
Fix chattr and date tests.
Rob Landley [Mon, 4 Jul 2016 13:32:42 +0000 (08:32 -0500)]
Now that we're using the adjusted option string, need to skip placeholders in [groups].
Rob Landley [Mon, 4 Jul 2016 07:59:09 +0000 (02:59 -0500)]
Fix a bug (octal digits are 0-7, not 0-8) and deal with a case where posix
is explicitly outright insane (%b handles octal escapes differently for no
obvious reason).
Rob Landley [Mon, 4 Jul 2016 03:14:40 +0000 (22:14 -0500)]
Promote file.
Elliott Hughes [Sat, 2 Jul 2016 19:53:40 +0000 (12:53 -0700)]
Improve file(1)'s ELF support.
Read any PT_NOTE sections to look for NT_GNU_BUILD_ID or Android API
level notes. I deliberately didn't NT_GNU_ABI_TAG because it's noisy --
every Linux executable has one -- but not something most command-line
users will have any use for. (And you can ask readelf(1) anyway.)
Also read the section headers to implement "stripped"/"not stripped".
This patch removes "uses %d libs" because it was actually just counting
dynamic sections in the ELF file, and there are only 0 or 1 of those in
a valid ELF flie. (If you really want this functionality, you have to
*parse* the dynamic section looking for the DT_NEEDED entries. But that's
more of a job for readelf(1) than file(1).)
Rob Landley [Sun, 3 Jul 2016 21:05:12 +0000 (16:05 -0500)]
Promote netsat, and move ifconfig, netcat, and rfkill to new toys/net directory.
Rob Landley [Sun, 3 Jul 2016 20:51:00 +0000 (15:51 -0500)]
More netstat cleanup (inline display_data)
Rob Landley [Sat, 2 Jul 2016 16:42:36 +0000 (11:42 -0500)]
Next round of netstat cleanup.
Rob Landley [Fri, 1 Jul 2016 01:48:22 +0000 (20:48 -0500)]
Add patch -d and --dry-run
Rob Landley [Fri, 1 Jul 2016 01:41:07 +0000 (20:41 -0500)]
Fix option parsing infrastructure bug.
In main.c: used adjusted string with placeholers for removed options (so flag
values don't move based on config, allowing FORCE_FLAGS to work).
In scripts/mkflags.c: test was wrong, a bare longopt never matches a single
letter command, but it was treated as always matching when comparing
allyesconfig vs current config to determine which options were disabled, so
there was a corner case that got the flag values wrong.
Rob Landley [Thu, 30 Jun 2016 15:39:41 +0000 (10:39 -0500)]
Teach wc to do -cm together. Fix testsuite so TEST_HOST passes too.
Rob Landley [Thu, 30 Jun 2016 15:39:23 +0000 (10:39 -0500)]
Add NOSPACE=1 to allow tests to pass with diff -b
Rob Landley [Thu, 30 Jun 2016 15:37:35 +0000 (10:37 -0500)]
Use libbuf instead of stack buffer.
Rob Landley [Wed, 29 Jun 2016 22:51:03 +0000 (17:51 -0500)]
Remove unused argument from do_lines()
Elliott Hughes [Wed, 29 Jun 2016 20:57:30 +0000 (13:57 -0700)]
Remove 'start' and 'stop' from the Android roadmap.
Elliott Hughes [Fri, 24 Jun 2016 16:37:59 +0000 (09:37 -0700)]
Update Android section of roadmap.
nandread was MTD-only, and we don't support MTD any more.
Elliott Hughes [Wed, 29 Jun 2016 19:07:15 +0000 (19:07 +0000)]
Switch to toybox start/stop.
am:
ba38a4371a
Change-Id: I15e2811fd922fee8e8df755fc7f87c625ecf5532
Elliott Hughes [Wed, 29 Jun 2016 18:45:39 +0000 (11:45 -0700)]
Switch to toybox start/stop.
Change-Id: I0c89f73d66d3df80e289a7c6447b76f7d578ab8a
Elliott Hughes [Tue, 28 Jun 2016 22:46:03 +0000 (22:46 +0000)]
Merge remote-tracking branch \'toybox/master\' into HEAD
am:
06b90e3d57
Change-Id: Ie78a98ea6c99a1262dad73eb6795d8c6c20ae9f5
Elliott Hughes [Tue, 28 Jun 2016 21:20:54 +0000 (14:20 -0700)]
Merge remote-tracking branch 'toybox/master' into HEAD
Change-Id: Ia675ae28c2ce58dfbe0293394f091747b4d7f11c
Elliott Hughes [Mon, 27 Jun 2016 21:51:18 +0000 (14:51 -0700)]
Fix iteration for start/stop without arguments.
Rob Landley [Tue, 28 Jun 2016 06:54:01 +0000 (01:54 -0500)]
Fix a "may be used uninitialized".
Elliott Hughes [Mon, 27 Jun 2016 15:26:03 +0000 (08:26 -0700)]
Fix start.c build and add error reporting.
Rob Landley [Sat, 25 Jun 2016 19:57:39 +0000 (14:57 -0500)]
Code style pass.
Elliott Hughes [Sat, 25 Jun 2016 19:21:35 +0000 (14:21 -0500)]
new Android toys: start/stop
Elliott Hughes [Wed, 22 Jun 2016 22:55:35 +0000 (15:55 -0700)]
Update Android section of roadmap.
top switched over a week or two back, and log switched today.
Elliott Hughes [Wed, 22 Jun 2016 22:50:51 +0000 (15:50 -0700)]
Remove android/log's "default" priority.
It turns out that "default" goes nowhere. Whereas "silent" actually shows
up in the log. So document "silent" (which we already supported) but
remove support for "default".
Also make the spacing between levels in the help more regular; it looks
weird being in columns when there's only one row!
Elliott Hughes [Wed, 22 Jun 2016 21:43:31 +0000 (21:43 +0000)]
Switch to toybox log. am:
f74df030dd
am:
20c5ae0259
Change-Id: I022041a7c399e54c0763f06f8f315c1ded24d7d5
Elliott Hughes [Wed, 22 Jun 2016 21:41:04 +0000 (21:41 +0000)]
Switch to toybox log.
am:
f74df030dd
Change-Id: I6956af1cee8e8035e1bba29a37b2150f13cf5be5
Elliott Hughes [Wed, 22 Jun 2016 19:25:11 +0000 (12:25 -0700)]
Switch to toybox log.
Change-Id: I093ee85ca4fc862f45f6166f1a63cada9e5a4eb7
Elliott Hughes [Wed, 22 Jun 2016 18:28:39 +0000 (18:28 +0000)]
Merge remote-tracking branch \\'toybox/master\\' into HEAD am:
0803f535c0
am:
092461d02d
Change-Id: I248376888406a9beef0266bbc19a16c34c12a934
Rob Landley [Wed, 22 Jun 2016 18:26:09 +0000 (18:26 +0000)]
Merge remote-tracking branch \'toybox/master\' into HEAD
am:
0803f535c0
Change-Id: Ib0d8d4f3a27cf8c04e77ea0cadfaacee1f02c7ed
Elliott Hughes [Wed, 22 Jun 2016 17:26:11 +0000 (10:26 -0700)]
Merge remote-tracking branch 'toybox/master' into HEAD
Change-Id: Ifa85ce6790aef1838c29d521b3fdd23d7e8728d7
Rob Landley [Tue, 21 Jun 2016 21:10:49 +0000 (16:10 -0500)]
Attempt at cleanup of log.c, but I don't have a build environment for it so...
Elliott Hughes [Tue, 21 Jun 2016 20:32:42 +0000 (15:32 -0500)]
new Android toy: log
Rob Landley [Sun, 19 Jun 2016 12:07:44 +0000 (07:07 -0500)]
Last commit depends on new lib code I forgot to check in. (Oops.)
Rob Landley [Sun, 19 Jun 2016 12:07:15 +0000 (07:07 -0500)]
Next round of diffstat cleanup.
Elliott Hughes [Fri, 17 Jun 2016 22:51:25 +0000 (15:51 -0700)]
Make it clearer that CMD is the thread name.
It should come as no surprise to those who followed the development of
this that it's not well known which of the various names is actually the
thread name. Adding "thread" to the ps --help output seems like a good
idea.
I'm also assuming that "stat2" was meant to read "stat[2]", since that's
how it mostly appeared on the list while discussing this. Still fits in
80 columns.
Rob Landley [Wed, 15 Jun 2016 20:47:01 +0000 (15:47 -0500)]
Add readlink0() and readlinkat0() which null terminate the data.
Rob Landley [Wed, 15 Jun 2016 16:43:48 +0000 (11:43 -0500)]
The glibc bug at https://sourceware.org/bugzilla/show_bug.cgi?id=17829
continues to get worse, and now can't handle INT_MAX/2 either. So our
first workaround _also_ broke.
But posix says "A negative precision is taken as if the precision were
omitted." and that _doesn't_ trigger the glibc bug, so use that instead.
Elliott Hughes [Tue, 14 Jun 2016 16:03:55 +0000 (16:03 +0000)]
Switch to toybox top. am:
f6453fed89
am:
04a205cd99
Change-Id: I35027e7193fce72821888e3bf19b43070b2abab0
Elliott Hughes [Tue, 14 Jun 2016 15:59:19 +0000 (15:59 +0000)]
Switch to toybox top.
am:
f6453fed89
Change-Id: I4809d4e1305f8b56bb04ec2a3c58f953e2aa3a31
Elliott Hughes [Tue, 14 Jun 2016 01:52:28 +0000 (18:52 -0700)]
Switch to toybox top.
Change-Id: Ia282db6ff58ae22e01d60623bf316823c230e003