[Toybox] [PATCH] roadmap: describe glibc commands

Isaac Dunham ibid.ag at gmail.com
Fri Apr 11 09:58:22 PDT 2014


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.

--
getent is lame because it (a) only handles a hardcoded list of
passwd-style databases (all of them located in /etc), and 
(b) all it does is dump all contents or retrieve the exact contents of
the line beginning with a key.

This (untested) shell script is roughly equivalent to getent
(apart from the lack of error/sanity checking):

if [ -n "$2" ]
  then
    cat /etc/$1
  else
    grep "^$2:" /etc/$1
  fi

Of course, it would be trivial to write if you want to include getent.
 
Thanks,
Isaac Dunham
-------------- next part --------------
diff --git a/www/roadmap.html b/www/roadmap.html
index c4ab826..00027a5 100755
--- a/www/roadmap.html
+++ b/www/roadmap.html
@@ -424,8 +424,38 @@ catchsegv getconf getent iconv iconvconfig ldconfig ldd locale localedef
 mtrace nscd rpcent rpcinfo tzselect zdump zic
 </b></blockquote>
 
-<p>Of those, musl libc only implements ldd. I have no idea which of the rest
-are relevant.</p>
+<p>Of those, musl libc only implements ldd.</p>
+<p>catchsegv is a rudimentary debugger, probably out of scope for toybox.</p>
+<p>iconv has been <a href="#susv4">previously discussed</a>.</p>
+<p>iconvconfig is only relevant if iconv is user-configurable; musl uses a
+non-configurable iconv.</p>
+<p>getconf is a posix utility which displays several variables from 
+unistd.h; it probably belongs in the development toolchain.</p>
+<p>getent handles retrieving entries from passwd-style databases, 
+in a rather lame way.</p>
+<p>locale was discussed under <a href=#susv4>posix</a>.
+localedef compiles locale definitions, which musl currently does not use.</p>
+
+<p>mtrace is a perl script to use the malloc debugging that glibc has built-in;
+this is not relevant for musl, and would necessarily vary with libc. </p>
+<p>nscd is a name service caching daemon, which is not yet relevant for musl.
+rpcinfo and rpcent are related to rpc, which musl does not include.</p>
+
+<p>tzselect outputs a TZ variable correponding to user input. 
+The documentation does not indicate how to use it in a script, but it seems
+that Debian may have done so.
+zdump prints current time in each of several timezones, optionally
+outputting a great deal of extra information about each timezone.
+zic converts a description of a timezone to a file in the tz format.</p>
+
+<p>So this leaves the following interesting commands:</p>
+
+<blockquote><b>
+<span id=glibc_cmd>
+getent
+tzselect zdump zic
+</span>
+</b></blockquote>
 
 <hr />
 <a name=sash />


More information about the Toybox mailing list