aboutsummaryrefslogtreecommitdiff
path: root/toys/lsb
AgeCommit message (Collapse)Author
2014-12-02Don't mount a filesystem over an existing one with the same /dev and /dir.Rob Landley
The OS mostly catches this for block devices, but calling "mount -a" twice shouldn't overmount tmpfs entries with new tmpfs instances. (This needs a test suite entry, and the test suite needs a root context to run in...)
2014-11-25Update dmesg, loosely based on a patch from Elliott Hughes.Rob Landley
Probe the default buffer size, replace the constants with FLAG_x macros, add -r, replace the byte at a time output with a single xwrite(), more comments.
2014-11-19Make md5sum and sha1sum work on big endian systems.0.5.1Rob Landley
2014-11-19probe for getspnam(), forkpty(), utmpx, replace sethostname()Isaac Dunham
Android is missing all of these; we need to probe for some so we have a config symbol to depend on. sethostname() is easily replaced. We got termios.h via pty.h; now it's not included in configure-step tools, so we need termios.h to generate globals.
2014-10-09Various bugfixes (mostly resource leaks) from Ashwini Sharma's static ↵Rob Landley
analysis, plus occasional tweak by me while reviewing them.
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-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-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-07Promote mount. It's not perfect, but it basically works now.Rob Landley
2014-08-24Work in progress snapshot of mount, with fallout to umount. (Not done yet.)Rob Landley
2014-07-05Try to lookup all umounts in /proc/mounts so we can auto-zap loopback devices.Rob Landley
2014-06-07Make md5sum/sha1sum -b flag be "brief" output (just the hash).Rob Landley
(It's not like systems implementing -b binary and -t text still matter.)
2014-05-29Switch mtab_list to doubly linked so we can traverse in either order. ↵Rob Landley
Convert umount and df. Add dlist_terminate() to break lists for traversal in either direction.
2014-05-15Here's a quick cleanup of md5sum. Executive summary: smaller and faster.Daniel Verkamp
On my machine, for a 2.2 GB file of random bytes, the timings with warm cache are: toybox before: 11.4 seconds toybox after: 8.3 seconds GNU md5sum: 3.9 seconds openssl dgst -md5: 3.5 seconds This is clearly better than before (3x openssl), but still slow (2x openssl). I suspect there is more low-hanging fruit to be had by eliminating the memcpy in hash_update (maybe not too much - hash_update accounts for about 4% of total runtime versus 92% for md5_transform according to perf - but this would also help sha1sum). make bloatcheck on x86_64 gcc 4.8.2 -Os: name old new delta ----------------------------------------------------------------------- md5rot 0 64 64 md5_transform 365 223 -142 ----------------------------------------------------------------------- -78 total Rationale for the changes: Move definition of 'rol' up so it can be used in md5_transform. This is purely cosmetic; it expands to exactly the same code. Put rotation counts in a lookup table instead of calculating them on the fly. This is mostly a wash size-wise, +5 bytes total, but worthwhile for readability and speed. Instead of accessing the state array using a rotating index (the variable formerly known as 'a'), access the state with constant offsets and rotate the contents of the array instead. This is the big win - it eliminates all the crazy memory addressing math inside the loop.
2014-04-25Cosmetic tweak: spell out "Linux Standard Base" in menuconfig.Rob Landley
2014-04-09Bugfix: if $TERM and friends aren't set, putenv() got passed a NULL.Rob Landley
2014-01-16Rename xmsprintf() to just xmprintf().Rob Landley
Partly because there's no supplied target string ala sprintf, and partly because I can never remember what order the m and s go in.
2013-12-23Fix some issues raised (albeit indirectly) by Isaac Dunham.Rob Landley
POLL_IN defined as a constant by some libc. Factor out login.c's change_identity() to xwrap.c as xsetuser(). Replace xsetuid() with xsetuser() Put a space between argument globals and non-argument globals. TT starts zeroed, don't need to re-zero entries in it. STDIN_FILENO has been 0 since 1969, even DOS copied that. Just say 0. Added an xchroot() using xchdir() to lib/xwrap.c. Remove endgrent() call until somebody can explain why it was there.
2013-12-22Add -s option, allow zero optargs for -l. (Suggested by Ashwini Sharma.)Rob Landley
2013-12-22Promote su from pending to lsb.Rob Landley
2013-12-19killall: fix return code, improve error reporting, avoid buffer overflow.Rob Landley
2013-12-19Don't permute toys.optargs, cleanup code (xexec()) can free it.Rob Landley
2013-12-16Fix pidof -o bug aborting output, reported by Ashwini Sharma.Rob Landley
2013-11-28Add xgetpwnam() to lib/xwrap.c.Rob Landley
2013-10-16Prep work for useradd by Ashwini Sharma.Rob Landley
2013-09-11Ah, that's why commit 1057 was skipped last pull: it was unfinished. Oops. ↵0.4.6Rob Landley
(Fix it.)
2013-09-03Replace ↵Rob Landley
for_each_pid_with_name_in_array_perform_callback_function_upon_translated_value() with name_to_pid(), comparing absolute paths or just basename() consistently as spotted by Lukasz Skalski, and adjust callers.
2013-09-04First pass at umount, not quite done yet.Rob Landley
2013-08-18Whitespace changes to passwd.Rob Landley
2012-12-23Minor cleanups.Rob Landley
2012-12-16LSB does not allow killall to kill itselfElie De Brauwer
2012-12-16Extend killall with support for -v and -iElie De Brauwer
2012-12-23Whitespace.Rob Landley
2012-12-16Extend seq to support -f (format string) and -s (string separator) as ↵Elie De Brauwer
requested by LSB
2012-12-09Meddle.Rob Landley
The <1 has to come first in the option string, normalize whitespace, sprintf of %d maxes out at -2 billion ala 12 bytes with null terminator so we don't need a length check in a 4k buffer, use the "%*s" feature of printf to prepend whitespace for us, take advantage of c99 defining ! to return 0 or 1.
2012-12-08Adding -s (single shot) and -o (omit pids) options to pidofElie De Brauwer
2012-12-08Add README file to each toys/ directory, teach build infrastructure to get ↵Rob Landley
fancy name from that. This means adding new directories shouldn't require touching build scripts.
2012-11-19Teach option parsing about [groups] of related options.Rob Landley
2012-11-16Add rebound support to intercept error_exit() and longjmp instead.Rob Landley
2012-11-13Reindent to two spaces per level. Remove vi: directives that haven't worked ↵Rob Landley
right in years (ubuntu broke its' vim implementation). Remove trailing spaces. Add/remove blank lines. Re-wordwrap in places. Update documentation with new coding style. The actual code should be the same afterward, this is just cosmetic refactoring.
2012-11-03Make sha1sum and md5sum default to y.Rob Landley
2012-10-23Add md5sum in lsb, combine sha1sum (mostly shared infrastructure). Downside: ↵Rob Landley
current infrastructure can't give them different help text. Hmmm...
2012-10-08New build infrastructure to generate FLAG_ macros and TT alias, #define ↵Rob Landley
FOR_commandname before #including toys.h to trigger it. Rename DEFINE_GLOBALS() to just GLOBALS() (because I could never remember if it was DECLARE_GLOBALS). Convert existing commands to use new infrastructure, and replace optflag constants with FLAG_ macros where appropriate.
2012-10-05Cleanup mknod.Rob Landley
2012-09-09gethostname: Tighten up error messages slightly, switch to default "y".Rob Landley
2012-09-03mktemp broke kernel build, so new rules: if you don't specify anything, ↵Rob Landley
/tmp/tmp.* Specify a file, ./file. Specify -p dir then dir/tmp.*. Specify -p dir and file, dir/file. Also implement -q which lsb wants.
2012-08-25Regularize command headers, update links to standards documents.Rob Landley
2012-08-25Move commands into "posix", "lsb", and "other" menus/directories.Rob Landley