summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCristian Rodríguez2013-02-05 06:08:03 +0100
committerKarel Zak2013-02-06 12:03:22 +0100
commit075f4bfd3413f79f395870ae86de1964252854ad (patch)
tree94cb194f48fa6210e2ae583a3064cea66a7f1f73
parentbuild-sys: add namespace.h to distribution (diff)
downloadkernel-qcow2-util-linux-075f4bfd3413f79f395870ae86de1964252854ad.tar.gz
kernel-qcow2-util-linux-075f4bfd3413f79f395870ae86de1964252854ad.tar.xz
kernel-qcow2-util-linux-075f4bfd3413f79f395870ae86de1964252854ad.zip
build-sys: test for secure_getenv() too.
In current glibc versions, internal __secure_getenv no longer exists and was replaced by secure_getenv() Signed-off-by: Cristian Rodríguez <crrodriguez@opensuse.org>
-rw-r--r--configure.ac1
-rw-r--r--lib/env.c5
2 files changed, 4 insertions, 2 deletions
diff --git a/configure.ac b/configure.ac
index d3a8e9e7f..d26a686b0 100644
--- a/configure.ac
+++ b/configure.ac
@@ -298,6 +298,7 @@ AC_CHECK_DECL([strsignal],
AC_CHECK_FUNCS([ \
__fpending \
+ secure_getenv \
__secure_getenv \
err \
errx \
diff --git a/lib/env.c b/lib/env.c
index c78419a38..c79e0e0de 100644
--- a/lib/env.c
+++ b/lib/env.c
@@ -100,8 +100,9 @@ char *safe_getenv(const char *arg)
return NULL;
#endif
#endif
-
-#ifdef HAVE___SECURE_GETENV
+#ifdef HAVE_SECURE_GETENV
+return secure_getenv(arg);
+#elif HAVE___SECURE_GETENV
return __secure_getenv(arg);
#else
return getenv(arg);