HEADS DOWN (was Re: HEADS UP: putenv, setenv, unsetenv, getenv changes)

Sean C. Farley sean-freebsd at farley.org
Tue May 1 19:28:49 UTC 2007

On Tue, 1 May 2007, Andrey Chernov wrote:

> All backed out.
> Not because I admit they are technically wrong and not because of bug
> reports (I receive nothing). But because I surprisingly meets so
> strong opposition and resistance so lost any desire to continue that.
> Anyone who interested in POSIX can dig out what changes and how
> through cvs diffs.

I am the one writing a replacement for the *env() functions.  I have a
BSD (mostly the same except unsetenv() returns an int) version and a
POSIX version.

Questions for developers to help me proceed:
1. Would POSIX or BSD be preferred?  By POSIX, I do not necessarily mean
    completely POSIX.  It can be some shade of gray.  For example, I
    added some checking to putenv() that is not mentioned in the POSIX
    spec but makes it closer to setenv() in its errors.
2. Would a series of stages to move from BSD to POSIX be
    acceptable/desired?  This is to avoid POSIX from overwhelming people.
3. How about dropping putenv() altogether?  :)  putenv() is ugly.  My
    changes currently prevent setenv() from leaking like a sieve, so the
    need for putenv() should not be as necessary.  It could also be that
    shade of gray where putenv() stayed the way it is (wrapper around
    setenv()) while the rest can be POSIX.

sean-freebsd at farley.org

More information about the freebsd-current mailing list