Age | Commit message (Collapse) | Author |
|
make lib/lsm.h auto-include from toys.h.
|
|
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.
|
|
show label: at the start (yes, even "ls -R" in an empty dir).
|
|
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...
|
|
Change-Id: I0ad65a40bf380d789c4396ebdc01be217901a2e3
|
|
|
|
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.)
|
|
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.
|
|
|
|
and some cleanups while I was there.
|
|
|
|
symfollow true/false.)
|
|
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).
|
|
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...
|
|
|
|
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.
|
|
Use perror_exit to show the likely "Operation not permitted" if klogctl fails.
|
|
but, dumpleases read from "udhcpd.leases".
|
|
Use qstrcmp instead of alphasort (which expects struct dirent arguments).
Don't use perror_exit because property_list doesn't set errno.
|
|
|
|
|
|
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.)
|
|
|
|
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>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
No actual editing yet.
|
|
|
|
Test is 'echo "AAA c 1 0 0 2 5 0 0 1" | makedevs' makes AAA not AAA0.
|
|
(I commented out the android-only #include in getprop to do what compile
testing I could, and then forgot to uncomment it.)
|
|
alphasort), add compile-time probe for config symbol TOYBOX_ON_ANDROID.
|
|
Use DEVPATH, DEVNAME, MAJOR, MINOR, and SUBSYSTEM instead of
checking the current path and reading .../dev.
While we're here, probe for partitions in block devices.
This uses a very lame check for ACTION (which can be add, remove,
or change): if it is "remove", then unlink the device.
|
|
|
|
|
|
|
|
Calling unshare(2) immediately puts us in the new namespace
with the "overflow" user and group ID. By calling geteuid()
and getegid() in handle_r() after calling unshare(), we try
to map that to root, which Linux refuses to let us do.
What we really want to map to root is the caller's uid/gid
in the original namespace. So we have to save them before
calling unshare().
|
|
ioctl(). (This is a thing Android's old mount already does.)
|
|
On Android, much of the restorecon logic is in libselinux, so this
isn't portable. We do want to be able to build on the host for
testing *other* toys, though, so #if keeps this building.
Change-Id: Ida5a6713a926140c549d5770d62798f4aedca748
|
|
Also switch to xopen for O_CLOEXEC paranoia and to avoid a conditional.
Change-Id: Iee5c4c124bcac800313f586768ffcaade542bd22
|
|
Change-Id: Icbee1df8b316039c68ef326f9d4d80f32c603b21
|
|
Change-Id: I83c478ea9ddd456c61e3f0f99506a1028a7027a1
|
|
> Yes, I know, "don't use pending". Sadly, more(1) is pretty useless
> without this. It gets confused by long lines or tabs.
>
> This patch also adds the missing prompt between multiple files.
actually, it looks like we're already hard-coding some escape
sequences? more(1) doesn't need anything that isn't in ANSI, so here's
an alternative patch that fixes the same bugs as the other patch but
also has a reverse-video prompt:
|
|
Guys, you CANNOT COPY CODE FROM BUSYBOX. I don't care if I was the initial
author of that file, other people have touched it since.
I know I added "pending" because I couldn't keep up with code review in
realtime and stuff was getting lost, so we needed a place to park things
before they underwent the full dorodango process. I also know none of the
binaries I distribute has anything in pending enabled. But dude, if I'm going
to find stuff like this I have to start reviewing the code BEFORE applying
it to pending, and we all know where that leads.
Please don't do this again.
|
|
confusing update-alternatives, the paths of the links installed by toybox should
match those installed by busybox. This is accomplished by changing the flags
of a few tools within toybox.
|
|
|
|
|