• Home
  • History
  • Annotate
  • only in /external/toybox/toys/pending/
History log of /external/toybox/toys/pending/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
fde08536eaff7f30e320f0b88dd7d6c608265d8c 01-Feb-2018 Rob Landley <rob@landley.net> Ahem, I _said_ basic ping support.
ing.c
a35a9c0a4d17c0ce76c471ce7f27bef8c8a3b5f2 21-Jan-2018 Rob Landley <rob@landley.net> gzip cleanup: fix test_gzip, unify do_gzip/do_gunzip, inline gzerror_msg().
zip.c
b76343c9d970e1ae1935c4f629bd4c24dd531b40 21-Jan-2018 Rob Landley <rob@landley.net> Fix gunzip to past test_gunzip.
zip.c
73690e9ebb24868a996567fdbe523ddc0a3c1415 03-Jan-2018 Rob Landley <rob@landley.net> Cleanup pass on gzip.c.
zip.c
a9e05fe5c0911a8ca5ad0746e54a5c38a8b832a4 01-Jan-2018 Rob Landley <rob@landley.net> Promote logger, and fluff up help text a bit.
ogger.c
359888abf649ed3292210e3518aa669dac1480b9 01-Jan-2018 Rob Landley <rob@landley.net> Cleanup logger.c, and move the facilitynames/prioritynames SYSLOG_NAMES
stuff syslog.h does into lib.c and portability.h
ogger.c
yslogd.c
736afbadbffcb66fc8b589b35526e7eac5048b68 30-Dec-2017 Rob Landley <rob@landley.net> Promote iconv.
conv.c
78c3fcd224c83b454e80a2160ec62e8daf3be5ab 29-Dec-2017 Rob Landley <rob@landley.net> Cleanup iconv.

Implement -c, fix endless loop when illegal char happens with
!outleft (don't need to check errno, just in == toybuf), refill
buffer each time (less efficient handling of illegal chars but never
have to worry about how long constitutes a valid sequence in unknown
encoding).

Fix input longer than 2k (memmove() has src/dest switched, second time through
loop in starts at offset inleft...) Made it start at beginning every time.

Switch iconv_open() error msg to show to/from and errno (rather than
hardwired english text).
conv.c
12a0b40d09546839f67c8c216d0f20a6609716b2 27-Dec-2017 Rob Landley <rob@landley.net> Promote setfattr
etfattr.c
d46e3322d66efef848271becc36ffdf1b34afc87 27-Dec-2017 Rob Landley <rob@landley.net> Minor cleanup on setfattr.c
etfattr.c
4335501bf3269ac86b7bfdf236aa763d380327e2 24-Dec-2017 Elliott Hughes <enh@google.com> Add fmt.

A very simple implementation of fmt, good enough for my daily use of !!fmt
in vi to reflow checkin comments like this.
mt.c
f1d364812e4e9c111d2d77026487b20a9081179d 10-Dec-2017 Rob Landley <rob@landley.net> Cleanup pass on stty: collate do_stty() calls for future inlining,
collapse flag arrays to fewer lines, factor out xtcgetattr(),
strip curly brackets around single lines, don't have a separate error
message for tcsetattr() return code if more thorough check is on next line,
take advantage of O_RDONLY being zero, document -F.
tty.c
bed1c78ac0c0d105b373259df3e65681fcc0d680 04-Dec-2017 Elliott Hughes <enh@google.com> Use NULL rather than 0 in vargs.

Top bits count too!
tty.c
7ac95e1aacc6a93fd14f8c3a7764fff2537647de 03-Dec-2017 Rob Landley <rob@landley.net> Commands in pending should default n.
tty.c
ef213b3d92febeb92e530f708e1647ca5459403c 02-Dec-2017 Elliott Hughes <enh@google.com> Add stty(1).

Full POSIX stty with Linux extensions. Output and behavior match coreutils
8.26 as far as I can tell. For some reason busybox 1.22 stty always
shows all the special characters, even when they match "sane". I've
matched coreutils, since "shows differences from sane" is easy to describe
and obviously useful.

Flags in the various arrays are not in the order they're introduced in
POSIX or in the Linux header file: they're in the order that they're
output by coreutils' stty.

The -g output matches coreutils and busybox.

I implemented iuclc, xcase, and olcuc even though they've been removed
from POSIX because the others implement them, and "man stty" defines "raw"
and "sane" in terms of them (where POSIX doesn't define "sane" in any
useful sense).

This builds fine against glibc 2.24, and as far as I can tell all the
constants used were in Linux 2.6 so I'm assuming that there shouldn't
be any #ifdef nonsense needed for any reasonable vintage of C library.
tty.c
ebceb16fd2992f76a1b4b42eec2b6d0d380935ac 03-Dec-2017 Rob Landley <rob@landley.net> Gaƫl PORTAY wants mdev to work when Linux has the block layer configured out.
dev.c
709a44246456a49c06d73dfbe84daa5b4ba5fec5 22-Aug-2017 Elliott Hughes <enh@google.com> Fix iconv build and add trivial test.
conv.c
138915a0d75c9b8c8d5e0b0d168091277b68c350 18-Aug-2017 Rob Landley <rob@landley.net> lsof cleanup.
sof.c
e3993eb9ed8e2d5015702400bc2ce9dd6ffa4f2a 17-Jul-2017 Rob Landley <rob@landley.net> Redo ping plumbing. Actual ping part isn't there yet because kernel weirdness.
ing.c
92b6026fa55eb1a6d76dfa549e173fc7b863dda5 17-Jul-2017 Rob Landley <rob@landley.net> Split out xgetaddrinfo() from xconnect()
elnet.c
d1e85b9c4688c52a5c97dfe097fb932f0c7c3bbd 09-Jul-2017 Rob Landley <rob@landley.net> dd cleanup: binary search is overkill, eliminate struct pair,
simplify strstarteq, use local variable "conv" instead of toys.optargs.
d.c
352efdf18d98be859d19bbae2cd2732d2b7f01cf 07-Jul-2017 Elliott Hughes <enh@google.com> Fix -Wformat compiler warning in expr.c.

Android forces -Wformat on for all source.

toys/pending/expr.c:116:28: warning: field precision should have type 'int',
but argument has type 'long' [-Wformat]
ret->s = xmprintf("%.*s", m[1].rm_eo-m[1].rm_so, target+m[1].rm_so);
~~^~ ~~~~~~~~~~~~~~~~~~~~~
xpr.c
a0e2e7d3057a5b7344c13e2349d683a0ca3d3899 07-Jul-2017 Rob Landley <rob@landley.net> Make dd use atolx_range(), and teach atolx_range() about "w" suffix (word, *2).
d.c
1f33eeb683e729681419c29ac831c6e71e6774fa 09-Jun-2017 Rob Landley <rob@landley.net> Promote dmesg back to lsb.
mesg.c
6fbe288e988f87b23b610da8c5046910b6171eb9 09-Jun-2017 Rob Landley <rob@landley.net> Cleanup dmesg (as posted to the list).
mesg.c
eb7e847adcecf11cd8fd99077ba3a582abe60146 26-May-2017 Elliott Hughes <enh@google.com> Be more consistent about periods in help text.
etfattr.c
logd.c
ast.c
dev.c
etfattr.c
h.c
yslogd.c
12f0744f340746b3a1c1accfdf993d6548f33e56 24-May-2017 Elliott Hughes <enh@google.com> Add and use xmmap.

Everyone forgets that mmap returns MAP_FAILED rather than NULL on failure.
Every use of mmap in toybox was either doing the wrong check, or no check
at all (including the two I personally added).
dev.c
5a159cceb35fe08e444bd5a1771f8059888b03ff 23-May-2017 Rob Landley <rob@landley.net> Add minof/maxof macros that autodetect type. Make xzcat use them.
zcat.c
00e6da98f31cce57fbbd768fc78649442d7ba494 21-May-2017 Rob Landley <rob@landley.net> Promote chrt
hrt.c
f86f2f4e9a20d235b24ea86e4dddd0485165306f 21-May-2017 Rob Landley <rob@landley.net> Cleaup chrt
hrt.c
83b3531ec2876fa76817501bf1a38d4438ac39e6 13-May-2017 Elliott Hughes <enh@google.com> Add bzip2 support to tar.

Also trivial cleanup of pipe -> xpipe.

Bug: http://b/38215123
ar.c
31b18720cc8aea4e531bcff4fc5a719b42a5d24b 23-Sep-2016 Mike Moreton <mike.moreton@frontier-silicon.com> Fix error in writing output that was causing zcat to always fail.
ompress.c
de3e5ea4fe9c42f27d442aa87b7d16e090e72485 27-Apr-2017 Elliott Hughes <enh@google.com> Implement zlib-based gzip/gunzip/zcat.
ompress.c
zip.c
42704b702d3d479f96074501ea574fa7e2694855 05-Apr-2017 Elliott Hughes <enh@google.com> Make fdisk buildable.

The argument to help_exit is a char*, not a FILE*.
disk.c
385a237e40f6d9dab2829611d124a09ee80c5e17 25-Mar-2017 Elliott Hughes <enh@google.com> Implement dmesg -T.

Also refactor so that legacy mode gets all the new functionality too, and
add -S to make it easier to test legacy mode on 3.5 or newer kernels (at least
on the host; on Android the syslog(2) system call is no longer allowed).

Bug: http://b/36090178
mesg.c
fd866b2f058294cf51a6987a1786ff1bd9e6b1ea 21-Feb-2017 Rob Landley <rob@landley.net> Declaring todo bankruptcy, dmesg goes back into pending until I get a chance
to unify the two codepaths in Elliott's rewrite.
mesg.c
f3c44e45dcae31a65e58d1a5fd2c5bfc5732534d 29-Jan-2017 Rob Landley <rob@landley.net> modprobe: Small cleanup pass, described on the list.
odprobe.c
6a003c837a9799df9435db6e8002b5f0a4eb3e88 26-Jan-2017 Steve Muckle <smuckle@google.com> modprobe: use finit_module when possible

The finit_module() system call, introduced in Linux 3.8, reads the
module from a supplied file descriptor. This allows the kernel to do
security checks based on the file's location.
odprobe.c
066f230dd89952671a5faae172e6c73a9af08512 09-Jan-2017 Steve Muckle <smuckle@google.com> modprobe: add -d option to specify module directory path(s)

While most systems have their kernel modules, modules.dep etc located at
/lib/modules/`uname -r` this is not always the case.

The -d option may be used to specify a nonstandard path for these files.
It may be used more than once to specify multiple directories where
these files may be found.
odprobe.c
4d8ffe62d06b1f7472e3dc0c63344311af5d68d0 25-Jan-2017 Rob Landley <rob@landley.net> Promote microcom to net.
icrocom.c
cd2063dfba6f0e95bdbc87de42923c387ead08c4 25-Jan-2017 Rob Landley <rob@landley.net> Switch escape charcter to ^] (ascii 29, doesn't conflict with emacs or joe).
Recognize full range of linux serial speeds (only error cfsetspeed returns
is invalid speed value).
icrocom.c
65fd7653b9f4de67a5cba2715e2226caad8b69aa 15-Jan-2017 Elliott Hughes <enh@google.com> Fix microcom command-line help and -X.
icrocom.c
12fcf08b5c96238530148d7d9975642b2299e39a 14-Jan-2017 Elliott Hughes <enh@google.com> Add "microcom" to pending.

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.
icrocom.c
ae7ea62eea205d2816e09070b034a588dbaaaa6a 14-Jan-2017 Rob Landley <rob@landley.net> Quick and dirty fix for CVE-2016-6321 but seriously this is in pending
for a reason and I need to completely rewrite it.
ar.c
f11c555dd84fdb3a3f33598c453061fdea7ee54e 04-Jan-2017 Rob Landley <rob@landley.net> First stab at ftpget/ftpput. (Documents a lot of options other than basic
upload/download that aren't implemented yet.)
tpget.c
8ddfb71b17369bcd3bd247a76f0a2c4cf301016b 29-Dec-2016 Elliott Hughes <enh@google.com> Stop lying to the compiler in modprobe's read_line.

sizeof(int) != sizeof(size_t) for LP64, leading to hilarity^Wcrashes.
odprobe.c
4582497e8839d7a3d73aa71f76c2aae915202d41 24-Dec-2016 Rob Landley <rob@landley.net> Cleanup: Have get_hostname() handle its own lookup failures. Inline is_prefix().
Kernel can handle 64k maximum segment size.
oute.c
382057f588fbf2c2f7950b85dd317721b8d04c07 21-Nov-2016 Rob Landley <rob@landley.net> Have dirtree_notdotdot() pass through !node->parent so . and .. on the command
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.)
iff.c
ar.c
9b4a67545e11975068d6e16c6872d54e0473e715 19-Nov-2016 Rob Landley <rob@landley.net> Bug report from Justin Cormack, tar was producing a warning to stdout that
screwed up "tar c" to stdout.
ar.c
3c399afd39730640be7d939928127dd39d74e8a9 21-Oct-2016 Rob Landley <rob@landley.net> Nothing in pending should "default y".
hrt.c
c1a1c952628532ac15491a356ebff44d7a7300b3 21-Oct-2016 Rob Landley <rob@landley.net> Nothing in pending should "default y".
etfattr.c
5913da6ea5c15960cef54f2c7f080123330aa72d 21-Oct-2016 Rob Landley <rob@landley.net> Close to cutting a release and I don't want to have setfattr in defconfig
without getfattr, so I'm putting it back in pending for now.
etfattr.c
5c5dc394f6e3de00c26d971fb8d3bc5cc33226cf 03-Oct-2016 Rob Landley <rob@landley.net> David Hedges pointed out that interface names can be longer than 10 chars.
oute.c
af4be15b84ed8cf80d169d02949bdf3b2ea63cd5 26-Sep-2016 Lipi C.H. Lee <lipisoft@gmail.com> Changed xopen_stdin() to xopen_stdio().
ulogin.c
a87b65c371aadee6a239f231e3d9ed1b390c630b 24-Aug-2016 Elliott Hughes <enh@google.com> Add chrt to pending.

Requested by a Google team whose product is based on Android.
hrt.c
74193471881b86f743cd33014236c54fe2cc4a2b 22-Aug-2016 Rob Landley <rob@landley.net> A round of dd cleanup.
d.c
bfbf1a89be7bf25b836a8a2333207f7065f7935b 21-Aug-2016 Rob Landley <rob@landley.net> Promote setfattr
etfattr.c
04f0f34832e6892e9cb212b232891bfa15b7ec0c 21-Aug-2016 Rob Landley <rob@landley.net> Clean up setfattr.
etfattr.c
5b360d8da327b38daf0c5b8874fbe55406b70ced 07-Aug-2016 Rob Landley <rob@landley.net> Inline setup_inout(), test ftruncate() return value, move gettimeofday() before
seek so seek time is included in total.
d.c
027a73a903af306449710ce12bc09e0e3550c6c9 04-Aug-2016 Rob Landley <rob@landley.net> Make xopen() skip stdin/stdout/stderr, add xopen_stdio() if you want stdout,
add xopenro() that takes one argument and understands "-" means stdin,
and switch over lots of users.
rp.c
rond.c
rontab.c
d.c
hcp.c
umpleases.c
etty.c
logd.c
ast.c
dev.c
odprobe.c
penvt.c
ulogin.c
ftp.c
bd471f67cc6eff4abf47f027edbace707065bc6b 17-Jul-2016 Elliott Hughes <enh@google.com> Add getfattr(1) and setfattr(1).

Plus basic tests.
etfattr.c
etfattr.c
d5088a059649daf34e729995bb3daa3eb64fa432 08-Jul-2016 Elliott Hughes <enh@google.com> dd improvements.

Support hex (requested by users).

Support status=noxfer and status=none (requested by users).

Fix status output.

Clarify large numbers in --help output.

Use O_TRUNC rather than ftruncate unless we're also seeking.

New tests.

Also partial cleanup (reuse of existing code, removal of non-GLOBALS globals,
and merge dd_main and do_dd).
d.c
4e21ddd440f5d1381c96ae6465a12888dcb23446 04-Jul-2016 Rob Landley <rob@landley.net> Promote file.
ile.c
c5e7ee27f606ed0bdb20d54e9de1a4adb56fc5d3 02-Jul-2016 Elliott Hughes <enh@google.com> Improve file(1)'s ELF support.

Read any PT_NOTE sections to look for NT_GNU_BUILD_ID or Android API
level notes. I deliberately didn't NT_GNU_ABI_TAG because it's noisy --
every Linux executable has one -- but not something most command-line
users will have any use for. (And you can ask readelf(1) anyway.)

Also read the section headers to implement "stripped"/"not stripped".

This patch removes "uses %d libs" because it was actually just counting
dynamic sections in the ELF file, and there are only 0 or 1 of those in
a valid ELF flie. (If you really want this functionality, you have to
*parse* the dynamic section looking for the DT_NEEDED entries. But that's
more of a job for readelf(1) than file(1).)
ile.c
746e565c097ed311ebb65842ac8a6527535993a7 03-Jul-2016 Rob Landley <rob@landley.net> Promote netsat, and move ifconfig, netcat, and rfkill to new toys/net directory.
etstat.c
0713e4b89f7c7339e060d54db1b877b709d985a1 03-Jul-2016 Rob Landley <rob@landley.net> More netstat cleanup (inline display_data)
etstat.c
2f77b006fef4f93ccc5ef5caf7390f4edf62b9de 02-Jul-2016 Rob Landley <rob@landley.net> Next round of netstat cleanup.
etstat.c
848042af0144629fda0bea8b82d86e850cf29d5e 19-Jun-2016 Rob Landley <rob@landley.net> Next round of diffstat cleanup.
etstat.c
878ff2f3d7a6a717a76ecc32904bc24bc8720245 12-Jun-2016 Rob Landley <rob@landley.net> Lots of netstat cleanup, including a rewrite of the unix domain socket output.
(Ubuntu's netstat is left justifying the inode field, and they're wrong.)
etstat.c
001e4fb62baee6770c3b076ece56446f8d2550de 12-Jun-2016 Elliott Hughes <enh@google.com> Finish switching to dev_major/dev_minor.

7ca5dc4232b9ac5ee5cd25c8b5b33a58904cd251 didn't switch all callers over
to the new functions.
sof.c
4b925a785bd9712f9a30a8b30497e6966993ae8e 11-Jun-2016 Rob Landley <rob@landley.net> Missing parentheses. (Oops.)
etstat.c
5cf208c2ec9639bbfba32a1b702d004d7a45f954 10-Jun-2016 Elliott Hughes <enh@google.com> Fix trailing whitespace bug in netstat.

Spotted while trying to diff netstat -nt against toybox netstat -nt.
etstat.c
2eefc17894718cf963b02b0d690e2991e10515c8 11-Jun-2016 Rob Landley <rob@landley.net> xreadlink() only exits for memory allocation, it returns 0 if file not found.

(I forget who reported this bug, wasn't me.)
etstat.c
072ea41682be093fd5fb25e7d6669a65a76144e6 22-Apr-2016 Elliott Hughes <enh@google.com> Fix more to not append an extra newline.

More's sigatexit handler needs to distinguish between normal exit and exit
due to receipt of a signal.

Change tty_sigreset to look at the signal number too, so that pressing 'q'
to exit top doesn't cause its exit status to be 128.
ore.c
63eae537018a758b29f6c9bc39e3d36be1710179 22-Apr-2016 Elliott Hughes <enh@google.com> Fix more to a non-tty.

And add a test.
ore.c
d85d4e847b1eb347b17c9f38afb77d3d676b3d09 17-Apr-2016 Rob Landley <rob@landley.net> Dust off toysh, remove ancient config debris, add start of prompt logic.
h.c
433296f8802ccf82eb32da3bfa002df2a8b5095a 20-Mar-2016 Andy Chu <andychu@google.com> Fix a buffer overflow in diff -r.

We were doing two 32-byte memset()s instead of two 16-byte memset()s.
'dir' referred to the instance (array of 2) and not the struct type.

Add some test coverage for diff, including a case that hit this bug.

The bug was found by running cp.test under AddressSanitizer, since it
happens to use diff.
iff.c
1c028ca33dc059a9d8f18daafcd77b5950268f41 09-Apr-2016 Rob Landley <rob@landley.net> Redefining basename_r to mean something random seems popular (bionic and freebsd
both did it) so use getbasename instead.
odprobe.c
etstat.c
6aba814b28cddd45c7301c39dccd65b316eb5c82 21-Mar-2016 Rob Landley <rob@landley.net> Posix requires "" to be false, and 00 should be false, and -0 should be false.
Fix memory leaks in regex. Simplify regex check (if we matched, subexpression
had to match). Don't exit() from a command, set exitval and return.
xpr.c
4de04e83d7ff621062b8b5456a14f2f313a2639c 19-Mar-2016 Elliott Hughes <enh@google.com> Make lsof 10x faster by caching /proc/net socket info.

I deliberately didn't do this first time round because for me our lsof
is already 10x faster than traditional lsof, and caching means we potentially
give less information about a socket that's created while we're running.
It turns out that traditional lsof caches anyway, so I guess nobody cares.

This also fixes a mistake where lsof used CFG_FREE instead of CFG_TOYBOX_FREE.
sof.c
0ec95b7c2e20cd7be33bae6adba20bf89c5f3e86 17-Mar-2016 Rob Landley <rob@landley.net> expr cleanup: simplify get_str() and free returned allocations.
xpr.c
438fa71547d791c5bee3201b42b16415627cdb45 17-Mar-2016 Rob Landley <rob@landley.net> expr cleanup: traverse optargs with tok instead of incrementing optargs and
copying itinto a second variable. Also add error message for empty ( )
xpr.c
1af3bad8b63b2b6886123d9e681782781a62efca 16-Mar-2016 Rob Landley <rob@landley.net> Move whitespace and curly brackets around, move reference URLs to top of file,
eliminate syntax_error() function (just call error_exit() directly),
eliminate advance() wrapper, pipe expected error messages in test to /dev/null
xpr.c
e6912f90d663120b32b894d1f10a0d8cd530e2e7 15-Mar-2016 Andy Chu <andychu@google.com> Fix type coercion bugs in expr.

All tests pass now; this fixes the 2 remaining failures, including a
segfault.

The structure of the code has changed a lot -- instead of having a tiny
function per operator, we have eval_op() which does common type coercion
and then evaluates the operator. I tried writing it a couple different
ways, and this was the cleanest.

The OPS table now contains the operator string, precedence level,
signature for type coercion, and operator ID.
xpr.c
14c91c1ebd68daacce9794cf8894dcfea68efd7b 15-Mar-2016 Andy Chu <andychu@google.com> Fix the operator precedence in expr.

expr now uses the precedence table specified by POSIX, implemented using
the "precedence climbing" algorithm. See the references at the top of
eval_expr().

This fixes 3 of 4 failing tests.

I also added more tests for correct behavior and for syntax errors.
This includes a new test exposing a segfault, related to type coercion.
xpr.c
1fd80657b06e016217efb7068b08fa9e4aa5650d 08-Mar-2016 Rob Landley <rob@landley.net> Add depends on TOYBOX_FORK for various commands that need nommu conversion.
(This should fix allyesconfig.)
ootchartd.c
rontab.c
penvt.c
cpsvd.c
8d95074b7d034188af8542aaea0306d3670d71be 07-Mar-2016 Rob Landley <rob@landley.net> Cleanup pass on the dirtree infrastructure, in preparation for making rm -r
handle infinite depth. Fix docs, tweak dirtree_handle_callback() semantics,
remove dirtree_start() and don't export dirtree_handle_callback(), instead
offer dirtree_flagread(). (dirtree_read() is a wrapper around dirtree_flagread
passing 0 for flags.)
iff.c
ar.c
21701f1b61f1d92db05062be4ef6fd5989cacba7 06-Mar-2016 Lipi Lee <lipisoft@gmail.com> wget: clean up

- shorten error messages
- replace mk_rq with sprintf
- remove struct and defines
- change unsigned int to unsigned
get.c
2e4aff2fd31fb9d949d6c47da1e46b97ecc23d24 06-Mar-2016 Rob Landley <rob@landley.net> Another pass at file.c: move posix-required "executable" to front of output,
next few fields in the order the other implementation outputs, fewer commas,
fix a big where big endian executable type wasn't detected right,
and fix the filehandle leak.
ile.c
ffc6fbbde3eeca29d1eb3470610eb7ae5b9025f1 01-Mar-2016 Elliott Hughes <enh@google.com> Fix file for Java class files, improve script detection, and add tests.
ile.c
5231bb553d5e2c04818f6603f30a36653d914881 03-Mar-2016 Rob Landley <rob@landley.net> More minor cleanup (inline a function, simplify name of another).
sof.c
53dc99a76e73ff086db19e7da266c3b571b3cf87 03-Mar-2016 Rob Landley <rob@landley.net> Minor cleanup.
ore.c
7ca5dc4232b9ac5ee5cd25c8b5b33a58904cd251 02-Mar-2016 Rob Landley <rob@landley.net> For years the man pages have said to #include <sys/types.h> to get
major/minor/makedev, but glibc has vowed to break existing programs
(https://sourceware.org/ml/libc-alpha/2015-11/msg00253.html)
and replace it with _another_ non-standard header (not in posix or lsb),
so let's just add functions to lib/ that do the transform ourselves.
dev.c
ar.c
789d2c1234cf7805d3d6df846b491a112ae93bc7 25-Feb-2016 George Burgess IV <gbiv@google.com> Use the correct types for recvfrom.

The clang FORITFY implementation doesn't like pointer signedness mismatch.
"What mismatch?", you say. "The historical bug in LP32 Android that left
it with a signed socklen_t".
raceroute.c
c1161cf09f5d9646b0e0c6ec504ed26a0623e691 01-Mar-2016 Rob Landley <rob@landley.net> do_regular_file() prints output line, don't fall through to print default.
ile.c
1b3fd4a5dc3fb62a96fb3127070c5aca7cc2ee3e 29-Feb-2016 Rob Landley <rob@landley.net> Fix inverted test.
ile.c
830f2561757083ec6d34dc92c675447e91c9ed81 29-Feb-2016 Isaac Dunham <ibid.ag@gmail.com> pending/file: add cpio, tar, zip formats.
ile.c
4b141e67eefc396687f22f8c136267c0f8081e05 29-Feb-2016 Rob Landley <rob@landley.net> Fix a typo from last time, and Isaac Dunham's todo list:

- per POSIX, 'cannot open' must be in the 'type' string if open() fails
(both EPERM and ENOENT); we only do that if open() succeeds and fstat(fd)
fails.
- symlink detection (as per POSIX) won't work: opening them O_RDONLY
results in following the link, then we fstat() the fd.
- file 'FIFO' causes a hang; open() won't return till there's a writer.
ile.c
44c7958214e1690e820aaddf808267e0bf78df46 29-Feb-2016 Rob Landley <rob@landley.net> Second pass at the ELF type table.
ile.c
5e3d1e35997315df044af3de0633b8298ad63988 22-Feb-2016 Lipi C. H. Lee <lipisoft@gmail.com> implement simple 'wget' and port name can be specified in URL if default
port 80 is not used.
get.c
36ffaeee6076709f4b68d83ef6cddc3eb39db3a7 21-Feb-2016 Rob Landley <rob@landley.net> lsof cleanup

Accept multiple -p, inline filter_matches, convert misleading "char* a, b" to
"char *a, b", use readfile() to read a file, use DIRTREE_SHUTUP, don't need
{ } around a single line, don't modify command line environment space
(which changes what ps/pgrep sees).
sof.c
cc4a1f4d520f090bd563647df2614d09b66bd54a 17-Feb-2016 Rob Landley <rob@landley.net> Add dynamic/static checking to file (printing dynamic linker if found).
ile.c
0332b60f62d71da61634cc69416129dfc64dced8 15-Feb-2016 Rob Landley <rob@landley.net> Cleanup pass on file.c, and add detection of different ELF architectures.
ile.c
9502a77ea0a16c395407f31af0bbb0afd0680adb 13-Feb-2016 Elliott Hughes <enh@google.com> Implement file(1).

Unlike the POSIX file(1), there's no magic file here, just hard-coded
common (non-obsolete) file formats. Personally most of my use of file(1)
is as a one-line readelf(1) summarizer, so although I assume a full POSIX
file(1) is out of scope (because just the database would likely be larger
than all the rest of toybox), a subset that only supports in-use file types
actually covers most of the use cases I encounter personally.

Also fix peek_be/peek_le.
ile.c
28711d308d9d70801ac0c9552df834ddafff2385 10-Feb-2016 Tom Marshall <tdm@cyngn.com> toybox: tar: Fix support for long names

Pathnames may be longer than the name field in the header, so use
strncpy() instead of xstrncpy() to avoid bailing out.

Also add unit tests to ensure proper handling of short and long
pathnames.

Change-Id: Id025891993746889564b479e5185cf9721b54a55
ar.c
85f54d8e836ac80264111df7d87db6c15eaca558 08-Feb-2016 Rob Landley <rob@landley.net> Add xpipe() to lib.
yslogd.c
ar.c
58e4828e62ba3455f45d76211f697d6c4e1cbd36 22-Jan-2016 Elliott Hughes <enh@google.com> Fix compiler warnings in traceroute.

If we're fixing warnings in pending...
raceroute.c
5c725e9f4878cd095b19f5a3e910f3e994785a40 21-Jan-2016 Lipi Lee <lipisoft@gmail.com> I cleaned up the code in 'netstat.c' as belows.

- Adjust to 80 columns
- remove a useless function(strchr_nul), variable, type casting and
compile warnings(fgets)
- clean up netstat command option condition
- change useless double pointer to single point and dynamic memory
allocation to static one
- fix a ambiguous return type and typo
etstat.c
941f9d6cc09adaa0155ee71ac34e6f9b773a90f1 20-Jan-2016 Rob Landley <rob@landley.net> Add basic top support to ps.c, delete toys/pending/top.c.

While I'm there, pack the ps help text, break out TOP_COMMON (todo: update
config2help to collate that properly), add -o CPU showing which processor
this pid is running on, implement -o C (it's %cpu without the fractional
part), add -o %MEM, fix header padding.
op.c
5493916370c74944cc796cc91d058fb4ccabe140 16-Jan-2016 Rob Landley <rob@landley.net> Move create_uuid() to lib and xpoll() to lib/net.c.
ke2fs.c
7d4d0421b8e57bd6d9a9cb3dee04130b43bc53a0 15-Jan-2016 Rob Landley <rob@landley.net> Implement most of pgrep and pkill.

Needs testing and a few more options connected up.
grep.c
e32e802240c5b3803b9769948dc7a18b3fc1630c 24-Dec-2015 Rob Landley <rob@landley.net> Factor out draw_str() and friends.
i.c
146d219e117b56cc6f7e77c1083e91a961b906b5 20-Dec-2015 Rob Landley <rob@landley.net> Redo linestack to handle embedded NULs.
i.c
b64abbc1c637f8b79a4a5f1382ae7d6f4bcc0d4d 19-Dec-2015 Rob Landley <rob@landley.net> Start of vi.
i.c
6fd77eab77ba51579eaece4d3e12b5b890638124 08-Nov-2015 Rob Landley <rob@landley.net> Route cleanup: whitespace and curly bracket changes.
oute.c
8a1509d0a6e7aedc1c3f6f13f0d7b2e0d83d6e2d 08-Nov-2015 Rob Landley <rob@landley.net> Bugfix for route flags.
oute.c
f0ddca8f88152f25f5aefba7483c389e970c5155 08-Nov-2015 Rob Landley <rob@landley.net> Remove TEST_ARGV() and logic to adjust irtt by "clock ticks/100" when clock ticks _is_ 100...
oute.c
d18c10977e29ea1c1641909e20aeced529cf4556 08-Nov-2015 Rob Landley <rob@landley.net> More route cleanup.
oute.c
6256a5c8b9d7db4bcbb5b255d33354aecd95d9fe 07-Nov-2015 Rob Landley <rob@landley.net> Let's start the route cleanup.

Collate some repeated increments, remove some useless coments.
oute.c
547c9167565cf8a2bba8bd79850889101866814a 04-Nov-2015 Rob Landley <rob@landley.net> dhcp leanup: remove flag_get() and flag_chk()
hcp.c
hcp6.c
hcpd.c
54a13f9ef4380501d3b12bb1f04408f5607d46ee 04-Nov-2015 Rob Landley <rob@landley.net> New dhcp6 command from Sameer Pradhan.
hcp6.c
11d6079ed3cb067dc66a795a1c7565c13afd5a00 31-Oct-2015 Elliott Hughes <enh@google.com> Add ps -Z.

As with ls, it doesn't seem like -Z should be guarded behind LSM
availability. On a non-SELinux system, the label is always "unconfined".
sof.c
9bdd8fd4549e8392b5bec0298e9978436392e342 29-Oct-2015 Rob Landley <rob@landley.net> Promote ps to posix.
s.c
75df3e5631422ffc3de0d31e04aa9be343190f3e 29-Oct-2015 Rob Landley <rob@landley.net> Free more stuff in debug cleanup.

Tempted to convert the struct arg_list and ptr_len stuff to arrays and
make the parsing table driven, but there's enough direct usages of each
field it's not a net win.
s.c
7ab0e6ed60c10e78a536357832ef3859489f5083 29-Oct-2015 Rob Landley <rob@landley.net> Implement -suUgG and -o majfl,minfl, move uid/ruid/gid/rgid into slots[31-34]
and vmlck into slot[18], pass error message to comma_args(), collate -stuUgG
callbacks into parse_rest().
s.c
5535a2695642dcf54051af2b654ab37a89ece72f 25-Oct-2015 Rob Landley <rob@landley.net> Add comma_args() and factor out parse_o(), parse_t(), and parse_p() to use it.
Fix FLAG_w.
s.c
9e5dd1474d1a194af091c0576f57d95e4ad31a00 25-Oct-2015 Rob Landley <rob@landley.net> Factor out parse_o() and make -l -f and default output work on strings
rather than bitfields.
s.c
a58bab54f60fb8268688275395780a274bed0f36 25-Oct-2015 Rob Landley <rob@landley.net> More ps work, and fill out remaining help text.
Fix more l/r justification, implement uname vsz vsize and stat.
s.c
aff606920612ceedc6fa0716cdfcea0571d56987 23-Oct-2015 Elliott Hughes <enh@google.com> Fix netstat build warnings.

Fixes two instances of "warning: use of logical '&&' with constant operand".

Change-Id: I2bb1ba4e389f8a9e54af8ee3ab23d8849fc329f0
etstat.c
71d87c9ecff852dbc115135c8ad38d40169f2726 23-Oct-2015 Rob Landley <rob@landley.net> More ps work: move l/r justification to widths[], add RUID/RGID, implement PGID,
plus tty detection fix from Elliott Hughes.
s.c
c9e2a656c7305fac00a5a8c09201e1e39fea6a1b 23-Oct-2015 Yeongdeok Suh <yduck.suh@samsung.com> fix dhcpd warning
hcpd.c
1509170ac2c0bf408501f78fa6079a6a6514c04f 21-Oct-2015 Rob Landley <rob@landley.net> Make ps.c whitespace consistent.
(Assignment has spaces around operator, comparison doesn't.)
s.c
bfee4b2325efd7c21c2e5ec02193ec2e97cca0ff 21-Oct-2015 Rob Landley <rob@landley.net> ps: implement -t, remove leading 0 from ETIME days, implement -o GROUP,GID,PCPU
s.c
196e8c0e34e2ccad657f331be9f07e784a041589 18-Oct-2015 Rob Landley <rob@landley.net> More ps work, tested up through etime now.
s.c
0719c9743b761a8c348079e6d28ac839e9b82019 17-Oct-2015 Rob Landley <rob@landley.net> Fix ps display padding (truncation) and adjust -o pri by one.
s.c
04fccba19fc8aed46d756edba43859e0b3893ff0 15-Oct-2015 Rob Landley <rob@landley.net> More ps work, implement -p, correct several -o fields and general alignment.
s.c
3cdde514679f3de2e0e1b882b8ece2391a50b7ce 12-Oct-2015 Rob Landley <rob@landley.net> Cleanup pass on pgrep: remove flag_twiddle macros, use 0 constants,
unify some TT.signame tests checking constant value variable initialized to.
grep.c
8b94351f089f8e6ef0a4a12092bfe2f04ffd960a 06-Oct-2015 Elliott Hughes <enh@google.com> Decode netlink sockets in lsof.

Refactor the /proc/net parsing so this only adds 7 lines overall.

Also clear the DEVICE field for sockets and fix alignment for long
usernames (until someone implements the two-pass output that measures
columns).
sof.c
9cc78770dc593b58e2ac0b24c42c3948c09d5eec 04-Oct-2015 Rob Landley <rob@landley.net> Minor cleanup and add "MODALIAS" handler (suggested by Isaac Dunham).
dev.c
73acb3a0f4ea7204f149c964adcd8938e09cb9f4 03-Oct-2015 Rob Landley <rob@landley.net> Back to chipping away at ps...
s.c
3d9dce3b523f5e4a01189d4735c02a9b33d8c7ab 29-Sep-2015 Rob Landley <rob@landley.net> xvfork went away.
h.c
7d6af77804adc069a83e8566250f868a6cb9786e 29-Sep-2015 Rob Landley <rob@landley.net> Make defconfig build for nommu.

Adds XVFORK() macro, teaches xpopen_both() to call /proc/self/exe with NULL
argv (and converts cpio -p to use that), adds TOYBOX_FORK guards to some
unconverted commands.
rping.c
847bcb63b541e4fbbfa3dccfe3022745cbe9a06a 24-Sep-2015 Rob Landley <rob@landley.net> Add xvfork() as a static inline and use it from various places.

Note: vfork(), like fork(), can return -1 if too many processes, and
we should notice and fail loudly.
h.c
e5354ca12a232b3f97726214254a868771cb70d1 11-Sep-2015 Rob Landley <rob@landley.net> Replace toys.exithelp with help_exit() in lib.
rctl.c
rontab.c
d.c
disk.c
roupadd.c
p.c
pcrm.c
pcs.c
odprobe.c
grep.c
oute.c
ftpd.c
seradd.c
d067571abb2b7934f3350c90ca891beb987c68fd 09-Sep-2015 Rob Landley <rob@landley.net> Squish more warnings in pending.
seradd.c
0c276c21d205cfc3d8e45581d28f02431d2eef85 09-Sep-2015 Elliott Hughes <enh@google.com> Fix netstat -e.

The -e flag should add "user" and "inode" columns to the TCP output.

Also truncate IP addresses in non-wide (no -W) mode.

This also removes a bit more of the duplication, though there's still
plenty left in this file!
etstat.c
b36123164057c555a1d0769ca26089cd6e002040 09-Sep-2015 Elliott Hughes <enh@google.com> i already did -l and -t, the positive side of -p, plus name filtering...
sof.c
fe998fe2bb75a73ba58a7c048f50f45ee76a0531 08-Sep-2015 Elliott Hughes <enh@google.com> Fix netstat -p.

netstat -p was failing for any cmdline longer than 21 characters. (A
typical Chrome render process has about half a kilobyte of cmdline.)

There's still a lot of cleanup to be done later, but this is enough to
fix -p and remove a fair amount of unnecessary custom code into the
bargain.
etstat.c
104fbaaceaf4001d8c9c998981e7bcc22fdb027d 08-Sep-2015 Lipi Lee <lipisoft@gmail.com> increase the size of progname to avoid buffer overflow
etstat.c
b1353fb9185928249f273340c601244291e269fe 08-Sep-2015 Rob Landley <rob@landley.net> Remove prompt argument from yesno(), caller can fprintf(stderr, "blah") itself.

This fixes the build break, the change to yesno() prototype accidentally got
checked in last commit. (Oops, sorry.)
rontab.c
7309d96822fe5891651b85d22cb8e79285e2d6ba 04-Sep-2015 Elliott Hughes <enh@google.com> Implement lsof.

This is a superset of the current AOSP lsof (which is itself a
superset of the lsof in Android M). It fixes several bugs/misfeatures
and adds support for decoding IPv4/IPv6 tcp/udp/raw sockets and Unix
domain sockets.
sof.c
92f3b785690f5c23e1b84b6e726d7859d0ab1608 20-Aug-2015 Isaac Dunham <ibid.ag@gmail.com> I discovered that the reason SIGINT causes a reboot on sysvinit is that
it's how the kernel signals that ctrl-alt-delete has been pressed;
thus, setting it as the signal for reboot prevents ctrlaltdel scripts
from working.
SIGTERM is what Busybox uses, so we might as well be compatible.
nit.c
0fb465194789965b6fb2efd31995a2441144d650 09-Aug-2015 Elliott Hughes <enh@google.com> Different tools have different ideas about what human-readable output
looks like. dd uses "7 MB" where du uses "7M", for example. this patch
adds flags, similar to the BSD humanize_number. most callers will pass 0.
d.c
b73f89429f4a28bc1c694094b97abd011a9a2f9e 09-Aug-2015 Rob Landley <rob@landley.net> Isaac Dunham pointed out that SIGINT's handler was set twice in init.c.
nit.c
d5258b43a2f6795cb49203d67deefd78588dedd7 05-Aug-2015 Isaac Dunham <ibid.ag@gmail.com> modprobe: use -q to silence
odprobe.c
8f1f8ef2a4546cc6089c12fe09735fb0d345c175 05-Aug-2015 Isaac Dunham <ibid.ag@gmail.com> modprobe: use basename_r()
odprobe.c
da8ad27856dfc6729dac8b6fe87d595a0eb9ca23 05-Aug-2015 Isaac Dunham <ibid.ag@gmail.com> modprobe: delete perror_exit() that makes no sense

Given modprobe -a, it's important to not exit early for a failure to
load a module; additionally, the rest of the code presumes that this
can fail without exiting.
odprobe.c
a12eec740dc6d0c533fb7d83a0a54de6d3abb17c 06-Aug-2015 Isaac Dunham <ibid.ag@gmail.com> reboot: signal init, add -f option to call reboot();
init: use SIGINT, use xsignal()

Now that oneit supports the same signals as our "sysv"-init for shutdown,
make reboot et al. signal pid 1 with the appropriate signal.
Of these signals, only SIGINT works with sysvinit 2.88, causing a reboot.
The others are only supported in Busybox init.

Also, make init accept SIGINT and use xsignal().
nit.c
35dafc7b17ce23da62dcce2195bed9b370680e65 06-Aug-2015 Rob Landley <rob@landley.net> Tweak xconnect: socket can be a string (ala "ftp") from /etc/services.

Still need a rethink on how to handle socket/bind/connect sequence.
elnet.c
ea75e752f930df7b740a773294b997f46927c716 03-Aug-2015 Rob Landley <rob@landley.net> Factor out xconnect(), plus some other small cleanups to telnet.c.
elnet.c
ce4188fd1228c8037d1f059cf24a066941c26501 01-Aug-2015 Isaac Dunham <ibid.ag@gmail.com> '!' replaces '/' in the sysfs paths of older drivers, so properly
reverse that to get correct paths.
While we're here, reduce the duplication of initialization.

While this is enough for some drivers, it won't get 'input/' stuff
in the right folder.
dev.c
d073e1c0aa17f36fe28338a0787e6b07cc463a1d 25-Jul-2015 Rob Landley <rob@landley.net> Promote fsync.
sync.c
b9fb3067822c0a347905db81af0496743733fad5 25-Jul-2015 Rob Landley <rob@landley.net> Promote hostid.
ostid.c
441d1cedfb8dbe2c720bee791b5240829a5e54f9 25-Jul-2015 Sameer Pradhan <sameer.p.pradhan@gmail.com> Attached are new toys.
tftp - Client for tftp daemon.
hostid -Print the numeric identifier for the current host.
fsync -Synchronize a file's in-core state with storage device.
sync.c
ostid.c
ftp.c
2699cad55fbe657a17cb25d5e5da2f010816fc45 21-Jul-2015 Rob Landley <rob@landley.net> Fix llvm build break.
s.c
60cdc06c4825de7688a3879892bf442e0e2f282a 10-Jul-2015 Yeongdeok Suh <skyducks111@gmail.com> I added dhcpd -6 option.

It's for supporting ipv6, and I referred to RFC 3315 Specification
http://www.rfc-base.org/txt/rfc-3315.txt

There are some different kind of requests in dhcpd6,
but I inplemented only a basic protocol. (Solicit - Advertise - Request - Reply)
There's a sample packet as below. toybox dhcpd works in the same way.
http://packetlife.net/captures/DHCPv6.cap
hcpd.c
747e74852b982f8b2c54dc3e3650352843a6bede 10-Jul-2015 Rob Landley <rob@landley.net> Rename a function to be more obvious, and factor out a repeated calculation
the compiler was almost certainly retaining in a register anyway.
ompress.c
78beadd60b81c0b3c92eca38890983a672dbfd93 10-Jul-2015 Rob Landley <rob@landley.net> Promote hwclock.
wclock.c
fd4b56a159b9080a329d4471313d636f2b292ad5 10-Jul-2015 Elliott Hughes <enh@google.com> Fix hwclock -w.

The gmtime_r/localtime_r error check was backwards, and the wrong argument
was being passed to the RTC_SET_TIME ioctl.

Also, the error reporting was misleading (showing errno for functions that
don't set errno) and too vague for the user to tell what failed.
wclock.c
6b6daecc7c87746aa0f38a298aecd2c38ee60520 03-Jul-2015 Rob Landley <rob@landley.net> Promote xxd to other.
xd.c
82d8d7cb7eacabd1a498c001dd5618a1302f854b 03-Jul-2015 Hyejin Kim <hj8296@gmail.com> Added i option to use other interface on running dhcpd.
hcpd.c
eed60d28a76f20a6dd9c6eff8351a44ce020aa12 02-Jul-2015 Rob Landley <rob@landley.net> Cleanup xxd.
xd.c
e1ce781f266394a6e73150d08466274db5db584d 02-Jul-2015 Rob Landley <rob@landley.net> Minor cleanups on xxd.
xd.c
4ab24f2228b5d51491a5ef2a59ebcf424dced6f7 02-Jul-2015 Rob Landley <rob@landley.net> The android guys sent in xxd. It doesn't share code with od and hexdump. Hmmm...
xd.c
56217bb175cdf9506b9b7970edd313c1fef8e122 01-Jul-2015 Elliott Hughes <enh@google.com> Fix top.c build.

Broken by recent lib.h additions.
op.c
f033f8607f156464747abe57487c1f6226f94001 31-May-2015 Rob Landley <rob@landley.net> Move the magic list of commands needing cleanup from toys/pending/README
to greppable TODO annotations in the individual files. (grep -riw TODO)
EADME
42cc29c7883c852462c6c740c72eff06bca8accc 25-May-2015 Hyejin Kim <hj8296@gmail.com> On testing fold command, I found w option didnt check the range of value.
old.c
5b2644cafc8a619b617ba0fbb5473667dbd634ba 14-May-2015 Rob Landley <rob@landley.net> Promote reset (actually write a new one using the simple man 4 console_codes
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.)
eset.c
6253e48aadc09bd1af93caa45fe305466977fd0f 11-May-2015 Rob Landley <rob@landley.net> Git hates me.
exedit.c
aab9164df395a4b0878b0ad930a5ec8a806a58e9 10-May-2015 Rob Landley <rob@landley.net> Add DIRTREE_SHUTUP to disable dirtree warnings if file vanishes out from
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).
iff.c
ar.c
daf36948a9c235d5e70ec343557facfb80edaddd 06-May-2015 Elliott Hughes <enh@google.com> Fix more with missing files.

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...
ore.c
a967a669458ebb6b2a88a2d7e290ad449ab79d12 03-May-2015 Hyejin Kim <hj8296@gmail.com> dhcpd writes leases on "dhcpd.leases" file.
but, dumpleases read from "udhcpd.leases".
umpleases.c
4c182c325716776a3e40394b175de479738e31a6 27-Apr-2015 Rob Landley <rob@landley.net> Promote hexedit to other.
exedit.c
2fd8624cc612e946f593b2c9e9031c46f862562e 27-Apr-2015 Rob Landley <rob@landley.net> Some infrastructure hexedit needs. (Poor man's curses.)
exedit.c
ed753aaa5481e487a23c9e0e6a855c09612eb7ce 27-Apr-2015 Rob Landley <rob@landley.net> Teach hexedit to actually edit. Add -r option for read only mode.
exedit.c
53b0cb856deafa015626f21b5a2f972cddc015bd 25-Apr-2015 Rob Landley <rob@landley.net> Fix display and cursor control (to respect bottom boundary).

No actual editing yet.
exedit.c
9ac2d6546a2154a6797e12dfe86f36cc9420d6d4 25-Apr-2015 Rob Landley <rob@landley.net> Too tired on the flight back from Japan to work on thinky stuff, so...
exedit.c
3cf9b08cc9ebeddc449638608f7a28c4c4ba20f9 18-Apr-2015 Isaac Dunham <ibid.ag@gmail.com> mdev: implement hotplug support.

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.
dev.c
d332c0461f71a04f0ece907166b7c98f1e7e50f8 17-Apr-2015 Rob Landley <rob@landley.net> Shout from the rooftops that pending is not like other directories.
EADME
77d74244b4eb7e56fccf1f7c9a2a681beea1cc72 15-Apr-2015 Rob Landley <rob@landley.net> Yet more ps work. Still not there yet.
s.c
56af7086b2d6f59f54c661602252a0e84562ac7c 11-Apr-2015 Elliott Hughes <enh@google.com> Make more(1) usable.

> 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:
ore.c
d5959c27779e556fda4694d4fa8ea214138af35b 08-Apr-2015 Rob Landley <rob@landley.net> Revert last mdev commit because it copied code out of a GPLv2 program.

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.
dev.c
08089370c99af7a38d8896c4aa18c6b4bbd5ffc7 04-Apr-2015 Rob Landley <rob@landley.net> Another in-progress ps snapshot.
s.c
97c536c40eb4cc732b8a11688e0196281e90d81b 03-Apr-2015 Rob Landley <rob@landley.net> ps checkpoint du jour. Does not work yet.
s.c
9a733fc03f009beec6882520b928651e6a474f29 02-Apr-2015 Rob Landley <rob@landley.net> Redoing ps from scratch. Random checkpoint that probably doesn't even compile.

Checking in a stopping point where I figured out what I did wrong, before changing it.
s.c
32422d1b640617a56688370e3ebf4025bb3cf087 28-Mar-2015 Rob Landley <rob@landley.net> Promote setenforce to android.
etenforce.c
960cad18087dd629567b5156331cbb03ef7d28d0 28-Mar-2015 Rob Landley <rob@landley.net> Cleanup setenforce.
etenforce.c
3fd794f7416380417cc75d075a26559b80d3059a 28-Mar-2015 Rob Landley <rob@landley.net> Promote getenforce.
etenforce.c
e3a2ab391d8946f458d6f0b3a4332bf0c0e13161 28-Mar-2015 Rob Landley <rob@landley.net> Cleanup getenforce.
etenforce.c
9c25bcb645c754f4c09d9d6b8da41bbded862f6c 28-Mar-2015 Rob Landley <rob@landley.net> Promote load_policy to android.
oad_policy.c
d410645aec7d51d49884a05863cf10497e43f0bc 28-Mar-2015 Rob Landley <rob@landley.net> Minor cleanup of load_policy.
oad_policy.c
d6d4ad0663dc91a448139d9bac4fecab43a41b30 24-Mar-2015 Elliott Hughes <enh@google.com> Implement load_policy.

Note that this is a case where Android's tool isn't the same as the
usual tool. Ours takes an explicit file containing the policy to be
loaded. restorecon is at least command-line compatible, but the
implementation is all in Android's libselinux where there's a
selinux_android_restorecon function.
oad_policy.c
47dd32825ea32796f3094f45f4e4b0e7e1657520 23-Mar-2015 Rob Landley <rob@landley.net> Promote runcon to android (and add an android menu).
uncon.c
9a4128f32978c71dd417d9ce5fa4677f00dd4683 23-Mar-2015 Rob Landley <rob@landley.net> Trivial runcon cleanups.
uncon.c
fd1ff92b160b500a0a443bcdbd86a6e1709e9495 23-Mar-2015 Elliott Hughes <enh@google.com> Add runcon(1).
uncon.c
845dc93c1a41d03a329d934a96d292541c0435d7 23-Mar-2015 Elliott Hughes <enh@google.com> add missing space in dd output

Also, coreutils says "s" instead of "seconds". POSIX specifies the
format of the previous two lines, but doesn't even mention this line.
d.c
893a092f62a6652ec9668e1e0fc68910dedc2acc 18-Mar-2015 Hyejin Kim <hj8296@gmail.com> mdev : add hotplugin feature

As internal needs, Ranjan Kumar (ranjankumar.bth at gmail.com) added hotplug
feature into mdev.
dev.c
a9f4ec26c8594df7410fa0e22dd7044d9ac6d5c6 16-Mar-2015 Hyejin Kim <hj8296@gmail.com> I added error handling code in write_rotate().
I think that it is better to check tf->logfd before doing
truncate()/write() and getting error.
yslogd.c
d0bc1a39ef65fb2a726b2ff49ba29dbaa9a78aba 14-Mar-2015 Rob Landley <rob@landley.net> More ps cleanup, mostly refactoring.
s.c
98d8203cb85e1514bff1f654cb5636aeeb7c0df7 14-Mar-2015 Rob Landley <rob@landley.net> Minor ps refactoring.
s.c
40f7fb02aaceecee2625191afecaeea8ca95e259 04-Mar-2015 Rob Landley <rob@landley.net> Quick cleanup pass on tar.
ar.c
4bbec1e41580c9200cae03c9549fb032596b2b30 01-Mar-2015 Elliott Hughes <enh@google.com> fix format problems in tar.c

%o is unsigned, but off_t is signed.
* takes an int.
an error_msg call was missing an argument.

only one of these is an actual error, but i'd like to fix the others
too so that we (toybox, but if not, then Android) can turn on format
string warnings to prevent future bugs like the stat.c LP32 ones.
ar.c
3db3414ff55caef397059c8947c082f6be324f92 27-Feb-2015 Rob Landley <rob@landley.net> Cleanup pass on ps.
s.c
3737aae349b793dc6c6e93d764072536e85bbeda 01-Mar-2015 Rob Landley <rob@landley.net> Minor toysh cleanup: remove another unnecessary option.
h.c
fb49bf09694439102959fbce896404ab819bdf99 10-Feb-2015 Rob Landley <rob@landley.net> One more cleanup pass on hwclock factoring out common code.
wclock.c
2c9b0e3009cf76e9d7fca772945711675678d181 10-Feb-2015 Rob Landley <rob@landley.net> Inline rtc_open() and get_rtc_seconds(), perform resulting cleanups.
wclock.c
c277f347bba2417106b32212d9d40aceb4a88fb5 09-Feb-2015 Rob Landley <rob@landley.net> Cleanup/refactoring pass on hwclock.

Inline open_wall_clock_rtc() into rtc_open(), factor out xtzset(),
inline set_sysclock_from_hwclock(), set_hwclock_from_sysclock(),
and set_sysclock_timezone().

/etc/adjtime is short enough we don't need to bother with a break.

The final "else" case in main() should always trigger because >0 in optstr
says "at most zero arguments", so the || at the end is always true, so
take the test off.
wclock.c
452dcd5f7d5374411da86777de9fe94f5a88f709 08-Feb-2015 Rob Landley <rob@landley.net> Promote chcon to "other".
hcon.c
36a06d36c9865695090a17fd1a1d532d6e0f8997 08-Feb-2015 Rob Landley <rob@landley.net> Cleanup pass on chcon.
hcon.c
c0045207a7cd3bc11aace920d895c69b027c16af 07-Feb-2015 Rob Landley <rob@landley.net> Make toy_exec() check if argc is in optargs and deal with it there so we don't need a separate xexec_optargs().
ootchartd.c
cpsvd.c
a48cfba9520a8ad9bf1308dcbac3fc6ee23894ba 07-Feb-2015 Rob Landley <rob@landley.net> Merge unshare and nsenter (promoting and cleaning up nsenter).

Needs more testing, don't have a test environment set up for this yet...
senter.c
436a5c048e352fd6430de4376a083e5a2410c1a2 25-Jan-2015 Rob Landley <rob@landley.net> Commit 1061 said "this gets expand off my to-review list". Remove it from the list.
EADME
afd712aabc1b5bb6782489e01b8228b9021232f0 25-Jan-2015 Rob Landley <rob@landley.net> Cleanup mountpoint and remove it from the pending README.
EADME
b5e72209c79b3e181673d469c8e064ae8b409836 22-Jan-2015 Luis Felipe Strano Moraes <luis.strano@gmail.com> bootchartd: Removing wrong free call to non-malloc'ed string.
ootchartd.c
ef0546d4f536f42a57af4c32bd37f7fd752d10c2 20-Jan-2015 Elliott Hughes <enh@google.com> fix hwclock's rtc selection

For systems using /dev/rtcN, /dev/rtc0 isn't necessarily the RTC
that's used to provide the system time at boot time. We need to search
for the RTC whose /sys/class/rtc/rtcN/hctosys contains "1".
wclock.c
c2415d16a8991e2192bda002baab840bfa4d5d79 16-Jan-2015 Elliott Hughes <enh@google.com> AOSP master has <pty.h> and builds netcat/nc.
elnetd.c
7e2af1c7489cbf974a57d482bb9d23c884d2aa49 16-Jan-2015 Elliott Hughes <enh@google.com> This patch adds a TOYBOX_SELINUX configuration option to control both
the SELinux commands (such as chcon) and the SELinux-specific options
to regular commands (such as ls -Z).

This lets us #include <selinux/selinux.h> in portability.h.

I've also fixed chcon to insist on being given the a context argument.

This patch also adds -Z to id and fixes id's regular output (-G should
be separated by spaces, non-G output should be separated by commas,
and you don't want a double comma where the egid is omitted from the
list of groups).
hcon.c
d3d633ff13187c34c3a04ce20b9ffcfb85c2c383 11-Jan-2015 Rob Landley <rob@landley.net> Promote printf.
rintf.c
d0dead30a53c0353fd1c31aa5183fdcc2b30491b 11-Jan-2015 Rob Landley <rob@landley.net> One more bugfix for printf.c, with test suite entry. (Make %-3d etc work.)
rintf.c
caa6b014ba15dea377e5f65fcac57afaa932fa64 11-Jan-2015 Rob Landley <rob@landley.net> Cleanup pass on printf.

Alas, passing a union as the last argument to printf does not appear to work
reliably, and there's no obvious way to manually assemble varargs in a portable
manner. So I have to repeat the printf once for each data type. Oh well.
rintf.c
70cbfe8eda34df26cc91c51cd77098612e33fd80 11-Jan-2015 Rob Landley <rob@landley.net> More half-finished cleanup of printf.c, and more test suite entries.
rintf.c
cc39d95a344240bec8f0c74a02c74d54620b735d 06-Jan-2015 Rob Landley <rob@landley.net> More printf cleanup, and test suite entries.

Fixes bug introduced last time where toys.optargs was both snapshotted and used
directly and the two fell out of sync.
rintf.c
77c8d1a7d006e177bd0283b48530a3397b687b6c 04-Jan-2015 Rob Landley <rob@landley.net> Another cleanup pass on printf.
rintf.c
87fd25f20b86731dd01332ce828424e7047ef29d 03-Jan-2015 Rob Landley <rob@landley.net> Cleanup pass on printf.
rintf.c
82effc97f9f2d1c258ea50cb11b130753b8ba805 01-Jan-2015 Rob Landley <rob@landley.net> Switch a lot of strncpy() calls to xstrncpy().
rp.c
rping.c
rctl.c
hcp.c
hcpd.c
p.c
etstat.c
oute.c
ar.c
5f53d130b1eae9041cc88c0ffb89e2b5823da393 01-Jan-2015 Rob Landley <rob@landley.net> strncpy(optptr, hname, strlen(hname)) is really just strcpy().
hcp.c
eeff24f941eee0696b36ec7115bb9e958e38ac10 01-Jan-2015 Elliott Hughes <enh@google.com> typo fixes
xpr.c
f3e56f4e4ff773de95fa2c9daf979734d826fc33 01-Jan-2015 Rob Landley <rob@landley.net> Redo option parsing infrastructure so #define FORCE_FLAGS can unzero flag macros for a disabled command (needed when multiple commands share infrastructure with a common set of flags).

This means the flag space is no longer packed, but leaves gaps where the zeroes
go. (Actual flag bit positions are the same for all configs.) Since the
option parsing needs to know where the holes are, the OPTSTR values are
now generated as part of flags.h with ascii 1 values for the disabled values.
(So generated/oldflags.h went away.)

This also means that the option string argument for OLDTOY() went away, it now
uses the same arguments as the NEWTOY() it references.
tpget.c
roupadd.c
roupdel.c
p.c
grep.c
h.c
cpsvd.c
raceroute.c
seradd.c
serdel.c
7f24174da2eb388168b0320cb095b834b57992e8 28-Dec-2014 Rob Landley <rob@landley.net> Fluff out help text.
xpr.c
989f453e133962c711d360b6f2e87ee5b0e56b22 27-Dec-2014 Rob Landley <rob@landley.net> Promote mix
ix.c
73b8bb5adecf796c717749eeb309f7659c7089db 27-Dec-2014 Rob Landley <rob@landley.net> Cleanup mix.c.
ix.c
d5c66a9fd36777f80ba05301dcfa6789b103e486 24-Dec-2014 Elliott Hughes <enh@google.com> getenforce and setenforce

two more easy SELinux commands:
etenforce.c
etenforce.c
1a1e0a9d325dd1ca7461a8e8203dd47bab6a8bc1 21-Dec-2014 Rob Landley <rob@landley.net> Promote sed to posix.
ed.c
32cd2b770fe3ac8c419a29156162f3a037cf47a3 21-Dec-2014 Rob Landley <rob@landley.net> sed: implement 'l'
ed.c
95b76828d62afa87eec3d1b1544758a025521912 20-Dec-2014 Rob Landley <rob@landley.net> More sed bugs.

1) Newline in -e after s/// was eaten as "whitespace before flags"
2) \\ needs to be passed through to regex to avoid "trailing \" error and
"\\n" is not a newline.
ed.c
a1ea6bb8ea8143cc18fa00703e58819929501654 15-Dec-2014 Rob Landley <rob@landley.net> Fix yet another sed bug.

The s/// command would copy the \ of substitutions before deciding what to
do with them (generally overwriting the \ with the new data). When the
substitution was A) at the very end of the new string, B) resolved to nothing,
it could leave a trailing \ that didn't belong there and didn't get overwritten
because the "copy trailing data" part that copies the original string's null
terminator already happened before the \ overwrote it.

The ghostwheel() function restarts regexes after embedded NUL bytes, but
if the string it's passed is _longer_ than the length it's told then it
gets confused (and it means we're off the end of our allocation so segfaults
are likely).

Fix: test for \ first and move the "copy byte" logic into an else case.
ed.c
807a50d89976e2de081d487a54e8e109d49f0a6d 14-Dec-2014 Rob Landley <rob@landley.net> Make sed a\ line continuations work properly for different pattern input modes.
ed.c
2c23705ab0e3038f0b5bfd3af742d07a3383ed54 14-Dec-2014 Rob Landley <rob@landley.net> Fix bug in sed y/// where bytes in target but not in source were replaced by zeroes (nul terminator overwritten).
ed.c
76ea44a623ba186a3c4662d54b71b60b358ae0ad 13-Dec-2014 Rob Landley <rob@landley.net> Last sed bugfix broke 'b', fix it.
ed.c
e75b1d8d96ea104e5f4fa3f7d06e289cbbedc435 12-Dec-2014 Elliott Hughes <enh@google.com> here's a patch that should let us replace toolbox's chcon.
(it also adds a feature, -R, because toybox makes that so easy.)

you'll probably want fancier configuration here because although the
--as-needed works okay, a typical Ubuntu box will have the .so but not
the .h files. i did consider adding a toys/selinux/ directory, but
given that existing tools like ls and id will want -Z SELinux options,
i wasn't sure whether you'd think it was worth segregating the
SELinux-only toys.

note that this won't help the tizen smack users (and patch for smack
won't help SELinux users). so you might want to think about where
you'd like us to be aiming: #if USE_SELINUX/USE_SMACK in all the
relevant places, or a toys/selinux and a toys/smack (though we'd still
need #if in at least ls and id), or a lib/security.c that concentrates
all the differences into one file?
hcon.c
ed053c0fa6ea2bb65be902d0ad437ab4f2031552 11-Dec-2014 Rob Landley <rob@landley.net> Make unescape_delimited_string() copy the string so error reporting isn't so messed up.
ed.c
acb2d0ed74312da548e2b209732b2f7e67a65c23 11-Dec-2014 Rob Landley <rob@landley.net> Fix some sed bugs and improve error reporting.

A newline after 'b' commands in -e command line patterns was being discarded
as whitespace, a single element regex match on a {} was leaving stale state
for the next line, and giant -e blobs of instructions were saying things
like problem at character 432 (note: nulls inserted for regex processing
aren't always cleaned up, screws up error reporting).
ed.c
2ebbefb1a429022235c8db8b39e94ad01f03a8b6 03-Dec-2014 Rob Landley <rob@landley.net> More gzip stuff: now creates -0 compression files (store only), and does so to stdout.
ompress.c
bce8a514aaf0a7e8b98ff20217c7a44a50aa46de 02-Dec-2014 Rob Landley <rob@landley.net> Note posix mailing list posting correcting a bug in the web version of the standard.
xpr.c
aebcdfa659679e5a1f92a9ad12e7c36621962988 02-Dec-2014 Rob Landley <rob@landley.net> Switching on fortify was not kind to the pending directory. Fix the actual build break (open(O_CREAT) without permissions).
hcpd.c
1ba12b427e84c5c6578aa767a096f5859e7283ce 02-Dec-2014 Rob Landley <rob@landley.net> Start of deflate compress-side code, mostly refactoring and stubs so far.
ompress.c
ef6a773198040a05a56dec2261516fb149823cf6 01-Dec-2014 Rob Landley <rob@landley.net> Refactor expr and add another test entry that works with TEST_HOST=1 but not with the one in pending.
xpr.c
7701bf9a35cf92e6bc6cf77bf28076c1d8181da9 30-Nov-2014 Rob Landley <rob@landley.net> Minor whitespace cleanups.
rping.c
c3657fd41199ca97b74e66e80734f5c4a9509da4 30-Nov-2014 Ashwini Sharma <ak.ashwini1981@gmail.com> expr.c: Added '==' sign into list of operations. Also added support for regex pattern match.
xpr.c
75fea678c039381b310d15a86d698cba7ec9805d 28-Nov-2014 Rob Landley <rob@landley.net> Tiny in-passing cleanups to more.c.
ore.c
e7835d79c5b6c2c586bf13a28c6457b012145a36 28-Nov-2014 Rob Landley <rob@landley.net> sed: c needs to trigger range logic like d, D works like d when there isn't anything left in the line, and more tests.
ed.c
46ddf0e34b03f7711a9c80f7a70dc8cbf732f782 19-Nov-2014 Isaac Dunham <ibid.ag@gmail.com> probe for getspnam(), forkpty(), utmpx, replace sethostname()

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.
ulogin.c
elnetd.c
45bd6a2cd43ebd27e2696852959617704a8faafd 18-Nov-2014 Rob Landley <rob@landley.net> More sed bugfixes.
ed.c
e9b1a61f81f500f7f3bb57082f8b1c53f61313dd 18-Nov-2014 Rob Landley <rob@landley.net> sed: fix 'q', and { }, and } after s/// with no semicolon.
ed.c
4a94ed0967ec27bb8976803191340aa575f32a19 17-Nov-2014 Rob Landley <rob@landley.net> More sed corner cases. (Empty regex repeats previous regex, implement -i, etc.)
ed.c
4a6eb58382c38274193d029f58c94da6f67daca5 17-Nov-2014 Rob Landley <rob@landley.net> Fix more sed bugs.
ed.c
7928b0d28b7e8fe8b7cb7eeb5ddde4d4840db9e4 16-Nov-2014 Rob Landley <rob@landley.net> Fix sed 'b' with no label and 'N' in general.
ed.c
2814e457ed53f14bc333c79beaa19741a35f1d82 16-Nov-2014 Rob Landley <rob@landley.net> More sed bugfixes. (Did you know s/[/]// is a valid sed expression?)
ed.c
0c558f09d9d714244847b0473f7ecda6b12c2ab4 15-Nov-2014 Rob Landley <rob@landley.net> Debugging pass on sed: make the existing test suite pass.
ed.c
222fc81c91ab882279da53fe7f3de20ff4b2ce5e 14-Nov-2014 Rob Landley <rob@landley.net> sed: implement s & and \1 backrefs.
ed.c
cb652fa275c1806277ff07a98c864dc8c0335e0f 12-Nov-2014 Rob Landley <rob@landley.net> Implement more sed plumbing, including s/// (without \1 or & yet).
ed.c
549010756693647c759a2de4f2d5a81265d7e6cf 11-Nov-2014 Rob Landley <rob@landley.net> Implement another largeish chunk of sed. Untested, unfinished, do not use yet.
ed.c
72f8a5f7fedeb81c99044d3443872ae91b5ecfec 11-Nov-2014 Rob Landley <rob@landley.net> First cleanup pass on hwclock.
wclock.c
4483eaadba149a5286a26a292f72631793b4826a 10-Nov-2014 Ashwini Sharma <ak.ashwini1981@gmail.com> hwclock: get and set the hwclock
wclock.c
80cef2500a97db1343fa89dc544aef42befdff2e 10-Nov-2014 Ashwini Sharma <ak.ashwini1981@gmail.com> ipcrm : remove msg que, sem or shared memory
pcrm.c
4e5b247d3f0e4d1a115fac51a1c6fa92db7eb146 08-Nov-2014 Rob Landley <rob@landley.net> Implement a few sed commands. Not done, and not tested yet.
ed.c
b1ef8dd1606af0aa1933657672d96dd90b3f4560 05-Nov-2014 Rob Landley <rob@landley.net> Next round of sed infrastructure, parses most commands now, doesn't implement them yet.
ed.c
7a976a09cc2327dcf0baf8708d3420136dfbc3fc 31-Oct-2014 Ashwini Sharma <devnull@localhost> Attached are new toys TR and CRONTAB.

*tr.c*: It translate, squezze and delete characters.
Supported classes are alpha, alnum, digit, lower, upper
space, blank, puct, cntrl and xdigit.

*crontab.c*: Companion of crond. It maintains crontab files.
rontab.c
r.c
77503047d6071e8263f915f29503ff6cf060499f 29-Oct-2014 Rob Landley <rob@landley.net> Next drop of sed infrastructure, mostly argument parsing, doesn't do anything interesting yet.
ed.c
21374adab1bef2321a7bc58554c021b703b786e9 29-Oct-2014 Rob Landley <rob@landley.net> Fill out rest of help text for sed.
ed.c
90397b299974b76511892593e7ae14c99cbf144b 25-Oct-2014 Rob Landley <rob@landley.net> Basic sed range support, enough for "sed -n 9,11p README" to work.
ed.c
9b0d8691b9dad6674ea6d778bebcf3bbd76cc6de 21-Oct-2014 Rob Landley <rob@landley.net> Random in-progress snapshot of sed, not finished yet.
ed.c
21f3c8db00f0d4a3f0989559847d2564f4c73a11 21-Oct-2014 Rob Landley <rob@landley.net> More static analysis fixes from Ashwini Sharma.
odprobe.c
8aa527684c837c18621b76f5ef440caa2f05d0b0 19-Oct-2014 Andy Lutomirski <luto@amacapital.net> nsenter: A tool to use setns(2)

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).
senter.c
01138b94e6ac9ff2d1258917f96c0c5c8c124021 16-Oct-2014 Rob Landley <rob@landley.net> Even bigger ip.c, from Ashwini Sharma.
p.c
dd23ece23c0ef9bac398c3c4ad2a46a3e72a2de5 13-Oct-2014 Rob Landley <rob@landley.net> Started over on sed (by reading the posix spec).
ed.c
9588d289ef381ee7dd68ef35990362ebf70366e4 29-Sep-2014 Ashwini Sharma <ak.ashwini1981@gmail.com> Updated version, having complete support for ip _link_, _addr_, _rule_, _route_ and _tunnel_ options.
p.c
5e2fb272225e549587273940b4d8036771b3a238 28-Sep-2014 Rob Landley <rob@landley.net> Cleanup pass on groupdel.
roupdel.c
e0d8009d76b3a2451cb6c6ed2b241c7eff06ed60 27-Sep-2014 Rob Landley <rob@landley.net> The only illegal characters in a username are ":" (field separator), "\n" (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.
roupadd.c
seradd.c
c611c39db47324b9fa6e5cd0f602b3aa3f957ffe 22-Sep-2014 Rob Landley <rob@landley.net> Start on ping.c.
ing.c
14a11ed5ebfb2309a3fdfea1ce7a741519e44693 18-Sep-2014 Ashwini Sharma <ak.ashwini1981.gmail.com> A few fixes for issues reported in static analysis.
ootchartd.c
sck.c
nit.c
etstat.c
40b20421e42cce9834d13ab52ac58efd78838ede 18-Sep-2014 Rob Landley <rob@landley.net> Cleanup pass on README.

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.
EADME
c022d276d14996fc4d3bea3c0e1792a05eb816cc 18-Sep-2014 Rob Landley <rob@landley.net> Update README for pending directory, include list of code outside of pending (grandfathered) awaiting cleanup.
EADME
38cb603c1f169febdffcf5c2fbe041c276f47d08 16-Sep-2014 Rob Landley <rob@landley.net> Cleanup pass on useradd.
seradd.c
9b4ea9cf9934d5639a7d1a9b50b90b8d5569ba7e 08-Sep-2014 Rob Landley <rob@landley.net> Promote mount. It's not perfect, but it basically works now.
ount.c
cc3bf66666cb0d2c8937b1a60c2be8d3f5a49d04 08-Sep-2014 Rob Landley <rob@landley.net> Fix mount --move bug.
ount.c
25fe0e0bea85f1d851ce03a90c0f1bf41ab431f2 07-Sep-2014 Rob Landley <rob@landley.net> Debugging pass on mount. Not quite done yet, but the basics seem to work now.
ount.c
72e84a2f3b758026dcb37abdb8c8383c9a07ec94 31-Aug-2014 Rob Landley <rob@landley.net> Next mount checkpoint.

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)
ount.c
14c8ef42870ca9623b44e369c0231766e8371bfd 26-Aug-2014 Ashwini Sharma <ak.ashwini1981@gmail.com> ipcs : display all the IPC fascilities information
crond : CRON scheduler
rond.c
pcs.c
e996bddf88a946a8ac8338c02e14add57e3d588c 25-Aug-2014 Rob Landley <rob@landley.net> Work in progress snapshot of mount, with fallout to umount. (Not done yet.)
ount.c
8f5ad7ef175851a18b35a10707742ff3b3382c7d 24-Aug-2014 Rob Landley <rob@landley.net> Promote blockdev to other.
lockdev.c
62d796a75dd2e0f0c63615e937cfd3d7ccb0a27d 24-Aug-2014 Rob Landley <rob@landley.net> Cleanup blockdev.
lockdev.c
c106a7861b67e37d5ae7c7abc1abcad75cee0354 23-Aug-2014 Isaac Dunham <ibid.ag@gmail.com> getty needs fd 0 to stay open.
The O_CLOEXEC reversal resulted in login failing.
etty.c
e70eea41eeed05e0ac938a6aceab27c918090fde 21-Aug-2014 Rob Landley <rob@landley.net> Promote inotifyd to other.
notifyd.c
eeb3541652110c35e9c434565a2c509687bb6697 21-Aug-2014 Rob Landley <rob@landley.net> Minor help text tweak for inotifyd.
notifyd.c
01a806ff123aa091e0d41023432dfe2c0173a62d 21-Aug-2014 Rob Landley <rob@landley.net> Cleanup inotifyd.
notifyd.c
a8bee46cfebcf1ae9c3749b820c483054be81295 19-Aug-2014 Rob Landley <rob@landley.net> Cleanups on useradd/groupadd/groupdel, and put TOYBOX_UID_SYS and TOYBOX_UID_USR in the top level Config.
roupadd.c
roupdel.c
seradd.c
056bc9029d8830a18a4e2dd7ad5fc0a4f661cdc4 12-Aug-2014 Ashwini Sharma <ak.ashwini1981@gmail.com> A toy _BLOCKDEV_ to get/set block device properties.
lockdev.c
7eb3e4364c2bcebd2fdfef52c07f5101aa03e5bb 12-Aug-2014 Ashwini Sharma <ak.ashwini1981@gmail.com> Patches to commands for issues reported from static analysis tool.

portability.h.patch - it is for O_CLOEXEC, as compiler complained of it.
Makefile.patch - for cleaning generated/*.o files and libopts.dat file

[Fixup to uniq.c from Rob.]
rp.c
sck.c
tpget.c
odprobe.c
ar.c
6a77734d1b1ac1938abbc33014b60cfb49828824 12-Aug-2014 Rob Landley <rob@landley.net> Promote lspci.
spci.c
32a3a0806403d5bd652df1a8fefc318c7812ddca 12-Aug-2014 Rob Landley <rob@landley.net> Cleanup pass on lspci.
spci.c
64038da9fe9eab1fcf7e1fb6c654a6820c6d2064 03-Aug-2014 Rob Landley <rob@landley.net> Squash mix of tabs and spaces to just spaces.
iff.c
3acdbc16e8e474c99ba945a869059beccc6ac1d5 02-Aug-2014 Ashwini Sharma <ak.ashwini1981@gmail.com> New toys unified DIFF and USERDEL.
iff.c
serdel.c
732ef894567bf1d98abd88594bd68b8ccf309d72 02-Aug-2014 Bradley Conroy <bradley.conroy@gmail.com> mix.c - A very basic mixer.
ix.c
4a86c8193bf05646cdca9faa5253c607d6df5d35 21-Jul-2014 Rob Landley <rob@landley.net> Isaac Dunham spotted that dhcp was also reimplementing daemon().
hcp.c
1f80e11e3b85d72544d3b52178d0ea7a8c36c177 18-Jul-2014 Rob Landley <rob@landley.net> Apparently I deleted this locally but forgot to commit the removal. Oops.
bd_client.c
c880061f511e85d55afe3966f5eda0df7c3ebb56 18-Jul-2014 Rob Landley <rob@landley.net> Use libc daemon() instead of pending daemonize.
hcpd.c
logd.c
yslogd.c
elnetd.c
fc7bc38af05fc882472d310a0b68648ed990ef2d 17-Jul-2014 Rob Landley <rob@landley.net> Write a new find. Not quite done, but the basics work.
ind.c
30f6ef5fcd571c554c2c59585d126b92793379d0 14-Jul-2014 Ashwini Sharma <ak.ashwini1981@gmail.com> fdisk : partitions > 60, are deleted, offset entry for extended partitions was wrong.
fsck: memory leak/segfault resolved.
ftpget : warning for unused variable 'ptr' removed.
disk.c
sck.c
tpget.c
056d0a00de99639fb39d19e984dd66fe82be7820 07-Jul-2014 Rob Landley <rob@landley.net> Autodetect --bind and --loop mounts in a way that doesn't interfere with network filesystems or -t newtype mounts that trigger a module load.
ount.c
b6efbb62f60638635c102bbe9b3e50e711e615a8 07-Jul-2014 Rob Landley <rob@landley.net> minor cleanup: move a global variable into GLOBALS(), inline strchr_null(), some whitespace and bracket cleanups.
odprobe.c
f383983d9868d2f3151b307c5f5bbc506e2f87d6 07-Jul-2014 Rob Landley <rob@landley.net> Minor cleanup pass.
ftpd.c
ffa7e3b05eea2d404758758c561f534824ca77c8 07-Jul-2014 Rob Landley <rob@landley.net> Promote killall5 by merging it into kill.

Slight conflict here: this puts killall5 in the posix directory. But the commands sharing code trumps that.
illall5.c
15e02f09549e34e839a6b74fdfb3c1d1974bb635 05-Jul-2014 Ashwini Sharma <ak.ashwini1981@gmail.com> TAR - this supports archive creation and extraction based on the USTAR format (described in PAX Spec). For (de)compression '-z' gzip is supported.
ar.c
9bf93edd68742bbc9e814ec49c8a3a31ca8d3fff 30-Jun-2014 Rob Landley <rob@landley.net> Promote makedevs to other.
akedevs.c
936ab6d68b747ed7a315ef9c27bb9b90088686f3 30-Jun-2014 Rob Landley <rob@landley.net> Bugfixes for cleaned up makedevs.

Newline after table = <stdin>, move start/increment/count loop around entire
device creation if/else staircase including chmod/chown code and use ptr to
record node vs toybuf.
akedevs.c
474d0a9e00b72ee73c0c908c65a09f7dde495019 29-Jun-2014 Rob Landley <rob@landley.net> Promote mkpasswd from pending to other.
kpasswd.c
6d15f0d33fbc422689f92fbbf4dc65d3ab1fb970 26-Jun-2014 Rob Landley <rob@landley.net> Cleanup pass on mkpasswd.c
kpasswd.c
6ad3207b65438870dfc9f76a3dcf4bb04096297e 25-Jun-2014 Rob Landley <rob@landley.net> Cleanup pass on makedevs. Need to test it before promoting.
akedevs.c
c962e0fd295525978de0d9a0af584f47a83d9699 25-Jun-2014 Rob Landley <rob@landley.net> Glibc and uClibc provide CERASE from termios.h, but musl requies you to #include a non-posix header and the maintainer considers this a feature. So just use the constant directly.
etty.c
d3cd45babc2e3bc72b53c08e48fac7f94887b72b 24-Jun-2014 Rob Landley <rob@landley.net> Move deallocvt.c into openvt.c, cleanup both.
eallocvt.c
penvt.c
59fa8b4f48818f5a4f634633b48440ed3a466c8a 12-Jun-2014 Rob Landley <rob@landley.net> Cleanup pass on host.c
ost.c
ff2bc8551c697a909118f580b26b6cb1e0e47f61 11-Jun-2014 Rob Landley <rob@landley.net> Promote strings.
trings.c
11c3924f8c29a36a80233326937ad21f504ae658 11-Jun-2014 Rob Landley <rob@landley.net> Cleanup strings.
trings.c
b5f97805cee1daab12641ad8927d0539aa0d99ac 10-Jun-2014 Isaac Dunham <ibid.ag@gmail.com> pending/useradd: unbreak build

When useradd started using xfork(), the conditional in else if (pid > 0)
became unnecessary, since else means pid is nonzero and xfork makes it
non-negative. However, the "if" was not deleted.
seradd.c
ef377cf6f6a1e89696df1b0c8d847000a172f846 09-Jun-2014 Rob Landley <rob@landley.net> Promote rfkill.
fkill.c
e031a5e24e5b0479717474d5d08ca9abda2f580a 09-Jun-2014 Rob Landley <rob@landley.net> Cleanup pass on rfkill.
fkill.c
c421b7068c5dd95baa10f9bd97e578d04ba48c70 09-Jun-2014 Rob Landley <rob@landley.net> Warning fix from Rich Felker.
ost.c
e266735d08ccf6cac442ac4e6e0defcd05fdea7a 08-Jun-2014 Rob Landley <rob@landley.net> Add host by Rich Felker.
ost.c
44e68a1bec9b342c01e2f4e6ccf9f1e7a3ee8081 03-Jun-2014 Rob Landley <rob@landley.net> mount: start on option parsing, implement loopback and bind mount autodetection.
ount.c
c20fb908bb733a3d7c1dda77a3c1d22d5c3fafec 31-May-2014 Felix Janda <felix.janda@posteo.de> iconv: some fixes

- fix problem with sequences at buffer boundaries
- add (ignored) -c and -s options
- don't try to continue with a file when read() fails
conv.c
f71abed76bd2eacc6ebf43663059631c7cf213ed 01-Jun-2014 Rob Landley <rob@landley.net> Promote partprobe.
artprobe.c
4d22a09d76ef09a169db48a4d6599d8a5fe547ad 01-Jun-2014 Rob Landley <rob@landley.net> Cleanup partprobe.
artprobe.c
d8872c43b48eae5501998a4e5a84337017d8fbe6 31-May-2014 Rob Landley <rob@landley.net> Introduce xfork() and make commands use it, and make some WEXITSTATUS() use WIFEXITED() and WTERMSIG()+127.
ootchartd.c
hcp.c
ind.c
notifyd.c
bd_client.c
penvt.c
cpsvd.c
seradd.c
b0d97a0059555cb0e7e0009b72c038aa67aaa769 29-May-2014 Ashwini Sharma <ak.ashwini1981@gmail.com> killall5 - kill all the processes not in its session.
illall5.c
9f1a00a859d1b085fdf7a1a5f66e51f41c6217ee 29-May-2014 Ashwini Sharma <ak.ashwini1981@gmail.com> makedevs - making devices/nodes in a range. Supports reading the tabled entry from file.
akedevs.c
877884d2bf8f9d4b48afcfd1a88680fb363c27ad 29-May-2014 Ashwini Sharma <ak.ashwini1981@gmail.com> strings - print the strings in the file.
trings.c
414c0cf9f5e91f7d755ba935595bbd7f3fd7c29e 29-May-2014 Rob Landley <rob@landley.net> First stab at mount, very incomplete.
ount.c
369a4e0dd08130d2e22140280932b138ab283106 27-May-2014 Rob Landley <rob@landley.net> Brush the dust off toysh.

Simplify the config micromanagement tangle to just a single "interactive"
option. Fix an unused variable and wrong variable type.
h.c
7cb7cca7f5759c6921d68a384fd838e01ce446e0 26-May-2014 Bertold Van den Bergh <vandenbergh@bertold.org> I have attached a patch adding a program that allows re-reading the partition table. This is often used on embedded systems booting from SD/USB devices that need to resize partitions on first boot.
artprobe.c
67ba22986d84b8d793d9bb39d6d7545204924124 25-May-2014 Rob Landley <rob@landley.net> Bugfix from Isaac Dunham (new pci database has # comments in it) and some minor cleanups I had in my tree already.
spci.c
f9c3fc8475722679029cd653d98965fb2767f20c 24-May-2014 Rob Landley <rob@landley.net> Pending commands should default n
conv.c
ulogin.c
5e936d65972316c26b7271086cc57838bf1f1e28 24-May-2014 Ashwini Sharma <ak.ashwini1981@gmail.com> Single-user login.
ulogin.c
984f90c07025168bf2b42ec37f027005229daa02 23-May-2014 Ashwini Sharma <ak.ashwini1981@gmail.com> rfkill - enable/disable the radio devices
e.g. Wireless adapter, Bluetooth devices...
fkill.c
6958429d84cff06fefdc898d837a71c239f1e214 23-May-2014 Ashwini Sharma <ak.ashwini1981@gmail.com> inotifyd - watch for filesystem events.
notifyd.c
a76175cbdaf4878491deadd68860b07c8d4846ff 23-May-2014 Rob Landley <rob@landley.net> Ashwini Sharma pointed out I screwed up last.c.

Renamed the function, missed a user...
ast.c
f8e940c52cd4016821e582cfbf1458084d4229c8 21-May-2014 Rob Landley <rob@landley.net> Convert bootchartd to generic_signal().
ootchartd.c
755e040916d94d0124162a6c345cb783c0931b77 21-May-2014 Rob Landley <rob@landley.net> Make telnet use generic_signal(), minor in-passing cleanups.
elnet.c
bf30fe981772d97e6399b3ce9aeafffe35848c89 21-May-2014 Rob Landley <rob@landley.net> Make telnetd use generic_signal(), inline kill_session(), close race window where a SIGCHLD could get lost.
elnetd.c
9b4158c09cdb766369c45dd2dbc44556d0892694 21-May-2014 Rob Landley <rob@landley.net> First pass init cleanup: use sigatexit() to set multiple signal handlers, rename set_sane_term() to reset_term() and have it take the fd it works on as an argument, some whitespace and help text tweaks.
nit.c
dce76e0be9fb24b095ed59acc90ac62ac08c2c78 21-May-2014 Rob Landley <rob@landley.net> Make fsck.c use common list free function, collate cleanup code and move inline.
sck.c
7a6b82277db3caee1214cdbc8f6bc546818aec6e 21-May-2014 Rob Landley <rob@landley.net> Make last use common llist free function, minor cleanups.
ast.c
95d2ce84789011970e2f814b2fb6c819084bde8c 21-May-2014 Ashwini Sharma <ak.ashwini1981@gmail.com> dhcp client had a segfault, when DHCP message contained 'pad' option.

The parsing logic kept checking for other options beyond __pad__ option, without
checking if it was __end__ option after that or not.
hcp.c
b06b0fe32361f7fc5b3fb98bf5f2c2791be757e8 21-May-2014 Isaac Dunham <ibid.ag@gmail.com> lspci text output: add -i, allow -n when disabled

-i is how standard lspci handles changing the PCI ID database.
lspci -n should be a no-op when text is disabled.
spci.c
098ff070fdafc1b3f5ec037a8b17365a176ec184 20-May-2014 Rob Landley <rob@landley.net> Cleanup pass on bootchartd.

Might have broken something, don't actually have a test case for bootchartd yet.
ootchartd.c
3fdbdac0b4762aafae8daa0e2d292b7440c2dc50 18-May-2014 Rob Landley <rob@landley.net> Quick cleanup pass on ps.
s.c
fd71bca1213b0d31d4079505520f30ed57014b19 18-May-2014 Rob Landley <rob@landley.net> Cleanup pass on lspci
spci.c
e9b7fcf57bbc6c7ad58592f7ab9bd3224ef4aae1 16-May-2014 Rob Landley <rob@landley.net> bootchartd by Bilal Qureshi.
ootchartd.c
97641f459a3e74045305b4ef9b80bb00bc56a29f 15-May-2014 Rob Landley <rob@landley.net> Promote sysctl from pending to other, default y.
ysctl.c
08f2d7d333f1a52ad48bcdc1c2ec1387b9053784 15-May-2014 Rob Landley <rob@landley.net> More sysctl cleanup: fix error message on nonexistent key, write path, and -p.
ysctl.c
e973d23094883ad66ec24247cb95dbe65db1324e 14-May-2014 Rob Landley <rob@landley.net> Cleanup pass on sysctl.

Not heavily tested yet but should be finished at the design level.
ysctl.c
f272df9e821e00afb962a62556318cecfcd694ae 12-May-2014 Rob Landley <rob@landley.net> First cleanup pass on sysctl.

Remove unnecessary typecasting of things that are already char * to char *,
and multiplying by sizeof(char *) which is 1. Rename do_process() do_flag_a()
since that's the only caller. Move read_key_values() down past trim_spaces()
and read_config_file() so it's next to its only two users. Replace some
euphemisms for 0 with 0.

replace_char() really sounds like something libc should already have one of,
but I'm blanking on it if so. (It doesn't need a temporary variable when the
argument variable is already a copy so changing it won't affect the caller.)
ysctl.c
97c2c1eba507d10005e305098c3fc21b1472c97e 12-May-2014 Rob Landley <rob@landley.net> Add sysctl by Bilal Qureshi.
ysctl.c
7e90d22ef73d97d2280565761fba092a33e483b4 12-May-2014 Rob Landley <rob@landley.net> Add arp from Sandeep Sharma and Kyungwan Han.
rp.c
5369517b2cd0437a603ab7b33b499062804ae141 10-May-2014 Rob Landley <rob@landley.net> sizeof("string") treats it as a char array _including_ the null terminator, so strncmp(dest, "string", sizeof("string")) is just strcpy.
ast.c
6ef8ce45ae3adae2bd6a36781a6d7f60122548f2 10-May-2014 Rob Landley <rob@landley.net> Initial cleanup of last: mostly whitespace, move no record test to start of loop, don't bother to stat an empty file to report when an empty log was created (just report current time).
ast.c
48c172ba589cfd848624b51f6f748b56bc217775 06-May-2014 Rob Landley <rob@landley.net> Switch human_readable() to just outputing decimal kilo/mega/gigabytes, make du use it, move it from lib/pending.c to lib.c.
d.c
7bcaf03f1506d338cde2f6d1b953d6ba6e5a7ea7 25-Apr-2014 Rob Landley <rob@landley.net> fold cleanup: whitespace and curly brackets.
old.c
5fe77cf9ed586a84c5ccd289154d0b543d2b4949 23-Apr-2014 Rob Landley <rob@landley.net> As long as uClibc's still around and requires you to jump through hoops to get iconv(), probe and build defconfig without it if it's not there.
conv.c
3297e87c2ab798696b0fb3d06904dccea076b77a 23-Apr-2014 Rob Landley <rob@landley.net> usage: is lower case (the help generator looks for that, might as well be consistent).
rping.c
rctl.c
hcpd.c
umpleases.c
sck.c
etty.c
ast.c
ore.c
yslogd.c
op.c
atch.c
aac4222dd8dcce3e7a782111ac7d7d9d0bfb2972 17-Apr-2014 Samuel Holland <samuel@sholland.net> This version of fold fixes major bugs (infinite loop, overflow) and adds an option for un/refolding text.
old.c
6c64f5f186d26d4c95d408979d33831935e026f1 16-Apr-2014 Rob Landley <rob@landley.net> Revert lots of half-finished local debris I didn't mean to check in with Isaac's roadmap update.

Mercurial's "import" command is still broken, committing local tree changes to files that weren't even touched by the patch because the hg developers inisist, when I point out how stupid it is, that they meant to do that. (hg record can do hunks, but import can't even track _files_.)
ompress.c
nit.c
dd61393cba9d4dd7152960274aff1d25dd239c93 13-Apr-2014 Ashwini Sharma <ak.ashwini1981@gmail.com> A tool to reset the terminal.
This implementation depends on the _stty_ 'sane' settings.
eset.c
0d8467b371d93bff03f59a8f11f01094f7618372 13-Apr-2014 Ashwini Sharma <ak.ashwini1981@gmail.com> An implementation of __printf__ is attached.
rintf.c
603e206e53bf5709e596884aec8933bda0b848b6 13-Apr-2014 Rob Landley <rob@landley.net> iconv cleanup.
conv.c
85224dd4982ba22f448e8cc1319bb3252b2a6671 13-Apr-2014 Felix Janda <felix.janda@posteo.de> iconv is actually something I'm missing on my current musl based system.
Attached is a simple version using the libc's iconv.
conv.c
8b6d56c4f75efed9d4769d2d959ee7706e314152 13-Apr-2014 Isaac Dunham <ibid.ag@gmail.com> getty: build fix, clean up messages, simplify code

build fix: xmsprintf has been renamed
shorten and lowercase the error messages
use xexec() instead of execlp(); perror_exit();
remove redundant variable setting
etty.c
931425ca05b93348dd497598af077d16cdc1cd3c 13-Apr-2014 Isaac Dunham <ibid.ag@gmail.com> roadmap: describe glibc commands.

Some glibc commands are irrelevant because they're for functionality
that is excluded from musl (mtrace, rpc*, localedef, iconvconfig, nscd).
getconf and catchsegv look like candidates for the development toolchain;
locale and iconv were already triaged.
getent is pretty lame, but it and the timezone stuff (tzselect zic
zdump) are the only new possibly interesting commands.
ompress.c
nit.c
9953f64c02ad754b2831e02651ae7f8bec9b67d1 10-Apr-2014 Isaac Dunham <ibid.ag@gmail.com> modprobe: cleanup, incorporate Ashwini's fix for alias loading

Move <fnmatch.h> to toys.h, since it's POSIX.
Avoid duplicating code in an if/else block.
Terser error messages, spelling.
Don't always print the state.
odprobe.c
15938ae315a5016333429337da3aed929de503a3 09-Apr-2014 Rob Landley <rob@landley.net> Modprobe from Madhur Verma and Kyungwan Han.
odprobe.c
ca51eb88831521ae4df60e88d5f3cd3c4b99d46d 09-Apr-2014 Rob Landley <rob@landley.net> A getty implementation from Sandeep Sharma and Kyungwan Han.
etty.c
6f9d481062e171fb0bd1aa5cdcf043c0e4f9d733 04-Apr-2014 Isaac Dunham <ibid.ag@gmail.com> openvt tries opening several devices to get an fd that points to the current console, without a need for read or write permissions. O_RDWR implies that both O_RDONLY and O_WRONLY would work, so skip it. Reindent.
eallocvt.c
penvt.c
547c8d980bb5ae37f8002aead4e155cc5554dfca 04-Apr-2014 Samuel Holland <samuel@sholland.net> Here is a basic implementation of fold[0]. It does not support multibyte characters, though that would probably just require more switch cases.
old.c
7183a637432c9f0957e4e0e68b71e61a67fa89d6 02-Apr-2014 Rob Landley <rob@landley.net> Decided not to go with the sflate implementation of deflate/inflate. The decompression side's already reimplemented in compress, and I'm working on compression side.
zip.c
5b405827a2fa4c928c488f3e7b0197dfec60dcc2 30-Mar-2014 Rob Landley <rob@landley.net> Group headers by standard (POSIX or LSB) or function (internationalization, networking). Move headers standards ignore (but which have been there >15 years) to lib/portability.h. Fold xregcomp into lib since it's posix.
dev.c
kpasswd.c
ed.c
d4f01257d9d3b0d776114046a43d237a424fef77 29-Mar-2014 Isaac Dunham <ibid.ag@gmail.com> find: clarify and expand the help for find -type
ind.c
a2d558151a6308870a30a83bcd1975a80168a515 25-Mar-2014 Rob Landley <rob@landley.net> Promote cpio out of pending.

After some waffling I put it in "posix", even though it was last specified in
susv2 (where it was the obsolete 6 byte header entries predating susv4).

LSB specifies it, including the 8 byte header fields, but for the actual
command it just references SUSv2. (LSB isn't so much a standard as Red Hat's
"notes to self".)
pio.c
6d796b61a6b9f7ea8c15f26db6dec7e0b9b486fd 25-Mar-2014 Rob Landley <rob@landley.net> Several cpio bugfixes spotted by Isaac Dunham.
pio.c
dba5a37b9d1388bfd642d5404da6fce6849c5b1f 24-Mar-2014 Rob Landley <rob@landley.net> Most of the remaining cpio cleanup.
pio.c
9ea9911b20ed353ead9170366c44138489c2889c 15-Mar-2014 Rob Landley <rob@landley.net> Next round of cpio cleanup.
pio.c
2c451a89be65778ae3b1af011029181e917f988b 14-Mar-2014 Rob Landley <rob@landley.net> Cleanup cpio: use getline() instead of fgets(), have getline() allocate its own memory (instead of using toybuf), use perror_msg() instead of lower level verror_msg() (which is really an internal function needed to implement perror_msg()), don't set execute bits on created archive.
pio.c
bab79fe8d6fd57de66761de6263b405ad237edf7 14-Mar-2014 Rob Landley <rob@landley.net> Cleanup cpio: fiddle with help text, make option parsing require/exclude -iot combinations, move loopfiles_stdin() down after write_cpio_member() so we can hardwire it instead of using a function pointer that only ever has one value.
pio.c
c8f379c1f70378f24cd697043b651f3422582cf0 12-Mar-2014 Rob Landley <rob@landley.net> Patch from Isaac Dunham to add cpio -d, with a few tweaks by me.
pio.c
69664c24a11e8bba39890ec52aefa5654aab60bd 09-Mar-2014 Rob Landley <rob@landley.net> Promote freeramdisk from pending to other, default y.
reeramdisk.c
d96e0ba7926941910d99ecc87c7a76ed6c480622 09-Mar-2014 Rob Landley <rob@landley.net> Cleanup freeramdisk: tabs to 2 spaces, square brackets for option name, do optional cleanup under if (CFG_TOYBOX_FREE) guard.
reeramdisk.c
728b8ff0a01f5adb01c5a44886cba644f8415837 09-Mar-2014 Vivek Bhagat <vivek.bhagat89@gmail.com> Please find the patches attached herewith for adding 3 new commands -
1. freeramdisk - If we unmount or detach the RAM disk based file system the Linux Kernel
will not free the allocated memory associated with the RAM device. This can be useful if
one wants to mount this device again: All data will be preserved.
If we need to free the memory back to the Kernel, one can use the command: "toybox freeramdisk <RAM device>".

2. openvt - Successfully opens a new virtual terminal as mentioned with -c option
otherwise search and open next available VT.
with -s option it switches to new VT
with -s -w option, it switch back successfully to originating VT.

3. deallocvt - Deallocate specified virtual teminal.
if no virtual terminal is specified, it deallocates all unused VT.
eallocvt.c
reeramdisk.c
penvt.c
fa1625d84e803df9a6a92551a106d42c62464e88 22-Feb-2014 Rob Landley <rob@landley.net> Add crc code: zcat now works.
ompress.c
c5dabf136495a69e9226eaa8316332de57ad481e 22-Feb-2014 Rob Landley <rob@landley.net> Update inflate code: fixed tables, bugfixes, zcat alias.
ompress.c
33b022d873abc5255e22bf70687e5c0a260fb107 13-Feb-2014 Rob Landley <rob@landley.net> Ok, _maybe_ I'm rewriting deflate from scratch rather than cleaning up the existing one, but you can't prove it. I plead the fifth, third, twelvefth, twentieth, twenty-first, twenth-fith, and twenty-seventh.
ompress.c
3cd89c3f640e8ad2cdb422d0504554c2636a8412 10-Feb-2014 Rob Landley <rob@landley.net> Not buying it, eh?
ompress.c
b34b237e6229344ce460e117eb442db9a32fe813 08-Feb-2014 Rob Landley <rob@landley.net> Nothing to see here, move along.
ompress.c
5486075caee329fcc5ab7766a8a571fd3a45d363 04-Feb-2014 Rob Landley <rob@landley.net> Tweak help text.
ke2fs.c
0bf4c9578204245ea76cefbf782fd21578b299b1 02-Feb-2014 Rob Landley <rob@landley.net> gzip: alphebetize help entries and remove trailing literal \n, check for command line option groups, move len/dist tables to GLOBALS and calculate instead of including literal tables, collate enum and typedef, convert main to toybox option parsing.
zip.c
39f39b37a4cf895df816c56f174cd3064232bdbc 01-Feb-2014 Rob Landley <rob@landley.net> More gzip whitespace tweaks, and the occasional curly bracket. No actual code changes.
zip.c
7ea4ebf7a5e3321cabffd6cc56ba0ab8d238e852 31-Jan-2014 Rob Landley <rob@landley.net> Convert leading tabs to spaces for gzip.
zip.c
05910a2f8a7be91ffd8102dd81451e4388ed5367 31-Jan-2014 Rob Landley <rob@landley.net> Add Szabolcs Nagy's deflate/inflate code from git://git.suckless.org/flate

Confirmed with him on IRC it's ok to use under toybox license, glued the files
together and hammered square peg into round hole, no other changes yet.
zip.c
c8cce3f302ce47db42e65ab2078f7ca9027af968 29-Jan-2014 Isaac Dunham <ibid.ag@gmail.com> init: don't use VT_OPENQRY.

The original codepath checks if there is a VT available,
and if there isn't sets TERM to vt102 (unless TERM is set to something
other than "linux").
Otherwise, TERM is set to "linux" if it is not already set.

However, we can rely on getty/... to set TERM if "linux" is not suitable.
This has the benefit of dropping a slightly messy section.
nit.c
d7e41f1b6b290dd01512110c62a49bb9af426d5a 23-Jan-2014 Isaac Dunham <ibid.ag@gmail.com> -Eradicate (char*) casts for strings.
-Don't panic on failure to write messages.
-Don't panic on failure to fork; sleep an extra second instead.
-s/defualt/default/g
-Inline a couple functions called once.
(Don't inline inittab_parsing because it is too large).
nit.c
59d85e2bb065a3bdc27868acb7a65f89d872c7fa 16-Jan-2014 Rob Landley <rob@landley.net> Rename xmsprintf() to just xmprintf().

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.
disk.c
sck.c
roupadd.c
nit.c
etstat.c
s.c
yslogd.c
cpsvd.c
seradd.c
atch.c
bccb08d9eb1073f38facbf152b486178fe31392c 05-Jan-2014 Rob Landley <rob@landley.net> Whitespace changes, and collate a couple declarations/first assignment.
nit.c
fc33eb78115adf8a90875f822706bdf3d462524c 27-Dec-2013 Isaac Dunham <ibid.ag@gmail.com> Noticed a few differences from standard help messages, plus a small
problem with the port number handling: when no port was specified, it failed.
The solution ended up dropping a couple lines.
tpget.c
8471dc08c411822480b2bf622a5ea7fce1cef33d 27-Dec-2013 Ashwini Sharma <ak.ashwini1981@gmail.com> Attached is an implementation for ftpget/put commands.
tpget.c
1bc21f0f98417bbad16db22ddb35eedae63765e6 26-Dec-2013 Ashwini Sharma <ak.ashwini1981@gmail.com> An implementation for brctl (ethernet bridge control).
rctl.c
b9b218ae4c7704f5a06c2757deb6f1fc6959edb0 26-Dec-2013 Ashwini Sharma <ak.ashwini1981@gmail.com> arping command is implemented.
rping.c
620ae8b1eeec29d094da0d0e5cde97167f35218a 24-Dec-2013 Isaac Dunham <ibid.ag@gmail.com> The recent switch from get_int_value to to atolx_range left route
broken. So here's a patch to switch it to atolx_range as well.
oute.c
1685bd5be8f50c6bb876bdfe331d8fe20b304648 23-Dec-2013 Rob Landley <rob@landley.net> Two more commands (last and more) submitted by Ashwini Sharma.
ast.c
ore.c
c3cc96479f0ccadb48731d15b7236b82bd6278ea 23-Dec-2013 Rob Landley <rob@landley.net> telnet and telnetd from Ashwini Sharma's guys.
elnet.c
elnetd.c
2a2b22e0297e9b798692426cb8f2de68dc031edc 23-Dec-2013 Ashwini Sharma <ak.ashwini1981@gmail.com> Updating the email id in Copyright.
raceroute.c
656d5043b8a1a746cf7c949ee695db6c6251dfea 23-Dec-2013 Ashwini Sharma <ak.ashwini1981@gmail.com> Attached is an implementation for groupdel.

This is aliased to delgroup, for a requirement at my end.
Also lib/password.c is modified to along with.
roupdel.c
fe69830eba96afc47fdcdf4ee8456f9ef95407f5 23-Dec-2013 Rob Landley <rob@landley.net> Pending commands default n.
raceroute.c
25c1f3a967347c0a3b3e565b358b0e06b3f90225 23-Dec-2013 Ashwini Sharma <ak.ashwini1981@gmail.com> IPv6 support is added into traceroute command.
traceroute6 is made as an old toy of traceroute.
raceroute.c
afba5b8efdf1bac2c02ca787840a2be053c800f7 23-Dec-2013 Rob Landley <rob@landley.net> Fix some issues raised (albeit indirectly) by Isaac Dunham.

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.
ftpd.c
d10f39dcd08bf42b2e63789b15966ed908ff6439 22-Dec-2013 Rob Landley <rob@landley.net> Promote su from pending to lsb.
u.c
a44d9db1db09e3c64803dd3ea3868f8c1f009eae 22-Dec-2013 Rob Landley <rob@landley.net> Cleanup su.
u.c
68cff435a7641e92a4f261e12cd5dac53a1c7c2f 19-Dec-2013 Rob Landley <rob@landley.net> toynet.h went away, missed a file...
umpleases.c
7acbf5e49d0041ca006305c563be2f50f85f6ec7 08-Dec-2013 Rob Landley <rob@landley.net> Forgot to set new pending entry to default n.
cpsvd.c
2023d5804ac842b70b32b86f642e409b028df1da 07-Dec-2013 Rob Landley <rob@landley.net> Ashwini Sharma submitted tcpsvd/udpsvd.
cpsvd.c
83d3a0ba8d98a2d4fcf52d09a3c7f097baf0e1f2 01-Dec-2013 Rob Landley <rob@landley.net> Minor drive-by cleanups to cpio. Whitespace, curly brackets, replace %4 with &3, turn a switch/case into if/else.
pio.c
8f64b039e0b852da3d39758dfbe7f6c04d57897b 29-Nov-2013 Rob Landley <rob@landley.net> Promote ifconfig from pending to other.
fconfig.c
5ec4ab3113dcc813b6040d7ded38e297df99dc0e 29-Nov-2013 Rob Landley <rob@landley.net> Add xgetpwnam() to lib/xwrap.c.
roupadd.c
ftpd.c
9fff257357fee7a90e7e8b5b44c0abc18d019b64 27-Nov-2013 Rob Landley <rob@landley.net> Ifconfig cleanup.
fconfig.c
617588a7894be9e4f775932ff56e20ebfae97a93 24-Nov-2013 Rob Landley <rob@landley.net> The return of ifconfig cleanup.
fconfig.c
c8018a263d5e67c57411477fbb1e532d7139a75e 21-Nov-2013 Rob Landley <rob@landley.net> tftpd upgrade from Ashwini Sharma based on comments from Felix Janda.
ftpd.c
59272f2019b6f1a5b984fa2bbf36f9c0174b4dcb 16-Nov-2013 Isaac Dunham <ibid.ag@gmail.com> Support -F, and ignore -u since that's what we do anyway.
(Really, checking the original file date is the Right Thing, but I
haven't written it yet.)
pio.c
9dff9f250830f97fb033c50344ed5519fe166f05 11-Nov-2013 Rob Landley <rob@landley.net> fsck wrapper from Ashwini Sharma. (Note: this just calls filesystem-specific programs not yet in toybox.)
sck.c
78af19df5138759bbd008aeb8a332b21da0bc8b1 11-Nov-2013 Rob Landley <rob@landley.net> dumpleases (for dhcpd) submitted by Ashwini Sharma.
umpleases.c
35b40be7aa6597fc37be3016483df88a2c7cc93c 11-Nov-2013 Rob Landley <rob@landley.net> du from Ashwini Sharma.
d.c
f467297736e8edfa0fee9099243d167074595ab8 10-Nov-2013 Rob Landley <rob@landley.net> Stuff in pending should default n until cleaned up.
ftpd.c
9531f299079699193ea4534144420462f980f4fa 10-Nov-2013 Ashwini Sharma <ak.ashwini@gmail.com> Add tftpd
ftpd.c
98c322e881c6ab8d4f54c23feb1a106c23673640 02-Nov-2013 Rob Landley <rob@landley.net> Merge toynet.h into toys.h: musl supports it and micromanaging uClibc config options isn't very interesting anymore.
hcp.c
hcpd.c
fconfig.c
bd_client.c
etstat.c
oute.c
yslogd.c
raceroute.c
2baa73fb0d3999d541b2122b853b56e2bfdea56b 27-Oct-2013 Rob Landley <rob@landley.net> Promote nl from pending to posix, and add tests.
l.c
710a31f52681234a1a92497009ca08c1026797a1 27-Oct-2013 Rob Landley <rob@landley.net> Cleanup nl, add support for more bits of posix.
l.c
159e529c19382e7528a75633de240e3bf5cf68f5 28-Oct-2013 Isaac Dunham <ibid.ag@gmail.com> Here's a revised cpio.
I've reduced the use of malloc(), dropped an extra function call, and
-at least in theory- allowed proper handling of non-regular files.
(If we have a file we can't read, we still should record it when it's
of a type where file content is ignored).
pio.c
85ac09b6fe3e076930463819fec238fc6127c9fe 13-Oct-2013 Elie De Brauwer <eliedebrauwer@gmail.com> watch: Add support for -e option, remove memory leak and deal with not-wide terminals
atch.c
18ec03543c3731e1ea25182ef72c49ac5ec2d1c7 17-Oct-2013 Rob Landley <rob@landley.net> useradd, groupadd, and mkpasswd submitted by Ashwini Sharma.
roupadd.c
kpasswd.c
seradd.c
c50057e5be75b65c2359803ecc776378b44f2e3f 14-Oct-2013 Isaac Dunham <ibid.ag@gmail.com> I've finally gotten 'cpio' into a shape where it could be useable.
This version can archive and extract directories, sockets, FIFOs, devices,
symlinks, and regular files.
Supported options are -iot, -H FMT (which is a dummy right now).
It only writes newc, and could read newc or newcrc.

This does NOT implement -d, which essentially is equivalent to
mkdir -p $(dirname $FILE)
for every file that needs it.
Hard links are not supported, though it would be easy to add them given
a hash table or something like that.
I also have not implemented the "<n> blocks" output on stderr.
If desired, I can add it pretty simply.

There is one assumption this makes: that the mode of a file, as mode_t,
is bitwise equivalent to the mode as defined for the cpio format.
This is true of Linux, but is not mandated by POSIX.
If it is compiled for a system where that is false, the archives will
not be portable.
pio.c
03c1b0b202dd4179d472497b08667fad8d4c4530 09-Oct-2013 Rob Landley <rob@landley.net> Move blkid out of pending, default y.
lkid.c
ad1f8a0e598751aaf67d3fbd1611d35b03318f4e 08-Oct-2013 Rob Landley <rob@landley.net> Cleanup blkid
lkid.c
907d423f0093b0e31ce103fa7b86348431affb9b 07-Oct-2013 Rob Landley <rob@landley.net> blkid cleanup: more whitespace (including fixing a strange unindented if block), convert strange fstype inclusion to OLDTOY(), use "<1" arg so calling with no arguments doesn't hang, convert typedef to normal struct.
lkid.c
ef13522938025fbc56a1a6fc27c6887965d98630 07-Oct-2013 Rob Landley <rob@landley.net> blkid cleanup: Convert tabs to spaces.
lkid.c
730d5a851fd8d8d39497e1dbb334baa583816c61 07-Oct-2013 Brad Conroy <bconroy@uis.edu> Add blkid.c

I finally figured out the NTFS labels after reading a rant on how UTF-8 rocks
and how MS switched to UTF16 or UCS1 or whatever. The reason I couldn't grep
for the label (mine was "myntfs") was that it is stored as
"m\0y\0n\0t\0f\0s\0\0" - found another good use for hexdump :)

Notes:
I only have x86 to test on, so there are a couple of places that may need
bswap_{16,32} for endianness. I used a 65k buf instead of toybuf (4k) for
simplicity, but tried to organize it for toybuf if wanted. I have info on
more fs types, to patch with after review. blkid does output for all devices
if 0 args -> read /proc/partitions?
lkid.c
3ae3cf47bb4bbaa75f27064cdc9b75a3b0e8c9aa 06-Oct-2013 Rob Landley <rob@landley.net> top submitted by Ashwini Sharma
op.c
7dc773bad5dc436518b822ba8c8ae400b5f36272 22-Sep-2013 Rob Landley <rob@landley.net> traceroute from Ashwini Sharma
raceroute.c
12c8814cc534f40ca74441f99313f7a71a88cb72 06-Sep-2013 Rob Landley <rob@landley.net> Ashwini Sharma submitted route.c, adding it to pending.
oute.c
f538f420deffc242742ce2d0661a39fa9a3b5399 03-Sep-2013 Rob Landley <rob@landley.net> Remove itoa/utoa, let libc do this with sprintf.
etstat.c
yslogd.c
79d8bc70539b7a3d459630c97e38d3cdff77e591 03-Sep-2013 Rob Landley <rob@landley.net> Convert dhcp/dhcpd from utoa() to sprintf().
hcp.c
hcpd.c
455865a837f2a6c44f91e5a5a2cd40c3a64d4b68 28-Aug-2013 Rob Landley <rob@landley.net> Rewrite pmap to be simpler and match other implementation's output more closely.
map.c
8b5c671958071ee2a9967551f0490623b73e30b5 27-Aug-2013 Ashwini Sharma <ak.ashwini@gmail.com> Add pmap.
map.c
dccfb2a9c156d03b6399120ae3dd4b23ff00b43f 26-Aug-2013 Felix Janda <felix.janda at posteo.de> syslogd: cleanup

- fix bugs introduced in the cleanups
- inline addrfds() and open_unix_socks() and simplify them
- use xpidfile()
- remove isNetwork from struct logfile
- invert the meaning of facility and level in struct logfile so
that they are automatically correctly initialized
- fix memory leak regarding the filenames of logfiles
- TT.sd was unused
yslogd.c
8fad256b1956bb478fc416a21573f0dec3bf11c0 24-Aug-2013 Felix Janda <felix.janda at posteo.de> syslogd: cleanup

- fix bugs in previous cleanups
- remove config from struct logfile
- simplify parse_config()
yslogd.c
6aa39fc3b236d67e67d25f53f4e03e6da4f8cde0 23-Aug-2013 Felix Janda <felix.janda at posteo.de> syslogd: stop abusing arg_list
yslogd.c
afa4de01ff6f97382cb1d3de1b29ab03f3e2a9c6 23-Aug-2013 Felix Janda <felix.janda at posteo.de> syslogd: cleanup

- simplify resolveconfig() -> now logger_lookup is also used in syslogd.c
- inline addrfds
- small cosmetical changes in parse_config_file()
yslogd.c
dcdd3aa9cb6f49f766f94907ba42dccdfba16a99 21-Aug-2013 Felix Janda <felix.janda@posteo.de> syslogd: cleanup

- remove flag macros
- remove some unecessary gotos
- inline open_udp_socks() and getport()
- simplify resulting open_logfiles()
Now in the syslog.conf the port numbers for remote hosts are no
longer allowed to be hexadecimal. If there is need for hexadecimal
port numbers, one can as well accept octal ones and use base 0
in strtoul.
yslogd.c
57da5bfa162f7c6cd6f165d0cdbedecda4d7d1e0 20-Aug-2013 Felix Janda <felix.janda@posteo.de> syslogd: cleanup

- Remove structure fd_pair so that sigfd can go into GLOBALS
- Remove struct typedefs
- Inline setup_signal()
- Small fix in Usage message
yslogd.c
7459c34c83156f37eb31dbba83807d497a64277f 20-Aug-2013 Rob Landley <rob@landley.net> Add watch and ps, sent by Ashwini Sharma.
s.c
atch.c
276a99f9fe7c2819ea61accfcb35088707882b58 19-Aug-2013 Felix Janda <felix.janda@posteo.de> In logger and syslogd remove duplicated definitions of facilities and priorities

In syslogd.c get the definitions from <syslog.h>. For logger.c we
can't do this as well since it causes multiply defined symbols.
Instead we define a non-static lookup function in syslog.c for
logger.
ogger.c
yslogd.c
205b496e42ceb72bf0755fec4f4675a467c401e1 19-Aug-2013 Rob Landley <rob@landley.net> Move grep from pending to posix, switch default to y.
rep.c
fce85e9d287cef03777d3c2d97b2a0b43242ee21 19-Aug-2013 Rob Landley <rob@landley.net> Finish grep rewrite and fleshing out test suite. Several of the grep tests fail with the ubuntu version, I _think_ these are upstream bugs? (Second opinions welcome...)
rep.c
9fbd5ef63087f0825ef9903e05a8afdc6b76166f 18-Aug-2013 Rob Landley <rob@landley.net> Use OPTSTR_command macro for more oldtoys, to avoid keeping two option strings in sync. (todo: figure out how to make OLDTOY() automatically use macro. Still need the raw version for subset ala cp/mv though.)
grep.c
59bf7ce6a5114ed228cf3bf847ff96a35aa86f54 17-Aug-2013 Strake <strake888@gmail.com> su: cleanery

* make help message more like others
* s/TT\.(.)Argu/TT.\1/g
* move environ to toys.h
* simplify failure messages
* clear password before quit
* not check what execve returns
* -lc
u.c
415c960b22b4084057577fc371510864378354dd 15-Aug-2013 Rob Landley <rob@landley.net> DHCP client and server, from Ashwini Sharma.
hcp.c
hcpd.c
0d26ded25ea945362c9752016120b3cfdedb2833 13-Aug-2013 M. Farkas-Dyck <strake888@gmail.com> Add su.
u.c
030970bd70e14849b0f2598bfa0982402fc7e2e7 12-Aug-2013 Rob Landley <rob@landley.net> grep: -om counts matching lines, not matching parts of lines.
rep.c
31f07104445bc0c0cbc942d86ee9d31d08c344d8 12-Aug-2013 Rob Landley <rob@landley.net> More grep work: name "(standard input)" correctly, make multiple -e work, regex with embedded newline, multiple regex without -E.
rep.c
dd2d23930241a30a8eb4f0fc9d70bc86c4a6cb6e 12-Aug-2013 Rob Landley <rob@landley.net> More grep cleanup, and make OPTSTR_command macros for use with OLDTOY()
rep.c
9d44ab3f179e0e914abc1d6edc79a22c265baaa9 12-Aug-2013 Isaac Dunham <ibid.ag@gmail.com> fdisk: remove goto; inline valid(); merge xprintf() calls; shrink sys_types

sys_types had used char[_PATH_MAX] for 22-char max strings.
When this is done 48 times, it nearly doubles the size of toybox.

goto should only be used when it is the easiest way to bail out.
That does not mean "when we need to fall back to returning a one-liner
that asks user input", nor is it suitable for looping:
C has while () and do { } while (); for a reason.

valid was called once. As such, it belonged inline.

print_*menu could probably be inlined, but I did not do this yet
in case a table-driven approach works better.
This uses C string concatenation to break an overly long message up,
while not wasting function calls.
disk.c
1c8b0090a6529ce35f877973778e7814387c1e3f 12-Aug-2013 Rob Landley <rob@landley.net> Ashwini Sharma said that Kyungwan Han should be in the contact info for the commands he sent recently.
disk.c
logd.c
etstat.c
grep.c
yslogd.c
e49fe14705f78ba5a865ca4efd6ee53c78eeb253 10-Aug-2013 Felix Janda <felix.janda@posteo.de> Add daemonize function to lib for klogd and syslogd
logd.c
yslogd.c
35104f47f9d36a9afb43de8c863137fe76c9ff3f 10-Aug-2013 Felix Janda <felix.janda@posteo.de> Cleanup klogd

Remove #if and inline most functions
logd.c
17ea5644d93ff1ced28d3602ac244cb6022f3ba6 07-Aug-2013 Isaac Dunham <idunham@lavabit.com> This is the preliminary version of lspci text output support (the location
of pci.ids is hard-coded to /usr/share/misc/pci.ids, as found on Debian/Ubuntu).
+88 lines in two files, including reformatting, comments, whitespace,
and build configuration as well as new code.

The changes:
-Add library code to look up descriptions.
-Add a counter for -n (for the sake of -nn)
-Add the file stream "db" to GLOBALS and open it conditionally
-Add name fields to bufs
-Look up text if enabled and -n is passed never or twice
-Print text if lookup succeeded
spci.c
142ebdcfbe01007cd86d699d85dc608bbcaacf82 05-Aug-2013 Ashwini Sharma <ak.ashwini@gmail.com> I have implemented FDISK command.
This supports '-l' option for listing and other options [-bCHS] for giving
values like block size, Cylinders, Heads,...
disk.c
dad378bb17f1910014383bf196e87028e98d81d6 04-Aug-2013 Rob Landley <rob@landley.net> Cleanup grep, make it pass the current test suite.
rep.c
147b2fc06e449f106c9f4d47290e2c0b5967af39 04-Aug-2013 Rob Landley <rob@landley.net> System V style init, submitted by Kyungwan Han.
nit.c
f97eaf158aa0baf868f0b19d192f7d302c1484e9 02-Aug-2013 Rob Landley <rob@landley.net> Cleanup grep: help text, whitespace, add parentheses.
rep.c
1fa68247345fa6e2cefe4fb4d88ef75f614b18c4 01-Aug-2013 M. Farkas-Dyck <strake888@gmail.com> Found the fault. My method of -w fails sans -E, so I just disallow it.
Kernel build never uses -w sans -E anyhow.
rep.c
9c8047a9395e1ca043a0b76d666b66fe4db410b3 31-Jul-2013 Rob Landley <rob@landley.net> Move renice from pending to posix, default y, fix link to standard.
enice.c
9e89d47a29dbcc353004c968c0b5da05ff89c653 31-Jul-2013 Rob Landley <rob@landley.net> Cleanup renice and implement '|' (required option) in argument parsing.
enice.c
0c03786b5ab1a81bf5abdbd4bc0be9d7379df9dd 30-Jul-2013 M. Farkas-Dyck <strake888@gmail.com> Add renice.
enice.c
e3a6c4e8a0b0be3694e3f5c660ae661d222a66d7 27-Jul-2013 Felix Janda <felix.janda@posteo.de> Fix lspci -e
spci.c
50a0daae792c9586d669aa729752beecbf5d18e7 27-Jul-2013 Strake <devnull@localhost> add nl
l.c
00385c4f6a3b8b7aeb4b148cad687dae92512597 29-Jul-2013 Ashwini Sharma <ak.ashwini@gmail.com> The attached KLOGD patch is an improved version of the one you have in hg.
This also has a fix for boundary condition crash.
logd.c
bf05d4a1bf90d973476a851d319462939259ab7d 25-Jul-2013 Felix Janda <felix.janda@posteo.de> logger: Some cleanup
ogger.c
5335d807defb4cd9e61498c61a8d2ca0f73bb916 27-Jul-2013 Strake <strake888@gmail.com> grep: s/astrcat/x&/g
rep.c
0dbd779b58602d7eaded0bd02399daf62adc0fd4 08-Jun-2003 Strake <devnull@localhost> grep: add -b flag
rep.c
7b7b284ce4c1bd53d442927d9a570fcf84e0187c 08-Jun-2003 Strake <devnull@localhost> grep: add -w flag
rep.c
f97cc9ff9768b746c26c4989a632cc3891e80d76 27-Jul-2013 Felix Janda <felix.janda@posteo.de> lspci: use toybuf instead of dynamic memory allocation
spci.c
fe03a1fd159ae3272a868d248ddc1c56b20cfadd 26-Jul-2013 Isaac Dunham <idunham@lavabit.com> I've written an lspci implementation.
Currently it supports -emkn; -e is an extension ("class" is a 24-bit number,
but lspci only shows 16 bits; one person on the Puppy forums mentioned
that they need those last 8 bits).
-n is a no-op for compatability with standard lspci.
spci.c
0c2509957b6291fb136eca4a5c278466045ce31d 26-Jul-2013 Isaac Dunham <idunham@lavabit.com> This removes xz_mode.
Mostly outdated comments and unused function parameters/struct members.
zcat.c
a6b99efdebc9df9d6b8b8ef3472fc2cb733d4694 19-Jul-2013 Felix Janda <felix.janda@posteo.de> Implement test
est.c
fe850691155be9a23cc1480e7afdb77028d87e78 25-Jul-2013 Rob Landley <rob@landley.net> pgrep and pkill by Madhur Verma,
grep.c
74323a5a5369573804a8d5ac36a3d4f216a24184 25-Jul-2013 Rob Landley <rob@landley.net> netstat by Ranjan Kumar.
etstat.c
4c7cf4e3bdc9c839e5cce087d304482dcced8074 25-Jul-2013 Rob Landley <rob@landley.net> syslogd by Madhur Verma.
yslogd.c
174ba2bed2f33fe90926b08a3e9ec4e3ce7febab 24-Jul-2013 Strake <devnull@localhost> grep
rep.c
62b151ea166039dabd767be290a45814a9d29ec3 22-Jul-2013 Rob Landley <rob@landley.net> More ifconfig cleanup: Remove if_list, unify get_device_info and display_ifconfig(), inline another magic constant #define that's only used once.
fconfig.c
b3c552023cab71048f23ffbce2f5f32b33cfc646 19-Jul-2013 Rob Landley <rob@landley.net> Another round of ifconfig cleanup.
fconfig.c
a817a02c00a06fbf2090259320968addb5f46e58 19-Jul-2013 Rob Landley <rob@landley.net> Replace users of xexec(toys.optargs) with xexec_optargs(0) to avoid free/reuse bug during argument parsing.
logd.c
39af4ae3e61d352c3faa7d1b87e6ac6fdb69add1 18-Jul-2013 Isaac Dunham <idunham@lavabit.com> make xzcat use loopfiles(), thereby allowing regular usage.
zcat.c
9641a3c6c5447c76f56cefd1844a4e545c015822 18-Jul-2013 Isaac Dunham <idunham@lavabit.com> xzcat: remove XZ_(PREALLOC|SINGLE), inline xz_dec_bcj_create

Because we only use XZ_DYNALLOC, there's a bunch of dead code.
This patch removes the #ifdef's and if()s associated with support for
multiple modes.
single_call was only used to store the mode; it is no longer needed.
A little bit of reorganization was needed to reduce the number of prototypes.
Documentation associated with dead code was dropped.

There are still some relics of multiple modes in the continued presence
of "XZ_DYNALLOC" and xz_mode.

Additionally, I inlined xz_dec_bcj_create; it was called once.

This loses about 125 lines, mostly comments.
zcat.c
9bd2e1896e2660bf39128ec2920e93e077fe0be9 15-Jul-2013 Rob Landley <rob@landley.net> klogd, submitted by Ashwini Sharma.
logd.c
e999ca008416e3d41c1079bcb4d151b43c95dc3a 13-Jul-2013 Strake <devnull@localhost> add grep
rep.c
c810f9f80b9db62de09b6cf4c6ca770eed72ce53 06-Jul-2013 Isaac Dunham <idunham@lavabit.com> This inlines CRC64, and nothing more.
The functions involved were called only once.
zcat.c
bc9cfe08cfa2c47b2d106eda7b5d0ecc73f47238 15-Jun-2013 Rob Landley <rob@landley.net> Force 64 bit math in expr, from Daniel Verkamp
xpr.c
fdc0a0e74f2ac366399c152196a2498a0e98ad0a 08-Jun-2013 Rob Landley <rob@landley.net> Yet more ifconfig cleanup.
fconfig.c
32526f25a7e62b1fe82d1ea30dc4a8506d0ee0d4 05-Jun-2013 Rob Landley <rob@landley.net> Start of expr, by Daniel Verkamp.
xpr.c
cfb4c488eeeae92aaf075b7181f4e1e6367c06e8 03-Jun-2013 Rob Landley <rob@landley.net> More ifconfig cleanup, described on list.
fconfig.c
40cc4168136c0fbb939dec8ffd7828c013f1c568 02-Jun-2013 Rob Landley <rob@landley.net> Move stat from pending to other, default y.
tat.c
e340e4ea3d70a9a3a0397a9f142dbde5cabab5fc 02-Jun-2013 Rob Landley <rob@landley.net> Stat cleanup.

Move ftname out of GLOBALS into 'F' handler. Make 'i' zero pad output (zeroes
in middle of ID can get lost).
tat.c
5a26a86cec424d728d43523988ca70aa56ee76c9 02-Jun-2013 Rob Landley <rob@landley.net> Stat cleanup.

lib: rename format_mode() to mode_to_string() (echoing string_to_mode), make it
take a normal char * argument.

stat: collapse big switch/case statements that only have one line each
into if/else staircase (much fewer lines of code). Remove return type
(other stat implementations print ? for unknown escapes, so do that here).
Inline do_stat() and do_statfs(). Set default string in normal local
variable "format". Remove unnecessary struct d. Restructure stat logic to
"if (flagf && !statfs()) else if (!flagf && !stat()) else perror_msg();"
Teach %N to add -> symlink. Judicious use of putchar() instead of xputc to
let FILE * do its job collating output.
tat.c
ceca2e3d77bd2d922f3ebb19c9f74dd72639fae0 02-Jun-2013 Rob Landley <rob@landley.net> Stat cleanup.

Put global stat info in a union so we don't have to malloc it and thus don't need an explicit size tracked in main(). Make date_stat_format() take a timespec and take advantage of stat having an embedded timespec (nanosecond printing), typecast the long long prints for XYZ because on some 32 bit platforms it's an int.
tat.c
e8d186a510b929d84fefaccf8822fc0e6d3c1b0d 28-May-2013 Rob Landley <rob@landley.net> Stat cleanup.

From the mailing list:

Ok, first thing: clean up the help text. I realize what's there is copied verbatim from the man page, but that man page sucks. ("modification time" vs "change time"?) Took a bit of finagling to fit it in 80x24, but just made it.

GLOBALS() indent was still tab, change to two spaces. And I tend to put a blank line between options lib/args.c automatically fills out and normal globals.

We never do anything with date_stat_format() but immediately print it, might as well make the function do it.

The types[] array in do_stat() is a rough edge. Hmmm... there's no else case that sets the type in case it was unknown (such as 0). In theory, this never happens. In practice it means I can cheat slightly, given this observation:

$ find linux -name stat.h | xargs grep 'S_IF[A-Z]*[ \t]'
linux/include/uapi/linux/stat.h:#define S_IFMT 00170000
linux/include/uapi/linux/stat.h:#define S_IFSOCK 0140000
linux/include/uapi/linux/stat.h:#define S_IFLNK 0120000
linux/include/uapi/linux/stat.h:#define S_IFREG 0100000
linux/include/uapi/linux/stat.h:#define S_IFBLK 0060000
linux/include/uapi/linux/stat.h:#define S_IFDIR 0040000
linux/include/uapi/linux/stat.h:#define S_IFCHR 0020000
linux/include/uapi/linux/stat.h:#define S_IFIFO 0010000

I.E. the only place the I_IFBLAH constants occur a stat.h header in current linux code is in the generic stuff, it doesn't vary per target. (The access permission bits are actually subtly standardized in posix due to the command line arguments to chmod, although I'm sure cygwin finds a way to break. But the type fields, not so much. But linux has to be binary compatible with itself foreverish, and that's all I really care about.)

So, we have ALMOST have this going by twos, except there's no 8 and there is a 1. so let's make the 1 the default, feed a blank string into the 8... No, duh: octal. So it's actually 2, 4, 6, 8, 10, 12. So make the loop look like:

filetype = statf->st_mode & S_IFMT;
TT.ftname = types;
for (i = 1; filetype != (i*8192) && i < 7; i++)
TT.ftname += strlen(TT.ftname)+1;

Yes that's linux-specific, and I think I'm ok with that.

Printing all zeroes and pretending that's nanosecond resolution... either support it or don't. Let's see, supporting it is stat->st_atim.tv_nsec and similar... no mention of nanoseconds in strftime() (et tu, posix2008?) so pass it as a second argument and append it by hand... (Need to test that against musl...)

When we hit an unknown type in print_it() we print the literal character, which is right for %% but what about an unknown option?

$ stat -c %q /
?

Eh, I guess that's a "don't care". It didn't die with an error, that's the important thing.

I have a horrible idea for compressing the switch/case blocks, but should probably check this in and get some sleep for right now...
tat.c
2586c269d6b08d8cb9899aa64b02265b54a96d3b 26-May-2013 Felix Janda <felix.janda@posteo.de> stat: Separate stat and statfs
tat.c
9d2f77711f6d2ecf49a9022128ecea957073a2db 25-May-2013 Felix Janda <felix.janda@posteo.de> stat: Add support for stat'ing multiple files
tat.c
073733195da21acbd4988f2679a83cf65971f97e 21-May-2013 Rob Landley <rob@landley.net> More ifconfig cleanup, inlining show_ip_addr(), hex_to_binary(), and set_hw_address().
fconfig.c
c3ddf43fc31fcc1abd28476d139b812095d57ba9 21-May-2013 Rob Landley <rob@landley.net> Next round of ifconfig cleanup, to be described on mailing list.
fconfig.c
c94966f75df87269d4bd9b5a0d200f2414ed3d3d 19-May-2013 Rob Landley <rob@landley.net> Yet more ifconfig cleanup. (As described on the mailing list [CLEANUP] thread.)
fconfig.c
970bf321a3ea466cc6113dc612002f019321fc9a 13-May-2013 Rob Landley <rob@landley.net> Ifconfig cleanup to option parsing.
fconfig.c
d7a4e11cb25930d6f381d82b171e0b5c71009024 08-May-2013 Rob Landley <rob@landley.net> Some work I did over the weekend on nbd_client, not sure where I left off...
bd_client.c
018f7ffa5c69313492bc0fc3d408170665a8af88 26-Apr-2013 Felix Janda <felix.janda@posteo.de> Fix find -mtime
ind.c
128349aff36b3571a71611a13e674706e1e7b51f 22-Apr-2013 Felix Janda <felix.janda@posteo.de> stat: Remove unimplemented options and clean up help text
tat.c
5a221e6b84e9eab02e24ca541530e28eb7cfddac 22-Apr-2013 Felix Janda <felix.janda@posteo.de> Add library function for the file permission formatting in ls and stat
tat.c
f01534401412812bc1d904812dfb4b0a31ee8fff 26-Apr-2013 Rob Landley <rob@landley.net> Add posix headers to toynet.h, move xioctl() to lib.c, introduce lib/net.c and move xsocket() to it.
fconfig.c
d8bd2214070075d1664e3abea8ace297386cc5f9 25-Apr-2013 Rob Landley <rob@landley.net> And another round of ifconfig cleanup.
fconfig.c
10373122468cba009bbe8ff55fad564514d757ac 25-Apr-2013 Rob Landley <rob@landley.net> Yet more drive-by cleanup of ifconfig.
fconfig.c
d8966043ca52618193a3412c2f59b52d20365128 21-Apr-2013 Felix Janda <felix.janda@posteo.de> More find cleanup
ind.c
8faf0683c63cb7081e48b1fce3393b4cf2d43ef8 20-Apr-2013 Felix Janda <felix.janda@posteo.de> More find cleanup
ind.c
553aacf6e39bb18dff87ce1a48210a97408b93dd 20-Apr-2013 Felix Janda <felix.janda@posteo.de> stat cleanup
tat.c
35878c38d3984e0b6d33d8abe5fadb1a0737571f 19-Apr-2013 Felix Janda <felix.janda@posteo.de> stat: Reindent from 4 to 2 spaces
tat.c
be93c91c8cbaaa8e2fa2980a48d0c56a605b1aa9 21-Apr-2013 Rob Landley <rob@landley.net> More ifconfig cleanup.
fconfig.c
1fb482339645d2d9b496f3113391c518211eb4d9 20-Apr-2013 Rob Landley <rob@landley.net> ifconfig cleanup (Reorder functions to eliminate need for prototypes, put main at end).
fconfig.c
520c89051909e21d31a41af889b225fe5e55dbb5 18-Apr-2013 Felix Janda <felix.janda@posteo.de> find: Improve operator processing
ind.c
eb5d055992dcb2a2ed56ffbffaad5b4b6f4f02bc 20-Apr-2013 Rob Landley <rob@landley.net> Another round of ifconfig cleanup.
fconfig.c
d87b66913b64adcbeaeb664bd4e3a6fa79764c0c 17-Apr-2013 Rob Landley <rob@landley.net> More ifconfig cleanup.
fconfig.c
1d99390f798ae503f9e92da84ffb3a0773f21d2e 17-Apr-2013 Rob Landley <rob@landley.net> Fix the help commit I screwed up, and replace leading tabs with spaces.
fconfig.c
9a186f8559486c16f24dc87468f947a5f7b42655 17-Apr-2013 Rob Landley <rob@landley.net> More ifconfig cleanup.
fconfig.c
b002a8aa4f21ad46a93a97eb2b2b3a3a84d972ab 17-Apr-2013 Rob Landley <rob@landley.net> Isaac Dunham's help string cleanup.
fconfig.c
88e2cb66b87fc0ce5778c301246f867789811b63 14-Apr-2013 Isaac Dunham <idunham@lavabit.com> ifconfig uses __caddr_t in one location; this is not guaranteed to work everywhere. It does not compile OOB on musl, so I changed it to the portable equivalent, char *. This compiles on musl, and should compile anywhere.
fconfig.c
18993e2f3af291eea7a175547862d057b7d83708 13-Apr-2013 Rob Landley <rob@landley.net> Convert tabs to spaces.
zcat.c
4ffface11f7857683ddb1f935fb05809821458ab 13-Apr-2013 Isaac Dunham <idunham@lavabit.com> xzcat: more cleanup and some shrinking.

-drop __always_inline (c. 1.5k of binary size),
-remove the xz_dec_bcj_end and memzero macros
(memeq is left because of negative returns),
-disable XZ_DEC_SINGLE and XZ_DEC_PREALLOC, since we aren't using them.
(160 bytes)
-Merge xz_dec_lzma2_end into xz_dec_end
-Move xz_crc32 to where it's defined.
(That does not seem to be duplicated elsewhere in toybox.)
zcat.c
db40cf0cb2c830366025ce9be4dfed94270f863e 12-Apr-2013 Rob Landley <rob@landley.net> More ifconfig cleanup.
fconfig.c
1cabcc2e9a75fc8ba0c49e888907e3e310cfcd41 11-Apr-2013 Rob Landley <rob@landley.net> More xzcat cleanup.
zcat.c
052491266f02585c7c990100cb7457e56755c336 11-Apr-2013 Isaac Dunham <idunham@lavabit.com> More of same.
Actually, it's not quite the same:
-use crc_init(xz_crc32_table,1) -- I guessed on this one based on a match between magic constants, then tested it. First try was wrong, but this works.
(This is the sole difference in terms of actual _code_, as opposed to cleaning up defines and the like--here, it adds 48 bytes to final size if xzcat is the only toy, but drops 32 bytes if bzcat is also enabled...)
-Move some crc64 code to where the comments are. This puts them near the area where they're used.
-Remove some relics of separate files (we had half a dozen "this file is in the public domain" notices, a duplicate include, and used extern declarations for functions in the samefile)
zcat.c
d111ad2e321429a8fe29ba2c0ba4019ab8799e4a 11-Apr-2013 Rob Landley <rob@landley.net> More cleanup on find.
ind.c
791ff1ee1d8e897d8f3fe3d555879f91de5b2016 11-Apr-2013 Rob Landley <rob@landley.net> Redo find's indenting from tabs to two spaces.
ind.c
f88db7156dd1b61da3b238574e051058d1aa6752 10-Apr-2013 Felix Janda <felix.janda@posteo.de> Partial cleanup of find

- Remove unnecessary headers
- dump_node is not used anywhere
- exec_buf is unused
- Replace SUCCESS with 1 and simplify code accordingly
- a==0 -> !a
- Simplify an incremation pattern using pre-increments
- Add static keyword to functions
- Make error messages print to stderr
ind.c
9bd7a1696e7060e51ec0d0aaef477eaf85aaf216 10-Apr-2013 Rob Landley <rob@landley.net> Some xzcat cleanup by Isaac Dunham.
zcat.c
a586f201d612e695e49536cb7610e94bbad2c236 05-Apr-2013 Rob Landley <rob@landley.net> More ifconfig cleanups, mostly removing unused code.
fconfig.c
70c5ea6dba487cefb8d676fe9637c8596cfd366c 05-Apr-2013 Rob Landley <rob@landley.net> Drive-by cleanup on ifconfig.
fconfig.c
4cc204238282e2c5b631c2f8dfc607a3e9eb71d0 05-Apr-2013 Rob Landley <rob@landley.net> An ifconfig bugfix from the original submitter.
fconfig.c
a6124a5bbbbf1b255479e68aed4dee5489197949 02-Apr-2013 Rob Landley <rob@landley.net> Kyungwan Han submitted ifconfig.
fconfig.c
2edb485af88410fba64649d2bded8c5af0f5cc08 02-Apr-2013 Rob Landley <rob@landley.net> Clean uudecode up the rest of the way, move pending->posix and default y.
udecode.c
28df7d57c5b5ae67edd4bc70c00f5dabf9d61a4a 29-Mar-2013 Rob Landley <rob@landley.net> More uudecode cleanup.
udecode.c
f529a550a4de36fcbbf3cd4c2d189be8a4535154 29-Mar-2013 Rob Landley <rob@landley.net> More uudecode cleanup.
udecode.c
f597042c66a3021768ee471f7b2a494ac32ee356 27-Mar-2013 Rob Landley <rob@landley.net> Incremental cleanup of uudecode.
udecode.c
b7e8385a24101d863482b6572d78efeea457a6ef 27-Mar-2013 Rob Landley <rob@landley.net> Fix the USE() macro around NEWTOY, tweak help text, remove unnecessary wrapper, tweak whitespace and curly brackets.
udecode.c
94c95594994b10e3452c4c3e9b238e2364f981a3 27-Mar-2013 Rob Landley <rob@landley.net> Add help text for pending test command. (No actual implementation yet.)
est.c
f5b4bbef5f186aa705d961c62817eab388f1c13e 26-Mar-2013 Rob Landley <rob@landley.net> Finish uuencode cleanup, default y, move it from pending to posix.
uencode.c
240d0d622bfb1209b484f853d76b260999391776 25-Mar-2013 Rob Landley <rob@landley.net> First round of uuencode cleanup: generate table, tweak help text, remove unnecessary output buffers, simplify base64 functions..
uencode.c
911ec8a10bbee5f2003508f57cbb67953dff3178 24-Mar-2013 Rob Landley <rob@landley.net> Logger, by Ilya Kuzmich.
ogger.c
64427a889b424c55e6917e5110e66ba004610fa9 22-Mar-2013 Rob Landley <rob@landley.net> uuencode/decode tests and tweaks from Erich Plondke.
udecode.c
uencode.c
29264d89d8631e08b4294dab92a503062814d2db 20-Mar-2013 Rob Landley <rob@landley.net> Explain that code in the "pending" directory isn't necessarily ready for prime time.
EADME
121db2acac61d39645fd8297d8ca3b6aa1ef073d 18-Mar-2013 Rob Landley <rob@landley.net> uuencode and uudecode by Erich Plondke.
udecode.c
uencode.c
02656c772de13eb160352211ae0110ce9cb2d9b0 18-Mar-2013 Rob Landley <rob@landley.net> The old nbd-client I wrote in 2010. Needs cleanup.
bd_client.c
33cdec57f9b72eab4a15c8caa09631717fa64c31 16-Mar-2013 Rob Landley <rob@landley.net> Move mdev into the pending directory, since it's not done yet.
dev.c
971d57ec4a9e14527e7582a5723d9634182d3fa7 16-Mar-2013 Rob Landley <rob@landley.net> Isaac Dunham took the public domain xz-embedded code and made an xzcat. I glued all his files together into one big one and threw it in pending. It needs something between cleanup and a complete rewrite.
zcat.c
04fc2dba80fd2e62e59d0fd1600ba764afaebef9 13-Mar-2013 Rob Landley <rob@landley.net> Remove more debug code from find.
ind.c
db12a37a97df8f0098e99f50f49a97175861ff28 13-Mar-2013 Rob Landley <rob@landley.net> A couple quick fixes to find so I can try it out.
ind.c
55da839b38780fd0ebc637c34c06c2d7eb284fa5 13-Mar-2013 Rob Landley <rob@landley.net> Find by Gurang Shastri.
ind.c
f9d7c95149640c25df6837a90c0a8f91caea27ac 05-Mar-2013 Rob Landley <rob@landley.net> Call stat "stat" instead of "st" in menuconfig. Use xmalloc() instead of malloc.
perror_msg() sets return code already. Truncate long english messages that
don't get translated. Don't return int from a function hardwired to always
return 0. Don't test for that hardwired return value to change and print an
error message that can never happen and would be a duplicate anyway.
More whitespace cleanup. C does not require typecasting void *.
Remove 404 URL to stat.html that isn't in posix.
tat.c
61dacaad14e358bcadc2b18fce94b44a2867f2d6 05-Mar-2013 Rob Landley <rob@landley.net> Fix whitespace in submitted stat command.
tat.c
e3f0787a94c1727a4c59bbd46c612bcff298e027 05-Mar-2013 Rob Landley <rob@landley.net> Fix another allyesconfig build break in the pending directory.
ke2fs.c
cc99be215388cc3ffce0d8edc552cb344259b45c 24-Feb-2013 Rob Landley <rob@landley.net> Sed's still just a stub, but clean it up enough so it at least compiles.
ed.c
dd009d622ad7b6094efe073f0974a5e3a523cc32 22-Feb-2013 Rob Landley <rob@landley.net> Move some unfinished commands to the "pending" directory.
ke2fs.c
ed.c
h.c
b1c002ac55339d7b7ec53214397f841c56cf6488 11-Dec-2012 Rob Landley <rob@landley.net> Add stat submission to new "pending" directory, along with infrastructure to support pending.
EADME
tat.c