aboutsummaryrefslogtreecommitdiff
path: root/toys
AgeCommit message (Collapse)Author
2017-01-28top -H is more useful if it shows thread names.Elliott Hughes
I knew that just showing the process name was a divergence from traditional Android behavior, but I was curious to see whether anyone cared. Bug reports show that they do. I've not made this conditional on CFG_TOYBOX_ON_ANDROID on the assumption that this is more useful for everyone else too. (Why are you asking for per-thread information if you don't actually want to be able to identify individual threads?) Why not _just_ show the thread name? Because on Android at least, every process has lots of identically-named threads; everyone has GC threads, everyone has JIT threads, and so knowing _just_ the thread name is rarely useful. Why show thread name first? Because the kernel limits thread names to 15 bytes plus a NUL, so any left-over space should go to the process name, so that should come last. Why call the thread name THREAD? Because "CMD" isn't obviously "thread name" to folks who don't know how this is implemented behind the scenes. This change also removes an incorrect "usage:" comment. None of the other commands in this file duplicated their "usage:" lines, and this copy wasn't even close to being correct. Bug: http://b/34610082
2017-01-25Remove name length limit for system propertiesDimitry Ivanov
Android O removes name length limit for system properties. Use __system_property_read_callback instead of deprecated __system_property_read in getprop and remove check for property name length in setprop. Test: adb shell setprop debug.test.very.very.long.property.name valueforpropertywithlongname Test: adb shell getprop | grep debug.test.very.very.long.property.name Bug: http://b/33926793 Change-Id: I57ca99ea33283d069cd1b7b9f110ec9fb27f3d19
2017-01-25Promote microcom to net.Rob Landley
2017-01-25Switch escape charcter to ^] (ascii 29, doesn't conflict with emacs or joe).Rob Landley
Recognize full range of linux serial speeds (only error cfsetspeed returns is invalid speed value).
2017-01-17Fix microcom command-line help and -X.Elliott Hughes
2017-01-14Add "microcom" to pending.Elliott Hughes
Our device bringup folks wanted a simple serial console, both on the host and on the device. This is certainly enough to replace what I've been using personally on the host. I'd never heard of "microcom" until I asked the internets what busybox users use, so I don't care what we call this or what the options are called. (But would like to decide before it gets ossified in a million factory test scripts and the like!) The tool that this replaces for me defaulted to /dev/ttyUSB0, but since I don't know whether that default would be useful for most other people too, I left that out. Command-line history will solve my transition problem.
2017-01-14Quick and dirty fix for CVE-2016-6321 but seriously this is in pendingRob Landley
for a reason and I need to completely rewrite it.
2017-01-04ftpget: implement -mMdDlL, put ftp transactions into their own function so -vRob Landley
can show both output and reply lines.
2017-01-04First stab at ftpget/ftpput. (Documents a lot of options other than basicRob Landley
upload/download that aren't implemented yet.)
2016-12-30Remove unnecessary casts in stat.c, fix a claimed buffer length.Elliott Hughes
POSIX does have a name for the struct timespec in struct stat.
2016-12-28Stop lying to the compiler in modprobe's read_line.Elliott Hughes
sizeof(int) != sizeof(size_t) for LP64, leading to hilarity^Wcrashes.
2016-12-28Admit that getprop requires selinux.Elliott Hughes
The "lsm" portability stuff could abstract this away, but Android doesn't need it, and getprop is meaningless on non-Android. (And if you're just building with the NDK, on recent enough versions of Android you won't be able to read most of the system properties anyway because access to them is increasingly restricted by selinux.)
2016-12-28Switch to bionic <sys/system_properties.h>.Elliott Hughes
Removes the dependency on libcutils for everything except ps.
2016-12-26Move hostid to toys/example and have it "default n".Rob Landley
A "globally unique 32 bit number" is a concept the Linux world has outgrown.
2016-12-26log: use error_msg instead of perror_msg when errno is meaningless.Elliott Hughes
2016-12-25Fix a bug for sort. When the key_separator is not space, the sort ↵wxj
commandline tool fails to sort by the 3rd,4th,etc column. For example: when you exec $ sort -t',' -k 3n on a file which cotains: 1,2,3,4 2,3,4,1 4,1,2,3 3,4,1,2 you got: 4,1,2,3 1,2,3,4 2,3,4,1 3,4,1,2 but the expected output should be: 3,4,1,2 4,1,2,3 1,2,3,4 2,3,4,1 The bug is due to the dependency of "isspace(str[end])" at line 113. When searching for the non-space key_separator, the search stopped just at the position of first key_separator it met. The bug can be easily fixed by adding "end++" when the search have found one separator and exit the for loop.
2016-12-24Cleanup: Have get_hostname() handle its own lookup failures. Inline is_prefix().Rob Landley
Kernel can handle 64k maximum segment size.
2016-12-20Add units for -atime and friends. (Also legacy -amin alias, but not in help textRob Landley
because there's no -asec or -ahour.)
2016-12-11First cleanup pass on new dmesg.Rob Landley
2016-12-09Pass DIRTREE_PROC through the ps callbacks.Elliott Hughes
2016-12-08Add DIRTREE_PROC to skip non-numeric entries and make ps/top etc use it.Rob Landley
2016-11-21Have dirtree_notdotdot() pass through !node->parent so . and .. on the commandRob Landley
line aren't filtered out. Audited all the callers and removed redundant calls, adjusted call sequence, etc. (And let rm _not_ do this, because posix.)
2016-11-19Bug report from Justin Cormack, tar was producing a warning to stdout thatRob Landley
screwed up "tar c" to stdout.
2016-11-18"printf %x 64" wasn't working right on 32 bit because a variable type was wrong.Rob Landley
2016-11-08Josh Gao pointed out that chmod -R . (and ..) didn't work.Rob Landley
2016-11-02Fix control flow integrity check failure in ps.Evgenii Stepanov
This fixes an indirect function call through a pointer of an incompatible type. See http://clang.llvm.org/docs/ControlFlowIntegrity.html for more details.
2016-10-30Implement "dmesg -w".Elliott Hughes
Annoyingly, this means writing a new dmesg implementation that uses /dev/kmsg rather than the klogctl system call. Worse, pre-3.5 kernels don't support that, so we need to keep the old implementation around as long as we still care about those kernels. Since I'm here, add the fancy colors from modern dmesg and the -C flag. Tested on Nexus 9's 3.10 kernel, an Ubuntu 3.13 kernel, and the Nexus One's 2.6.35 kernel.
2016-10-26Izabera pointed out that split -b -l are exclusive.Rob Landley
2016-10-25Add fallocate -o.Elliott Hughes
Also improve error reporting.
2016-10-24Android O allows '@' in property names.Elliott Hughes
Bug: http://b/32371104
2016-10-22Tweak help text.Rob Landley
2016-10-20Nothing in pending should "default y".Rob Landley
2016-10-20Nothing in pending should "default y".Rob Landley
2016-10-20Close to cutting a release and I don't want to have setfattr in defconfigRob Landley
without getfattr, so I'm putting it back in pending for now.
2016-10-20Add special "touch -" behavior and require an argument.Rob Landley
2016-10-20Show driver for interface in ifconfig output.Rob Landley
2016-10-19More touch tests, and a fix found by one. (The three -t formats can onlyRob Landley
reliably be distinguished by checking length, because %H amd %m and such can match different numbers of digits.)
2016-10-18Unify touch -t and -d handling, allow posix's underspecified "time designator"Rob Landley
T to be a space instead (because the posix says so, no idea why), initialize default values reliably including zeroing daylight savings time field (which is handled inconsistently by libc and just screws stuff up).
2016-10-12Stop renaming the ADDR field to PC on Android.Elliott Hughes
It's causing confusion, and it's not obvious that anyone's relying on it (and even if they are, let's try to find and fix them first).
2016-10-11Make netcat work with nommu and factor out poll() loop into net/net.c.Rob Landley
2016-10-09Izabera pointed out that ls defaults to -q when output is a tty.Rob Landley
2016-10-08Teach ps -w not to truncate any fields.Rob Landley
2016-10-08Evgenii Stepanov found a bug where argv0len was set wrong for threadsRob Landley
(no /proc/$PID/cmdline so setting was skipped and previous value retained), which led to memcpy() with an overlapping source/dest range (annoying asan). Fix: move temp variable and assignment outside the if() statement so we assign zero if we can''t read the file.
2016-10-03David Hedges pointed out that interface names can be longer than 10 chars.Rob Landley
2016-10-01du: 32 bit systems were maxing out at 2GB when they should max out at 2TBRob Landley
(1<<32 blocks * 512 bytes, done with unsigned 64 bit math).
2016-10-01Move --version handling next to --help handling, so it applies to all commands.Rob Landley
Say "toybox" before version string. Tweak sed to preserve lie-to-autoconf.
2016-09-29Accept extra ps arguments as additional pids.Elliott Hughes
POSIX says nothing, but traditional ps lets you say "ps 123" in addition to "ps -p 123". (You can mix and match too: "ps -p 123,124 666 667" works fine.) Bug: 31778761
2016-09-28Show thread names with "ps -T" on Android.Elliott Hughes
Android uses NAME rather than CMD by default, but that's not what we want with -T. Noticed because it broke systrace's reporting of thread names (see https://developer.android.com/studio/profile/systrace.html). Bug: 31741954
2016-09-28Make setns depend on TOYBOX_CONTAINER probed value.Rob Landley
2016-09-27Changed xopen_stdin() to xopen_stdio().Lipi C.H. Lee