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>