PC-BSD/trueos 46a4fa6libexec/rc rc.subr

rc.subr: Implement list_vars without using 'read'

'read' pessimistically read(2)s one byte at a time, which can be quite
silly for large environments in slow emulators.

In my boring user environment, truss shows that the number of read()
syscalls to source rc.subr and invoke list_vars is reduced by something like
3400 to 60.  ministat(1) shows a significant time difference of about -71%
for my environment.

Suggested by:   jilles
Discussed with: dteske, jhb, jilles
Differential Revision:  https://reviews.freebsd.org/D18481
DeltaFile
+19-7libexec/rc/rc.subr
+19-71 files

UnifiedSplitRaw