OSDN Git Service
Elliott Hughes [Tue, 7 Jul 2015 01:17:00 +0000 (18:17 -0700)]
Merge remote-tracking branch 'toybox/master' into HEAD
Elliott Hughes [Tue, 7 Jul 2015 01:16:09 +0000 (01:16 +0000)]
Merge "Redo mkstatus.py to grep pending for pending data and trust toybox defconfig output for ready command list, to reduce manual updating."
Elliott Hughes [Tue, 7 Jul 2015 01:16:03 +0000 (01:16 +0000)]
Merge "Move the magic list of commands needing cleanup from toys/pending/README to greppable TODO annotations in the individual files. (grep -riw TODO)"
Elliott Hughes [Tue, 7 Jul 2015 01:14:17 +0000 (01:14 +0000)]
Merge "On testing fold command, I found w option didnt check the range of value."
Elliott Hughes [Tue, 7 Jul 2015 01:14:11 +0000 (01:14 +0000)]
Merge "mknod: Add -Z option"
Elliott Hughes [Tue, 7 Jul 2015 01:09:49 +0000 (18:09 -0700)]
Regenerate generated files after upstream toybox sync.
Change-Id: I712c4e8391d333536887dcea162e640b2b73948e
Rob Landley [Sun, 5 Jul 2015 07:36:51 +0000 (02:36 -0500)]
Kylie McClain pointed out that -z affects both input and output.
Can't say I'm happy with the API (-z and -Z to keep them independent would
be nice), but compatibility with what exists trumps having a good API...
Rob Landley [Sat, 4 Jul 2015 08:49:53 +0000 (03:49 -0500)]
Actually set time with touch -d and -t when you don't specify nanonseconds.
There's a nanoseconds field value that says use current time, which I set
but forgot to clear in the right places. (Oops.)
Rob Landley [Sat, 4 Jul 2015 04:08:39 +0000 (23:08 -0500)]
First pass on cp --preserve
Rob Landley [Fri, 3 Jul 2015 20:19:07 +0000 (15:19 -0500)]
Promote xxd to other.
Rob Landley [Fri, 3 Jul 2015 20:17:25 +0000 (15:17 -0500)]
Probe for fork() instead of relying on a distro-specific #define.
Hyejin Kim [Fri, 3 Jul 2015 18:22:37 +0000 (13:22 -0500)]
Added i option to use other interface on running dhcpd.
Rob Landley [Thu, 2 Jul 2015 18:40:03 +0000 (13:40 -0500)]
Cleanup xxd.
Rob Landley [Thu, 2 Jul 2015 17:17:59 +0000 (12:17 -0500)]
Minor cleanups on xxd.
Rob Landley [Thu, 2 Jul 2015 16:44:01 +0000 (11:44 -0500)]
The android guys sent in xxd. It doesn't share code with od and hexdump. Hmmm...
Elliott Hughes [Wed, 1 Jul 2015 20:00:06 +0000 (15:00 -0500)]
Fix segfault with "mount -o ro,remount".
Or any call to comma_scan where 'opt' appears as the last item in 'optlist'.
Elliott Hughes [Wed, 1 Jul 2015 19:56:07 +0000 (14:56 -0500)]
Improve -Z error reporting.
The most likely reason for setfscreatecon to fail is that you don't have permission, and that's reported by the write return EACCES. There isn't really a "bad" context; they're just strings.
Before:
$ adb shell mkdir -Z x y
mkdir: bad -Z 'x'
After:
$ adb shell mkdir -Z x y
mkdir: -Z 'x' failed: Permission denied
Other than this, the ToT mkdir works fine with SELinux.
Elliott Hughes [Wed, 1 Jul 2015 19:46:23 +0000 (14:46 -0500)]
Fix top.c build.
Broken by recent lib.h additions.
Rob Landley [Mon, 29 Jun 2015 06:31:34 +0000 (01:31 -0500)]
mkfifo -Z
Rob Landley [Sun, 28 Jun 2015 21:23:08 +0000 (16:23 -0500)]
Add ionice and iorenice.
Rob Landley [Sun, 28 Jun 2015 02:35:37 +0000 (21:35 -0500)]
Add undo buffer for 'u'.
Rob Landley [Sat, 27 Jun 2015 18:36:25 +0000 (13:36 -0500)]
Simplify hexedit logic by adjusting viewport all in one place up top.
(Easier to genericize logic and reuse later in less or vi...)
Rob Landley [Fri, 26 Jun 2015 21:26:15 +0000 (16:26 -0500)]
Factor out more not-curses infrastructure into lib.
Rob Landley [Thu, 25 Jun 2015 22:55:54 +0000 (17:55 -0500)]
Suggestion from Elliott Hughes: tweak test infrastructure to notice if
command exits with high errno and assume it segfaulted.
Rob Landley [Tue, 23 Jun 2015 19:35:57 +0000 (14:35 -0500)]
Fix version number in ifconfig cleanup reference.
Rob Landley [Tue, 23 Jun 2015 18:56:53 +0000 (13:56 -0500)]
Don't segfault if none of the file arguments to ls exists.
Rob Landley [Tue, 23 Jun 2015 18:15:13 +0000 (13:15 -0500)]
Don't depend on malloc(0) to return non-null.
Rob Landley [Tue, 23 Jun 2015 17:59:19 +0000 (12:59 -0500)]
Fix ls so spacing is right for ls -l, -o, -g, -og, -ogZ, -lZ, -gZ, and -oZ.
Rob Landley [Mon, 15 Jun 2015 20:19:11 +0000 (15:19 -0500)]
Fluff up explanation of why 0BSD license for SPDX submission.
Rob Landley [Mon, 15 Jun 2015 20:17:56 +0000 (15:17 -0500)]
Use lsm_set_create() to set security blanket context before mknod, avoiding
racy gap between create/label.
Rob Landley [Thu, 11 Jun 2015 08:35:49 +0000 (03:35 -0500)]
Add nproc.
Elliott Hughes [Wed, 10 Jun 2015 18:45:39 +0000 (11:45 -0700)]
Explain why attempts to remove the libc++ dependency are futile.
This isn't as useless as it seems though. It should prevent me from
going down this path a third time, and it removes one pointless barrier
that gets in the way of running a toybox binary on an older release.
Change-Id: Ia193eb7af162878a331db1b1e1c90ff0f617becb
Rob Landley [Wed, 10 Jun 2015 16:58:47 +0000 (11:58 -0500)]
Cosmetic tweak: no need for pages of text from "make defconfig" and friends.
Elliott Hughes [Mon, 8 Jun 2015 21:52:58 +0000 (14:52 -0700)]
Switch to toybox mount(1).
Change-Id: I3a42b70644897e46b46e730b3a39371e35a4dbab
Rob Landley [Sun, 7 Jun 2015 02:34:02 +0000 (21:34 -0500)]
Last grep commit broke non -r use of grep. Oops.
Rob Landley [Tue, 2 Jun 2015 14:58:51 +0000 (09:58 -0500)]
Make "printf --" and "printf ---" work.
Rob Landley [Sun, 31 May 2015 10:15:47 +0000 (05:15 -0500)]
Redo mkstatus.py to grep pending for pending data and trust toybox
defconfig output for ready command list, to reduce manual updating.
Rob Landley [Sun, 31 May 2015 10:11:28 +0000 (05:11 -0500)]
Move the magic list of commands needing cleanup from toys/pending/README
to greppable TODO annotations in the individual files. (grep -riw TODO)
Hyejin Kim [Mon, 25 May 2015 06:51:56 +0000 (01:51 -0500)]
On testing fold command, I found w option didnt check the range of value.
José Bollo [Mon, 11 May 2015 16:54:15 +0000 (18:54 +0200)]
mknod: Add -Z option
Change-Id: I23174fb7b54d029784e6d7460368128113090079
Elliott Hughes [Sun, 31 May 2015 17:02:48 +0000 (10:02 -0700)]
Add a symlink for tty(1).
It's POSIX and I find myself using it a surprising amount for debugging,
especially adb. (And, as long as our ps is non-standard, you can't just
type "ps" to see what tty you're on.)
Change-Id: I45aae330f0e6bfbd90829005f199b44bb9aa3c50
Elliott Hughes [Sun, 31 May 2015 16:53:31 +0000 (09:53 -0700)]
Add generated/cflags to .gitignore.
Change-Id: I64b94e69b7670a1c0e739abb650544bd9e5d7d4d
Elliott Hughes [Sun, 31 May 2015 16:51:58 +0000 (09:51 -0700)]
Regenerate generated files.
Change-Id: I7525f17bf72a87d6eb25d687b70e5b7b4dd41d03
Elliott Hughes [Sat, 30 May 2015 20:22:56 +0000 (13:22 -0700)]
Merge remote-tracking branch 'toybox/master' into HEAD
Rob Landley [Thu, 28 May 2015 06:43:47 +0000 (01:43 -0500)]
Attempt to fix the mkdir LSM race.
Doing a world writeable mkdir and _then_ adding a label seems like a race
window, so set the global "create stuff with these labels" context, then
do the creates.
Bill Yi [Fri, 22 May 2015 20:45:26 +0000 (13:45 -0700)]
Add MODULE_LICENSE and NOTICE
Change-Id: I0c800604bcbd6b5e63f3782540754f07534c22fb
Rob Landley [Fri, 22 May 2015 02:25:41 +0000 (21:25 -0500)]
ls -lZ wasn't putting a space before the xattr output.
José Bollo [Fri, 22 May 2015 02:00:25 +0000 (21:00 -0500)]
mkdir: Fix argument of option -Z
Rob Landley [Thu, 21 May 2015 04:59:53 +0000 (23:59 -0500)]
Make "grep -r regex" work on implicit "." if no files specified.
Rob Landley [Wed, 20 May 2015 04:29:18 +0000 (23:29 -0500)]
Add -Z support to mkdir, based on a patch from Jose Bollo.
I have no idea why -Z isn't showing up in mkdir --help when enabled, I
need to look at that...
Rob Landley [Tue, 19 May 2015 19:53:06 +0000 (14:53 -0500)]
Adapted patch from José Bollo to do the "tonight we're gonna api like
it's 1999 and every path ever is from cwd or root" api versions for sockets
and as a fallback of the open fails.
There are still some holes (symlink to socket with -L will give you info
about the symlink, not the socket, and symlink to a file you can't open will
give you info about the symlink, not the file) but the correct fix is
to make O_PATH work in the kernel for the LSM functions. (If we can read
this data by path, we should be able to read it by O_PATH. We should not
need two codepaths for this.)
Rob Landley [Tue, 19 May 2015 00:14:53 +0000 (19:14 -0500)]
Switch id over to new infrastructure, switch id to use FORCE_FLAGS, and
make lib/lsm.h auto-include from toys.h.
Rob Landley [Mon, 18 May 2015 19:48:11 +0000 (14:48 -0500)]
Fix "ls -Z . toys" segfaulting, because preprocessing skipped.
strwidth() got called on ->extra which was NULL. Had some other bad effects
ala "ls -sk file1 file2 file3" ignored the -k. This should fix that too.
Rob Landley [Mon, 18 May 2015 18:33:36 +0000 (13:33 -0500)]
Recent commit broke ls -R (test reversed), and "ls -R singledir" should
show label: at the start (yes, even "ls -R" in an empty dir).
Rob Landley [Mon, 18 May 2015 07:00:43 +0000 (02:00 -0500)]
More ls -Z upgrading. Move TOYBOX_SELINUX and TOYBOX_SMACK support from
portability.h to new lib/lsm.h. Update ls.c to use it.
Fix "ls . toys" (two directories when one is . or ..), which was filtering
out the . as something we shouldn't recurse into even though it was explicitly
listed on the command line. For some reason "ls -Z . toys" is still segfaulting
though (but "ls -Z ." isn't), need to figure out why...
Elliott Hughes [Sat, 16 May 2015 06:28:13 +0000 (06:28 +0000)]
Revert "Switch to toybox ls."
This reverts commit
981564094b07bb82d78667f317478a8a018a814b.
Change-Id: Ib84805d06a8ba281bc2a5d2f2b469f6f07d1769a
Elliott Hughes [Sat, 16 May 2015 00:25:51 +0000 (17:25 -0700)]
Switch to toybox ls.
Change-Id: I8c34fbd8d9b004f52ec8ed882603e3dc1935b001
Elliott Hughes [Fri, 15 May 2015 23:41:23 +0000 (16:41 -0700)]
Remove lspci.
This makes no sense right now, not least because we don't have the database.
Change-Id: I7d56386e81b1995577a9813663a9594357618a02
Elliott Hughes [Fri, 15 May 2015 23:33:13 +0000 (23:33 +0000)]
Merge "Regenerate generated files."
Elliott Hughes [Fri, 15 May 2015 23:27:24 +0000 (16:27 -0700)]
Merge remote-tracking branch 'toybox/master' into HEAD
Elliott Hughes [Fri, 15 May 2015 23:26:09 +0000 (16:26 -0700)]
Regenerate generated files.
Change-Id: Id114fc92751e1809eab477c1f0a0d855ce65246a
José Bollo [Wed, 6 May 2015 12:57:51 +0000 (14:57 +0200)]
stat: fix group name
Change-Id: I0ad65a40bf380d789c4396ebdc01be217901a2e3
Rob Landley [Thu, 14 May 2015 18:48:55 +0000 (13:48 -0500)]
Bugfix from Hyejin Kim: su should not prompt root user for new user's password.
Rob Landley [Thu, 14 May 2015 18:43:01 +0000 (13:43 -0500)]
Promote reset (actually write a new one using the simple man 4 console_codes
terminal reset escape sequence) and add gettty() function to lib so terminal
gets reset even when we redirect stdout/stderr. (This is apparently the
expected behavior.)
Rob Landley [Wed, 13 May 2015 06:34:01 +0000 (01:34 -0500)]
Print name of file at the bottom of the screen.
And yes, I tested $PWD/私はガラスを食べられま す。それは私を傷つけません。
as a name and made it work. If you throw newlines or ascii escapes in the
name it'll use the fancy printing logic for chars, otherwise it does the
full utf8 fontmetrics deal.
Rob Landley [Wed, 13 May 2015 05:22:26 +0000 (00:22 -0500)]
More hexedit cursor boundary tweaking.
Rob Landley [Wed, 13 May 2015 05:04:50 +0000 (00:04 -0500)]
Fix bug (len[7] wasn't zeroed if -Z off, thus -C overestimated entry lengths),
and some cleanups while I was there.
Rob Landley [Tue, 12 May 2015 18:24:26 +0000 (13:24 -0500)]
Set the executable bits on all the *.test files. (Wasn't consistent, is now.)
Rob Landley [Sun, 10 May 2015 23:56:49 +0000 (18:56 -0500)]
Git hates me.
Rob Landley [Sun, 10 May 2015 05:21:42 +0000 (00:21 -0500)]
Cleanups of dirtree_start() calls. (Don't need to feed in flag values, just
symfollow true/false.)
Rob Landley [Sat, 9 May 2015 23:11:22 +0000 (18:11 -0500)]
Add DIRTREE_SHUTUP to disable dirtree warnings if file vanishes out from
under traversal. Pass through full flag set in dirtree_add_node(), add
dirtree_start() wrapper to provide symlink-only behavior (avoiding a lot
of DIRTREE_SYMFOLLOW*!!(logic) repeated in callers).
Rob Landley [Sat, 9 May 2015 22:07:22 +0000 (17:07 -0500)]
Probe for -Wno-string-plus-int.
LLVM has its own nuts warnings about things that aren't wrong, but disabling
them with the relevant -Wno-* warning disabling command line option drives
gcc nuts because it's a command line option it doesn't recognize. (gcc 4.2.1
dies with an error. gcc 4.6 warns about it _only_ if it's warning about
something else. (PICK ONE, either you warn about this or you don't, distract
people from actual problems with noise about something clearly unrelated to
what just changed is extra-stupid.)
So just probe for it, and add the flag only if it doesn't complain about it
while we're producing an unrelated warning.
Rob Landley [Sat, 9 May 2015 01:20:29 +0000 (20:20 -0500)]
Move not-curses code into interstingtimes.c
Elliott Hughes [Fri, 8 May 2015 17:39:42 +0000 (10:39 -0700)]
Regenerate generated files.
Change-Id: I0fa3010adc8740b1eaf19b3d073807618ca785ff
Elliott Hughes [Fri, 8 May 2015 17:33:46 +0000 (10:33 -0700)]
Merge remote-tracking branch 'toybox/master' into HEAD
Elliott Hughes [Wed, 6 May 2015 21:39:12 +0000 (16:39 -0500)]
Fix more with missing files.
Previously we'd go into an infinite loop because we weren't
incrementing optargs.
Also add a missing flush so an error on stderr won't overtake the
escape code that resets reverse video.
Disclaimer: the new behavior isn't exactly like the desktop version;
surprisingly they try to open the next file _before_ they prompt. That
feels weird to me as a user, and seems like it would lead to a more
awkward implementation, but if you're more concerned about
authenticity...
Rob Landley [Wed, 6 May 2015 21:21:19 +0000 (16:21 -0500)]
Re-enable catv command now that flag infrastructure is updated.
Elliott Hughes [Tue, 5 May 2015 20:17:47 +0000 (13:17 -0700)]
Regenerate generated files.
Change-Id: Ie882b61d9bf3489348d145bc127bab8a128397fe
Elliott Hughes [Tue, 5 May 2015 20:15:19 +0000 (13:15 -0700)]
Merge remote-tracking branch 'toybox/master' into HEAD
Elliott Hughes [Mon, 4 May 2015 17:56:16 +0000 (12:56 -0500)]
Implement SELinux ls -Z support.
This patch uses lgetfilecon rather than fgetfilecon because
dirtree_parentfd always seems to return -1 in this function. If/when
the SMACK code is fixed to work with dirtree_parentfd, I'll send a
matching patch for SELinux.
In the meantime, this works, and although ls -h is still on my to-do
list, I think this patch is sufficient to let us replace toolbox ls
with toybox ls.
Elliott Hughes [Mon, 4 May 2015 01:48:57 +0000 (18:48 -0700)]
Regenerate generated files after upstream sync.
Change-Id: I21fdf950573bd41610c524c63c71c22939e5badb
Rob Landley [Mon, 4 May 2015 01:18:53 +0000 (20:18 -0500)]
Replace android-specific hack with just signal(SIGPIPE, SIG_IGN).
Rob Landley [Mon, 4 May 2015 01:15:52 +0000 (20:15 -0500)]
Yank smack from singleconfig.
Need to come up with a better solution to this, but the problem is that
single.sh's symbol enabling isn't dependency aware, and "silentoldconfig"
prompts. I suspect the better solution is "write a kconfig replacement".
Elliott Hughes [Mon, 4 May 2015 00:32:42 +0000 (17:32 -0700)]
Merge remote-tracking branch 'toybox/master' into HEAD
Change-Id: If8daf7f2f2e1b6d688050c4543d2648320bb21ad
Elliott Hughes [Sun, 3 May 2015 21:25:09 +0000 (16:25 -0500)]
Fix dmesg -c error output.
Use perror_exit to show the likely "Operation not permitted" if klogctl fails.
Rob Landley [Sun, 3 May 2015 21:20:27 +0000 (16:20 -0500)]
Move a prototype to the start of portability.h (suggested by Elliott Hughes)
Hyejin Kim [Sun, 3 May 2015 20:53:37 +0000 (15:53 -0500)]
dhcpd writes leases on "dhcpd.leases" file.
but, dumpleases read from "udhcpd.leases".
Elliott Hughes [Sun, 3 May 2015 20:31:41 +0000 (15:31 -0500)]
Fix getprop sorting and error reporting.
Use qstrcmp instead of alphasort (which expects struct dirent arguments).
Don't use perror_exit because property_list doesn't set errno.
Rob Landley [Sun, 3 May 2015 20:13:41 +0000 (15:13 -0500)]
Minor dmesg cleanup.
Rob Landley [Sun, 3 May 2015 17:41:05 +0000 (12:41 -0500)]
If a shortopt is configured out right before a bare longopt, the option parsing infrastructure segfaults because there's no next shortopt but the list isn't empty. (There was a test for this, but we're simultaneously traversing two lists and it was testing the wrong one.)
Mark Salyzyn [Sat, 2 May 2015 22:41:27 +0000 (17:41 -0500)]
dmesg: add -t suppress timestamp flag
Elliott Hughes [Sat, 2 May 2015 18:38:41 +0000 (11:38 -0700)]
Don't build chvt.
This functionality has been disabled in Android kernels since Cupcake.
Change-Id: I1855df32b618b3889eec75fbac7faac87ea385e0
Rob Landley [Fri, 1 May 2015 19:40:49 +0000 (14:40 -0500)]
Portability bits for the recent ls smack changes.
Rob Landley [Thu, 30 Apr 2015 21:51:50 +0000 (16:51 -0500)]
More ls cleanups from squinting at Jose's most recent smack patch.
Behavior change in flags: allow -long to work together, and -l1 work like -l
not -1.
I didn't make ls -gCl remember the g, though. (Because -Cg and -gC take
the last one: I'll preserve explicit state but not implicit state. And if
-1Cl and -lC1 aren't going to behave the same, it wasn't consistent anyway.)
Rob Landley [Thu, 30 Apr 2015 20:11:34 +0000 (15:11 -0500)]
Add default sigpipe handler for android (as suggested by Elliott Hughes).
Rob Landley [Thu, 30 Apr 2015 19:18:47 +0000 (14:18 -0500)]
And remove the header part too.
Rob Landley [Thu, 30 Apr 2015 19:02:34 +0000 (14:02 -0500)]
Wild guess at cleaning up smack support. Don't have a test environment yet.
Rob Landley [Thu, 30 Apr 2015 19:01:35 +0000 (14:01 -0500)]
Remove redundant numlen.
Jan Cybulski [Mon, 20 Oct 2014 13:26:12 +0000 (15:26 +0200)]
ls: Add -Z (Smack) option
Option triggers printing security context,
for smack that is file's access smack label.
Change-Id: I9054d9bcfe4d149e8fbfa0831b6ab50165d2bd91
Signed-off-by: Jan Cybulski <j.cybulski@samsung.com>
Signed-off-by: José Bollo <jose.bollo@open.eurogiciel.org>
Rob Landley [Tue, 28 Apr 2015 17:18:17 +0000 (12:18 -0500)]
Fix truncate prefix bug and add truncate test suite entry.