aboutsummaryrefslogtreecommitdiff
path: root/toys/lsb
AgeCommit message (Collapse)Author
2015-02-12Fix bug introduced by last commit (print template instead of toybuf).Rob Landley
Also, xstrdup() the unmodified template because changing the environment string could make the changed version show up in "ps".
2015-02-11Only apply mktemp directory to targets that aren't already paths.Rob Landley
2015-02-10Fix longopts (pointed out by Hyejin Kim).Rob Landley
2015-02-07Shameless meddling.Rob Landley
2015-02-07Use $TMPDIR if set (necessary on Android, where there is no /tmp).Elliot Hughes
Include full template in error messages. Don't report success on failure with -q. Avoid unnecessary allocation. Fix "xxxxxx" versus "XXXXXX" confusion.
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.