OSDN Git Service
Rob Landley [Tue, 11 Jul 2017 10:17:35 +0000 (05:17 -0500)]
Don't remove "remount" from the option list during early parsing, the mount
flag doesn't get set right otherwise and it tries to overmount instead.
Rob Landley [Tue, 11 Jul 2017 10:16:09 +0000 (05:16 -0500)]
comma_scan()'s clean option wasn't removing entry at end of list.
Rob Landley [Sun, 9 Jul 2017 07:13:00 +0000 (02:13 -0500)]
dd cleanup: binary search is overkill, eliminate struct pair,
simplify strstarteq, use local variable "conv" instead of toys.optargs.
Elliott Hughes [Fri, 7 Jul 2017 20:06:36 +0000 (13:06 -0700)]
Fix -Wformat compiler warning in expr.c.
Android forces -Wformat on for all source.
toys/pending/expr.c:116:28: warning: field precision should have type 'int',
but argument has type 'long' [-Wformat]
ret->s = xmprintf("%.*s", m[1].rm_eo-m[1].rm_so, target+m[1].rm_so);
~~^~ ~~~~~~~~~~~~~~~~~~~~~
Rob Landley [Fri, 7 Jul 2017 21:36:45 +0000 (16:36 -0500)]
Posix says strings should only output hits that end with NUL or newline.
We don't currently do that, but a test suite checking that we don't
do that is requiring us to violate posix to pass it.
Ilya Kuzmich [Mon, 29 May 2017 14:57:09 +0000 (17:57 +0300)]
strings -t oxd tests
Rob Landley [Fri, 7 Jul 2017 08:51:47 +0000 (03:51 -0500)]
Make dd use atolx_range(), and teach atolx_range() about "w" suffix (word, *2).
Rob Landley [Fri, 7 Jul 2017 08:43:24 +0000 (03:43 -0500)]
Fix dd tests so TEST_HOST passes. (Ubuntu's dd doesn't support hex values
and don't expect a specific error message, just that it errored.)
Rob Landley [Mon, 3 Jul 2017 02:39:32 +0000 (21:39 -0500)]
Add -t, deviations from posix, redo loop to have fewer duplicate tests.
Ilya Kuzmich [Mon, 29 May 2017 04:05:16 +0000 (07:05 +0300)]
strings tests and bugfixes
Fixes missing newline in output if last byte of the input is string.
Fixes one-off offset bug.
Adds strings tests.
Signed-off-by: Ilya Kuzmich <ilya.kuzmich@gmail.com>
Rob Landley [Tue, 27 Jun 2017 19:57:28 +0000 (14:57 -0500)]
whitespace/comment tweaks.
Ilya Kuzmich [Sun, 28 May 2017 15:29:19 +0000 (18:29 +0300)]
teach head -c
Not POSIX, but implemented in coreutils, busybox and freebsd.
Rob Landley [Mon, 26 Jun 2017 20:32:27 +0000 (15:32 -0500)]
Most things seem to want the "b" suffix to mean 512 instead of 1.
(According to the git history I added "b" for "od" but the man page says 512
there too.)
Rob Landley [Mon, 19 Jun 2017 17:34:50 +0000 (12:34 -0500)]
Past time for 0.7.4.
Rob Landley [Mon, 19 Jun 2017 12:51:58 +0000 (07:51 -0500)]
Manually inline TOP_COMMON and PGKILL_COMMON help text until I can teach
the help infrastructure to handle it.
(The lifetime rules are all wrong for hunks that get reused. Needs a largeish
rewrite.)
Rob Landley [Wed, 14 Jun 2017 16:23:01 +0000 (11:23 -0500)]
Grep exits with 2 for errors, which can happen at any time ( > /dev/full).
Rob Landley [Tue, 13 Jun 2017 21:33:13 +0000 (16:33 -0500)]
config2help.c: Rename trim() to skip_spaces(), fluff out comments a bit.
Rob Landley [Mon, 12 Jun 2017 16:26:07 +0000 (11:26 -0500)]
Add grep -M match and -S skip supporting wildcard patterns.
They don't imply -r because you might do find . -type f | xargs -S blah regex
Rob Landley [Sun, 11 Jun 2017 20:39:03 +0000 (15:39 -0500)]
Twitter's code of conduct page went down, so mirror the old archive.org version.
Move link from README to header.html menu bar.
Rob Landley [Sun, 11 Jun 2017 17:23:00 +0000 (12:23 -0500)]
Provide error messages for files we can open but not read (ala directories).
Rob Landley [Sat, 10 Jun 2017 18:17:31 +0000 (13:17 -0500)]
Fix bug where grep stopped at first dangling symlink and error_exited().
Rob Landley [Fri, 9 Jun 2017 20:01:07 +0000 (15:01 -0500)]
Promote dmesg back to lsb.
Rob Landley [Fri, 9 Jun 2017 19:59:51 +0000 (14:59 -0500)]
Cleanup dmesg (as posted to the list).
Rob Landley [Tue, 6 Jun 2017 18:21:03 +0000 (13:21 -0500)]
Add comment explaining strend()
Rob Landley [Tue, 6 Jun 2017 02:22:02 +0000 (21:22 -0500)]
Have help_exit() give a brief "See %s --help" message instead of the
full help text, and put it back in the args constraint failures.
Rob Landley [Sun, 4 Jun 2017 18:15:51 +0000 (13:15 -0500)]
Don't add cpio TRAILER!!! entry by default, add new --trailer option if you
want that. (This lets you concatenate cpio archives with "cat". Kernel's
initramfs extractor doesn't need it.)
Elliott Hughes [Wed, 31 May 2017 18:01:11 +0000 (11:01 -0700)]
Allow ':' in property names.
Bug: http://b/
62114389
Test: setprop
Change-Id: I165bcc01bb2422d991f746c5e6490cbdfb74472f
Ilya Kuzmich [Sun, 28 May 2017 14:03:26 +0000 (17:03 +0300)]
teach head -v and -q
Not POSIX, but implemented in coreutils and busybox.
Tests use sed to compensate for the stdin naming difference.
Signed-off-by: Ilya Kuzmich <ilya.kuzmich@gmail.com>
Rob Landley [Sat, 27 May 2017 20:54:16 +0000 (15:54 -0500)]
Replace two space indents with tab indents in help text (for consistency).
Rob Landley [Sat, 27 May 2017 19:57:45 +0000 (14:57 -0500)]
Add separators in help -a with command name.
Elliott Hughes [Fri, 26 May 2017 00:56:11 +0000 (17:56 -0700)]
Be more consistent about periods in help text.
Rob Landley [Thu, 25 May 2017 18:27:22 +0000 (13:27 -0500)]
Add -0 to env.
Rob Landley [Thu, 25 May 2017 18:00:00 +0000 (13:00 -0500)]
Teach env that - as first argument means -i for some reason. (Posix!)
Elliott Hughes [Wed, 24 May 2017 00:35:49 +0000 (17:35 -0700)]
Add and use xmmap.
Everyone forgets that mmap returns MAP_FAILED rather than NULL on failure.
Every use of mmap in toybox was either doing the wrong check, or no check
at all (including the two I personally added).
Rob Landley [Tue, 23 May 2017 20:48:26 +0000 (15:48 -0500)]
Add minof/maxof macros that autodetect type. Make xzcat use them.
Joyounger [Tue, 23 May 2017 16:36:35 +0000 (00:36 +0800)]
fixup code style
Signed-off-by: Joyounger <aquanox@163.com>
Rob Landley [Sun, 21 May 2017 18:23:34 +0000 (13:23 -0500)]
Promote chrt
Rob Landley [Sun, 21 May 2017 18:11:42 +0000 (13:11 -0500)]
Cleaup chrt
Elliott Hughes [Sat, 13 May 2017 01:30:03 +0000 (18:30 -0700)]
Add bzip2 support to tar.
Also trivial cleanup of pipe -> xpipe.
Bug: http://b/
38215123
Rob Landley [Fri, 19 May 2017 17:35:36 +0000 (12:35 -0500)]
Implement date %N, loosely inspired by Elliott Hughes's patch.
I didn't implement %37N's ability to insert zeroes, so removed those
two tests. If you really need it, I can add the divide loop back.
Elliott Hughes [Sat, 13 May 2017 19:48:35 +0000 (12:48 -0700)]
factor shouldn't give incorrect answers for >64-bit integers.
Rob Landley [Sun, 14 May 2017 20:10:29 +0000 (15:10 -0500)]
Minor tweaks to install.sh.
Rob Landley [Thu, 11 May 2017 17:31:43 +0000 (12:31 -0500)]
Switch to testcmd and add "-e all but \c" test.
Elliott Hughes [Wed, 10 May 2017 20:51:44 +0000 (13:51 -0700)]
Make fewer assumptions about the shell in echo.test.
This test fails with mksh, but we're not here to test mksh.
Rob Landley [Tue, 9 May 2017 04:01:06 +0000 (23:01 -0500)]
Move strend() to lib/lib.c
Rob Landley [Tue, 9 May 2017 03:09:08 +0000 (22:09 -0500)]
Remove old uClibc compatibility glue. It's been 5 years since the last release.
See http://lists.busybox.net/pipermail/buildroot/2016-December/180102.html
for a full post-mortem on the project.
Rob Landley [Mon, 8 May 2017 23:25:22 +0000 (18:25 -0500)]
Now that xopen() no longer returns stdio, !fd doesn't need strcmp("-") to verify
Mike Moreton [Fri, 23 Sep 2016 07:46:11 +0000 (08:46 +0100)]
Fix error in writing output that was causing zcat to always fail.
Rob Landley [Mon, 8 May 2017 03:48:44 +0000 (22:48 -0500)]
Error if we can't autodetect filesystem type.
Rob Landley [Sun, 30 Apr 2017 07:46:36 +0000 (02:46 -0500)]
Android NDK doesn't have cutils/sched_policy.h so add a probed config symbol.
Elliott Hughes [Fri, 28 Apr 2017 22:25:56 +0000 (15:25 -0700)]
Android needs -llog to link.
Elliott Hughes [Fri, 28 Apr 2017 22:21:36 +0000 (15:21 -0700)]
Building mkpasswd on Android makes no sense.
And won't work anyway because we don't have crypt(3).
Elliott Hughes [Wed, 26 Apr 2017 22:01:41 +0000 (15:01 -0700)]
Implement zlib-based gzip/gunzip/zcat.
Rob Landley [Wed, 26 Apr 2017 21:36:19 +0000 (16:36 -0500)]
Elliott wants to run the toybox tests on android host and there's an sh but
it isn't toysh, so test for a bash alias.
Rob Landley [Tue, 25 Apr 2017 07:21:39 +0000 (02:21 -0500)]
Forgot to check in one of the files for bzcat.test
Rob Landley [Tue, 25 Apr 2017 00:01:33 +0000 (19:01 -0500)]
Another FAQ, and some related tweaks as long as I was there.
Rob Landley [Wed, 19 Apr 2017 06:44:16 +0000 (01:44 -0500)]
Add ls -ll (with --full-time as a compatibility synonym) to show nanoseconds.
(And, for some reason, timezone. Individual files have timezones?)
Rob Landley [Tue, 18 Apr 2017 18:19:07 +0000 (13:19 -0500)]
The kernel needs bc to build because
https://landley.net/notes-2013.html#28-03-2013 so add it to the airlock install.
Elliott Hughes [Sat, 15 Apr 2017 18:27:18 +0000 (11:27 -0700)]
Use $(( rather than $[ for arithmetic in expand.test.
I can't find any reference to $[ for arithmetic on the bash man page, but it
seems to be a synonym for $((. mksh doesn't support this, so the expand tests
that use it fail on Android. No other toybox tests are using $[.
Elliott Hughes [Fri, 14 Apr 2017 20:43:16 +0000 (13:43 -0700)]
Make ls.test work without awk.
Elliott Hughes [Sat, 8 Apr 2017 06:15:52 +0000 (23:15 -0700)]
Speed up tail.test for shells without builtin printf.
The test only needs echo, and Android currently doesn't use mksh's
builtin printf; the toybox printf is fuller featured and less buggy,
but a lot slower to call in a loop like this (and mksh doesn't fall
back to the printf on the path if given something it can't handle,
so we can't have the best of both worlds).
Without this hack, the tail test takes as long as all the other
tests put together.
Rob Landley [Wed, 12 Apr 2017 18:41:10 +0000 (13:41 -0500)]
Default to -b rather than -q when output is to a tty.
Elliott Hughes [Sat, 8 Apr 2017 06:00:54 +0000 (23:00 -0700)]
Fix "make test_split".
The test shouldn't assume there's a toybox binary on the path.
Rob Landley [Tue, 11 Apr 2017 18:38:37 +0000 (13:38 -0500)]
Silence a broken warning by hitting it with a rock.
Elliott Hughes [Wed, 5 Apr 2017 17:13:47 +0000 (10:13 -0700)]
Make fdisk buildable.
The argument to help_exit is a char*, not a FILE*.
Elliott Hughes [Thu, 6 Apr 2017 21:44:45 +0000 (14:44 -0700)]
Fix touch -a/-m (and add the missing tests).
utimensat takes atime in [0] and mtime in [1], but since we're overwriting
with UTIME_OMIT, we actually want to flip the comparison so -a blats 1 and
-m blats 0.
Elliott Hughes [Mon, 3 Apr 2017 21:12:08 +0000 (14:12 -0700)]
Add "uudecode -o -" support.
busybox uudecode supports this, and POSIX explicitly mentions it (albeit
only in the "STDOUT" section). Plus Android doesn't have /dev/stdout and
/dev/stdin, so this lets us rewrite the uudecode tests so they pass on
Android too.
Rob Landley [Sat, 8 Apr 2017 18:52:18 +0000 (13:52 -0500)]
Fix the ls -m test (which is just a whitespace issue, but eh).
While we're at it, ls -m wordwrap was one column early.
Elliott Hughes [Mon, 3 Apr 2017 15:57:42 +0000 (08:57 -0700)]
Make renice.test work without awk.
Also try to only kill processes we created.
Elliott Hughes [Mon, 3 Apr 2017 15:33:23 +0000 (08:33 -0700)]
Remove mount.test awk dependency.
Parsing file(1) output isn't a good way to determine file system type anyway.
Elliott Hughes [Sun, 2 Apr 2017 19:29:39 +0000 (12:29 -0700)]
Make pgrep tests runnable on toybox-only systems.
Also make the cleanup kill more focused.
Elliott Hughes [Sun, 2 Apr 2017 19:20:53 +0000 (12:20 -0700)]
Make pkill tests runnable on a toybox-only system.
Also use a much stricter regex in the regex test to avoid killing innocent
bystanders.
Elliott Hughes [Sun, 2 Apr 2017 19:27:38 +0000 (12:27 -0700)]
Make bzcat tests runnable on a toybox-only system.
Rob Landley [Tue, 4 Apr 2017 23:13:51 +0000 (18:13 -0500)]
Add "testcmd" function as an alternative to "testing" for tests/*.test, and
check in two converted commands.
Elliott Hughes [Sun, 2 Apr 2017 18:58:49 +0000 (11:58 -0700)]
Fix ls -a and ls -A tests.
Rob Landley [Mon, 3 Apr 2017 21:57:40 +0000 (16:57 -0500)]
Trivial cleanup. (Whitespace, brackets, and remove unnecessary typecasts.)
Rob Landley [Mon, 3 Apr 2017 20:48:21 +0000 (15:48 -0500)]
Add gzip support. (Doesn't show source OS and timestamp, but reporting them
isn't obviously useful.)
Elliott Hughes [Sat, 25 Mar 2017 20:08:20 +0000 (13:08 -0700)]
Implement dmesg -T.
Also refactor so that legacy mode gets all the new functionality too, and
add -S to make it easier to test legacy mode on 3.5 or newer kernels (at least
on the host; on Android the syslog(2) system call is no longer allowed).
Bug: http://b/
36090178
Rob Landley [Wed, 29 Mar 2017 01:39:31 +0000 (20:39 -0500)]
Don't try to implement %s, we have @seconds, strptime() in libc tends
not to have it, and implementing our own means a pattern like
"Time %%%s%%" is expensive to handle the corner cases of.
Rob Landley [Wed, 29 Mar 2017 01:19:28 +0000 (20:19 -0500)]
New date range tests are simple, won't catch Feb 29 in non-leap-year
(or April 31 in any year). Some normalization allowed, exclusions are just
what http://pubs.opengroup.org/onlinepubs/
9699919799/basedefs/time.h.html says.
Rob Landley [Wed, 29 Mar 2017 01:16:41 +0000 (20:16 -0500)]
Replace chkmktime() (which produces false positive normalization failures)
with range checks for seconds, minutes, hours, day of month, and month.
Josh Gao [Mon, 27 Mar 2017 22:53:03 +0000 (15:53 -0700)]
ps: don't query for terminal size if not a tty.
`ps -A | cat` shouldn't have different output depending on the size of
your terminal window.
Elliott Hughes [Wed, 22 Mar 2017 17:35:14 +0000 (10:35 -0700)]
Fix the type of the callback in getprop.
Fixes:
toys/android/getprop.c:56:39: warning: incompatible pointer types
passing 'void (void *, const char *, const char *)' to parameter of
type 'void (*)(void *, const char *, const char *, uint32_t)'
(aka 'void (*)(void *, const char *, const char *, unsigned int)')
[-Wincompatible-pointer-types]
__system_property_read_callback(pi, read_callback, NULL);
^~~~~~~~~~~~~
Rob Landley [Fri, 24 Mar 2017 16:59:26 +0000 (11:59 -0500)]
We grew a few more commands that weren't on the roadmap (mostly from android)
so throw them in the "requests" category so they show up in status.html.
Rob Landley [Thu, 23 Mar 2017 16:35:09 +0000 (11:35 -0500)]
Now that just about everything has --help, don't output help for argument errors
Elliott Hughes [Wed, 22 Mar 2017 17:39:36 +0000 (10:39 -0700)]
Fix a typo and explain a mystery in news.html.
Elliott Hughes [Tue, 21 Mar 2017 19:11:29 +0000 (12:11 -0700)]
Implement uptime -s.
Also add trivial tests.
Rob Landley [Wed, 22 Mar 2017 00:25:33 +0000 (19:25 -0500)]
dirtree_flagread() returns DIRTREE_ABORTVAL when the initial node doesn't
exist, which can hit ps when /proc isn't there or /proc/$PID/task isn't
there (because process exited between the time we checked its contents
and the time we looked for its threads).
Rob Landley [Mon, 20 Mar 2017 18:14:14 +0000 (13:14 -0500)]
Paste bugfix, more tests.
Rob Landley [Mon, 20 Mar 2017 17:41:22 +0000 (12:41 -0500)]
Add TOYBOX_PEDANTIC_ARGS to check arguments when there are no arguments,
and make uptime use it.
Rob Landley [Mon, 20 Mar 2017 16:11:34 +0000 (11:11 -0500)]
Rewrite paste so it actually works.
Rob Landley [Sun, 5 Mar 2017 02:42:06 +0000 (20:42 -0600)]
Another FAQ entry.
Rob Landley [Sat, 4 Mar 2017 03:21:26 +0000 (21:21 -0600)]
FAQ tweak: one more link on toybox history.
Rob Landley [Sat, 4 Mar 2017 03:13:57 +0000 (21:13 -0600)]
Check in web page announcement for 0.7.3.
Rob Landley [Tue, 21 Feb 2017 17:27:25 +0000 (11:27 -0600)]
It's past time for 0.7.3.
Rob Landley [Tue, 21 Feb 2017 04:40:10 +0000 (22:40 -0600)]
If the last ps field is left justified, it extends to the width of the screen.
(Recent "show + for last char when truncated" change broke that, putting it
back.)
Elliott Hughes [Sun, 19 Feb 2017 17:22:45 +0000 (09:22 -0800)]
4a4b3d65644ce403b0f22887fc0d38b0202ec8c7 upset clang.
Recent-ish clang doesn't like self-assignment. Google/Android code always
uses the [template-based moral equivalent of] __attribute__((__unused__))
to keep both compilers happy.
Rob Landley [Tue, 21 Feb 2017 03:42:58 +0000 (21:42 -0600)]
Declaring todo bankruptcy, dmesg goes back into pending until I get a chance
to unify the two codepaths in Elliott's rewrite.
Elliott Hughes [Wed, 4 Jan 2017 18:45:55 +0000 (10:45 -0800)]
Fix dmesg -c and -C.
I never use these, so I didn't notice I'd broken them until someone who
does bringup complained.
The "one weird trick" with SEEK_DATA is documented at the URL we already
point to. SEEK_DATA was added in Linux 3.1 (2011) and isn't available in
glibc 2.19 (2014), so I've added that to "portability.h" for the benefit
of Ubuntu 14.04.
Also make -c and -C mutually exclusive.
Also fix some of the formatting I introduced earlier. (A clang-format file
would help prevent these mistakes...)
Rob Landley [Sat, 18 Feb 2017 18:51:35 +0000 (12:51 -0600)]
Ascii only showed 15 rows instead of 16 and spacing was wrong for 96-100.