OSDN Git Service
Rob Landley [Thu, 11 Feb 2016 03:05:22 +0000 (21:05 -0600)]
Factor out strnstr() since posix hasn't got it, and add a config option for
the deeply sad passwd heuristics that don't even check numbers and punctuation.
izabera [Sat, 6 Feb 2016 14:41:59 +0000 (15:41 +0100)]
make wc -c faster
izabera [Sat, 6 Feb 2016 14:25:35 +0000 (15:25 +0100)]
use unsigned long with factor
Rob Landley [Wed, 10 Feb 2016 22:23:31 +0000 (16:23 -0600)]
Although printf("%.*s", INT_MAX, s) works fine on ubuntu 12.04, it broke since.
izabera [Wed, 10 Feb 2016 00:26:01 +0000 (01:26 +0100)]
implement env -u
Rob Landley [Tue, 9 Feb 2016 23:23:31 +0000 (17:23 -0600)]
Add ulimit.
This isn't a shell builtin, it uses prlimit to target any pid (without -P
it defaults to $PPID, so acts like historical ulimit by default).
Rob Landley [Tue, 9 Feb 2016 23:06:12 +0000 (17:06 -0600)]
Fix xpipe. (thinko.)
Rob Landley [Mon, 8 Feb 2016 21:24:33 +0000 (15:24 -0600)]
Add xpipe() to lib.
Rob Landley [Mon, 8 Feb 2016 01:09:39 +0000 (19:09 -0600)]
Dependencies for "make COMMAND"
Rob Landley [Mon, 8 Feb 2016 00:15:53 +0000 (18:15 -0600)]
Add "make ls" and friends targets, with "make working" and "make pending" lists.
Rob Landley [Sun, 7 Feb 2016 18:27:40 +0000 (12:27 -0600)]
Add a warning when building commands out of pending.
Rob Landley [Fri, 5 Feb 2016 21:13:24 +0000 (15:13 -0600)]
Debian unstable is even more pedantic than previous debian.
Rob Landley [Fri, 5 Feb 2016 18:37:50 +0000 (12:37 -0600)]
Another fix from Josh Gao to avoid a null pointer dereference, and
minor cleanup of previous commit.
Josh Gao [Thu, 4 Feb 2016 18:49:52 +0000 (10:49 -0800)]
Fix segfault when `find -iname` gets no argument.
Rob Landley [Thu, 4 Feb 2016 20:10:36 +0000 (14:10 -0600)]
Fix -H and -n with -ABC, and add tests.
Rob Landley [Thu, 4 Feb 2016 20:10:30 +0000 (14:10 -0600)]
Merge branch 'master' of ssh://github.com/landley/toybox
Rob Landley [Thu, 4 Feb 2016 04:33:04 +0000 (22:33 -0600)]
Commit
d20b9ff3ee0f fixed most of yocto building, but there was a leftover
(redundant) file built from the makefile (which _should_ just be a wrapper
for scripts/make.sh and scripts/install.sh).
Rob Landley [Tue, 2 Feb 2016 20:56:27 +0000 (14:56 -0600)]
Update to status.html and some test suite cosmetic tweaks.
Rob Landley [Tue, 2 Feb 2016 20:23:37 +0000 (14:23 -0600)]
Editorial comment.
Rob Landley [Tue, 2 Feb 2016 20:20:16 +0000 (14:20 -0600)]
Fluffier release notes.
Rob Landley [Tue, 2 Feb 2016 17:18:50 +0000 (11:18 -0600)]
Release notes.
Rob Landley [Tue, 2 Feb 2016 17:12:05 +0000 (11:12 -0600)]
Release time.
Calling it 0.7.0 because the fullscreen (cursor/utf8) infrasructure is in now.
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 [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.
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.
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.
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)
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 [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 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.
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.
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
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.