aboutsummaryrefslogtreecommitdiffstats
path: root/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0005-Use-configure-to-test-for-feature-instead-of-platfor.patch
diff options
context:
space:
mode:
Diffstat (limited to 'meta-networking/recipes-support/open-vm-tools/open-vm-tools/0005-Use-configure-to-test-for-feature-instead-of-platfor.patch')
-rw-r--r--meta-networking/recipes-support/open-vm-tools/open-vm-tools/0005-Use-configure-to-test-for-feature-instead-of-platfor.patch141
1 files changed, 0 insertions, 141 deletions
diff --git a/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0005-Use-configure-to-test-for-feature-instead-of-platfor.patch b/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0005-Use-configure-to-test-for-feature-instead-of-platfor.patch
deleted file mode 100644
index 34d4ce4a90..0000000000
--- a/meta-networking/recipes-support/open-vm-tools/open-vm-tools/0005-Use-configure-to-test-for-feature-instead-of-platfor.patch
+++ /dev/null
@@ -1,141 +0,0 @@
-From b653a81da70c44af002dcbc7489ad9f4588ed11d Mon Sep 17 00:00:00 2001
-From: Natanael Copa <ncopa@alpinelinux.org>
-Date: Wed, 18 Nov 2015 10:05:07 +0000
-Subject: [PATCH] Use configure to test for feature instead of platform
-
-Test for various functions instead of trying to keep track of what
-platform and what version of the given platform has support for what.
-
-This should make it easier to port to currently unknown platforms and
-will solve the issue if a platform add support for a missing feature in
-the future.
-
-The features we test for are:
-- getifaddrs
-- getauxval
-- issetugid
-- __secure_getenv
-
-This is needed for musl libc.
-
-Refit patch of open-vm-tools/lib/nicInfo/nicInfoPosix.c
-
-Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
-Signed-off-by: Randy MacLeod <randy.macleod@windriver.com>
----
- open-vm-tools/configure.ac | 4 ++++
- open-vm-tools/lib/misc/idLinux.c | 30 +++++++++++-------------
- open-vm-tools/lib/nicInfo/nicInfoPosix.c | 6 ++++-
- 3 files changed, 23 insertions(+), 17 deletions(-)
-
-diff --git a/open-vm-tools/configure.ac b/open-vm-tools/configure.ac
-index 27f3717f..6baab9e3 100644
---- a/open-vm-tools/configure.ac
-+++ b/open-vm-tools/configure.ac
-@@ -923,6 +923,7 @@ AC_CHECK_FUNCS(
-
- AC_CHECK_FUNCS([ecvt])
- AC_CHECK_FUNCS([fcvt])
-+AC_CHECK_FUNCS([getifaddrs getauxval issetugid __secure_getenv])
-
- AC_CHECK_FUNC([mkdtemp], [have_mkdtemp=yes])
-
-@@ -1132,10 +1133,13 @@ fi
- ###
-
- AC_CHECK_HEADERS([crypt.h])
-+AC_CHECK_HEADERS([ifaddrs.h])
- AC_CHECK_HEADERS([inttypes.h])
- AC_CHECK_HEADERS([stdint.h])
- AC_CHECK_HEADERS([stdlib.h])
- AC_CHECK_HEADERS([wchar.h])
-+AC_CHECK_HEADERS([net/if.h])
-+AC_CHECK_HEADERS([sys/auxv.h])
- AC_CHECK_HEADERS([sys/inttypes.h])
- AC_CHECK_HEADERS([sys/io.h])
- AC_CHECK_HEADERS([sys/param.h]) # Required to make the sys/user.h check work correctly on FreeBSD
-diff --git a/open-vm-tools/lib/misc/idLinux.c b/open-vm-tools/lib/misc/idLinux.c
-index 1bb86f48..41c670cf 100644
---- a/open-vm-tools/lib/misc/idLinux.c
-+++ b/open-vm-tools/lib/misc/idLinux.c
-@@ -27,12 +27,9 @@
- #include <sys/syscall.h>
- #include <string.h>
- #include <unistd.h>
--#ifdef __linux__
--#if defined(__GLIBC__) && \
-- (__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 16))
-+#ifdef HAVE_SYS_AUXV_H
- #include <sys/auxv.h>
- #endif
--#endif
- #ifdef __APPLE__
- #include <sys/socket.h>
- #include <TargetConditionals.h>
-@@ -1025,31 +1022,32 @@ Id_EndSuperUser(uid_t uid) // IN:
- static Bool
- IdIsSetUGid(void)
- {
--#if defined(__ANDROID__)
-- /* Android does not have a secure_getenv, so be conservative. */
-- return TRUE;
--#else
- /*
- * We use __secure_getenv, which returns NULL if the binary is
-- * setuid or setgid. Alternatives include,
-+ * setuid or setgid, when issetugid or getauxval(AT_SECURE) is not
-+ * available. Alternatives include,
- *
-- * a) getauxval(AT_SECURE); not available until glibc 2.16.
-- * b) __libc_enable_secure; may not be exported.
-+ * a) issetugid(); not (yet?) available in glibc.
-+ * b) getauxval(AT_SECURE); not available until glibc 2.16.
-+ * c) __libc_enable_secure; may not be exported.
- *
-- * Use (a) when we are based on glibc 2.16, or newer.
-+ * Use (b) when we are based on glibc 2.16, or newer.
- */
-
--#if defined(__GLIBC__) && \
-- (__GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 16))
-+#if HAVE_ISSETUGID
-+ return issetugid();
-+#elif HAVE_GETAUXVAL
- return getauxval(AT_SECURE) != 0;
--#else
-+#elif HAVE___SECURE_GETENV
- static const char envName[] = "VMW_SETUGID_TEST";
-
- if (setenv(envName, "1", TRUE) == -1) {
- return TRUE; /* Conservative */
- }
- return __secure_getenv(envName) == NULL;
--#endif
-+#else
-+ /* Android does not have a secure_getenv, so be conservative. */
-+ return TRUE;
- #endif
- }
- #endif
-diff --git a/open-vm-tools/lib/nicInfo/nicInfoPosix.c b/open-vm-tools/lib/nicInfo/nicInfoPosix.c
-index cc5fa281..8710c542 100644
---- a/open-vm-tools/lib/nicInfo/nicInfoPosix.c
-+++ b/open-vm-tools/lib/nicInfo/nicInfoPosix.c
-@@ -35,9 +35,13 @@
- #include <sys/stat.h>
- #include <errno.h>
- #include <limits.h>
--#if defined(__FreeBSD__) || defined(__APPLE__)
-+#if HAVE_SYS_SYSCTL_H
- # include <sys/sysctl.h>
-+#endif
-+#if HAVE_IFADDRS_H
- # include <ifaddrs.h>
-+#endif
-+#if HAVE_NET_IF_H
- # include <net/if.h>
- #endif
- #ifndef NO_DNET
---
-2.27.0
-