OSDN Git Service
Elliott Hughes [Tue, 2 Feb 2016 16:08:46 +0000 (08:08 -0800)]
Regenerate generated files.
Change-Id: I9fe5ea516113304cf8b3aae4379e1f9c8cacd186
Elliott Hughes [Tue, 2 Feb 2016 15:45:25 +0000 (07:45 -0800)]
Merge remote-tracking branch 'toybox/master' into HEAD
Elliott Hughes [Wed, 6 Jan 2016 16:38:46 +0000 (08:38 -0800)]
Fix directory test in cp.
Commit
3d33dd80f8cb931e293d7f64c44bc357fec11120 fixed a use of S_ISDIR
on st_dev rather than st_mode in find, but there was another instance
of the same error in cp.
Rob Landley [Mon, 1 Feb 2016 18:46:15 +0000 (12:46 -0600)]
Add find -delete
Rob Landley [Sun, 31 Jan 2016 22:28:43 +0000 (16:28 -0600)]
More testsuite tweaks.
Rob Landley [Sun, 31 Jan 2016 21:37:51 +0000 (15:37 -0600)]
chmod.test had umask assumptions which broke, so set explicit umask.
Rob Landley [Sun, 31 Jan 2016 21:30:48 +0000 (15:30 -0600)]
Fix broken test in cat.test.
"cat /proc/self/exe && cmp /proc/self/exe" won't see the same file if cat
and cmp aren't both in a toybox multiplexer binary, so snapshot and pick one.
Rob Landley [Sun, 31 Jan 2016 20:33:20 +0000 (14:33 -0600)]
Fix blkid typo (label wasn't detected in murderfs).
Rob Landley [Sun, 31 Jan 2016 18:42:16 +0000 (12:42 -0600)]
Tweak to "find" tests.
Rob Landley [Sun, 31 Jan 2016 04:07:58 +0000 (22:07 -0600)]
Add grep -B -C
Rob Landley [Sun, 31 Jan 2016 00:28:39 +0000 (18:28 -0600)]
Add grep -A
Rob Landley [Sat, 30 Jan 2016 22:28:13 +0000 (16:28 -0600)]
Fix two CFG_TOYBOX_SUID corner cases:
1) Don't try to force re-exec unless we actually dropped permissions.
(Fixes "./toybox mount" when no suid bit on toybox binary, which
previously exited.)
2) Set temporary toys.which value for error reporting.
(Fixes "ln -s toybox mount && ./mount" with CFG_TOYBOX_DEBUG and
no suid bit, which previously segfaulted.)
Rob Landley [Fri, 29 Jan 2016 04:10:06 +0000 (22:10 -0600)]
Add SIGWINCH support to top, and implement -o and -n in pgrep/pkill.
Rob Landley [Thu, 28 Jan 2016 20:22:46 +0000 (14:22 -0600)]
Adding -M broke ps -k header printing without -M.
Rob Landley [Thu, 28 Jan 2016 19:36:12 +0000 (13:36 -0600)]
Bugfix I forgot to checkin, plus a wrapper function.
Rob Landley [Thu, 28 Jan 2016 03:19:12 +0000 (21:19 -0600)]
Don't resort or recalculate headers for cursor up/down, do PGUP PGDN, and
down move way down past end of list.
Rob Landley [Thu, 28 Jan 2016 02:27:33 +0000 (20:27 -0600)]
Add cpu line to top, and fix a bug initializing upticks slot.
izabera [Wed, 27 Jan 2016 18:31:58 +0000 (19:31 +0100)]
long opts and -f for unshare
Rob Landley [Wed, 27 Jan 2016 06:46:56 +0000 (00:46 -0600)]
Don't try to be fancy with top headers, just hardwired the standardish ones.
Still need to do the cpu(s) line in top.
Rob Landley [Tue, 26 Jan 2016 20:33:50 +0000 (14:33 -0600)]
Add ps -M to measure/expand field widths if they don't fit.
(Still truncates at the right edge to fit terminal width, but last commit
made -w the default when no terminal width detected.)
Rob Landley [Tue, 26 Jan 2016 19:41:51 +0000 (13:41 -0600)]
Add ps -O (inserts extra args before last field), and make -w the default
when we haven't got a terminal width. Replace top CMDLINE with ARGS.
More ps infrastructure genericization: parse reverse unconditionally.
Break out get_headers() with global references moved to caller.
change quick_ko() to default_ko() (dlist_terminate is now caller's job).
Elliott Hughes [Tue, 26 Jan 2016 18:49:48 +0000 (10:49 -0800)]
Regenerate generated files.
Change-Id: Ib5c0f4288bec7dcdcfb7c7b23128a15b06608772
Elliott Hughes [Sun, 24 Jan 2016 18:51:17 +0000 (10:51 -0800)]
Fix comma_args error reporting.
None of the current callers' callbacks set errno, so this was resulting in
bogus errors like "No device or address" when ps tried to complain about a
misspelled field.
Elliott Hughes [Fri, 22 Jan 2016 19:05:04 +0000 (11:05 -0800)]
Fix compiler warnings in traceroute.
If we're fixing warnings in pending...
Rob Landley [Mon, 25 Jan 2016 17:43:17 +0000 (11:43 -0600)]
Next lump of top work. Add -o DISPLAY_FIELDS -k FALLBACK_SORTS -s SORT_BY plus
the start of -h HEADER (mostly parses text, but doesn't display %ESCAPES yet).
Added UP, DOWN, and R keys.
Made only iotop STAYROOT (not top), added comment explaining why.
Bumped iotop's historical -O and -K to capital letters.
Added quick_ko() to add argument list from string instead of arg_list.
Rob Landley [Sat, 23 Jan 2016 03:35:48 +0000 (21:35 -0600)]
Factor out insanitize() from seq.c to next_printf() in lib.
Elliott Hughes [Fri, 22 Jan 2016 18:39:49 +0000 (10:39 -0800)]
Regenerate generated files.
Change-Id: I1c57337148fb9865e950a5aba2be38352646cd84
Elliott Hughes [Fri, 22 Jan 2016 18:32:45 +0000 (10:32 -0800)]
Merge remote-tracking branch 'toybox/master' into HEAD
Rob Landley [Fri, 22 Jan 2016 01:05:25 +0000 (19:05 -0600)]
Replace slot[] constants with SLOT_blah, fix some that weren't displaying right.
Make fallback sort do string sort after numeric tie, retain absolute uptime
even though relative is needed for %CPU (hence utime2).
Lipi Lee [Thu, 21 Jan 2016 20:03:10 +0000 (14:03 -0600)]
I cleaned up the code in 'netstat.c' as belows.
- Adjust to 80 columns
- remove a useless function(strchr_nul), variable, type casting and
compile warnings(fgets)
- clean up netstat command option condition
- change useless double pointer to single point and dynamic memory
allocation to static one
- fix a ambiguous return type and typo
Rob Landley [Thu, 21 Jan 2016 19:04:51 +0000 (13:04 -0600)]
Add a sed test from the posix mailing list.
Elliott Hughes [Thu, 21 Jan 2016 06:23:26 +0000 (22:23 -0800)]
Disable CFG_TOYBOX_DEBUG for now.
We turned on CFG_TOYBOX_DEBUG so ls would be asan-clean, but that turns out
to have broken mount for non-root users. So let's turn CFG_TOYBOX_DEBUG off
for now, but let's also say that ls should always be asan-clean on Android.
Bug: http://b/
26647560
Change-Id: I5392aedd168c1e765e3319e3c76e996040b7e8ab
Elliott Hughes [Thu, 21 Jan 2016 04:41:02 +0000 (20:41 -0800)]
Regenerate generated files.
Also stop using the NORECURSE workaround now runcon has been fixed to
explicitly not recurse.
Change-Id: Ide0e09b9b28adca2f9d4d1e8db98022e9342addd
Elliott Hughes [Thu, 21 Jan 2016 04:29:28 +0000 (20:29 -0800)]
Merge remote-tracking branch 'toybox/master' into HEAD
Rob Landley [Wed, 20 Jan 2016 23:33:31 +0000 (17:33 -0600)]
Correct units of %MEM and %VSZ.
Rob Landley [Wed, 20 Jan 2016 22:51:17 +0000 (16:51 -0600)]
Add basic top support to ps.c, delete toys/pending/top.c.
While I'm there, pack the ps help text, break out TOP_COMMON (todo: update
config2help to collate that properly), add -o CPU showing which processor
this pid is running on, implement -o C (it's %cpu without the fractional
part), add -o %MEM, fix header padding.
Rob Landley [Wed, 20 Jan 2016 22:48:01 +0000 (16:48 -0600)]
First stab at making readfileat() realloc() in a loop to read long files.
Rob Landley [Wed, 20 Jan 2016 00:26:41 +0000 (18:26 -0600)]
Another CFG_TOYBOX_DEBUG test.
Rob Landley [Wed, 20 Jan 2016 00:03:17 +0000 (18:03 -0600)]
runcon needs to exec, not recurse.
Elliott Hughes [Tue, 19 Jan 2016 18:14:21 +0000 (10:14 -0800)]
Set CONFIG_TOYBOX_NORECURSE.
CONFIG_TOYBOX_NORECURSE means that toybox avoids re-execing where possible.
Unfortunately, this breaks runcon, which requires an exec(2) to have any
effect. Note that this only breaks runcon for toybox commands, and even then
only if you use the bare name (such as "id" rather than "/system/bin/id"),
which is why this went undetected for so long.
Change-Id: Ia02254346800c2c16ac6fc692dc8a79b1ac67f58
Rob Landley [Tue, 19 Jan 2016 00:20:56 +0000 (18:20 -0600)]
Implement pgrep -clv (and remove some accidentally checked in debug code).
Still need to do -n and -o.
Rob Landley [Mon, 18 Jan 2016 21:45:56 +0000 (15:45 -0600)]
Implement basic pkill plumbing, and fix FORCE_FLAGS on flag context switch.
Rob Landley [Sun, 17 Jan 2016 23:16:03 +0000 (17:16 -0600)]
Extend utf8 fontmetrics so ps can use them.
Also, I forgot to check in uuid_show() last time.
Rob Landley [Sun, 17 Jan 2016 20:45:45 +0000 (14:45 -0600)]
Add -L label and UUID support to mkswap.
Rob Landley [Sun, 17 Jan 2016 20:08:10 +0000 (14:08 -0600)]
Update draw_str() and friends to do standard escaping for ^X <AB> U+ABCD.
Rob Landley [Sat, 16 Jan 2016 22:59:47 +0000 (16:59 -0600)]
Move create_uuid() to lib and xpoll() to lib/net.c.
Rob Landley [Sat, 16 Jan 2016 19:02:12 +0000 (13:02 -0600)]
Add swapon -d (discard)
Elliott Hughes [Sat, 16 Jan 2016 03:48:59 +0000 (19:48 -0800)]
Regenerate generated files.
Also track pgrep/pkill move to "ps.c".
Change-Id: I1077d8f5b6e7fdbda27bcf463e4731825422360c
Elliott Hughes [Sat, 16 Jan 2016 03:44:50 +0000 (19:44 -0800)]
Merge remote-tracking branch 'toybox/master' into HEAD
Elliott Hughes [Mon, 4 Jan 2016 21:33:36 +0000 (13:33 -0800)]
Turn on CFG_TOYBOX_DEBUG for valgrind.
https://github.com/landley/toybox/commit/
047bcb8e7d37847b96dbf621ea22ff00e9541d32
only made ls valgrind-clean if CFG_TOYBOX_DEBUG is defined. So let's define
that.
The only other stuff this turns on is various bits of error checking that it
doesn't seem unreasonable to run with. If this becomes a problem in future,
we can lobby to have CFG_TOYBOX_VALGRIND_CLEAN broken out of
CFG_TOYBOX_DEBUG.
Change-Id: I8f89459d50f0fc976b225f1bfa01f55ac85de4b5
Rob Landley [Fri, 15 Jan 2016 22:59:06 +0000 (16:59 -0600)]
Command line files without paths were attempting to use stdin as their dirfd,
(because ls uses nonstandard directory recursion which collates all the
command line arguments under a fake top node, which needs more thorough
initialization).
Rob Landley [Fri, 15 Jan 2016 22:58:42 +0000 (16:58 -0600)]
Locale setting is case sensitive.
Rob Landley [Fri, 15 Jan 2016 22:09:10 +0000 (16:09 -0600)]
More utf8 test files.
Rob Landley [Fri, 15 Jan 2016 18:38:32 +0000 (12:38 -0600)]
Fix sort -f, add tests, make TEST_HOST pass new tests.
Rob Landley [Fri, 15 Jan 2016 05:18:15 +0000 (23:18 -0600)]
Implement most of pgrep and pkill.
Needs testing and a few more options connected up.
Rob Landley [Thu, 14 Jan 2016 18:17:38 +0000 (12:17 -0600)]
Make "find -execdir toys echo {} +" batch correctly and show topdir results.
I dunno if find -execdir should show depth-first like it's doing, bit given
that ubuntu's treating "+" and ";" the same for execdir... eh?
Also, testing "find toys tests -mindepth 2 -execdir echo {} +" against
the toybox source is easy (and why if (revert) fchdir() is needed), but
adding that to the test suite means making a nontrivial hierarchy of files
to test against (don't wanna use the project source because it's expected
to change in ways that would break the tests)... The old "real world data
vs test data" problem.
Rob Landley [Tue, 12 Jan 2016 16:45:58 +0000 (10:45 -0600)]
Expand defconfig/allyesconfig/allnoconfig help text to explain what they're for.
Elliott Hughes [Mon, 11 Jan 2016 17:59:12 +0000 (09:59 -0800)]
Regenerate generated files.
Change-Id: Idb62095c70ea6056578bba9a0dcbcb6fd820bc48
Elliott Hughes [Mon, 11 Jan 2016 17:57:02 +0000 (09:57 -0800)]
Merge remote-tracking branch 'toybox/master' into HEAD
Elliott Hughes [Sat, 9 Jan 2016 20:54:04 +0000 (12:54 -0800)]
Fix tail -f /does/not/exist.
Exit immediately if we don't actually have anything to -f --- it's -f's
big brother -F that retries by name rather than by fd.
Elliott Hughes [Sat, 9 Jan 2016 20:20:50 +0000 (12:20 -0800)]
Fix hwclock -u.
You can't pass a NULL value to setenv(3). The "put things back how they were"
intent of this code is best achieved by calling unsetenv(3) in the NULL case.
(This causes a crash with "hwclock -u" on Android. glibc silently corrupts the
environment instead.)
Elliott Hughes [Sat, 9 Jan 2016 19:47:35 +0000 (11:47 -0800)]
Fix perror_exit_raw.
Some things are worse when you remove the 'p'.
Rob Landley [Sun, 10 Jan 2016 21:59:09 +0000 (15:59 -0600)]
Make cursor left/right change sort type in iotop.
Elliott Hughes [Sat, 9 Jan 2016 19:23:51 +0000 (11:23 -0800)]
Regenerate generated files.
Change-Id: Ibc6ab2c6a89bcbe4ffd7ca883f6635d725735c08
Elliott Hughes [Sat, 9 Jan 2016 19:09:47 +0000 (11:09 -0800)]
Merge remote-tracking branch 'toybox/master' into HEAD
Elliott Hughes [Sat, 9 Jan 2016 01:13:38 +0000 (19:13 -0600)]
Fix cat -.
Commit
4b4ab6a50998 broke loopfiles' handling of "-".
This broke the existing cat tests, so no new test is necessary here.
Elliott Hughes [Sat, 9 Jan 2016 00:43:17 +0000 (18:43 -0600)]
The sense of -L was flipped.
Josh Gao [Sat, 9 Jan 2016 00:05:41 +0000 (00:05 +0000)]
Merge "Revert "Don't add a symlink for killall --- it's broken.""
Rob Landley [Thu, 7 Jan 2016 20:34:47 +0000 (14:34 -0600)]
Make scan_key() specify timeout in miliseconds, split out terminal_probesize(),
add function key definitions and shift/ctrl/alt cursor keys.
Rob Landley [Wed, 6 Jan 2016 04:26:58 +0000 (22:26 -0600)]
Add error_msg_raw() and friends, replace error_msg("%s", s) uses, enable format
checking, and fix up format checking complaints.
Added out(type, value) function to stat to avoid a zillion printf typecasts.
Rob Landley [Wed, 6 Jan 2016 00:17:02 +0000 (18:17 -0600)]
Some utf8/unicode stress test files.
Rob Landley [Tue, 5 Jan 2016 18:14:24 +0000 (12:14 -0600)]
Work towards making "find . -execdir echo {} + -execdir ls {} +" work,
(not finished yet) plus some error message improvements.
Elliott Hughes [Mon, 4 Jan 2016 20:28:44 +0000 (12:28 -0800)]
Update generated files after toybox sync.
Change-Id: I61a6e7b160133ecf271aa28bf5d5de63191b3bcb
Elliott Hughes [Mon, 4 Jan 2016 18:46:55 +0000 (10:46 -0800)]
Merge remote-tracking branch 'toybox/master' into HEAD
Rob Landley [Sat, 2 Jan 2016 20:34:53 +0000 (14:34 -0600)]
Fix find --prune.
Rob Landley [Sat, 2 Jan 2016 20:24:56 +0000 (14:24 -0600)]
Fix "find . -exec echo {}" segfault, and stop measuring environment space,
The segfault was spotted/fixed by Daniel K. Levy back in September, and again by
Isabella Parakiss yesterday. While we're there, remove the environment
size measurement code (the 128k limit was lifted by linux commit
b6a2fea39318,
which went into 2.6.22 released July 2007).
Rob Landley [Fri, 1 Jan 2016 21:24:46 +0000 (15:24 -0600)]
First pass at iotop.
Lotsa TODOs: Currently exit it with ctrl-c, not q.
Doesn't show totals, PID instead ofTID, PR instead of PRIO (type/pri),
human_readable can't display fixed point, IO isn't a percentage,
COMM instead of COMMAND (so no [kernelthread] brackets), and no
cursor left/right to change sort field...
Rob Landley [Thu, 31 Dec 2015 20:09:54 +0000 (14:09 -0600)]
Tweak error message.
Rob Landley [Thu, 31 Dec 2015 02:54:19 +0000 (20:54 -0600)]
Don't let mktemp -q /path/to/file delete arbitrary files, and don't have
"mktemp -u > /dev/full" leave file around.
Kylie McClain [Thu, 24 Dec 2015 05:20:24 +0000 (00:20 -0500)]
lsb/mktemp: Add -u flag
The -u flag creates a file, and unlinks it before exiting.
This is usually known as "unsafe mode", or "dry-run" mode.
GNU mktemp has it, as does Busybox's mktemp and likely many others.
Rob Landley [Thu, 31 Dec 2015 02:18:18 +0000 (20:18 -0600)]
First half of iotop. Add READ, WRITE, IO, DREAD, DWRITE, SWAP, DIO, and
corresponding percentile fields to ps. Move FLAG_ macro usage to ps-specific
code (top/iotop have their own flag contexts). Split init and match code
into shared and ps-specific parts. Fix bug in COMMAND for privileged processes.
Rob Landley [Thu, 31 Dec 2015 02:15:34 +0000 (20:15 -0600)]
Add more keys to scan_key() and fix hang in scan_key_getsize().
Rob Landley [Wed, 30 Dec 2015 18:01:42 +0000 (12:01 -0600)]
make "ls -m | cat" assume 80 columns.
Rob Landley [Wed, 30 Dec 2015 17:49:13 +0000 (11:49 -0600)]
I didn't add comma_args() to lib.c, I added it with the other comma functions.
(Oops. Missed a file checkin, build break, my bad.)
Rob Landley [Tue, 29 Dec 2015 17:52:12 +0000 (11:52 -0600)]
Add strafter() to lib.
Rob Landley [Tue, 29 Dec 2015 17:19:02 +0000 (11:19 -0600)]
Make pidof use comma_scan()
Rob Landley [Tue, 29 Dec 2015 16:16:45 +0000 (10:16 -0600)]
Move comma_args() from ps.c to lib.
(Moved header a while ago, forgot to check in function move.)
Rob Landley [Sun, 27 Dec 2015 20:41:30 +0000 (14:41 -0600)]
Add scan_key_getsize() doing the ANSI probe, switch scan_key() to TAGGED_ARRAY,
and add test_scankey.
Rob Landley [Thu, 24 Dec 2015 18:18:10 +0000 (12:18 -0600)]
Move get_line() header to pending.h because posix has FILE * versions.
Rob Landley [Thu, 24 Dec 2015 00:16:23 +0000 (18:16 -0600)]
Factor out draw_str() and friends.
Rob Landley [Tue, 22 Dec 2015 19:36:15 +0000 (13:36 -0600)]
First guess at cp xattr support, ala --preserve=context,xattr
Josh Gao [Tue, 22 Dec 2015 19:34:57 +0000 (11:34 -0800)]
Revert "Don't add a symlink for killall --- it's broken."
Looks like the previous revert of this commit (
707204e) got dropped by
an `-s ours` merge.
This reverts commit
c96e42498c99b179444e6812dd8b0583f0624fcd.
Rob Landley [Tue, 22 Dec 2015 18:02:20 +0000 (12:02 -0600)]
Convert cp from magic constants to TAGGED_ARRAY()
Rob Landley [Mon, 21 Dec 2015 20:34:36 +0000 (14:34 -0600)]
Cleanup tail -f.
Rob Landley [Mon, 21 Dec 2015 17:28:30 +0000 (11:28 -0600)]
Rich Felker's reading of posix is that fchown() and fchmod() must be allowed
on files opened read-only, so revert last commit (force writeable logic).
Elliott Hughes [Sun, 20 Dec 2015 18:49:13 +0000 (10:49 -0800)]
Add ps -o psr,rtprio,sched.
These three are currently available in Android's ps but not in toybox ps.
Josh Gao [Fri, 4 Dec 2015 21:30:02 +0000 (13:30 -0800)]
Implement tail -f.
Rob Landley [Sun, 20 Dec 2015 03:49:14 +0000 (21:49 -0600)]
Redo linestack to handle embedded NULs.
Rob Landley [Sat, 19 Dec 2015 19:29:04 +0000 (13:29 -0600)]
Start of vi.
Rob Landley [Fri, 18 Dec 2015 22:39:59 +0000 (16:39 -0600)]
Next giant chunk of ps work: add _NAME_TAG bitmask values to tags.h
(leading underscore version is 1<<NAME_TAG version, with 1LL for >31 shift),
suck lots of magic constants out of ps and use tag macros instead,
redo command line display so there's now 6 variants (CMD COMM ARGS from posix,
NAME CMDLINE from android, and COMMAND for completeness). Document more
cases where posix is nuts or widely ignored.