summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-support/open-vm-tools
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2018-06-13 23:48:04 -0700
committerKhem Raj <raj.khem@gmail.com>2018-06-14 20:25:16 -0700
commit377497705500c77dc1b8093f6667952d2402054e (patch)
treea7c0ca93ad1d5922c39efb6d866e05d0b5c2da11 /meta-oe/recipes-support/open-vm-tools
parentd3b1e5602d4aecfa202933b6f383a027ff5626c3 (diff)
downloadmeta-openembedded-377497705500c77dc1b8093f6667952d2402054e.tar.gz
open-vm-tools: Upgrade to 10.2.5
Fix build on musl while here Signed-off-by: Khem Raj <raj.khem@gmail.com>
Diffstat (limited to 'meta-oe/recipes-support/open-vm-tools')
-rw-r--r--meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-configure.ac-don-t-use-dnet-config.patch17
-rw-r--r--meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-include-poll.h-instead-of-sys-poll.h.patch26
-rw-r--r--meta-oe/recipes-support/open-vm-tools/open-vm-tools/0002-Rename-poll.h-to-vm_poll.h.patch115
-rw-r--r--meta-oe/recipes-support/open-vm-tools/open-vm-tools/0002-include-poll.h-instead-of-obsolete-sys-poll.h.patch24
-rw-r--r--meta-oe/recipes-support/open-vm-tools/open-vm-tools/0003-Rename-poll.h-to-vm_poll.h.patch756
-rw-r--r--meta-oe/recipes-support/open-vm-tools/open-vm-tools/0003-use-posix-strerror_r-unless-on-gnu-libc-system.patch39
-rw-r--r--meta-oe/recipes-support/open-vm-tools/open-vm-tools/0004-Use-uintmax_t-for-handling-rlim_t.patch29
-rw-r--r--meta-oe/recipes-support/open-vm-tools/open-vm-tools/0007-Use-configure-to-test-for-feature-instead-of-platfor.patch13
-rw-r--r--meta-oe/recipes-support/open-vm-tools/open-vm-tools/0008-use-posix-strerror_r-unless-gnu.patch30
-rw-r--r--meta-oe/recipes-support/open-vm-tools/open-vm-tools/0009-Add-support-for-building-with-system-libtirpc.patch342
-rw-r--r--meta-oe/recipes-support/open-vm-tools/open-vm-tools/0010-gnu-ucontext.patch65
-rw-r--r--meta-oe/recipes-support/open-vm-tools/open-vm-tools/fix-subdir-objects-configure-error.patch12
-rw-r--r--meta-oe/recipes-support/open-vm-tools/open-vm-tools/tools.conf (renamed from meta-oe/recipes-support/open-vm-tools/files/tools.conf)0
-rw-r--r--meta-oe/recipes-support/open-vm-tools/open-vm-tools/use-tirpc.patch481
-rw-r--r--meta-oe/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.init (renamed from meta-oe/recipes-support/open-vm-tools/files/vmtoolsd.init)0
-rw-r--r--meta-oe/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.service (renamed from meta-oe/recipes-support/open-vm-tools/files/vmtoolsd.service)0
-rw-r--r--meta-oe/recipes-support/open-vm-tools/open-vm-tools_10.2.5.bb (renamed from meta-oe/recipes-support/open-vm-tools/open-vm-tools_10.1.5.bb)20
17 files changed, 720 insertions, 1249 deletions
diff --git a/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-configure.ac-don-t-use-dnet-config.patch b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-configure.ac-don-t-use-dnet-config.patch
index e9cb873f1..b7a405835 100644
--- a/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-configure.ac-don-t-use-dnet-config.patch
+++ b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-configure.ac-don-t-use-dnet-config.patch
@@ -14,11 +14,11 @@ Signed-off-by: Martin Kelly <mkelly@xevo.com>
14 configure.ac | 4 ++-- 14 configure.ac | 4 ++--
15 1 file changed, 2 insertions(+), 2 deletions(-) 15 1 file changed, 2 insertions(+), 2 deletions(-)
16 16
17diff --git a/configure.ac b/configure.ac 17Index: open-vm-tools/configure.ac
18index 3400b86..7d6119e 100644 18===================================================================
19--- a/configure.ac 19--- open-vm-tools.orig/configure.ac
20+++ b/configure.ac 20+++ open-vm-tools/configure.ac
21@@ -942,7 +942,7 @@ if test "$with_dnet" = "yes"; then 21@@ -944,7 +944,7 @@ if test "$with_dnet" = "yes"; then
22 AC_VMW_CHECK_LIB([dnet], 22 AC_VMW_CHECK_LIB([dnet],
23 [DNET], 23 [DNET],
24 [], 24 [],
@@ -27,15 +27,12 @@ index 3400b86..7d6119e 100644
27 [], 27 [],
28 [dnet.h], 28 [dnet.h],
29 [intf_open], 29 [intf_open],
30@@ -952,7 +952,7 @@ if test "$with_dnet" = "yes"; then 30@@ -954,7 +954,7 @@ if test "$with_dnet" = "yes"; then
31 31
32 if test $have_dnet = "no"; then 32 if test $have_dnet = "no"; then
33 AC_MSG_ERROR( 33 AC_MSG_ERROR(
34- [dnet-config was not found on your PATH. Please configure without dnet (using --without-dnet) or install dnet - http://libdnet.sourceforge.net]) 34- [dnet-config was not found on your PATH. Please configure without dnet (using --without-dnet) or install dnet - http://libdnet.sourceforge.net])
35+ [dnet was not found. Please configure without dnet (using --without-dnet) or install dnet - http://libdnet.sourceforge.net]) 35+ [dnet was not found. Please configure without dnet (using --without-dnet) or install dnet - http://libdnet.sourceforge.net])
36 fi 36 fi
37 fi 37 fi
38 38
39--
402.1.4
41
diff --git a/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-include-poll.h-instead-of-sys-poll.h.patch b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-include-poll.h-instead-of-sys-poll.h.patch
new file mode 100644
index 000000000..882058119
--- /dev/null
+++ b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0001-include-poll.h-instead-of-sys-poll.h.patch
@@ -0,0 +1,26 @@
1From 4981bb3013d7f1e40e44618076d99af3484eedea Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Wed, 13 Jun 2018 23:02:50 -0700
4Subject: [PATCH] include poll.h instead of sys/poll.h
5
6including sys/poll.h is deprecated
7
8Signed-off-by: Khem Raj <raj.khem@gmail.com>
9---
10 open-vm-tools/lib/asyncsocket/asyncsocket.c | 2 +-
11 1 file changed, 1 insertion(+), 1 deletion(-)
12
13diff --git a/lib/asyncsocket/asyncsocket.c b/lib/asyncsocket/asyncsocket.c
14index 13908679..e0a68e7e 100644
15--- a/lib/asyncsocket/asyncsocket.c
16+++ b/lib/asyncsocket/asyncsocket.c
17@@ -69,8 +69,8 @@
18 #else
19 #include <stddef.h>
20 #include <ctype.h>
21+#include <poll.h>
22 #include <sys/types.h>
23-#include <sys/poll.h>
24 #include <sys/socket.h>
25 #include <sys/un.h>
26 #include <netdb.h>
diff --git a/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0002-Rename-poll.h-to-vm_poll.h.patch b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0002-Rename-poll.h-to-vm_poll.h.patch
new file mode 100644
index 000000000..4d6a0fd6a
--- /dev/null
+++ b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0002-Rename-poll.h-to-vm_poll.h.patch
@@ -0,0 +1,115 @@
1From 92955b3a6180b4285d11ef79766df01b9ab60dbd Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Wed, 13 Jun 2018 23:11:58 -0700
4Subject: [PATCH] Rename poll.h to vm_poll.h
5
6musl libc's system headers pulls in open-vm-tools' poll.h. To avoid this
7we rename poll.h to vm_poll.h.
8
9Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
10Signed-off-by: Khem Raj <raj.khem@gmail.com>
11---
12 open-vm-tools/lib/asyncsocket/asyncsocket.c | 2 +-
13 open-vm-tools/lib/hgfsServer/hgfsServer.c | 2 +-
14 open-vm-tools/lib/include/asyncsocket.h | 2 +-
15 open-vm-tools/lib/include/pollImpl.h | 2 +-
16 open-vm-tools/lib/include/{poll.h => vm_poll.h} | 2 +-
17 open-vm-tools/lib/rpcIn/rpcin.c | 2 +-
18 .../services/plugins/grabbitmqProxy/grabbitmqProxyPlugin.c | 2 +-
19 7 files changed, 7 insertions(+), 7 deletions(-)
20 rename open-vm-tools/lib/include/{poll.h => vm_poll.h} (99%)
21
22diff --git a/lib/asyncsocket/asyncsocket.c b/lib/asyncsocket/asyncsocket.c
23index e0a68e7e..b9675674 100644
24--- a/lib/asyncsocket/asyncsocket.c
25+++ b/lib/asyncsocket/asyncsocket.c
26@@ -86,7 +86,7 @@
27 #include "random.h"
28 #include "asyncsocket.h"
29 #include "asyncSocketBase.h"
30-#include "poll.h"
31+#include "vm_poll.h"
32 #include "log.h"
33 #include "err.h"
34 #include "hostinfo.h"
35diff --git a/lib/hgfsServer/hgfsServer.c b/lib/hgfsServer/hgfsServer.c
36index 991a7941..ed0c09f9 100644
37--- a/lib/hgfsServer/hgfsServer.c
38+++ b/lib/hgfsServer/hgfsServer.c
39@@ -48,7 +48,7 @@
40 #include "hgfsServerOplock.h"
41 #include "hgfsDirNotify.h"
42 #include "userlock.h"
43-#include "poll.h"
44+#include "vm_poll.h"
45 #include "mutexRankLib.h"
46 #include "vm_basic_asm.h"
47 #include "unicodeOperations.h"
48diff --git a/lib/include/asyncsocket.h b/lib/include/asyncsocket.h
49index 524147ea..103f944f 100644
50--- a/lib/include/asyncsocket.h
51+++ b/lib/include/asyncsocket.h
52@@ -164,7 +164,7 @@ typedef struct AsyncSocket AsyncSocket;
53 * Or the client can specify its favorite poll class and locking behavior.
54 * Use of IVmdbPoll is only supported for regular sockets and for Attach.
55 */
56-#include "poll.h"
57+#include "vm_poll.h"
58 struct IVmdbPoll;
59 typedef struct AsyncSocketPollParams {
60 int flags; /* Default 0, only POLL_FLAG_NO_BULL is valid */
61diff --git a/lib/include/pollImpl.h b/lib/include/pollImpl.h
62index 46442e55..8bc66997 100644
63--- a/lib/include/pollImpl.h
64+++ b/lib/include/pollImpl.h
65@@ -44,7 +44,7 @@
66 #define INCLUDE_ALLOW_USERLEVEL
67 #include "includeCheck.h"
68
69-#include "poll.h"
70+#include "vm_poll.h"
71 #include "vm_basic_asm.h"
72
73 #if defined(__cplusplus)
74diff --git a/lib/include/poll.h b/lib/include/vm_poll.h
75similarity index 99%
76rename from open-vm-tools/lib/include/poll.h
77rename to open-vm-tools/lib/include/vm_poll.h
78index 988fe6d0..e9e74fb5 100644
79--- a/lib/include/poll.h
80+++ b/lib/include/vm_poll.h
81@@ -60,7 +60,7 @@ extern "C" {
82 #if !defined(TARGET_OS_IPHONE) || TARGET_OS_IPHONE == 0
83 #include <sys/kernel.h>
84 #endif
85-#include <sys/poll.h>
86+#include <poll.h>
87 #define HZ 100
88 #endif
89 #ifdef __ANDROID__
90diff --git a/lib/rpcIn/rpcin.c b/lib/rpcIn/rpcin.c
91index c2c51583..d6c62f10 100644
92--- a/lib/rpcIn/rpcin.c
93+++ b/lib/rpcIn/rpcin.c
94@@ -57,7 +57,7 @@
95
96 #if defined(VMTOOLS_USE_VSOCKET)
97 # include <glib.h>
98-# include "poll.h"
99+# include "vm_poll.h"
100 # include "asyncsocket.h"
101 # include "vmci_defs.h"
102 #include "dataMap.h"
103diff --git a/services/plugins/grabbitmqProxy/grabbitmqProxyPlugin.c b/services/plugins/grabbitmqProxy/grabbitmqProxyPlugin.c
104index 03700937..f0b49ad7 100644
105--- a/services/plugins/grabbitmqProxy/grabbitmqProxyPlugin.c
106+++ b/services/plugins/grabbitmqProxy/grabbitmqProxyPlugin.c
107@@ -48,7 +48,7 @@
108 #include "rpcout.h"
109 #include "rabbitmqProxyConst.h"
110 #include "vm_basic_types.h"
111-#include "poll.h"
112+#include "vm_poll.h"
113 #ifdef OPEN_VM_TOOLS
114 #include "vmci_sockets.h"
115 #include "sslDirect.h"
diff --git a/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0002-include-poll.h-instead-of-obsolete-sys-poll.h.patch b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0002-include-poll.h-instead-of-obsolete-sys-poll.h.patch
deleted file mode 100644
index d26bf2dd3..000000000
--- a/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0002-include-poll.h-instead-of-obsolete-sys-poll.h.patch
+++ /dev/null
@@ -1,24 +0,0 @@
1From d44c7c9de7380ad7b284231bd5b5c99b5c19758d Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Sun, 16 Jul 2017 07:37:59 -0700
4Subject: [PATCH 02/11] include poll.h instead of obsolete sys/poll.h
5
6Signed-off-by: Khem Raj <raj.khem@gmail.com>
7---
8 open-vm-tools/lib/asyncsocket/asyncSocketInt.h | 2 +-
9 1 file changed, 1 insertion(+), 1 deletion(-)
10
11Index: open-vm-tools/lib/asyncsocket/asyncSocketInt.h
12===================================================================
13--- open-vm-tools.orig/lib/asyncsocket/asyncSocketInt.h
14+++ open-vm-tools/lib/asyncsocket/asyncSocketInt.h
15@@ -71,8 +71,8 @@
16 #else
17 #include <stddef.h>
18 #include <ctype.h>
19+#include <poll.h>
20 #include <sys/types.h>
21-#include <sys/poll.h>
22 #include <sys/socket.h>
23 #include <sys/un.h>
24 #include <netdb.h>
diff --git a/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0003-Rename-poll.h-to-vm_poll.h.patch b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0003-Rename-poll.h-to-vm_poll.h.patch
deleted file mode 100644
index 8641778d0..000000000
--- a/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0003-Rename-poll.h-to-vm_poll.h.patch
+++ /dev/null
@@ -1,756 +0,0 @@
1From 687fca20b3417ac885b6961e6fe1126d4a3fe7a4 Mon Sep 17 00:00:00 2001
2From: Natanael Copa <ncopa@alpinelinux.org>
3Date: Tue, 17 Nov 2015 10:57:31 +0000
4Subject: [PATCH 03/11] Rename poll.h to vm_poll.h
5
6musl libc's system headers pulls in open-vm-tools' poll.h. To avoid this
7we rename poll.h to vm_poll.h.
8
9Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
10---
11 open-vm-tools/lib/asyncsocket/asyncsocket.c | 2 +-
12 open-vm-tools/lib/hgfsServer/hgfsServer.c | 2 +-
13 open-vm-tools/lib/include/asyncsocket.h | 2 +-
14 open-vm-tools/lib/include/pollImpl.h | 2 +-
15 open-vm-tools/lib/include/{poll.h => vm_poll.h} | 0
16 open-vm-tools/lib/rpcIn/rpcin.c | 2 +-
17 open-vm-tools/services/plugins/grabbitmqProxy/grabbitmqProxyPlugin.c | 2 +-
18 7 files changed, 6 insertions(+), 6 deletions(-)
19 rename open-vm-tools/lib/include/{poll.h => vm_poll.h} (100%)
20
21Index: open-vm-tools/lib/asyncsocket/asyncsocket.c
22===================================================================
23--- open-vm-tools.orig/lib/asyncsocket/asyncsocket.c
24+++ open-vm-tools/lib/asyncsocket/asyncsocket.c
25@@ -52,7 +52,7 @@
26 #include "vmware.h"
27 #include "asyncsocket.h"
28 #include "asyncSocketInt.h"
29-#include "poll.h"
30+#include "vm_poll.h"
31 #include "log.h"
32 #include "err.h"
33 #include "hostinfo.h"
34Index: open-vm-tools/lib/hgfsServer/hgfsServer.c
35===================================================================
36--- open-vm-tools.orig/lib/hgfsServer/hgfsServer.c
37+++ open-vm-tools/lib/hgfsServer/hgfsServer.c
38@@ -48,7 +48,7 @@
39 #include "hgfsServerOplock.h"
40 #include "hgfsDirNotify.h"
41 #include "userlock.h"
42-#include "poll.h"
43+#include "vm_poll.h"
44 #include "mutexRankLib.h"
45 #include "vm_basic_asm.h"
46 #include "unicodeOperations.h"
47Index: open-vm-tools/lib/include/asyncsocket.h
48===================================================================
49--- open-vm-tools.orig/lib/include/asyncsocket.h
50+++ open-vm-tools/lib/include/asyncsocket.h
51@@ -129,7 +129,7 @@ typedef struct AsyncSocket AsyncSocket;
52 * Or the client can specify its favorite poll class and locking behavior.
53 * Use of IVmdbPoll is only supported for regular sockets and for Attach.
54 */
55-#include "poll.h"
56+#include "vm_poll.h"
57 struct IVmdbPoll;
58 typedef struct AsyncSocketPollParams {
59 int flags; /* Default 0, only POLL_FLAG_NO_BULL is valid */
60Index: open-vm-tools/lib/include/poll.h
61===================================================================
62--- open-vm-tools.orig/lib/include/poll.h
63+++ /dev/null
64@@ -1,324 +0,0 @@
65-/*********************************************************
66- * Copyright (C) 1998-2016 VMware, Inc. All rights reserved.
67- *
68- * This program is free software; you can redistribute it and/or modify it
69- * under the terms of the GNU Lesser General Public License as published
70- * by the Free Software Foundation version 2.1 and no later version.
71- *
72- * This program is distributed in the hope that it will be useful, but
73- * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
74- * or FITNESS FOR A PARTICULAR PURPOSE. See the Lesser GNU General Public
75- * License for more details.
76- *
77- * You should have received a copy of the GNU Lesser General Public License
78- * along with this program; if not, write to the Free Software Foundation, Inc.,
79- * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
80- *
81- *********************************************************/
82-
83-/*********************************************************
84- * The contents of this file are subject to the terms of the Common
85- * Development and Distribution License (the "License") version 1.0
86- * and no later version. You may not use this file except in
87- * compliance with the License.
88- *
89- * You can obtain a copy of the License at
90- * http://www.opensource.org/licenses/cddl1.php
91- *
92- * See the License for the specific language governing permissions
93- * and limitations under the License.
94- *
95- *********************************************************/
96-
97-
98-#ifndef _POLL_H_
99-#define _POLL_H_
100-
101-#define INCLUDE_ALLOW_USERLEVEL
102-#define INCLUDE_ALLOW_VMCORE
103-#include "includeCheck.h"
104-
105-#include "vm_basic_types.h"
106-#include "vm_basic_defs.h"
107-#include "vmware.h"
108-#include "userlock.h"
109-
110-#ifdef _WIN32
111-#define HZ 100
112-#elif defined linux
113-#include <asm/param.h>
114-#elif __APPLE__
115-#include <TargetConditionals.h>
116-/*
117- * Old SDKs don't define TARGET_OS_IPHONE at all.
118- * New ones define it to 0 on Mac OS X, 1 on iOS.
119- */
120-#if !defined(TARGET_OS_IPHONE) || TARGET_OS_IPHONE == 0
121-#include <sys/kernel.h>
122-#endif
123-#include <sys/poll.h>
124-#define HZ 100
125-#endif
126-#ifdef __ANDROID__
127-/*
128- * <poll.h> of android should be included, but its name is same
129- * with this file. So its content is put here to avoid conflict.
130- */
131-#include <asm/poll.h>
132-#define HZ 100
133-typedef unsigned int nfds_t;
134-int poll(struct pollfd *, nfds_t, long);
135-#endif
136-
137-
138-/*
139- * Poll event types: each type has a different reason for firing,
140- * or condition that must be met before firing.
141- */
142-
143-typedef enum {
144- /*
145- * Actual Poll queue types against which you can register callbacks.
146- */
147- POLL_VIRTUALREALTIME = -1, /* Negative because it doesn't have its own Q */
148- POLL_VTIME = 0,
149- POLL_REALTIME,
150- POLL_DEVICE,
151- POLL_MAIN_LOOP,
152- POLL_NUM_QUEUES
153-} PollEventType;
154-
155-
156-/*
157- * Classes of events
158- *
159- * These are the predefined classes. More can be declared
160- * with Poll_AllocClass().
161- */
162-
163-typedef enum PollClass {
164- POLL_CLASS_MAIN,
165- POLL_CLASS_PAUSE,
166- POLL_CLASS_IPC,
167- POLL_CLASS_CPT,
168- POLL_CLASS_MKS,
169- POLL_FIXED_CLASSES,
170- POLL_MAX_CLASSES = 320 /* Size enum to maximum */
171-} PollClass;
172-
173-
174-/*
175- * Each callback is registered in a set of classes
176- */
177-
178-typedef struct PollClassSet {
179- /* Type is uintptr_t to give best 32/64-bit code. */
180-#define _POLL_ELEMSIZE (sizeof (uintptr_t) * 8)
181- uintptr_t bits[CEILING(POLL_MAX_CLASSES, _POLL_ELEMSIZE)];
182-} PollClassSet;
183-
184-/* An empty PollClassSet. */
185-static INLINE PollClassSet
186-PollClassSet_Empty(void)
187-{
188- PollClassSet set = { { 0 } };
189- return set;
190-}
191-
192-/* A PollClassSet with the single member. */
193-static INLINE PollClassSet
194-PollClassSet_Singleton(PollClass c)
195-{
196- PollClassSet s = PollClassSet_Empty();
197-
198- ASSERT_ON_COMPILE(sizeof s.bits[0] * 8 == _POLL_ELEMSIZE); /* Size correct */
199- ASSERT_ON_COMPILE((_POLL_ELEMSIZE & (_POLL_ELEMSIZE - 1)) == 0); /* power of 2 */
200- ASSERT_ON_COMPILE(POLL_MAX_CLASSES <= ARRAYSIZE(s.bits) * _POLL_ELEMSIZE);
201- ASSERT(c < POLL_MAX_CLASSES);
202-
203- s.bits[c / _POLL_ELEMSIZE] = CONST3264U(1) << (c % _POLL_ELEMSIZE);
204- return s;
205-}
206-
207-/* Combine two PollClassSets. */
208-static INLINE PollClassSet
209-PollClassSet_Union(PollClassSet lhs, PollClassSet rhs)
210-{
211- PollClassSet u;
212- unsigned i;
213-
214- for (i = 0; i < ARRAYSIZE(u.bits); i++) {
215- u.bits[i] = lhs.bits[i] | rhs.bits[i];
216- }
217- return u;
218-}
219-
220-/* Add single class to PollClassSet. */
221-static INLINE PollClassSet
222-PollClassSet_Include(PollClassSet set, PollClass c)
223-{
224- return PollClassSet_Union(set, PollClassSet_Singleton(c));
225-}
226-
227-
228-#define POLL_CS_MAIN PollClassSet_Singleton(POLL_CLASS_MAIN)
229-#define POLL_CS_PAUSE PollClassSet_Union(POLL_CS_MAIN, \
230- PollClassSet_Singleton(POLL_CLASS_PAUSE))
231-#define POLL_CS_CPT PollClassSet_Union(POLL_CS_PAUSE, \
232- PollClassSet_Singleton(POLL_CLASS_CPT))
233-#define POLL_CS_IPC PollClassSet_Union(POLL_CS_CPT, \
234- PollClassSet_Singleton(POLL_CLASS_IPC))
235-#define POLL_CS_VMDB POLL_CS_PAUSE /* POLL_CLASS_VMDB is retired */
236-#define POLL_CS_MKS PollClassSet_Singleton(POLL_CLASS_MKS)
237-/*
238- * DANGER. You don't need POLL_CS_ALWAYS. Really. So don't use it.
239- */
240-#define POLL_CS_ALWAYS PollClassSet_Union(POLL_CS_CPT, POLL_CS_IPC)
241-
242-/*
243- * Poll class-set taxonomy:
244- * POLL_CS_MAIN
245- * - Unless you NEED another class, use POLL_CS_MAIN.
246- * POLL_CS_PAUSE
247- * - For callbacks that must occur even if the guest is paused.
248- * Most VMDB or Foundry commands are in this category.
249- * POLL_CS_CPT
250- * - Only for callbacks which can trigger intermediate Checkpoint
251- * transitions.
252- * The ONLY such callback is Migrate.
253- * POLL_CS_IPC
254- * - Only for callbacks which can contain Msg_(Post|Hint|Question)
255- * responses, and for signal handlers (why)?
256- * Vigor, VMDB, and Foundry can contain Msg_* responses.
257- * POLL_CS_MKS
258- * - Callback runs in MKS thread.
259- * POLL_CS_ALWAYS
260- * - Only for events that must be processed immediately.
261- * The ONLY such callback is OvhdMemVmxSizeCheck.
262- */
263-
264-
265-/*
266- * Poll_Callback flags
267- */
268-
269-#define POLL_FLAG_PERIODIC 0x01 // keep after firing
270-#define POLL_FLAG_REMOVE_AT_POWEROFF 0x02 // self-explanatory
271-#define POLL_FLAG_READ 0x04 // device is ready for reading
272-#define POLL_FLAG_WRITE 0x08 // device is ready for writing
273-#define POLL_FLAG_SOCKET 0x10 // device is a Windows socket
274-#define POLL_FLAG_NO_BULL 0x20 // callback does its own locking
275-#define POLL_FLAG_WINSOCK 0x40 // Winsock style write events
276-#define POLL_FLAG_FD 0x80 // device is a Windows file descriptor.
277-#define POLL_FLAG_ACCEPT_INVALID_FDS 0x100 // For broken 3rd party libs, e.g. curl
278-#define POLL_FLAG_THUNK_TO_WND 0x200 // thunk callback to window message loop
279-
280-
281-/*
282- * Advisory minimum time period.
283- * Users that want the fastest running real-time poll
284- * should use TICKS_TO_USECS(1).
285- */
286-
287-#define TICKS_TO_USECS(_x) ((_x) * (1000000 / HZ))
288-#define USECS_TO_TICKS(_x) ((_x) / (1000000 / HZ))
289-
290-
291-typedef void (*PollerFunction)(void *clientData);
292-typedef void (*PollerFireWrapper)(PollerFunction func,
293- void *funcData,
294- void *wrapperData);
295-typedef Bool (*PollerErrorFn)(const char *errorStr);
296-
297-/*
298- * Initialisers:
299- *
300- * For the sake of convenience, we declare the initialisers
301- * for custom implmentations here, even though the actual
302- * implementations are distinct from the core poll code.
303- */
304-
305-typedef struct PollOptions {
306- Bool locked; // Use internal MXUser for locking
307- Bool allowFullQueue; // Don't assert when device event queue is full.
308- VThreadID windowsMsgThread; // thread that processes Windows messages
309- PollerFireWrapper fireWrapperFn; // optional; may be useful for stats
310- void *fireWrapperData; // optional
311- PollerErrorFn errorFn; // optional; called upon unrecoverable error
312-} PollOptions;
313-
314-
315-void Poll_InitDefault(void);
316-void Poll_InitDefaultEx(const PollOptions *opts);
317-void Poll_InitGtk(void); // On top of glib for Linux
318-void Poll_InitCF(void); // On top of CoreFoundation for OSX
319-
320-
321-/*
322- * Functions
323- */
324-int Poll_SocketPair(Bool vmci, Bool stream, int fds[2]);
325-void Poll_Loop(Bool loop, Bool *exit, PollClass c);
326-void Poll_LoopTimeout(Bool loop, Bool *exit, PollClass c, int timeout);
327-Bool Poll_LockingEnabled(void);
328-void Poll_Exit(void);
329-
330-
331-/*
332- * Poll_Callback adds a callback regardless of whether an identical one exists.
333- *
334- * Likewise, Poll_CallbackRemove removes exactly one callback.
335- */
336-
337-VMwareStatus Poll_Callback(PollClassSet classSet,
338- int flags,
339- PollerFunction f,
340- void *clientData,
341- PollEventType type,
342- PollDevHandle info, // fd/microsec delay
343- MXUserRecLock *lck);
344-Bool Poll_CallbackRemove(PollClassSet classSet,
345- int flags,
346- PollerFunction f,
347- void *clientData,
348- PollEventType type);
349-Bool Poll_CallbackRemoveOneByCB(PollClassSet classSet,
350- int flags,
351- PollerFunction f,
352- PollEventType type,
353- void **clientData);
354-
355-void Poll_NotifyChange(PollClassSet classSet);
356-
357-/*
358- * Wrappers for Poll_Callback and Poll_CallbackRemove that present
359- * simpler subsets of those interfaces.
360- */
361-
362-VMwareStatus Poll_CB_Device(PollerFunction f,
363- void *clientData,
364- PollDevHandle device,
365- Bool periodic);
366-
367-Bool Poll_CB_DeviceRemove(PollerFunction f,
368- void *clientData,
369- Bool periodic);
370-
371-
372-VMwareStatus Poll_CB_RTime(PollerFunction f,
373- void *clientData,
374- int delay, // microseconds
375- Bool periodic,
376- MXUserRecLock *lock);
377-
378-Bool Poll_CB_RTimeRemove(PollerFunction f,
379- void *clientData,
380- Bool periodic);
381-
382-
383-#ifdef _WIN32
384-void Poll_SetWindowMessageRecipient(HWND hWnd, UINT msg, Bool alwaysThunk);
385-Bool Poll_FireWndCallback(void *lparam);
386-#endif
387-
388-#endif // _POLL_H_
389Index: open-vm-tools/lib/include/pollImpl.h
390===================================================================
391--- open-vm-tools.orig/lib/include/pollImpl.h
392+++ open-vm-tools/lib/include/pollImpl.h
393@@ -44,7 +44,7 @@
394 #define INCLUDE_ALLOW_USERLEVEL
395 #include "includeCheck.h"
396
397-#include "poll.h"
398+#include "vm_poll.h"
399
400 /*
401 * PollImpl:
402Index: open-vm-tools/lib/include/vm_poll.h
403===================================================================
404--- /dev/null
405+++ open-vm-tools/lib/include/vm_poll.h
406@@ -0,0 +1,324 @@
407+/*********************************************************
408+ * Copyright (C) 1998-2016 VMware, Inc. All rights reserved.
409+ *
410+ * This program is free software; you can redistribute it and/or modify it
411+ * under the terms of the GNU Lesser General Public License as published
412+ * by the Free Software Foundation version 2.1 and no later version.
413+ *
414+ * This program is distributed in the hope that it will be useful, but
415+ * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
416+ * or FITNESS FOR A PARTICULAR PURPOSE. See the Lesser GNU General Public
417+ * License for more details.
418+ *
419+ * You should have received a copy of the GNU Lesser General Public License
420+ * along with this program; if not, write to the Free Software Foundation, Inc.,
421+ * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
422+ *
423+ *********************************************************/
424+
425+/*********************************************************
426+ * The contents of this file are subject to the terms of the Common
427+ * Development and Distribution License (the "License") version 1.0
428+ * and no later version. You may not use this file except in
429+ * compliance with the License.
430+ *
431+ * You can obtain a copy of the License at
432+ * http://www.opensource.org/licenses/cddl1.php
433+ *
434+ * See the License for the specific language governing permissions
435+ * and limitations under the License.
436+ *
437+ *********************************************************/
438+
439+
440+#ifndef _POLL_H_
441+#define _POLL_H_
442+
443+#define INCLUDE_ALLOW_USERLEVEL
444+#define INCLUDE_ALLOW_VMCORE
445+#include "includeCheck.h"
446+
447+#include "vm_basic_types.h"
448+#include "vm_basic_defs.h"
449+#include "vmware.h"
450+#include "userlock.h"
451+
452+#ifdef _WIN32
453+#define HZ 100
454+#elif defined linux
455+#include <asm/param.h>
456+#elif __APPLE__
457+#include <TargetConditionals.h>
458+/*
459+ * Old SDKs don't define TARGET_OS_IPHONE at all.
460+ * New ones define it to 0 on Mac OS X, 1 on iOS.
461+ */
462+#if !defined(TARGET_OS_IPHONE) || TARGET_OS_IPHONE == 0
463+#include <sys/kernel.h>
464+#endif
465+#include <sys/poll.h>
466+#define HZ 100
467+#endif
468+#ifdef __ANDROID__
469+/*
470+ * <poll.h> of android should be included, but its name is same
471+ * with this file. So its content is put here to avoid conflict.
472+ */
473+#include <asm/poll.h>
474+#define HZ 100
475+typedef unsigned int nfds_t;
476+int poll(struct pollfd *, nfds_t, long);
477+#endif
478+
479+
480+/*
481+ * Poll event types: each type has a different reason for firing,
482+ * or condition that must be met before firing.
483+ */
484+
485+typedef enum {
486+ /*
487+ * Actual Poll queue types against which you can register callbacks.
488+ */
489+ POLL_VIRTUALREALTIME = -1, /* Negative because it doesn't have its own Q */
490+ POLL_VTIME = 0,
491+ POLL_REALTIME,
492+ POLL_DEVICE,
493+ POLL_MAIN_LOOP,
494+ POLL_NUM_QUEUES
495+} PollEventType;
496+
497+
498+/*
499+ * Classes of events
500+ *
501+ * These are the predefined classes. More can be declared
502+ * with Poll_AllocClass().
503+ */
504+
505+typedef enum PollClass {
506+ POLL_CLASS_MAIN,
507+ POLL_CLASS_PAUSE,
508+ POLL_CLASS_IPC,
509+ POLL_CLASS_CPT,
510+ POLL_CLASS_MKS,
511+ POLL_FIXED_CLASSES,
512+ POLL_MAX_CLASSES = 320 /* Size enum to maximum */
513+} PollClass;
514+
515+
516+/*
517+ * Each callback is registered in a set of classes
518+ */
519+
520+typedef struct PollClassSet {
521+ /* Type is uintptr_t to give best 32/64-bit code. */
522+#define _POLL_ELEMSIZE (sizeof (uintptr_t) * 8)
523+ uintptr_t bits[CEILING(POLL_MAX_CLASSES, _POLL_ELEMSIZE)];
524+} PollClassSet;
525+
526+/* An empty PollClassSet. */
527+static INLINE PollClassSet
528+PollClassSet_Empty(void)
529+{
530+ PollClassSet set = { { 0 } };
531+ return set;
532+}
533+
534+/* A PollClassSet with the single member. */
535+static INLINE PollClassSet
536+PollClassSet_Singleton(PollClass c)
537+{
538+ PollClassSet s = PollClassSet_Empty();
539+
540+ ASSERT_ON_COMPILE(sizeof s.bits[0] * 8 == _POLL_ELEMSIZE); /* Size correct */
541+ ASSERT_ON_COMPILE((_POLL_ELEMSIZE & (_POLL_ELEMSIZE - 1)) == 0); /* power of 2 */
542+ ASSERT_ON_COMPILE(POLL_MAX_CLASSES <= ARRAYSIZE(s.bits) * _POLL_ELEMSIZE);
543+ ASSERT(c < POLL_MAX_CLASSES);
544+
545+ s.bits[c / _POLL_ELEMSIZE] = CONST3264U(1) << (c % _POLL_ELEMSIZE);
546+ return s;
547+}
548+
549+/* Combine two PollClassSets. */
550+static INLINE PollClassSet
551+PollClassSet_Union(PollClassSet lhs, PollClassSet rhs)
552+{
553+ PollClassSet u;
554+ unsigned i;
555+
556+ for (i = 0; i < ARRAYSIZE(u.bits); i++) {
557+ u.bits[i] = lhs.bits[i] | rhs.bits[i];
558+ }
559+ return u;
560+}
561+
562+/* Add single class to PollClassSet. */
563+static INLINE PollClassSet
564+PollClassSet_Include(PollClassSet set, PollClass c)
565+{
566+ return PollClassSet_Union(set, PollClassSet_Singleton(c));
567+}
568+
569+
570+#define POLL_CS_MAIN PollClassSet_Singleton(POLL_CLASS_MAIN)
571+#define POLL_CS_PAUSE PollClassSet_Union(POLL_CS_MAIN, \
572+ PollClassSet_Singleton(POLL_CLASS_PAUSE))
573+#define POLL_CS_CPT PollClassSet_Union(POLL_CS_PAUSE, \
574+ PollClassSet_Singleton(POLL_CLASS_CPT))
575+#define POLL_CS_IPC PollClassSet_Union(POLL_CS_CPT, \
576+ PollClassSet_Singleton(POLL_CLASS_IPC))
577+#define POLL_CS_VMDB POLL_CS_PAUSE /* POLL_CLASS_VMDB is retired */
578+#define POLL_CS_MKS PollClassSet_Singleton(POLL_CLASS_MKS)
579+/*
580+ * DANGER. You don't need POLL_CS_ALWAYS. Really. So don't use it.
581+ */
582+#define POLL_CS_ALWAYS PollClassSet_Union(POLL_CS_CPT, POLL_CS_IPC)
583+
584+/*
585+ * Poll class-set taxonomy:
586+ * POLL_CS_MAIN
587+ * - Unless you NEED another class, use POLL_CS_MAIN.
588+ * POLL_CS_PAUSE
589+ * - For callbacks that must occur even if the guest is paused.
590+ * Most VMDB or Foundry commands are in this category.
591+ * POLL_CS_CPT
592+ * - Only for callbacks which can trigger intermediate Checkpoint
593+ * transitions.
594+ * The ONLY such callback is Migrate.
595+ * POLL_CS_IPC
596+ * - Only for callbacks which can contain Msg_(Post|Hint|Question)
597+ * responses, and for signal handlers (why)?
598+ * Vigor, VMDB, and Foundry can contain Msg_* responses.
599+ * POLL_CS_MKS
600+ * - Callback runs in MKS thread.
601+ * POLL_CS_ALWAYS
602+ * - Only for events that must be processed immediately.
603+ * The ONLY such callback is OvhdMemVmxSizeCheck.
604+ */
605+
606+
607+/*
608+ * Poll_Callback flags
609+ */
610+
611+#define POLL_FLAG_PERIODIC 0x01 // keep after firing
612+#define POLL_FLAG_REMOVE_AT_POWEROFF 0x02 // self-explanatory
613+#define POLL_FLAG_READ 0x04 // device is ready for reading
614+#define POLL_FLAG_WRITE 0x08 // device is ready for writing
615+#define POLL_FLAG_SOCKET 0x10 // device is a Windows socket
616+#define POLL_FLAG_NO_BULL 0x20 // callback does its own locking
617+#define POLL_FLAG_WINSOCK 0x40 // Winsock style write events
618+#define POLL_FLAG_FD 0x80 // device is a Windows file descriptor.
619+#define POLL_FLAG_ACCEPT_INVALID_FDS 0x100 // For broken 3rd party libs, e.g. curl
620+#define POLL_FLAG_THUNK_TO_WND 0x200 // thunk callback to window message loop
621+
622+
623+/*
624+ * Advisory minimum time period.
625+ * Users that want the fastest running real-time poll
626+ * should use TICKS_TO_USECS(1).
627+ */
628+
629+#define TICKS_TO_USECS(_x) ((_x) * (1000000 / HZ))
630+#define USECS_TO_TICKS(_x) ((_x) / (1000000 / HZ))
631+
632+
633+typedef void (*PollerFunction)(void *clientData);
634+typedef void (*PollerFireWrapper)(PollerFunction func,
635+ void *funcData,
636+ void *wrapperData);
637+typedef Bool (*PollerErrorFn)(const char *errorStr);
638+
639+/*
640+ * Initialisers:
641+ *
642+ * For the sake of convenience, we declare the initialisers
643+ * for custom implmentations here, even though the actual
644+ * implementations are distinct from the core poll code.
645+ */
646+
647+typedef struct PollOptions {
648+ Bool locked; // Use internal MXUser for locking
649+ Bool allowFullQueue; // Don't assert when device event queue is full.
650+ VThreadID windowsMsgThread; // thread that processes Windows messages
651+ PollerFireWrapper fireWrapperFn; // optional; may be useful for stats
652+ void *fireWrapperData; // optional
653+ PollerErrorFn errorFn; // optional; called upon unrecoverable error
654+} PollOptions;
655+
656+
657+void Poll_InitDefault(void);
658+void Poll_InitDefaultEx(const PollOptions *opts);
659+void Poll_InitGtk(void); // On top of glib for Linux
660+void Poll_InitCF(void); // On top of CoreFoundation for OSX
661+
662+
663+/*
664+ * Functions
665+ */
666+int Poll_SocketPair(Bool vmci, Bool stream, int fds[2]);
667+void Poll_Loop(Bool loop, Bool *exit, PollClass c);
668+void Poll_LoopTimeout(Bool loop, Bool *exit, PollClass c, int timeout);
669+Bool Poll_LockingEnabled(void);
670+void Poll_Exit(void);
671+
672+
673+/*
674+ * Poll_Callback adds a callback regardless of whether an identical one exists.
675+ *
676+ * Likewise, Poll_CallbackRemove removes exactly one callback.
677+ */
678+
679+VMwareStatus Poll_Callback(PollClassSet classSet,
680+ int flags,
681+ PollerFunction f,
682+ void *clientData,
683+ PollEventType type,
684+ PollDevHandle info, // fd/microsec delay
685+ MXUserRecLock *lck);
686+Bool Poll_CallbackRemove(PollClassSet classSet,
687+ int flags,
688+ PollerFunction f,
689+ void *clientData,
690+ PollEventType type);
691+Bool Poll_CallbackRemoveOneByCB(PollClassSet classSet,
692+ int flags,
693+ PollerFunction f,
694+ PollEventType type,
695+ void **clientData);
696+
697+void Poll_NotifyChange(PollClassSet classSet);
698+
699+/*
700+ * Wrappers for Poll_Callback and Poll_CallbackRemove that present
701+ * simpler subsets of those interfaces.
702+ */
703+
704+VMwareStatus Poll_CB_Device(PollerFunction f,
705+ void *clientData,
706+ PollDevHandle device,
707+ Bool periodic);
708+
709+Bool Poll_CB_DeviceRemove(PollerFunction f,
710+ void *clientData,
711+ Bool periodic);
712+
713+
714+VMwareStatus Poll_CB_RTime(PollerFunction f,
715+ void *clientData,
716+ int delay, // microseconds
717+ Bool periodic,
718+ MXUserRecLock *lock);
719+
720+Bool Poll_CB_RTimeRemove(PollerFunction f,
721+ void *clientData,
722+ Bool periodic);
723+
724+
725+#ifdef _WIN32
726+void Poll_SetWindowMessageRecipient(HWND hWnd, UINT msg, Bool alwaysThunk);
727+Bool Poll_FireWndCallback(void *lparam);
728+#endif
729+
730+#endif // _POLL_H_
731Index: open-vm-tools/lib/rpcIn/rpcin.c
732===================================================================
733--- open-vm-tools.orig/lib/rpcIn/rpcin.c
734+++ open-vm-tools/lib/rpcIn/rpcin.c
735@@ -57,7 +57,7 @@
736
737 #if defined(VMTOOLS_USE_VSOCKET)
738 # include <glib.h>
739-# include "poll.h"
740+# include "vm_poll.h"
741 # include "asyncsocket.h"
742 # include "vmci_defs.h"
743 #include "dataMap.h"
744Index: open-vm-tools/services/plugins/grabbitmqProxy/grabbitmqProxyPlugin.c
745===================================================================
746--- open-vm-tools.orig/services/plugins/grabbitmqProxy/grabbitmqProxyPlugin.c
747+++ open-vm-tools/services/plugins/grabbitmqProxy/grabbitmqProxyPlugin.c
748@@ -48,7 +48,7 @@
749 #include "rpcout.h"
750 #include "rabbitmqProxyConst.h"
751 #include "vm_basic_types.h"
752-#include "poll.h"
753+#include "vm_poll.h"
754 #ifdef OPEN_VM_TOOLS
755 #include "vmci_sockets.h"
756 #include "sslDirect.h"
diff --git a/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0003-use-posix-strerror_r-unless-on-gnu-libc-system.patch b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0003-use-posix-strerror_r-unless-on-gnu-libc-system.patch
new file mode 100644
index 000000000..c7d34c5cf
--- /dev/null
+++ b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0003-use-posix-strerror_r-unless-on-gnu-libc-system.patch
@@ -0,0 +1,39 @@
1From a2e7d9273261c5c5cbc33796900f415097f5455e Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Wed, 13 Jun 2018 23:16:53 -0700
4Subject: [PATCH] use posix strerror_r unless on gnu libc system
5
6Signed-off-by: Khem Raj <raj.khem@gmail.com>
7---
8 open-vm-tools/lib/err/errPosix.c | 9 ++++++---
9 1 file changed, 6 insertions(+), 3 deletions(-)
10
11diff --git a/lib/err/errPosix.c b/lib/err/errPosix.c
12index c81b4c13..7a403640 100644
13--- a/lib/err/errPosix.c
14+++ b/lib/err/errPosix.c
15@@ -31,6 +31,7 @@
16 #include <errno.h>
17 #include <string.h>
18 #include <locale.h>
19+#include <stdio.h>
20
21 #include "vmware.h"
22 #include "errInt.h"
23@@ -63,11 +64,13 @@ ErrErrno2String(Err_Number errorNumber, // IN
24 {
25 char *p;
26
27-#if defined(__linux__) && !defined(__ANDROID__)
28+#if defined(__GLIBC__) && !defined(__ANDROID__)
29 p = strerror_r(errorNumber, buf, bufSize);
30 #else
31- p = strerror(errorNumber);
32-#endif
33+ if (strerror_r(errorNumber, buf, bufSize) != 0)
34+ snprintf(buf, bufSize, "unknown error %i", errorNumber);
35+ p = buf;
36+#endif /* defined __GLIBC__ */
37 ASSERT(p != NULL);
38 return p;
39 }
diff --git a/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0004-Use-uintmax_t-for-handling-rlim_t.patch b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0004-Use-uintmax_t-for-handling-rlim_t.patch
new file mode 100644
index 000000000..e802dca4e
--- /dev/null
+++ b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0004-Use-uintmax_t-for-handling-rlim_t.patch
@@ -0,0 +1,29 @@
1From e694a122c1ff32d8b951ae55756796f9576d23ed Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Wed, 13 Jun 2018 23:37:09 -0700
4Subject: [PATCH] Use uintmax_t for handling rlim_t
5
6rlimit types are not representable with long or long long
7formats, therefore use uintmax_t to typecast rlim_t types
8and use %j to print it
9
10Signed-off-by: Khem Raj <raj.khem@gmail.com>
11---
12 open-vm-tools/lib/hgfsServer/hgfsServerLinux.c | 4 ++--
13 1 file changed, 2 insertions(+), 2 deletions(-)
14
15diff --git a/lib/hgfsServer/hgfsServerLinux.c b/lib/hgfsServer/hgfsServerLinux.c
16index 2e73707d..a2fdb850 100644
17--- a/lib/hgfsServer/hgfsServerLinux.c
18+++ b/lib/hgfsServer/hgfsServerLinux.c
19@@ -5294,8 +5294,8 @@ HgfsWriteCheckIORange(off_t offset, // IN:
20 goto exit;
21 }
22
23- LOG(6, ("%s: File Size limits: 0x%"FMT64"x 0x%"FMT64"x\n",
24- __FUNCTION__, fileSize.rlim_cur, fileSize.rlim_max));
25+ LOG(6, ("%s: File Size limits: 0x%jx 0x%jx\n",
26+ __FUNCTION__, (uintmax_t)fileSize.rlim_cur, (uintmax_t)fileSize.rlim_max));
27
28 /*
29 * Check the offset is within the file size range.
diff --git a/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0007-Use-configure-to-test-for-feature-instead-of-platfor.patch b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0007-Use-configure-to-test-for-feature-instead-of-platfor.patch
index 5adf9b0f9..ad19fb24b 100644
--- a/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0007-Use-configure-to-test-for-feature-instead-of-platfor.patch
+++ b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0007-Use-configure-to-test-for-feature-instead-of-platfor.patch
@@ -29,7 +29,7 @@ Index: open-vm-tools/configure.ac
29=================================================================== 29===================================================================
30--- open-vm-tools.orig/configure.ac 30--- open-vm-tools.orig/configure.ac
31+++ open-vm-tools/configure.ac 31+++ open-vm-tools/configure.ac
32@@ -798,6 +798,7 @@ AC_CHECK_FUNCS( 32@@ -892,6 +892,7 @@ AC_CHECK_FUNCS(
33 33
34 AC_CHECK_FUNCS([ecvt]) 34 AC_CHECK_FUNCS([ecvt])
35 AC_CHECK_FUNCS([fcvt]) 35 AC_CHECK_FUNCS([fcvt])
@@ -37,7 +37,7 @@ Index: open-vm-tools/configure.ac
37 37
38 AC_CHECK_FUNC([mkdtemp], [have_mkdtemp=yes]) 38 AC_CHECK_FUNC([mkdtemp], [have_mkdtemp=yes])
39 39
40@@ -1063,10 +1064,13 @@ AC_PATH_PROG( 40@@ -1076,10 +1077,13 @@ AC_PATH_PROG(
41 ### 41 ###
42 42
43 AC_CHECK_HEADERS([crypt.h]) 43 AC_CHECK_HEADERS([crypt.h])
@@ -133,12 +133,3 @@ Index: open-vm-tools/lib/nicInfo/nicInfoPosix.c
133 # include <net/if.h> 133 # include <net/if.h>
134 #endif 134 #endif
135 #ifndef NO_DNET 135 #ifndef NO_DNET
136@@ -348,7 +352,7 @@ GuestInfoGetNicInfo(NicInfoV3 *nicInfo)
137 *
138 ******************************************************************************
139 */
140-#if defined(__FreeBSD__) || defined(__APPLE__) || defined(USERWORLD)
141+#if defined(NO_DNET) && defined(HAVE_GETIFADDRS)
142
143 char *
144 GuestInfoGetPrimaryIP(void)
diff --git a/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0008-use-posix-strerror_r-unless-gnu.patch b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0008-use-posix-strerror_r-unless-gnu.patch
deleted file mode 100644
index 3d1291c9f..000000000
--- a/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0008-use-posix-strerror_r-unless-gnu.patch
+++ /dev/null
@@ -1,30 +0,0 @@
1From d4d1e7146ca2698089f6bd532f2fb8b9c1134ca7 Mon Sep 17 00:00:00 2001
2From: Natanael Copa <ncopa@alpinelinux.org>
3Date: Mon, 2 Jan 2017 14:39:27 +0000
4Subject: [PATCH 08/11] use posix strerror_r unless gnu
5
6---
7 open-vm-tools/lib/err/errPosix.c | 8 +++++---
8 1 file changed, 5 insertions(+), 3 deletions(-)
9
10Index: open-vm-tools/lib/err/errPosix.c
11===================================================================
12--- open-vm-tools.orig/lib/err/errPosix.c
13+++ open-vm-tools/lib/err/errPosix.c
14@@ -63,11 +63,13 @@ ErrErrno2String(Err_Number errorNumber,
15 {
16 char *p;
17
18-#if defined(linux) && !defined(N_PLAT_NLM) && !defined(__ANDROID__)
19+#if defined(__GLIBC__)
20 p = strerror_r(errorNumber, buf, bufSize);
21 #else
22- p = strerror(errorNumber);
23-#endif
24+ if (strerror_r(errorNumber, buf, bufSize) != 0)
25+ snprintf(buf, bufSize, "unknown error %i", errorNumber);
26+ p = buf;
27+#endif /* defined __GLIBC__ */
28 ASSERT(p != NULL);
29 return p;
30 }
diff --git a/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0009-Add-support-for-building-with-system-libtirpc.patch b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0009-Add-support-for-building-with-system-libtirpc.patch
deleted file mode 100644
index 2bee5ac82..000000000
--- a/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0009-Add-support-for-building-with-system-libtirpc.patch
+++ /dev/null
@@ -1,342 +0,0 @@
1From 5ae6c662fefa621f4600559e299a7d97c2254e69 Mon Sep 17 00:00:00 2001
2From: Natanael Copa <ncopa@alpinelinux.org>
3Date: Sun, 16 Jul 2017 10:20:10 -0700
4Subject: [PATCH 1/3] Add support for building with system libtirpc
5
6Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
7Signed-off-by: Khem Raj <raj.khem@gmail.com>
8
9---
10 open-vm-tools/configure.ac | 14 ++++++++++++++
11 open-vm-tools/lib/dynxdr/Makefile.am | 8 ++++++--
12 open-vm-tools/lib/err/errPosix.c | 1 +
13 open-vm-tools/lib/guestRpc/Makefile.am | 6 ++++++
14 open-vm-tools/lib/misc/Makefile.am | 1 +
15 open-vm-tools/lib/netUtil/Makefile.am | 4 ++++
16 open-vm-tools/lib/nicInfo/Makefile.am | 2 ++
17 open-vm-tools/lib/rpcChannel/Makefile.am | 4 ++++
18 open-vm-tools/lib/slashProc/Makefile.am | 4 ++++
19 open-vm-tools/lib/string/bsd_output_shared.c | 2 +-
20 open-vm-tools/libguestlib/Makefile.am | 2 ++
21 open-vm-tools/rpctool/Makefile.am | 3 +++
22 open-vm-tools/rpctool/rpctool.c | 2 ++
23 open-vm-tools/services/plugins/dndcp/Makefile.am | 2 ++
24 open-vm-tools/services/plugins/guestInfo/Makefile.am | 1 +
25 open-vm-tools/services/plugins/resolutionSet/Makefile.am | 2 ++
26 open-vm-tools/services/plugins/vix/Makefile.am | 2 ++
27 open-vm-tools/services/plugins/vmbackup/Makefile.am | 2 ++
28 open-vm-tools/toolbox/Makefile.am | 2 ++
29 19 files changed, 61 insertions(+), 3 deletions(-)
30
31Index: open-vm-tools/configure.ac
32===================================================================
33--- open-vm-tools.orig/configure.ac
34+++ open-vm-tools/configure.ac
35@@ -405,6 +405,20 @@ AC_VMW_CHECK_LIB([fuse],
36 AC_MSG_WARN([Fuse is missing, vmblock-fuse/vmhgfs-fuse will be disabled.])])
37
38 #
39+# Check for libtirpc
40+#
41+AC_VMW_CHECK_LIB([libtirpc],
42+ [LIBTIRPC],
43+ [libtirpc],
44+ [],
45+ [],
46+ [rpc/xdr.h],
47+ [xdr_void],
48+ [have_libtirpc=yes],
49+ [have_libtitirpc=no;
50+ AC_MSG_WARN([libtirpc is missing.])])
51+
52+#
53 # Check for PAM.
54 #
55 AC_ARG_WITH([pam],
56Index: open-vm-tools/lib/dynxdr/Makefile.am
57===================================================================
58--- open-vm-tools.orig/lib/dynxdr/Makefile.am
59+++ open-vm-tools/lib/dynxdr/Makefile.am
60@@ -17,7 +17,11 @@
61
62 noinst_LTLIBRARIES = libDynxdr.la
63
64-libDynxdr_la_SOURCES =
65+libDynxdr_la_SOURCES =
66 libDynxdr_la_SOURCES += dynxdr.c
67 libDynxdr_la_SOURCES += xdrutil.c
68-libDynxdr_la_CPPFLAGS = -Wno-incompatible-pointer-types
69+libDynxdr_la_CPPFLAGS = @LIBTIRPC_CPPFLAGS@ -Wno-incompatible-pointer-types
70+
71+libDynxdr_la_LIBADD =
72+libDynxdr_la_LIBADD += @LIBTIRPC_LIBS@
73+
74Index: open-vm-tools/lib/err/errPosix.c
75===================================================================
76--- open-vm-tools.orig/lib/err/errPosix.c
77+++ open-vm-tools/lib/err/errPosix.c
78@@ -31,6 +31,7 @@
79 #include <errno.h>
80 #include <string.h>
81 #include <locale.h>
82+#include <stdio.h>
83
84 #include "vmware.h"
85 #include "errInt.h"
86Index: open-vm-tools/lib/guestRpc/Makefile.am
87===================================================================
88--- open-vm-tools.orig/lib/guestRpc/Makefile.am
89+++ open-vm-tools/lib/guestRpc/Makefile.am
90@@ -20,6 +20,12 @@ noinst_LTLIBRARIES = libGuestRpc.la
91 libGuestRpc_la_SOURCES =
92 libGuestRpc_la_SOURCES += nicinfo_xdr.c
93
94+libGuestRpc_la_CPPFLAGS =
95+libGuestRpc_la_CPPFLAGS += @LIBTIRPC_CPPFLAGS@
96+
97+libGuestRpc_la_LIBADD =
98+libGuestRpc_la_LIBADD += @LIBTIRPC_LIBS@
99+
100 # XXX: Autoreconf complains about this and recommends using AM_CFLAGS instead.
101 # Problem is, $(CFLAGS) is appended to the compiler command line after AM_CFLAGS
102 # and after libGuestRpc_la_CFLAGS, so "-Wall -Werror" will override this flag.
103Index: open-vm-tools/lib/misc/Makefile.am
104===================================================================
105--- open-vm-tools.orig/lib/misc/Makefile.am
106+++ open-vm-tools/lib/misc/Makefile.am
107@@ -52,4 +52,5 @@ libMisc_la_SOURCES += utilMem.c
108 libMisc_la_SOURCES += vmstdio.c
109 libMisc_la_SOURCES += strutil.c
110 libMisc_la_SOURCES += vthreadBase.c
111+libMisc_la_CPPFLAGS = -Wno-error=int-conversion
112
113Index: open-vm-tools/lib/netUtil/Makefile.am
114===================================================================
115--- open-vm-tools.orig/lib/netUtil/Makefile.am
116+++ open-vm-tools/lib/netUtil/Makefile.am
117@@ -20,3 +20,7 @@ noinst_LTLIBRARIES = libNetUtil.la
118 libNetUtil_la_SOURCES =
119 libNetUtil_la_SOURCES += netUtilLinux.c
120
121+libNetUtil_la_CPPFLAGS =
122+libNetUtil_la_CPPFLAGS += @LIBTIRPC_CPPFLAGS@
123+
124+libNetUtil_la_LIBADD = @LIBTIRPC_LIBS@
125Index: open-vm-tools/lib/nicInfo/Makefile.am
126===================================================================
127--- open-vm-tools.orig/lib/nicInfo/Makefile.am
128+++ open-vm-tools/lib/nicInfo/Makefile.am
129@@ -25,12 +25,14 @@ libNicInfo_la_SOURCES += nicInfoPosix.c
130
131 libNicInfo_la_CPPFLAGS =
132 libNicInfo_la_CPPFLAGS += @GLIB2_CPPFLAGS@
133+libNicInfo_la_CPPFLAGS += @LIBTIRPC_CPPFLAGS@
134
135 AM_CFLAGS = $(DNET_CPPFLAGS)
136 if USE_SLASH_PROC
137 AM_CFLAGS += -DUSE_SLASH_PROC
138 endif
139 libNicInfo_la_LIBADD =
140+libNicInfo_la_LIBADD += @LIBTIRPC_LIBS@
141 if HAVE_DNET
142 libNicInfo_la_LIBADD += @DNET_LIBS@
143 endif
144Index: open-vm-tools/lib/rpcChannel/Makefile.am
145===================================================================
146--- open-vm-tools.orig/lib/rpcChannel/Makefile.am
147+++ open-vm-tools/lib/rpcChannel/Makefile.am
148@@ -27,3 +27,7 @@ endif
149
150 libRpcChannel_la_CPPFLAGS =
151 libRpcChannel_la_CPPFLAGS += @VMTOOLS_CPPFLAGS@
152+libRpcChannel_la_CPPFLAGS += @LIBTIRPC_CPPFLAGS@
153+
154+libRpcChannel_la_LIBADD =
155+libRpcChannel_la_LIBADD += @LIBTIRPC_LIBS@
156Index: open-vm-tools/lib/slashProc/Makefile.am
157===================================================================
158--- open-vm-tools.orig/lib/slashProc/Makefile.am
159+++ open-vm-tools/lib/slashProc/Makefile.am
160@@ -22,6 +22,10 @@ libSlashProc_la_SOURCES += net.c
161
162 libSlashProc_la_CPPFLAGS =
163 libSlashProc_la_CPPFLAGS += @GLIB2_CPPFLAGS@
164+libSlashProc_la_CPPFLAGS += @LIBTIRPC_CPPFLAGS@
165+
166+libSlashProc_la_LIBADD =
167+libSlashProc_la_LIBADD += @LIBTIRPC_LIBS@
168
169 AM_CFLAGS = $(DNET_CPPFLAGS)
170
171Index: open-vm-tools/lib/string/bsd_output_shared.c
172===================================================================
173--- open-vm-tools.orig/lib/string/bsd_output_shared.c
174+++ open-vm-tools/lib/string/bsd_output_shared.c
175@@ -38,7 +38,7 @@
176 //#include <sys/cdefs.h>
177
178 #if !defined(STR_NO_WIN32_LIBS) && !defined(__FreeBSD__) && !defined(__OpenBSD__) && !defined(__NetBSD__) && !defined(__ANDROID__)
179-
180+#define _GNU_SOURCE
181 #include <stdio.h>
182 #include <stdlib.h>
183 #ifndef _WIN32
184Index: open-vm-tools/libguestlib/Makefile.am
185===================================================================
186--- open-vm-tools.orig/libguestlib/Makefile.am
187+++ open-vm-tools/libguestlib/Makefile.am
188@@ -22,6 +22,7 @@ AM_CFLAGS += -I$(top_srcdir)/include
189
190 libguestlib_la_LIBADD =
191 libguestlib_la_LIBADD += @VMTOOLS_LIBS@
192+libguestlib_la_LIBADD += @LIBTIRPC_LIBS@
193
194 libguestlib_la_SOURCES =
195 libguestlib_la_SOURCES += guestlibV3_xdr.c
196@@ -56,6 +57,7 @@ CFLAGS += -Wno-unused
197 libguestlib_la_CPPFLAGS =
198 libguestlib_la_CPPFLAGS += -DVMTOOLS_USE_GLIB
199 libguestlib_la_CPPFLAGS += @GLIB2_CPPFLAGS@
200+libguestlib_la_CPPFLAGS += @LIBTIRPC_CPPFLAGS@
201
202 EXTRA_DIST = vmguestlib.pc.in
203
204Index: open-vm-tools/rpctool/Makefile.am
205===================================================================
206--- open-vm-tools.orig/rpctool/Makefile.am
207+++ open-vm-tools/rpctool/Makefile.am
208@@ -17,10 +17,13 @@
209
210 bin_PROGRAMS = vmware-rpctool
211
212+vmware_rpctool_CFLAGS= @LIBTIRPC_LIBS@
213+
214 vmware_rpctool_SOURCES =
215 vmware_rpctool_SOURCES += rpctool.c
216
217 vmware_rpctool_LDADD =
218+vmware_rpctool_LDADD += @LIBTIRPC_LIBS@
219 vmware_rpctool_LDADD += ../lib/rpcOut/libRpcOut.la
220 vmware_rpctool_LDADD += ../lib/message/libMessage.la
221 vmware_rpctool_LDADD += ../lib/backdoor/libBackdoor.la
222Index: open-vm-tools/rpctool/rpctool.c
223===================================================================
224--- open-vm-tools.orig/rpctool/rpctool.c
225+++ open-vm-tools/rpctool/rpctool.c
226@@ -23,6 +23,8 @@
227 */
228
229 #ifndef _WIN32
230+#define _GNU_SOURCE
231+#include <signal.h>
232 #include "sigPosixRegs.h"
233 #include <errno.h>
234 #include <stdint.h>
235Index: open-vm-tools/services/plugins/dndcp/Makefile.am
236===================================================================
237--- open-vm-tools.orig/services/plugins/dndcp/Makefile.am
238+++ open-vm-tools/services/plugins/dndcp/Makefile.am
239@@ -23,6 +23,7 @@ plugin_LTLIBRARIES = libdndcp.la
240 libdndcp_la_CPPFLAGS =
241 libdndcp_la_CPPFLAGS += @GTK_CPPFLAGS@
242 libdndcp_la_CPPFLAGS += @PLUGIN_CPPFLAGS@
243+libdndcp_la_CPPFLAGS += @LIBTIRPC_CPPFLAGS@
244 libdndcp_la_CPPFLAGS += -I$(top_srcdir)/services/plugins/dndcp/dnd
245 libdndcp_la_CPPFLAGS += -I$(top_srcdir)/services/plugins/dndcp/dndGuest
246 libdndcp_la_CPPFLAGS += -I$(top_srcdir)/services/plugins/dndcp/stringxx
247@@ -44,6 +45,7 @@ libdndcp_la_LIBADD += @GTK_LIBS@
248 libdndcp_la_LIBADD += @GTKMM_LIBS@
249 libdndcp_la_LIBADD += @VMTOOLS_LIBS@
250 libdndcp_la_LIBADD += @HGFS_LIBS@
251+libdndcp_la_LIBADD += @LIBTIRPC_LIBS@
252 libdndcp_la_LIBADD += $(top_builddir)/lib/hgfsUri/hgfsUriPosix.lo
253
254 libdndcp_la_SOURCES =
255Index: open-vm-tools/services/plugins/guestInfo/Makefile.am
256===================================================================
257--- open-vm-tools.orig/services/plugins/guestInfo/Makefile.am
258+++ open-vm-tools/services/plugins/guestInfo/Makefile.am
259@@ -22,6 +22,7 @@ plugin_LTLIBRARIES = libguestInfo.la
260
261 libguestInfo_la_CPPFLAGS =
262 libguestInfo_la_CPPFLAGS += @PLUGIN_CPPFLAGS@
263+libguestInfo_la_CPPFLAGS += @LIBTIRPC_CPPFLAGS@
264
265 libguestInfo_la_LDFLAGS =
266 libguestInfo_la_LDFLAGS += @PLUGIN_LDFLAGS@
267Index: open-vm-tools/services/plugins/resolutionSet/Makefile.am
268===================================================================
269--- open-vm-tools.orig/services/plugins/resolutionSet/Makefile.am
270+++ open-vm-tools/services/plugins/resolutionSet/Makefile.am
271@@ -21,6 +21,7 @@ plugin_LTLIBRARIES = libresolutionSet.la
272 libresolutionSet_la_CPPFLAGS =
273 libresolutionSet_la_CPPFLAGS += @GTK_CPPFLAGS@
274 libresolutionSet_la_CPPFLAGS += @PLUGIN_CPPFLAGS@
275+libresolutionSet_la_CPPFLAGS += @LIBTIRPC_CPPFLAGS@
276 libresolutionSet_la_CPPFLAGS += -DRESOLUTION_X11
277
278 libresolutionSet_la_LDFLAGS =
279@@ -30,6 +31,7 @@ libresolutionSet_la_LIBADD =
280 libresolutionSet_la_LIBADD += @COMMON_XLIBS@
281 libresolutionSet_la_LIBADD += @GTK_LIBS@
282 libresolutionSet_la_LIBADD += @VMTOOLS_LIBS@
283+libresolutionSet_la_LIBADD += @LIBTIRPC_LIBS@
284
285 libresolutionSet_la_SOURCES =
286 libresolutionSet_la_SOURCES += libvmwarectrl.c
287Index: open-vm-tools/services/plugins/vix/Makefile.am
288===================================================================
289--- open-vm-tools.orig/services/plugins/vix/Makefile.am
290+++ open-vm-tools/services/plugins/vix/Makefile.am
291@@ -20,6 +20,7 @@ plugin_LTLIBRARIES = libvix.la
292
293 libvix_la_CPPFLAGS =
294 libvix_la_CPPFLAGS += @PLUGIN_CPPFLAGS@
295+libvix_la_CPPFLAGS += @LIBTIRPC_CPPFLAGS@
296 libvix_la_CPPFLAGS += -I$(top_srcdir)/vgauth/public
297
298 libvix_la_LDFLAGS =
299@@ -29,6 +30,7 @@ libvix_la_LIBADD =
300 libvix_la_LIBADD += @VIX_LIBADD@
301 libvix_la_LIBADD += @VMTOOLS_LIBS@
302 libvix_la_LIBADD += @HGFS_LIBS@
303+libvix_la_LIBADD += @LIBTIRPC_LIBS@
304 libvix_la_LIBADD += $(top_builddir)/lib/auth/libAuth.la
305 libvix_la_LIBADD += $(top_builddir)/lib/foundryMsg/libFoundryMsg.la
306 libvix_la_LIBADD += $(top_builddir)/lib/impersonate/libImpersonate.la
307Index: open-vm-tools/services/plugins/vmbackup/Makefile.am
308===================================================================
309--- open-vm-tools.orig/services/plugins/vmbackup/Makefile.am
310+++ open-vm-tools/services/plugins/vmbackup/Makefile.am
311@@ -20,6 +20,7 @@ plugin_LTLIBRARIES = libvmbackup.la
312
313 libvmbackup_la_CPPFLAGS =
314 libvmbackup_la_CPPFLAGS += @PLUGIN_CPPFLAGS@
315+libvmbackup_la_CPPFLAGS += @LIBTIRPC_CPPFLAGS@
316
317 libvmbackup_la_LDFLAGS =
318 libvmbackup_la_LDFLAGS += @PLUGIN_LDFLAGS@
319@@ -27,6 +28,7 @@ libvmbackup_la_LDFLAGS += @PLUGIN_LDFLAG
320 libvmbackup_la_LIBADD =
321 libvmbackup_la_LIBADD += @GOBJECT_LIBS@
322 libvmbackup_la_LIBADD += @VMTOOLS_LIBS@
323+libvmbackup_la_LIBADD += @LIBTIRPC_LIBS@
324
325 libvmbackup_la_SOURCES =
326 libvmbackup_la_SOURCES += nullProvider.c
327Index: open-vm-tools/toolbox/Makefile.am
328===================================================================
329--- open-vm-tools.orig/toolbox/Makefile.am
330+++ open-vm-tools/toolbox/Makefile.am
331@@ -20,9 +20,11 @@ bin_PROGRAMS = vmware-toolbox-cmd
332 vmware_toolbox_cmd_LDADD =
333 vmware_toolbox_cmd_LDADD += ../libguestlib/libguestlib.la
334 vmware_toolbox_cmd_LDADD += @VMTOOLS_LIBS@
335+vmware_toolbox_cmd_LDADD += @LIBTIRPC_LIBS@
336
337 vmware_toolbox_cmd_CPPFLAGS =
338 vmware_toolbox_cmd_CPPFLAGS += @VMTOOLS_CPPFLAGS@
339+vmware_toolbox_cmd_CPPFLAGS += @LIBTIRPC_CPPFLAGS@
340
341 vmware_toolbox_cmd_SOURCES =
342 vmware_toolbox_cmd_SOURCES += toolbox-cmd.c
diff --git a/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0010-gnu-ucontext.patch b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0010-gnu-ucontext.patch
deleted file mode 100644
index c9beac1fc..000000000
--- a/meta-oe/recipes-support/open-vm-tools/open-vm-tools/0010-gnu-ucontext.patch
+++ /dev/null
@@ -1,65 +0,0 @@
1From 27442e2dd287d393d7b3f8bf164a887affef84df Mon Sep 17 00:00:00 2001
2From: Natanael Copa <ncopa@alpinelinux.org>
3Date: Wed, 18 Nov 2015 10:27:51 +0000
4Subject: [PATCH 10/11] gnu-ucontext
5
6---
7 open-vm-tools/lib/include/sigPosixRegs.h | 24 ++++++++++++------------
8 1 file changed, 12 insertions(+), 12 deletions(-)
9
10Index: open-vm-tools/lib/include/sigPosixRegs.h
11===================================================================
12--- open-vm-tools.orig/lib/include/sigPosixRegs.h
13+++ open-vm-tools/lib/include/sigPosixRegs.h
14@@ -33,7 +33,7 @@
15 #include "includeCheck.h"
16
17
18-#if __linux__ // We need the REG_foo offsets in the gregset_t;
19+#if defined(__GLIBC__) // We need the REG_foo offsets in the gregset_t;
20 # define _GNU_SOURCE // _GNU_SOURCE maps to __USE_GNU
21
22 /* And, the REG_foo definitions conflict with our own in x86.h */
23@@ -73,7 +73,7 @@
24 #include <sys/ucontext.h>
25 #endif
26
27-#if __linux__
28+#if defined(__GLIBC__)
29 # if defined(__x86_64__)
30 # undef REG_RAX
31 # undef REG_RBX
32@@ -199,7 +199,7 @@
33 #define SC_ESP(uc) ((unsigned long) (uc)->uc_mcontext.mc_esp)
34 #define SC_EIP(uc) ((unsigned long) (uc)->uc_mcontext.mc_eip)
35 #endif
36-#elif defined (sun)
37+#elif !defined (__GLIBC__)
38 #ifdef __x86_64__
39 #define SC_EAX(uc) ((unsigned long) (uc)->uc_mcontext.gregs[REG_RAX])
40 #define SC_EBX(uc) ((unsigned long) (uc)->uc_mcontext.gregs[REG_RBX])
41@@ -219,15 +219,15 @@
42 #define SC_R14(uc) ((unsigned long) (uc)->uc_mcontext.gregs[REG_R14])
43 #define SC_R15(uc) ((unsigned long) (uc)->uc_mcontext.gregs[REG_R15])
44 #else
45-#define SC_EAX(uc) ((unsigned long) (uc)->uc_mcontext.gregs[EAX])
46-#define SC_EBX(uc) ((unsigned long) (uc)->uc_mcontext.gregs[EBX])
47-#define SC_ECX(uc) ((unsigned long) (uc)->uc_mcontext.gregs[ECX])
48-#define SC_EDX(uc) ((unsigned long) (uc)->uc_mcontext.gregs[EDX])
49-#define SC_EDI(uc) ((unsigned long) (uc)->uc_mcontext.gregs[EDI])
50-#define SC_ESI(uc) ((unsigned long) (uc)->uc_mcontext.gregs[ESI])
51-#define SC_EBP(uc) ((unsigned long) (uc)->uc_mcontext.gregs[EBP])
52-#define SC_ESP(uc) ((unsigned long) (uc)->uc_mcontext.gregs[ESP])
53-#define SC_EIP(uc) ((unsigned long) (uc)->uc_mcontext.gregs[EIP])
54+#define SC_EAX(uc) ((unsigned long) (uc)->uc_mcontext.gregs[REG_EAX])
55+#define SC_EBX(uc) ((unsigned long) (uc)->uc_mcontext.gregs[REG_EBX])
56+#define SC_ECX(uc) ((unsigned long) (uc)->uc_mcontext.gregs[REG_ECX])
57+#define SC_EDX(uc) ((unsigned long) (uc)->uc_mcontext.gregs[REG_EDX])
58+#define SC_EDI(uc) ((unsigned long) (uc)->uc_mcontext.gregs[REG_EDI])
59+#define SC_ESI(uc) ((unsigned long) (uc)->uc_mcontext.gregs[REG_ESI])
60+#define SC_EBP(uc) ((unsigned long) (uc)->uc_mcontext.gregs[REG_EBP])
61+#define SC_ESP(uc) ((unsigned long) (uc)->uc_mcontext.gregs[REG_ESP])
62+#define SC_EIP(uc) ((unsigned long) (uc)->uc_mcontext.gregs[REG_EIP])
63 #endif
64 #elif defined(ANDROID_X86)
65 #define SC_EAX(uc) ((unsigned long) (uc)->uc_mcontext.eax)
diff --git a/meta-oe/recipes-support/open-vm-tools/open-vm-tools/fix-subdir-objects-configure-error.patch b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/fix-subdir-objects-configure-error.patch
new file mode 100644
index 000000000..1a6bfdb09
--- /dev/null
+++ b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/fix-subdir-objects-configure-error.patch
@@ -0,0 +1,12 @@
1Index: open-vm-tools/configure.ac
2===================================================================
3--- open-vm-tools.orig/configure.ac
4+++ open-vm-tools/configure.ac
5@@ -303,6 +303,7 @@ AC_ARG_ENABLE(
6 [],
7 [enable_resolutionkms="auto"])
8
9+AM_INIT_AUTOMAKE([subdir-objects])
10 AM_INIT_AUTOMAKE
11
12 ###
diff --git a/meta-oe/recipes-support/open-vm-tools/files/tools.conf b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/tools.conf
index f6cae70cc..f6cae70cc 100644
--- a/meta-oe/recipes-support/open-vm-tools/files/tools.conf
+++ b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/tools.conf
diff --git a/meta-oe/recipes-support/open-vm-tools/open-vm-tools/use-tirpc.patch b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/use-tirpc.patch
new file mode 100644
index 000000000..a6bb92486
--- /dev/null
+++ b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/use-tirpc.patch
@@ -0,0 +1,481 @@
1Index: open-vm-tools/configure.ac
2===================================================================
3--- open-vm-tools.orig/configure.ac
4+++ open-vm-tools/configure.ac
5@@ -586,6 +586,11 @@ AC_ARG_WITH([xml2],
6 [enable_vgauth=no],
7 [with_xml2=yes])
8
9+AC_ARG_WITH([tirpc],
10+ [AS_HELP_STRING([--without-tirpc],
11+ [compiles without tirpc support.])],
12+ [with_tirpc="$withval"],
13+ [with_tirpc="auto"])
14
15 # Make sure we are building with openssl 1.0.1 and above so that
16 # we use only TLSv1_2.
17@@ -1067,10 +1072,45 @@ if test "$enable_caf" = "yes"; then
18
19 fi
20
21+have_tirpc="no"
22+if test "x$with_tirpc" != "xno"; then
23+ AC_VMW_CHECK_LIB([libtirpc],
24+ [TIRPC],
25+ [libtirpc],
26+ [],
27+ [],
28+ [],
29+ [],
30+ [have_tirpc="yes"],
31+ [have_tirpc="no"])
32+fi
33+
34+if test "$with_tirpc" = "no"; then
35+ use_tirpc="no"
36+elif test "$with_tirpc" = "auto"; then
37+ use_tirpc=$have_tirpc
38+elif test "$with_tirpc" = "yes"; then
39+ if test "$have_tirpc" = "no"; then
40+ AC_MSG_ERROR([libtirpc is required, but not found.])
41+ else
42+ use_tirpc="yes"
43+ fi
44+fi
45+
46+if test "$use_tirpc" = "yes"; then
47+ AC_MSG_NOTICE([Building with libtirpc])
48+else
49+ AC_MSG_NOTICE([Building without libtirpc])
50+fi
51+
52 AC_PATH_PROG(
53 [RPCGEN],
54 [rpcgen],
55- [ AC_MSG_ERROR([rpcgen not found. Please install the libc devel package.]) ])
56+ [not_found])
57+
58+if test "$RPCGEN" = "not_found"; then
59+ AC_MSG_ERROR([rpcgen not found. Please install libc-devel or libc-rpcgen package.])
60+fi
61
62 ###
63 ### Headers
64@@ -1411,6 +1451,7 @@ AM_CONDITIONAL(HAVE_MKDTEMP, test "$have
65 AM_CONDITIONAL(HAVE_UDEV, test "$have_udev" = "yes")
66 AM_CONDITIONAL(ENABLE_RESOLUTIONKMS, test "x$enable_resolutionkms" = "xyes")
67 AM_CONDITIONAL(VGAUTH_USE_CXX, test "$with_icu" = "yes" -o "$use_xmlsec1" != "yes")
68+AM_CONDITIONAL(HAVE_TIRPC, test "$use_tirpc" = "yes")
69
70 if test "$have_xsm" != "yes"; then
71 AC_DEFINE([NO_XSM], 1, [])
72@@ -1459,6 +1500,13 @@ if test "$os" = "solaris"; then
73 XDR_LIBS="-lnsl -lrpcsvc"
74 fi
75
76+# In newer Linux distros Sun RPC has been removed from libc
77+XDR_CPPFLAGS=
78+if test "$os" = "linux" -a "$use_tirpc" = "yes"; then
79+ XDR_CPPFLAGS="-DUSE_TIRPC $TIRPC_CPPFLAGS"
80+ XDR_LIBS="$TIRPC_LIBS"
81+fi
82+
83 # Installation directories for core services plugins.
84 TEST_PLUGIN_INSTALLDIR=$datadir/open-vm-tools/tests
85 COMMON_PLUGIN_INSTALLDIR=$libdir/open-vm-tools/plugins/common
86@@ -1497,6 +1545,7 @@ AC_SUBST([PLUGIN_LDFLAGS])
87 AC_SUBST([VMTOOLS_CPPFLAGS])
88 AC_SUBST([VMTOOLS_LIBS])
89 AC_SUBST([RPCGENFLAGS])
90+AC_SUBST([XDR_CPPFLAGS])
91 AC_SUBST([XDR_LIBS])
92 AC_SUBST([TEST_PLUGIN_INSTALLDIR])
93 AC_SUBST([COMMON_PLUGIN_INSTALLDIR])
94Index: open-vm-tools/lib/dynxdr/dynxdr.c
95===================================================================
96--- open-vm-tools.orig/lib/dynxdr/dynxdr.c
97+++ open-vm-tools/lib/dynxdr/dynxdr.c
98@@ -1,5 +1,5 @@
99 /*********************************************************
100- * Copyright (C) 2008-2017 VMware, Inc. All rights reserved.
101+ * Copyright (C) 2008-2018 VMware, Inc. All rights reserved.
102 *
103 * This program is free software; you can redistribute it and/or modify it
104 * under the terms of the GNU Lesser General Public License as published
105@@ -55,7 +55,7 @@ typedef struct DynXdrData {
106 * Mac OS X, FreeBSD and Solaris don't take a const parameter to the
107 * "x_getpostn" function.
108 */
109-#if defined(__APPLE__) || defined(__FreeBSD__) || defined(sun)
110+#if defined(__APPLE__) || defined(__FreeBSD__) || defined(sun) || defined(USE_TIRPC)
111 # define DYNXDR_GETPOS_CONST
112 #else
113 # define DYNXDR_GETPOS_CONST const
114@@ -172,7 +172,11 @@ DynXdrSetPos(XDR *xdrs, // IN
115 }
116
117
118-#if defined(__GLIBC__) || (defined(sun) && (defined(_LP64) || defined(_KERNEL)))
119+#if !defined(USE_TIRPC) && \
120+ defined(__GLIBC__) || \
121+ (defined(sun) && \
122+ (defined(_LP64) || \
123+ defined(_KERNEL)))
124 /*
125 *-----------------------------------------------------------------------------
126 *
127@@ -322,11 +326,11 @@ DynXdr_Create(XDR *in) // IN
128 DynXdrSetPos, /* x_setpostn */
129 DynXdrInline, /* x_inline */
130 NULL, /* x_destroy */
131-#if defined(__GLIBC__)
132+#if defined(__APPLE__) || defined (USE_TIRPC)
133+ NULL, /* x_control */
134+#elif defined(__GLIBC__)
135 NULL, /* x_getint32 */
136 DynXdrPutInt32, /* x_putint32 */
137-#elif defined(__APPLE__)
138- NULL, /* x_control */
139 #elif defined(sun) && (defined(_LP64) || defined(_KERNEL))
140 NULL, /* x_control */
141 NULL, /* x_getint32 */
142Index: open-vm-tools/lib/dynxdr/Makefile.am
143===================================================================
144--- open-vm-tools.orig/lib/dynxdr/Makefile.am
145+++ open-vm-tools/lib/dynxdr/Makefile.am
146@@ -1,5 +1,5 @@
147 ################################################################################
148-### Copyright (C) 2008-2016 VMware, Inc. All rights reserved.
149+### Copyright (C) 2008-2018 VMware, Inc. All rights reserved.
150 ###
151 ### This program is free software; you can redistribute it and/or modify
152 ### it under the terms of version 2 of the GNU General Public License as
153@@ -20,4 +20,7 @@ noinst_LTLIBRARIES = libDynxdr.la
154 libDynxdr_la_SOURCES =
155 libDynxdr_la_SOURCES += dynxdr.c
156 libDynxdr_la_SOURCES += xdrutil.c
157-libDynxdr_la_CPPFLAGS = -Wno-incompatible-pointer-types
158+
159+libDynxdr_la_CPPFLAGS = @XDR_CPPFLAGS@ -Wno-incompatible-pointer-types
160+libDynxdr_la_LIBADD = @XDR_LIBS@
161+
162Index: open-vm-tools/lib/guestRpc/Makefile.am
163===================================================================
164--- open-vm-tools.orig/lib/guestRpc/Makefile.am
165+++ open-vm-tools/lib/guestRpc/Makefile.am
166@@ -1,5 +1,5 @@
167 ################################################################################
168-### Copyright (C) 2008-2016 VMware, Inc. All rights reserved.
169+### Copyright (C) 2008-2018 VMware, Inc. All rights reserved.
170 ###
171 ### This program is free software; you can redistribute it and/or modify
172 ### it under the terms of version 2 of the GNU General Public License as
173@@ -20,6 +20,10 @@ noinst_LTLIBRARIES = libGuestRpc.la
174 libGuestRpc_la_SOURCES =
175 libGuestRpc_la_SOURCES += nicinfo_xdr.c
176
177+libGuestRpc_la_CPPFLAGS = @XDR_CPPFLAGS@
178+
179+libGuestRpc_la_LIBADD = @XDR_LIBS@
180+
181 # XXX: Autoreconf complains about this and recommends using AM_CFLAGS instead.
182 # Problem is, $(CFLAGS) is appended to the compiler command line after AM_CFLAGS
183 # and after libGuestRpc_la_CFLAGS, so "-Wall -Werror" will override this flag.
184Index: open-vm-tools/lib/netUtil/Makefile.am
185===================================================================
186--- open-vm-tools.orig/lib/netUtil/Makefile.am
187+++ open-vm-tools/lib/netUtil/Makefile.am
188@@ -1,5 +1,5 @@
189 ################################################################################
190-### Copyright (C) 2007-2016 VMware, Inc. All rights reserved.
191+### Copyright (C) 2007-2018 VMware, Inc. All rights reserved.
192 ###
193 ### This program is free software; you can redistribute it and/or modify
194 ### it under the terms of version 2 of the GNU General Public License as
195@@ -20,3 +20,6 @@ noinst_LTLIBRARIES = libNetUtil.la
196 libNetUtil_la_SOURCES =
197 libNetUtil_la_SOURCES += netUtilLinux.c
198
199+libNetUtil_la_CPPFLAGS = @XDR_CPPFLAGS@
200+
201+libNetUtil_la_LIBADD = @XDR_LIBS@
202Index: open-vm-tools/lib/nicInfo/Makefile.am
203===================================================================
204--- open-vm-tools.orig/lib/nicInfo/Makefile.am
205+++ open-vm-tools/lib/nicInfo/Makefile.am
206@@ -1,5 +1,5 @@
207 ################################################################################
208-### Copyright (C) 2014-2016 VMware, Inc. All rights reserved.
209+### Copyright (C) 2014-2018 VMware, Inc. All rights reserved.
210 ###
211 ### This program is free software; you can redistribute it and/or modify
212 ### it under the terms of version 2 of the GNU General Public License as
213@@ -25,6 +25,9 @@ libNicInfo_la_SOURCES += nicInfoPosix.c
214
215 libNicInfo_la_CPPFLAGS =
216 libNicInfo_la_CPPFLAGS += @GLIB2_CPPFLAGS@
217+libNicInfo_la_CPPFLAGS += @XDR_CPPFLAGS@
218+
219+libNicInfo_la_LIBADD = @XDR_LIBS@
220
221 AM_CFLAGS = $(DNET_CPPFLAGS)
222 if USE_SLASH_PROC
223Index: open-vm-tools/lib/rpcChannel/Makefile.am
224===================================================================
225--- open-vm-tools.orig/lib/rpcChannel/Makefile.am
226+++ open-vm-tools/lib/rpcChannel/Makefile.am
227@@ -1,5 +1,5 @@
228 ################################################################################
229-### Copyright (C) 2009-2016 VMware, Inc. All rights reserved.
230+### Copyright (C) 2009-2018 VMware, Inc. All rights reserved.
231 ###
232 ### This program is free software; you can redistribute it and/or modify
233 ### it under the terms of version 2 of the GNU General Public License as
234@@ -27,3 +27,6 @@ endif
235
236 libRpcChannel_la_CPPFLAGS =
237 libRpcChannel_la_CPPFLAGS += @VMTOOLS_CPPFLAGS@
238+libRpcChannel_la_CPPFLAGS += @XDR_CPPFLAGS@
239+
240+libRpcChannel_la_LIBADD = @XDR_LIBS@
241Index: open-vm-tools/lib/slashProc/net.c
242===================================================================
243--- open-vm-tools.orig/lib/slashProc/net.c
244+++ open-vm-tools/lib/slashProc/net.c
245@@ -1,5 +1,5 @@
246 /*********************************************************
247- * Copyright (C) 2009-2016 VMware, Inc. All rights reserved.
248+ * Copyright (C) 2009-2018 VMware, Inc. All rights reserved.
249 *
250 * This program is free software; you can redistribute it and/or modify it
251 * under the terms of the GNU Lesser General Public License as published
252@@ -36,7 +36,6 @@
253 #include "panic.h"
254 #include "slashProc.h"
255 #include "slashProcNetInt.h"
256-#include "netutil.h"
257
258
259 /*
260Index: open-vm-tools/libguestlib/Makefile.am
261===================================================================
262--- open-vm-tools.orig/libguestlib/Makefile.am
263+++ open-vm-tools/libguestlib/Makefile.am
264@@ -1,5 +1,5 @@
265 ################################################################################
266-### Copyright (C) 2007-2016 VMware, Inc. All rights reserved.
267+### Copyright (C) 2007-2018 VMware, Inc. All rights reserved.
268 ###
269 ### This program is free software; you can redistribute it and/or modify
270 ### it under the terms of version 2 of the GNU General Public License as
271@@ -22,6 +22,7 @@ AM_CFLAGS += -I$(top_srcdir)/include
272
273 libguestlib_la_LIBADD =
274 libguestlib_la_LIBADD += @VMTOOLS_LIBS@
275+libguestlib_la_LIBADD += @XDR_LIBS@
276
277 libguestlib_la_SOURCES =
278 libguestlib_la_SOURCES += guestlibV3_xdr.c
279@@ -56,6 +57,7 @@ CFLAGS += -Wno-unused
280 libguestlib_la_CPPFLAGS =
281 libguestlib_la_CPPFLAGS += -DVMTOOLS_USE_GLIB
282 libguestlib_la_CPPFLAGS += @GLIB2_CPPFLAGS@
283+libguestlib_la_CPPFLAGS += @XDR_CPPFLAGS@
284
285 EXTRA_DIST = vmguestlib.pc.in
286
287Index: open-vm-tools/services/plugins/dndcp/Makefile.am
288===================================================================
289--- open-vm-tools.orig/services/plugins/dndcp/Makefile.am
290+++ open-vm-tools/services/plugins/dndcp/Makefile.am
291@@ -1,5 +1,5 @@
292 ################################################################################
293-### Copyright (C) 2009-2016 VMware, Inc. All rights reserved.
294+### Copyright (C) 2009-2018 VMware, Inc. All rights reserved.
295 ###
296 ### This program is free software; you can redistribute it and/or modify
297 ### it under the terms of version 2 of the GNU General Public License as
298@@ -28,6 +28,7 @@ libdndcp_la_CPPFLAGS += -I$(top_srcdir)/
299 libdndcp_la_CPPFLAGS += -I$(top_srcdir)/services/plugins/dndcp/stringxx
300 libdndcp_la_CPPFLAGS += -I$(top_srcdir)/services/plugins/dndcp/xutils
301 libdndcp_la_CPPFLAGS += -I$(top_srcdir)/include
302+libdndcp_la_CPPFLAGS += @XDR_CPPFLAGS@
303
304 # Passing C++ related flags to CPPFLAGS generates error.
305 # So, we need to pass these to C++ compilation only.
306@@ -45,6 +46,7 @@ libdndcp_la_LIBADD += @GTKMM_LIBS@
307 libdndcp_la_LIBADD += @VMTOOLS_LIBS@
308 libdndcp_la_LIBADD += @HGFS_LIBS@
309 libdndcp_la_LIBADD += $(top_builddir)/lib/hgfsUri/hgfsUriPosix.lo
310+libdndcp_la_LIBADD += @XDR_LIBS@
311
312 libdndcp_la_SOURCES =
313
314Index: open-vm-tools/services/plugins/guestInfo/Makefile.am
315===================================================================
316--- open-vm-tools.orig/services/plugins/guestInfo/Makefile.am
317+++ open-vm-tools/services/plugins/guestInfo/Makefile.am
318@@ -1,5 +1,5 @@
319 ################################################################################
320-### Copyright (C) 2009-2017 VMware, Inc. All rights reserved.
321+### Copyright (C) 2009-2018 VMware, Inc. All rights reserved.
322 ###
323 ### This program is free software; you can redistribute it and/or modify
324 ### it under the terms of version 2 of the GNU General Public License as
325@@ -22,6 +22,7 @@ plugin_LTLIBRARIES = libguestInfo.la
326
327 libguestInfo_la_CPPFLAGS =
328 libguestInfo_la_CPPFLAGS += @PLUGIN_CPPFLAGS@
329+libguestInfo_la_CPPFLAGS += @XDR_CPPFLAGS@
330
331 libguestInfo_la_LDFLAGS =
332 libguestInfo_la_LDFLAGS += @PLUGIN_LDFLAGS@
333Index: open-vm-tools/services/plugins/resolutionKMS/resolutionKMS.c
334===================================================================
335--- open-vm-tools.orig/services/plugins/resolutionKMS/resolutionKMS.c
336+++ open-vm-tools/services/plugins/resolutionKMS/resolutionKMS.c
337@@ -1,5 +1,5 @@
338 /*********************************************************
339- * Copyright (C) 2008-2017 VMware, Inc. All rights reserved.
340+ * Copyright (C) 2008-2018 VMware, Inc. All rights reserved.
341 *
342 * This program is free software; you can redistribute it and/or modify it
343 * under the terms of the GNU Lesser General Public License as published
344@@ -29,16 +29,13 @@
345 #include <sys/stat.h>
346 #include <fcntl.h>
347
348+#include <stdio.h>
349 #include <stdlib.h>
350 #include <string.h>
351
352 #include "vmware.h"
353-#include "debug.h"
354-#include "rpcout.h"
355-#include "str.h"
356 #include "strutil.h"
357
358-#include "xdrutil.h"
359 #include "vmware/guestrpc/tclodefs.h"
360 #include "vmware/tools/plugin.h"
361 #include "vmware/tools/utils.h"
362Index: open-vm-tools/services/plugins/resolutionSet/resolutionSet.c
363===================================================================
364--- open-vm-tools.orig/services/plugins/resolutionSet/resolutionSet.c
365+++ open-vm-tools/services/plugins/resolutionSet/resolutionSet.c
366@@ -1,5 +1,5 @@
367 /*********************************************************
368- * Copyright (C) 2008-2017 VMware, Inc. All rights reserved.
369+ * Copyright (C) 2008-2018 VMware, Inc. All rights reserved.
370 *
371 * This program is free software; you can redistribute it and/or modify it
372 * under the terms of the GNU Lesser General Public License as published
373@@ -34,7 +34,6 @@
374
375 #include "resolutionInt.h"
376
377-#include "xdrutil.h"
378 #include "vmware/guestrpc/tclodefs.h"
379 #include "vmware/tools/plugin.h"
380 #include "vmware/tools/utils.h"
381Index: open-vm-tools/services/plugins/vix/Makefile.am
382===================================================================
383--- open-vm-tools.orig/services/plugins/vix/Makefile.am
384+++ open-vm-tools/services/plugins/vix/Makefile.am
385@@ -1,5 +1,5 @@
386 ################################################################################
387-### Copyright (C) 2009-2016 VMware, Inc. All rights reserved.
388+### Copyright (C) 2009-2018 VMware, Inc. All rights reserved.
389 ###
390 ### This program is free software; you can redistribute it and/or modify
391 ### it under the terms of version 2 of the GNU General Public License as
392@@ -20,6 +20,7 @@ plugin_LTLIBRARIES = libvix.la
393
394 libvix_la_CPPFLAGS =
395 libvix_la_CPPFLAGS += @PLUGIN_CPPFLAGS@
396+libvix_la_CPPFLAGS += @XDR_CPPFLAGS@
397 libvix_la_CPPFLAGS += -I$(top_srcdir)/vgauth/public
398
399 libvix_la_LDFLAGS =
400@@ -32,6 +33,7 @@ libvix_la_LIBADD += @HGFS_LIBS@
401 libvix_la_LIBADD += $(top_builddir)/lib/auth/libAuth.la
402 libvix_la_LIBADD += $(top_builddir)/lib/foundryMsg/libFoundryMsg.la
403 libvix_la_LIBADD += $(top_builddir)/lib/impersonate/libImpersonate.la
404+libvix_la_LIBADD += @XDR_LIBS@
405 if ENABLE_VGAUTH
406 libvix_la_LIBADD += $(top_builddir)/vgauth/lib/libvgauth.la
407 endif
408Index: open-vm-tools/services/plugins/vix/vixTools.c
409===================================================================
410--- open-vm-tools.orig/services/plugins/vix/vixTools.c
411+++ open-vm-tools/services/plugins/vix/vixTools.c
412@@ -91,7 +91,6 @@
413 #include "str.h"
414 #include "file.h"
415 #include "err.h"
416-#include "guestInfo.h" // MAX_VALUE_LEN
417 #include "hostinfo.h"
418 #include "guest_os.h"
419 #include "guest_msg_def.h"
420Index: open-vm-tools/services/plugins/vmbackup/Makefile.am
421===================================================================
422--- open-vm-tools.orig/services/plugins/vmbackup/Makefile.am
423+++ open-vm-tools/services/plugins/vmbackup/Makefile.am
424@@ -1,5 +1,5 @@
425 ################################################################################
426-### Copyright (C) 2009-2017 VMware, Inc. All rights reserved.
427+### Copyright (C) 2009-2018 VMware, Inc. All rights reserved.
428 ###
429 ### This program is free software; you can redistribute it and/or modify
430 ### it under the terms of version 2 of the GNU General Public License as
431@@ -20,6 +20,7 @@ plugin_LTLIBRARIES = libvmbackup.la
432
433 libvmbackup_la_CPPFLAGS =
434 libvmbackup_la_CPPFLAGS += @PLUGIN_CPPFLAGS@
435+libvmbackup_la_CPPFLAGS += @XDR_CPPFLAGS@
436
437 libvmbackup_la_LDFLAGS =
438 libvmbackup_la_LDFLAGS += @PLUGIN_LDFLAGS@
439@@ -27,6 +28,7 @@ libvmbackup_la_LDFLAGS += @PLUGIN_LDFLAG
440 libvmbackup_la_LIBADD =
441 libvmbackup_la_LIBADD += @GOBJECT_LIBS@
442 libvmbackup_la_LIBADD += @VMTOOLS_LIBS@
443+libvmbackup_la_LIBADD += @XDR_LIBS@
444
445 libvmbackup_la_SOURCES =
446 libvmbackup_la_SOURCES += nullProvider.c
447Index: open-vm-tools/services/plugins/vmbackup/stateMachine.c
448===================================================================
449--- open-vm-tools.orig/services/plugins/vmbackup/stateMachine.c
450+++ open-vm-tools/services/plugins/vmbackup/stateMachine.c
451@@ -35,7 +35,6 @@
452
453 #include "vmBackupInt.h"
454
455-#include "dynxdr.h"
456 #include <glib-object.h>
457 #include <gmodule.h>
458 #include "guestApp.h"
459Index: open-vm-tools/toolbox/Makefile.am
460===================================================================
461--- open-vm-tools.orig/toolbox/Makefile.am
462+++ open-vm-tools/toolbox/Makefile.am
463@@ -1,5 +1,5 @@
464 ################################################################################
465-### Copyright (C) 2007-2016 VMware, Inc. All rights reserved.
466+### Copyright (C) 2007-2018 VMware, Inc. All rights reserved.
467 ###
468 ### This program is free software; you can redistribute it and/or modify
469 ### it under the terms of version 2 of the GNU General Public License as
470@@ -20,9 +20,11 @@ bin_PROGRAMS = vmware-toolbox-cmd
471 vmware_toolbox_cmd_LDADD =
472 vmware_toolbox_cmd_LDADD += ../libguestlib/libguestlib.la
473 vmware_toolbox_cmd_LDADD += @VMTOOLS_LIBS@
474+vmware_toolbox_cmd_LDADD += @XDR_LIBS@
475
476 vmware_toolbox_cmd_CPPFLAGS =
477 vmware_toolbox_cmd_CPPFLAGS += @VMTOOLS_CPPFLAGS@
478+vmware_toolbox_cmd_CPPFLAGS += @XDR_CPPFLAGS@
479
480 vmware_toolbox_cmd_SOURCES =
481 vmware_toolbox_cmd_SOURCES += toolbox-cmd.c
diff --git a/meta-oe/recipes-support/open-vm-tools/files/vmtoolsd.init b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.init
index 38280464a..38280464a 100644
--- a/meta-oe/recipes-support/open-vm-tools/files/vmtoolsd.init
+++ b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.init
diff --git a/meta-oe/recipes-support/open-vm-tools/files/vmtoolsd.service b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.service
index d30e38055..d30e38055 100644
--- a/meta-oe/recipes-support/open-vm-tools/files/vmtoolsd.service
+++ b/meta-oe/recipes-support/open-vm-tools/open-vm-tools/vmtoolsd.service
diff --git a/meta-oe/recipes-support/open-vm-tools/open-vm-tools_10.1.5.bb b/meta-oe/recipes-support/open-vm-tools/open-vm-tools_10.2.5.bb
index c32d2c5b3..820c95bbd 100644
--- a/meta-oe/recipes-support/open-vm-tools/open-vm-tools_10.1.5.bb
+++ b/meta-oe/recipes-support/open-vm-tools/open-vm-tools_10.2.5.bb
@@ -14,7 +14,7 @@ HOMEPAGE = "https://github.com/vmware/open-vm-tools"
14SECTION = "vmware-tools" 14SECTION = "vmware-tools"
15 15
16LICENSE = "LGPL-2.0 & GPL-2.0 & BSD & CDDL-1.0" 16LICENSE = "LGPL-2.0 & GPL-2.0 & BSD & CDDL-1.0"
17LIC_FILES_CHKSUM = "file://LICENSE;md5=b66ba4cb4fc017682c95efc300410e79" 17LIC_FILES_CHKSUM = "file://LICENSE;md5=e5000bc3c5a39b6e66579d72cc32b45a"
18LICENSE_modules/freebsd/vmblock = "BSD" 18LICENSE_modules/freebsd/vmblock = "BSD"
19LICENSE_modules/freebsd/vmmemctl = "GPL-2.0" 19LICENSE_modules/freebsd/vmmemctl = "GPL-2.0"
20LICENSE_modules/freebsd/vmxnet = "GPL-2.0" 20LICENSE_modules/freebsd/vmxnet = "GPL-2.0"
@@ -28,25 +28,23 @@ SRC_URI = "git://github.com/vmware/open-vm-tools.git;protocol=https \
28 file://0001-configure.ac-don-t-use-dnet-config.patch \ 28 file://0001-configure.ac-don-t-use-dnet-config.patch \
29 file://0002-add-include-sys-sysmacros.h.patch \ 29 file://0002-add-include-sys-sysmacros.h.patch \
30 file://0001-Remove-assumptions-about-glibc-being-only-libc-imple.patch \ 30 file://0001-Remove-assumptions-about-glibc-being-only-libc-imple.patch \
31 file://0002-include-poll.h-instead-of-obsolete-sys-poll.h.patch \
32 file://0003-Rename-poll.h-to-vm_poll.h.patch \
33 file://0004-Add-Wno-incompatible-pointer-types-and-Wno-error-add.patch \ 31 file://0004-Add-Wno-incompatible-pointer-types-and-Wno-error-add.patch \
34 file://0005-Use-configure-test-for-struct-timespec.patch \ 32 file://0005-Use-configure-test-for-struct-timespec.patch \
35 file://0006-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch \ 33 file://0006-Fix-definition-of-ALLPERMS-and-ACCESSPERMS.patch \
36 file://0007-Use-configure-to-test-for-feature-instead-of-platfor.patch \ 34 file://0007-Use-configure-to-test-for-feature-instead-of-platfor.patch \
37 file://0008-use-posix-strerror_r-unless-gnu.patch \
38 file://0011-Use-configure-test-for-sys-stat.h-include.patch \ 35 file://0011-Use-configure-test-for-sys-stat.h-include.patch \
36 file://use-tirpc.patch \
37 file://fix-subdir-objects-configure-error.patch \
38 file://0001-include-poll.h-instead-of-sys-poll.h.patch \
39 file://0002-Rename-poll.h-to-vm_poll.h.patch \
40 file://0003-use-posix-strerror_r-unless-on-gnu-libc-system.patch \
41 file://0004-Use-uintmax_t-for-handling-rlim_t.patch \
39 " 42 "
40SRC_URI_append_libc-musl = "\ 43SRCREV = "380a3d9747999e8bcbcbcd03b1402b702770db79"
41 file://0009-Add-support-for-building-with-system-libtirpc.patch \
42 file://0010-gnu-ucontext.patch \
43 "
44SRCREV = "854c0bb374612f7e633b448ca273f970f154458b"
45 44
46S = "${WORKDIR}/git/open-vm-tools" 45S = "${WORKDIR}/git/open-vm-tools"
47 46
48DEPENDS = "glib-2.0 glib-2.0-native util-linux libdnet procps" 47DEPENDS = "glib-2.0 glib-2.0-native util-linux libdnet procps libtirpc"
49DEPENDS_append_libc-musl = " libtirpc"
50 48
51# open-vm-tools is supported only on x86. 49# open-vm-tools is supported only on x86.
52COMPATIBLE_HOST = '(x86_64.*|i.86.*)-linux' 50COMPATIBLE_HOST = '(x86_64.*|i.86.*)-linux'