Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 2 Oct 2012 14:41:44 GMT
From:      Ed Maste <emaste@FreeBSD.org>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   standards/172273: unsetenv(3) issue according to autoconf
Message-ID:  <201210021441.q92EfiUo062866@freefall.freebsd.org>
Resent-Message-ID: <201210021450.q92EoAFH063616@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         172273
>Category:       standards
>Synopsis:       unsetenv(3) issue according to autoconf
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-standards
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Tue Oct 02 14:50:10 UTC 2012
>Closed-Date:
>Last-Modified:
>Originator:     Ed Maste
>Release:        FreeBSD 9.1-PRERELEASE amd64
>Organization:
FreeBSD
>Environment:
FreeBSD feynman 9.1-PRERELEASE FreeBSD 9.1-PRERELEASE #18 r240994M: Thu Sep 27 09:08:57 EDT 2012     emaste@feynman:/data2/emaste/obj/home/emaste/src/9/sys/TEST  amd64

GNU autoconf's unsetenv test fails on 9.1 - see test case below.


>Description:
>How-To-Repeat:

The autoconf test is reproduced below - the 'return 3' is the failing line


#include <stdlib.h>
#include <errno.h>
extern char **environ;

int main(int argc, char *argv[])
{
       char entry1[] = "a=1";
       char entry2[] = "b=2";
       char *env[] = { entry1, entry2, NULL };
       if (putenv ((char *) "a=1")) return 1;
       if (putenv (entry2)) return 2;
       entry2[0] = 'a';
       unsetenv ("a");
       if (getenv ("a")) return 3;
       if (!unsetenv ("") || errno != EINVAL) return 4;
       entry2[0] = 'b';
       environ = env;
       if (!getenv ("a")) return 5;
       entry2[0] = 'a';
       unsetenv ("a");
       if (getenv ("a")) return 6;
       return 0;
}

>Fix:



>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201210021441.q92EfiUo062866>