On Fri, 17 Nov 2006 09:20:06 -0800 (PST) Don Cragun wrote:
> >From: Glenn Fowler <gsf at research.att.com>
> >foreground: I am 99% close to getting full solaris functionality
> >(achieved in the edge cases by deferring to the underlying geconf on PATH)
> >and hope to get the final 1% today

> Great!  I haven't seen all of your discussions on this issue with
> Roland, April, and Craig.  In case new <name>s are added to the
> underlying getconf, does your built-in always call the underlying
> getconf when the built-in getconf doesn't recognize <name>?

Roland and I pm'd some debug-edit-test grunge (this list see enough bytes)
yes, unknown vars go to the underlying getconf

> >is there a general rule laid out somewhere for the difference
> >between FOO and _FOO, or is it on a name by name basis?

> In general, getconf uses the <name> string specified by the underlying
> standard.  There was, however, some some confusion in the underlying
> standards on several <name>s.  XPG4 and XPG4v2 had a typo specifying
> CS_PATH rather than _CS_PATH in their descriptions of getconf
> <system_var> values.  There was an inconsistency in XPG5 between
> normative text and examples in the c89 and getconf utility descriptions
> as to whether a leading underscore should be present on some of the
> programming environment <system_var> values.  Therefore, our
> implementation allows _CS_PATH and _XBS5_* to be specified with or
> without the leading underscore to help users who may have been confused
> by these problems.

for solaris 10 /usr/bin/getconf
        POSIX2_* == _POSIX2_*
except
        POSIX2_SYMLINKS  1
        _POSIX2_SYMLINKS invalid
and
        POSIX_V6_*      ok
        _POSIX_V6_*     invalid
except
        POSIX_V6_ILP32_OFF32 == _POSIX_V6_ILP32_OFF32
        POSIX_V6_ILP32_OFFBIG == _POSIX_V6_ILP32_OFFBIG
        POSIX_V6_LP64_OFF64 == _POSIX_V6_LP64_OFF64
        POSIX_V6_LPBIG_OFFBIG == _POSIX_V6_LPBIG_OFFBIG

the POSIX2_SYMLINKS vs _ inconsistency seems like a bug, maybe it slipped
because its a pathconf() instead of a sysconf() var?
i.e., to be consistent with the other POSIX2_* names maybe
_POSIX2_SYMLINKS should be accepted as an alias for POSIX2_SYMLINKS

POSIX_V6_* vs _ is self-consistent
the category prefixes like POSIX_V6_ILP32_OFF32 allow leading _
and the category specific values like POSIX_V6_ILP32_OFF32_LIBS do not

-- Glenn Fowler -- AT&T Research, Florham Park NJ --


Reply via email to