Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190528204748.GA2806@arkam>
Date: Tue, 28 May 2019 22:47:48 +0200
From: Petr Vaněk <arkamar@...as.cz>
To: musl@...ts.openwall.com
Subject: [PATCH] add secure_getenv function

This function is a GNU extension introduced in glibc 2.17.
---
 include/stdlib.h        | 1 +
 src/env/secure_getenv.c | 8 ++++++++
 2 files changed, 9 insertions(+)
 create mode 100644 src/env/secure_getenv.c

diff --git a/include/stdlib.h b/include/stdlib.h
index 42ca8336..194c2033 100644
--- a/include/stdlib.h
+++ b/include/stdlib.h
@@ -152,6 +152,7 @@ int ptsname_r(int, char *, size_t);
 char *ecvt(double, int, int *, int *);
 char *fcvt(double, int, int *, int *);
 char *gcvt(double, int, char *);
+char *secure_getenv(const char *);
 struct __locale_struct;
 float strtof_l(const char *__restrict, char **__restrict, struct __locale_struct *);
 double strtod_l(const char *__restrict, char **__restrict, struct __locale_struct *);
diff --git a/src/env/secure_getenv.c b/src/env/secure_getenv.c
new file mode 100644
index 00000000..72322f81
--- /dev/null
+++ b/src/env/secure_getenv.c
@@ -0,0 +1,8 @@
+#define _GNU_SOURCE
+#include <stdlib.h>
+#include "libc.h"
+
+char *secure_getenv(const char *name)
+{
+	return libc.secure ? NULL : getenv(name);
+}
-- 
2.21.0

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.