aboutsummaryrefslogtreecommitdiff
path: root/toys
AgeCommit message (Collapse)Author
2014-10-30Bug report from Isaac Dunham: ls -d shouldn't follow command line symlinks ↵Rob Landley
without -H or -L (just like ls -l).
2014-10-29Next drop of sed infrastructure, mostly argument parsing, doesn't do ↵Rob Landley
anything interesting yet.
2014-10-28Fill out rest of help text for sed.Rob Landley
2014-10-27Fix use after free error spotted by ?ukasz Szpakowski.Rob Landley
2014-10-24Basic sed range support, enough for "sed -n 9,11p README" to work.Rob Landley
2014-10-22Teach ln -f to leave original target alone if link creation fails.Rob Landley
Suggested by Ashwini Sharma, I wound up implementing it by creating the new link at a temporary name and renaming it over the old one instead of renaming the old file out of the way and putting it back if it failed. (Because "mkdir -p one/one/blah && ln -sf /bin/one one" would otherwise rename one/one out of the way and only notice it can't delete it way at the end when recovery's darn awkward, vs create new thing and if rename fails (including EISDIR) that's the main error path. And yes the temporary name is in the same directory as the destination so we never rename between mounts.) link over the old one instead of renaming the old file and renaming it back.
2014-10-20Random in-progress snapshot of sed, not finished yet.Rob Landley
2014-10-20More static analysis fixes from Ashwini Sharma.Rob Landley
2014-10-19nsenter: A tool to use setns(2)Andy Lutomirski
This implements all of the namespace parts of nsenter, but UID and GID switching are missing, as are -r and -w (both because they're not strictly necessary and because the nsenter manpage has an insufficient description of how they work).
2014-10-17unshare: Fix help and option parsingAndy Lutomirski
The help text was inconsistent, and option parsing was completely broken (the options mostly did the wrong thing).
2014-10-18Factor out printf-style escape parsing logic from echo.c.Rob Landley
2014-10-16Even bigger ip.c, from Ashwini Sharma.Rob Landley
2014-10-14Use O_CLOEXEC instead of O_RDONLY to signal loopfiles_rw() to close filehandles.Rob Landley
2014-10-14Fix last night's mv commit (use dest, not source).Rob Landley
2014-10-14Implement mv -f and -i.Rob Landley
2014-10-13Started over on sed (by reading the posix spec).Rob Landley
2014-10-10acpi: implement -ctV, fix recursion, plug a small leakIsaac Dunham
* acpi_callback had blindly assumed that a path of 26 chars or more was the right depth; rely on depth from dirtree root * acpi -c shows cooling device state some backlights are set up so that they will report dimmer as higher, but that's a hardware issue that can't be sanely worked around. * acpi -t shows temperatures this implementation will pick up fan, battery temperatures, etc. (but currently not hwmon-type temperatures, or hdd temps; acpi 1.7 does not measure these either) we handle milli-C (typical) and deci-C (I've seen this on Qualcomm batteries, and not yet anywhere else) we do *not* handle deci-K yet * acpi -V shows all sensors * without saving the result of dirtree_path() to free later, we had a slow leak. all callbacks call this once, so save it in GLOBALS() acpi -t happens to need this anyhow, though using openat()/readall() instead of readfile() would work.
2014-10-09Various bugfixes (mostly resource leaks) from Ashwini Sharma's static ↵Rob Landley
analysis, plus occasional tweak by me while reviewing them.
2014-10-09Fix use-after-free spotted by Ashwini Sharma's static analysis.Rob Landley
We xstrdup() an optargs string to avoid modifying our environment space (because it can change what "ps" shows to other processes), and then parse out colon delimited strings and save them in globals that can later be used in the -v codepath and so on. But those globals _aren't_ strdup (no point) which means we can't free the string while we're still using pointers into the middle of it. So move the free to the end. (I hardly ever test with CFG_TOYBOX_FREE switched on because even nommu doesn't need it.)
2014-10-01Bugfix from Ashwini Sharma: Z timezone required by posix for touch but not ↵Rob Landley
for libc, so we have to implement it here.
2014-09-28Updated version, having complete support for ip _link_, _addr_, _rule_, ↵Ashwini Sharma
_route_ and _tunnel_ options.
2014-09-28Fix two mount bugs: 1) Don't skip a filesystem type when setting up loopback ↵Rob Landley
mount, 2) Don't stop checking filesystem types due to EBUSY, it may mean already mounted by another filesystem type you haven't tried yet.
2014-09-28mount: terminate list so unknown user mount attempts don't endlessly loop, ↵Rob Landley
add better error reporting.
2014-09-27Cleanup pass on groupdel.Rob Landley
2014-09-27Untangle id/groups/logname so single.sh can build each one standalone.Rob Landley
2014-09-26The only illegal characters in a username are ":" (field separator), "\n" ↵Rob Landley
(line separator), and "/" (filename separator). Restricting usernames to the legacy posix character allowed set (for filenames, so the $HOME directory is creatable on VFAT and similar) means you can't have UTF-8 usernames. Linux allows any character but / and NUL in filenames. Since root is creating these entries, we assume root knows what it's doing.
2014-09-26Separate more commands so single.sh can build them standalone.Rob Landley
2014-09-22When killall was invoked without arguments, there appeared segmentation fault?ukasz Szpakowski
2014-09-21Start on ping.c.Rob Landley
2014-09-18Reorder functions to get rid of unnecessary prototypes, and move a global ↵Rob Landley
into GLOBALS.
2014-09-18rm -rf needs to chmod directories to u+rwx, because directories need +x to ↵Isaac Dunham
search. (Fixes messages about not being able to delete directories when running make test).
2014-09-18A few fixes for issues reported in static analysis.Ashwini Sharma
2014-09-17Cleanup pass on README.Rob Landley
Other versions are adding Cached from /proc/meminfo to free buffers/cache (and subtracting it from used), but sysinfo() doesn't provide it. (But it provide "high memory", which hasn't been relevant for almost a decade...) But that's a design change, not a cleanup issue.
2014-09-17Update README for pending directory, include list of code outside of pending ↵Rob Landley
(grandfathered) awaiting cleanup.
2014-09-17Minor cleanup pass on touch.Rob Landley
2014-09-17Cleanup pass on cut, more to do.Rob Landley
Cut predates the "pending" directory, so was checked in as-is. Ashwini Sharma's recent static analysis fixes touched this file, but there's a lot more to do than the static analyzer found.
2014-09-16Cleanup pass on useradd.Rob Landley
2014-09-14Add cpio -pRob Landley
2014-09-14find -xdev should return mount points, just not contents.Rob Landley
2014-09-14Split xpopen() into xpopen_both(), xpopen(), and xrun() depending on whether ↵Rob Landley
we want to redirect both, one, or neither of stdin/stdout.
2014-09-13Bug report from luckboy: rm -f on a broken symlink didn't work because our ↵Rob Landley
"does it exist" test (to avoid errors on rm -f of nonexistent files) said it didn't. The fix: replace the access() with unlink(), which produces the same "does not exist" errno and has the added bonus of acting as a fastpath for rm -f on non-directories. (And since it produces a different error on directories, falls through to the old behavior there.) Most of this commit is comment updates explaining being subtle. :)
2014-09-09Ignore -m option to cpio, it's what we do anyway so it's not an error.Rob Landley
2014-09-08Fix more memory leaks reported by Ashwini Sharma.Rob Landley
2014-09-08Don't close device handle until after calling flush ioctls, reported by ↵Rob Landley
Ashwini Sharma.
2014-09-08Add error test and fix memory leak, reported by Ashwini Sharma.Rob Landley
2014-09-07Promote mount. It's not perfect, but it basically works now.Rob Landley
2014-09-07Fix mount --move bug.Rob Landley
2014-09-07Debugging pass on mount. Not quite done yet, but the basics seem to work now.Rob Landley
2014-09-01Add cp -F to force delete of existing destination files, and make install ↵Rob Landley
command use that. -F is equivalent to the gnu/dammit flag --we-think-long-options-without-short-options-are-a-good-idea
2014-08-31Next mount checkpoint.Rob Landley
Testing level: It compiled. If any portion of this works, I'll be amazed. Still a bunch of todo items (see giant TODO block after globals)