Merge ~paelzer/ubuntu/+source/open-vm-tools:merge-bionic-10.3 into ubuntu/+source/open-vm-tools:ubuntu/cosmic-devel

Proposed by Christian Ehrhardt 
Status: Merged
Approved by: Christian Ehrhardt 
Approved revision: 8c184b6a0e685c8beb211066e7edfc3c5bed5a87
Merge reported by: Christian Ehrhardt 
Merged at revision: 8c184b6a0e685c8beb211066e7edfc3c5bed5a87
Proposed branch: ~paelzer/ubuntu/+source/open-vm-tools:merge-bionic-10.3
Merge into: ubuntu/+source/open-vm-tools:ubuntu/cosmic-devel
Diff against target: 66644 lines (+42516/-11828) (has conflicts)
191 files modified
ReleaseNotes.md (+107/-68)
debian/changelog (+28/-0)
debian/patches/debian/enable_vmhgfs-fuse_by_default (+1/-1)
debian/patches/debian/scsi-udev-rule (+9/-6)
debian/patches/series (+0/-1)
dev/null (+0/-80)
open-vm-tools/AUTHORS (+23/-0)
open-vm-tools/ChangeLog (+36258/-8613)
open-vm-tools/LICENSE (+4/-64)
open-vm-tools/README (+3/-124)
open-vm-tools/common-agent/Cpp/Framework/Framework/include/BaseDefines.h (+1/-1)
open-vm-tools/common-agent/Cpp/Framework/Framework/include/Exception/CCafException.h (+8/-1)
open-vm-tools/common-agent/Cpp/Framework/Framework/include/Memory/DynamicArray/TDynamicArray.h (+7/-3)
open-vm-tools/common-agent/Cpp/Framework/Framework/src/Common/CApplicationContext.cpp (+2/-2)
open-vm-tools/common-agent/Cpp/Framework/Framework/src/Integration/Core/CDocument.cpp (+2/-1)
open-vm-tools/common-agent/Cpp/Framework/Framework/src/Integration/Core/CIntMessage.cpp (+2/-1)
open-vm-tools/common-agent/Cpp/Framework/Subsystems/Integration/src/CRecipientListRouterInstance.cpp (+2/-1)
open-vm-tools/common-agent/Cpp/ManagementAgent/Subsystems/MaIntegration/src/CConfigEnvMerge.cpp (+5/-1)
open-vm-tools/common-agent/Cpp/ManagementAgent/Subsystems/MaIntegration/src/CMonitorListener.cpp (+8/-3)
open-vm-tools/common-agent/Cpp/ManagementAgent/Subsystems/MaIntegration/src/CMonitorListener.h (+2/-4)
open-vm-tools/configure.ac (+209/-115)
open-vm-tools/lib/appUtil/appUtil.c (+1/-3)
open-vm-tools/lib/asyncsocket/asyncsocket.c (+191/-55)
open-vm-tools/lib/auth/authPosix.c (+11/-4)
open-vm-tools/lib/dynxdr/Makefile.am (+8/-2)
open-vm-tools/lib/dynxdr/dynxdr.c (+10/-6)
open-vm-tools/lib/file/file.c (+88/-72)
open-vm-tools/lib/file/fileIO.c (+18/-10)
open-vm-tools/lib/file/fileIOPosix.c (+81/-23)
open-vm-tools/lib/file/fileLockPrimitive.c (+37/-12)
open-vm-tools/lib/file/filePosix.c (+31/-7)
open-vm-tools/lib/file/fileStandAlone.c (+2/-2)
open-vm-tools/lib/file/fileTemp.c (+57/-17)
open-vm-tools/lib/file/fileTempPosix.c (+281/-130)
open-vm-tools/lib/guestApp/guestApp.c (+9/-9)
open-vm-tools/lib/guestRpc/Makefile.am (+7/-1)
open-vm-tools/lib/hashMap/hashMap.c (+88/-8)
open-vm-tools/lib/hgfs/hgfsEscape.c (+2/-2)
open-vm-tools/lib/hgfsServer/hgfsServer.c (+79/-92)
open-vm-tools/lib/hgfsServer/hgfsServerInt.h (+2/-2)
open-vm-tools/lib/hgfsServer/hgfsServerParameters.c (+74/-74)
open-vm-tools/lib/hgfsServer/hgfsServerParameters.h (+2/-2)
open-vm-tools/lib/include/asyncsocket.h (+6/-1)
open-vm-tools/lib/include/backdoor_def.h (+7/-3)
open-vm-tools/lib/include/buildNumber.h (+6/-6)
open-vm-tools/lib/include/conf.h (+23/-1)
open-vm-tools/lib/include/config.h (+4/-3)
open-vm-tools/lib/include/cpuid_info.h (+1/-28)
open-vm-tools/lib/include/deployPkg/linuxDeployment.h (+30/-2)
open-vm-tools/lib/include/err.h (+12/-4)
open-vm-tools/lib/include/file.h (+15/-24)
open-vm-tools/lib/include/fileIO.h (+11/-1)
open-vm-tools/lib/include/ghIntegrationCommon.h (+22/-1)
open-vm-tools/lib/include/guestStats.h (+70/-5)
open-vm-tools/lib/include/guest_os.h (+10/-10)
open-vm-tools/lib/include/guest_os_tables.h (+11/-5)
open-vm-tools/lib/include/hashMap.h (+2/-1)
open-vm-tools/lib/include/hgfsProto.h (+71/-47)
open-vm-tools/lib/include/hostinfo.h (+6/-5)
open-vm-tools/lib/include/libExport.hh (+19/-13)
open-vm-tools/lib/include/loglevel_user.h (+4/-3)
open-vm-tools/lib/include/nicInfo.h (+4/-2)
open-vm-tools/lib/include/poll.h (+8/-1)
open-vm-tools/lib/include/posix.h (+2/-1)
open-vm-tools/lib/include/rpcvmx.h (+7/-1)
open-vm-tools/lib/include/slashProc.h (+3/-3)
open-vm-tools/lib/include/str.h (+11/-32)
open-vm-tools/lib/include/strutil.h (+2/-1)
open-vm-tools/lib/include/syncDriver.h (+3/-2)
open-vm-tools/lib/include/system.h (+1/-4)
open-vm-tools/lib/include/unicodeBase.h (+6/-2)
open-vm-tools/lib/include/util.h (+4/-1)
open-vm-tools/lib/include/uuid.h (+12/-14)
open-vm-tools/lib/include/vm_atomic.h (+284/-192)
open-vm-tools/lib/include/vm_basic_asm.h (+3/-3)
open-vm-tools/lib/include/vm_basic_asm_x86_common.h (+5/-7)
open-vm-tools/lib/include/vm_basic_defs.h (+16/-59)
open-vm-tools/lib/include/vm_basic_types.h (+84/-141)
open-vm-tools/lib/include/vm_device_version.h (+7/-2)
open-vm-tools/lib/include/vm_legal.h (+7/-6)
open-vm-tools/lib/include/vm_product.h (+7/-12)
open-vm-tools/lib/include/vm_product_versions.h (+49/-34)
open-vm-tools/lib/include/vm_tools_version.h (+32/-4)
open-vm-tools/lib/include/vmblock.h (+3/-1)
open-vm-tools/lib/include/vmware/guestrpc/deploypkg.h (+5/-2)
open-vm-tools/lib/include/vmware/tools/guestrpc.h (+16/-15)
open-vm-tools/lib/include/vmware/tools/plugin.h (+3/-1)
open-vm-tools/lib/include/vmware/tools/utils.h (+4/-1)
open-vm-tools/lib/include/wiper.h (+3/-3)
open-vm-tools/lib/include/x86cpuid.h (+107/-85)
open-vm-tools/lib/include/x86vendor.h (+2/-2)
open-vm-tools/lib/include/xdrutil.h (+20/-11)
open-vm-tools/lib/lock/ulInt.h (+1/-2)
open-vm-tools/lib/misc/hostinfoPosix.c (+634/-272)
open-vm-tools/lib/misc/posixPwd.c (+34/-1)
open-vm-tools/lib/misc/strutil.c (+42/-3)
open-vm-tools/lib/misc/timeutil.c (+3/-3)
open-vm-tools/lib/misc/utilMem.c (+171/-2)
open-vm-tools/lib/misc/util_misc.c (+4/-4)
open-vm-tools/lib/misc/vmstdio.c (+6/-6)
open-vm-tools/lib/misc/vthreadBase.c (+6/-4)
open-vm-tools/lib/netUtil/Makefile.am (+7/-1)
open-vm-tools/lib/nicInfo/Makefile.am (+7/-7)
open-vm-tools/lib/nicInfo/nicInfo.c (+8/-4)
open-vm-tools/lib/nicInfo/nicInfoInt.h (+4/-2)
open-vm-tools/lib/nicInfo/nicInfoPosix.c (+81/-28)
open-vm-tools/lib/panic/panic.c (+3/-3)
open-vm-tools/lib/rpcChannel/Makefile.am (+6/-1)
open-vm-tools/lib/rpcChannel/bdoorChannel.c (+9/-1)
open-vm-tools/lib/rpcChannel/rpcChannel.c (+172/-149)
open-vm-tools/lib/rpcChannel/rpcChannelInt.h (+14/-4)
open-vm-tools/lib/rpcChannel/vsockChannel.c (+5/-2)
open-vm-tools/lib/rpcVmx/rpcvmx.c (+29/-1)
open-vm-tools/lib/slashProc/Makefile.am (+2/-3)
open-vm-tools/lib/slashProc/net.c (+64/-32)
open-vm-tools/lib/sslDirect/sslDirect.c (+18/-5)
open-vm-tools/lib/string/str.c (+7/-79)
open-vm-tools/lib/syncDriver/syncDriverLinux.c (+9/-1)
open-vm-tools/lib/syncDriver/syncDriverPosix.c (+220/-13)
open-vm-tools/lib/system/systemLinux.c (+8/-82)
open-vm-tools/lib/user/util.c (+1/-2)
open-vm-tools/lib/user/utilBacktrace.c (+1/-2)
open-vm-tools/lib/vmCheck/vmcheck.c (+38/-9)
open-vm-tools/lib/wiper/wiperPosix.c (+17/-8)
open-vm-tools/libDeployPkg/Makefile.am (+5/-3)
open-vm-tools/libDeployPkg/linuxDeployment.c (+105/-61)
open-vm-tools/libguestlib/Makefile.am (+3/-1)
open-vm-tools/libvmtools/vmtoolsLog.c (+67/-16)
open-vm-tools/modules/Makefile.am (+17/-0)
open-vm-tools/modules/freebsd/vmblock/Makefile (+2/-1)
open-vm-tools/modules/freebsd/vmmemctl/Makefile (+2/-1)
open-vm-tools/modules/freebsd/vmmemctl/os.c (+42/-9)
open-vm-tools/modules/freebsd/vmxnet/Makefile (+2/-1)
open-vm-tools/modules/shared/vmblock/block.c (+49/-1)
open-vm-tools/modules/shared/vmblock/block.h (+2/-1)
open-vm-tools/modules/shared/vmmemctl/kernelStubs.h (+8/-3)
open-vm-tools/modules/shared/vmxnet/eth_public.h (+79/-42)
open-vm-tools/modules/shared/vmxnet/upt1_defs.h (+2/-1)
open-vm-tools/modules/shared/vmxnet/vmnet_def.h (+2/-1)
open-vm-tools/modules/shared/vmxnet/vmxnet3_defs.h (+29/-9)
open-vm-tools/modules/solaris/vmhgfs/kernelStubs.h (+8/-3)
open-vm-tools/scripts/linux/network (+2/-1)
open-vm-tools/services/plugins/deployPkg/deployPkg.c (+37/-10)
open-vm-tools/services/plugins/deployPkg/deployPkgLog.c (+30/-4)
open-vm-tools/services/plugins/desktopEvents/x11Lock.c (+57/-1)
open-vm-tools/services/plugins/dndcp/Makefile.am (+10/-1)
open-vm-tools/services/plugins/dndcp/copyPasteDnDX11.cpp (+13/-1)
open-vm-tools/services/plugins/dndcp/copyPasteUIX11.cpp (+145/-18)
open-vm-tools/services/plugins/dndcp/copyPasteUIX11.h (+21/-1)
open-vm-tools/services/plugins/dndcp/dndGuest/guestDnDDest.cc (+1/-1)
open-vm-tools/services/plugins/dndcp/fakeMouseWayland/fakeMouseWayland.cpp (+332/-0)
open-vm-tools/services/plugins/dndcp/fakeMouseWayland/fakeMouseWayland.h (+36/-0)
open-vm-tools/services/plugins/dndcp/stringxx/autoCPtr.hh (+3/-3)
open-vm-tools/services/plugins/guestInfo/Makefile.am (+3/-4)
open-vm-tools/services/plugins/guestInfo/diskInfo.c (+9/-2)
open-vm-tools/services/plugins/guestInfo/guestInfoInt.h (+1/-20)
open-vm-tools/services/plugins/guestInfo/guestInfoServer.c (+40/-3)
open-vm-tools/services/plugins/guestInfo/perfMonLinux.c (+546/-198)
open-vm-tools/services/plugins/hgfsServer/hgfsPlugin.c (+31/-18)
open-vm-tools/services/plugins/resolutionKMS/resolutionKMS.c (+2/-5)
open-vm-tools/services/plugins/resolutionSet/resolutionSet.c (+1/-2)
open-vm-tools/services/plugins/timeSync/timeSync.c (+3/-3)
open-vm-tools/services/plugins/timeSync/timeSync.h (+2/-2)
open-vm-tools/services/plugins/timeSync/timeSyncPosix.c (+2/-2)
open-vm-tools/services/plugins/vix/Makefile.am (+3/-1)
open-vm-tools/services/plugins/vix/foundryToolsDaemon.c (+3/-2)
open-vm-tools/services/plugins/vix/vixTools.c (+18/-11)
open-vm-tools/services/plugins/vix/vixToolsEnvVars.c (+16/-16)
open-vm-tools/services/plugins/vix/vixToolsInt.h (+3/-3)
open-vm-tools/services/plugins/vmbackup/Makefile.am (+3/-1)
open-vm-tools/services/plugins/vmbackup/stateMachine.c (+9/-2)
open-vm-tools/services/plugins/vmbackup/syncDriverOps.c (+3/-2)
open-vm-tools/services/plugins/vmbackup/vmBackupInt.h (+2/-1)
open-vm-tools/services/vmtoolsd/cmdLine.c (+11/-2)
open-vm-tools/services/vmtoolsd/l10n/de.vmsg (+5/-1)
open-vm-tools/services/vmtoolsd/l10n/ja.vmsg (+5/-1)
open-vm-tools/services/vmtoolsd/l10n/ko.vmsg (+5/-1)
open-vm-tools/services/vmtoolsd/pluginMgr.c (+1/-1)
open-vm-tools/services/vmtoolsd/toolsRpc.c (+5/-4)
open-vm-tools/toolbox/Makefile.am (+3/-1)
open-vm-tools/toolbox/toolboxcmd-info.c (+46/-4)
open-vm-tools/toolbox/toolboxcmd-shrink.c (+2/-2)
open-vm-tools/udev/99-vmware-scsi-udev.rules (+6/-2)
open-vm-tools/vgauth/cli/l10n/it.vmsg (+3/-3)
open-vm-tools/vgauth/service/fileLogger.c (+27/-1)
open-vm-tools/vgauth/service/log.c (+15/-97)
open-vm-tools/vgauth/serviceImpl/saml-xmlsec1.c (+5/-5)
open-vm-tools/vmblock-fuse/fsops.c (+60/-18)
open-vm-tools/vmblock-fuse/fsops.h (+5/-2)
open-vm-tools/vmhgfs-fuse/config.c (+2/-2)
open-vm-tools/vmware-user-suid-wrapper/main.c (+58/-21)
Conflict in debian/changelog
Reviewer Review Type Date Requested Status
Robie Basak Approve
Canonical Server Pending
git-ubuntu developers Pending
Review via email: mp+352237@code.launchpad.net
To post a comment you must log in.
Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

See [1] for it's "sibling" :-)
This essentially is equal to the recent Cosmic merge and upload which was package reviewed in [1] and tested/verified by VMWare per the discussions and agreements since last cycle (they own the test matrix of hipervisor versions and are more authorative than us to call it good or not).

We recently had a discussion on package versions for such backports, now this is even more special.
It already has the "ubuntu" string in the version, so I did not add another "ubuntu" after the "~", but please double check if you think this is the right version string for it.

The SRU Bug itself will be bug 1784638 (I'll add htre SRU Template then).
This follows the precedence of https://bugs.launchpad.net/ubuntu/+source/open-vm-tools/+bug/1741390
and goes under the special SRU exception for supporting new (virtual) HW.

This is again (like DPDK merge two days ago) a minimal Delta on top of Cosmic, but for Bionic eventually it will be more Delta (as seen and reviewed by the SRU Team then).

Setting target to cosmic to see the actual new changes I did for this (as we do with our debian/sid merge proposals).

FYI: For more fun 10.3 just migrated minutes ago in Cosmic and formerly Cosmic==Bionic, so the Diff here is shown:
- against what is in Bionic this morning
- against what is in Cosmic later on today :-)
As discussed yesterday - for any non super-common case we want to look at the git branch instead of LP diff anyway :-/

[1]: https://bugs.launchpad.net/ubuntu/+source/open-vm-tools/+bug/1784638

Revision history for this message
Robie Basak (racb) wrote :

The diff between this proposed branch and pkg/ubuntu/devel is exactly this:

-open-vm-tools (2:10.3.0-0ubuntu1) cosmic; urgency=medium
+open-vm-tools (2:10.3.0-0ubuntu1~18.04.1) bionic; urgency=medium

So therefore it is exactly equivalent to a no-change backport from Cosmic. Your branch history agrees - it is one commit on top of your previous upload tag to change the changelog.

What confused me is that this isn't adding a new changelog entry on top of the one in Cosmic saying something like "Backport to Bionic", rather than a modification of the existing changelog entry. I would do it with a new entry (since you're taking Cosmic and doing what is effectively a no change rebuild to Bionic) but we don't have consensus on the right way to approach this so I should not block the upload on that.

The version string is fine.

SRU documentation in the bug is done and looks reasonable given this is a platform enablement feature release bump.

review: Approve
Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

To ssh://git.launchpad.net/~usd-import-team/ubuntu/+source/open-vm-tools
 * [new tag] upload/2%10.3.0-0ubuntu1_18.04.1 -> upload/2%10.3.0-0ubuntu1_18.04.1

Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

Uploading to ubuntu (via ftp to upload.ubuntu.com):
  Uploading open-vm-tools_10.3.0-0ubuntu1~18.04.1.dsc: done.
  Uploading open-vm-tools_10.3.0.orig.tar.gz: done.
  Uploading open-vm-tools_10.3.0-0ubuntu1~18.04.1.debian.tar.xz: done.
  Uploading open-vm-tools_10.3.0-0ubuntu1~18.04.1_source.buildinfo: done.
  Uploading open-vm-tools_10.3.0-0ubuntu1~18.04.1_source.changes: done.
Successfully uploaded packages.

Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

This MP can go "merged" when accepted by the SRU Team.

Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

This is already in proposed a while

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1diff --git a/ReleaseNotes.md b/ReleaseNotes.md
2index 42b3b07..72160df 100644
3--- a/ReleaseNotes.md
4+++ b/ReleaseNotes.md
5@@ -1,68 +1,107 @@
6-# open-vm-tools 10.2.0 Release Notes
7-
8-Updated on 14 Dec 2017
9-##What's in the Release Notes
10-The release notes cover the following topics:
11-
12-- What's New
13-- Internationalization
14-- Compatibility
15-- Installation and Upgrades for This Release
16-- Known Issues
17-
18-## What's New
19-
20-- **FreeBSD support**: freebsd.iso is not available for VMware Tools 10.2.0 and later as it has been discontinued in favor of open-vm-tools. For more information, see Compatibility Notes section of this release notes.
21-
22-## Internationalization
23-open-vm-tools 10.2.0 supports the following languages:
24-
25-- English
26-- French
27-- German
28-- Spanish
29-- Italian
30-- Japanese
31-- Korean
32-- Simplified Chinese
33-- Traditional Chinese
34-
35-## Compatibility
36-- open-vm-tools 10.2.0 is compatible with all supported versions of VMware vSphere ESXi 5.5 and later, VMware Workstation 14.0 and VMware Fusion 10.0. See VMware Compatibility Guide for more information.
37-- Starting with VMware Tools version 10.2.0, Perl script based VMware Tools installation for FreeBSD has been discontinued. Going forward, FreeBSD systems are supported only through the open-vm-tools packages directly available from FreeBSD package repositories. FreeBSD packages for open-vm-tools 10.1.0 and later are available from FreeBSD package repositories.
38-
39-## Installation and Upgrades for This Release
40-The steps to install open-vm-tools vary depending on your VMware product and the guest operating system you have installed. For general steps to install open-vm-tools in most VMware products, see https://github.com/vmware/open-vm-tools/blob/master/README.md
41-
42-## Resolved Issues
43-
44-* **Summary page of the VM does not list the IP address of the VMs in the right order**
45-
46- The configuration option to exclude network interfaces from GuestInfo and set primary and low priority network interfaces is added to the tools.conf configuration file.
47-This issue is resolved in this release.
48-
49-* **Guest authentication fails with a SystemError fault when the requested password is expired**
50-
51- Attempting to authenticate with an expired password, for example when attempting Guest Operations, fails with a SystemError fault.
52-This issue is resolved in this release. Authentication with an expired password now fails with an InvalidGuestLogin fault in order to provide a more precise error code for such a case.
53-
54-* **The free space reported in vim.vm.GuestInfo.DiskInfo for a Linux guest does not match with df command in the guest**
55-
56- Prior to VMware Tools version 10.2.0, the free space reported in vim.vm.GuestInfo.DiskInfo for a Linux guest included file system specific reserved blocks. This led to guest file system usage in vSphere clients reporting more free space than what was reported by df command in the guest. This issue has been resolved in this release by not including the file system specific reserved blocks in the free space reported in vim.vm.GuestInfo.DiskInfo for Linux guests by default. The default behavior can be reversed with a configuration in ```/etc/vmware-tools/tools.conf``` file in the Linux guest operating systems:
57-```
58- [guestinfo]
59- diskinfo-include-reserved=true
60-```
61-
62-* **VMware user process might not restart after upgrades of open-vm-tools**
63-
64- When the VMware user process receives a SIGUSR2, it restarts itself by executing vmware-user and terminates itself. This is used on upgrades to ensure that the latest version of vmtoolsd is running. vmware-user was not available in open-vm-tools..
65-This issue is fixed in this release.
66-
67-## Known Issues
68-
69-* **Shared folder shows empty on Ubuntu 17.04 with open-vm-tools**.
70- On rebooting Ubuntu 17.04 with open-vm-tools installed, the shared folders /mnt directory is empty. This issue is observed even after installing Ubuntu 17.04 using easy install, enabling shared folders in VM settings and selecting Always Enabled.
71-Workaround: Disable Shared Folders in the interface and enable after the VM is powered on with VMware Tools running.
72-
73-
74+open-vm-tools 10.3.0 Release Notes
75+==================================
76+
77+**Updated on: 12 JUL 2018**
78+
79+open-vm-tools | 12 JUL 2018 | Build 8931395
80+
81+Check for additions and updates to these release notes.
82+
83+What's in the Release Notes
84+---------------------------
85+
86+The release notes cover the following topics:
87+
88+* [What's New](#whatsnew)
89+* [Before You Begin](#beforeyoubegin)
90+* [Internationalization](#i18n)
91+* [Compatibility Notes](#compatibility)
92+* [Resolved Issues](#resolvedissues)
93+* [Known Issues](#knownissues)
94+
95+What's New
96+----------
97+
98+* Starting with 10.3.0, open-vm-tools builds with xmlsec1 by default (instead of building with xml-security). To revert to the old behavior and build with xml-security, use the option
99+ '--enable-xmlsecurity' for the ./configure command.
100+
101+Before You Begin
102+----------------
103+
104+**Important note about upgrading to ESXi 5.5 Update 3b or later**
105+
106+General guidelines: While upgrading ESXi hosts to ESXi 5.5 Update 3b or ESXi 6.0 Update 1 or later, and using older versions of Horizon View Agent, refer to the knowledge base articles:
107+
108+* [Connecting to View desktops with Horizon View Agent 5.3.5 or earlier hosted on ESXi 5.5 Update 3b or later fails with a black screen.](http://kb.vmware.com/kb/2144438)
109+* [Connecting to View desktops with Horizon View Agent 6.0.x or 6.1.x hosted on ESXi 5.5 Update 3b or later fails with a black screen.](http://kb.vmware.com/kb/2144518)
110+* [Connecting to View desktops with Horizon View Agent 6.1.x hosted on ESXi 6.0 Update 1 or later fails with a black screen.](http://kb.vmware.com/kb/2144453)
111+
112+Internationalization
113+--------------------
114+
115+open-vm-tools 10.3.0 is available in the following languages:
116+
117+* English
118+* French
119+* German
120+* Spanish
121+* Italian
122+* Japanese
123+* Korean
124+* Simplified Chinese
125+* Traditional Chinese
126+
127+Compatibility Notes
128+-------------------
129+
130+* As of tools release 10.2.0, FreeBSD guests are supported only by open-vm-tools; support for the VM Tools binary package supplied directly by VMware has been discontinued for FreeBSD. Binary packages for open-vm-tools 10.1.0 and later are available from FreeBSD package repositories.
131+
132+### Guest Operating System Customization Support
133+
134+The [Guest OS Customization Support Matrix](http://partnerweb.vmware.com/programs/guestOS/guest-os-customization-matrix.pdf) provides details about the guest operating systems supported for customization.
135+
136+
137+Resolved Issues
138+---------------
139+
140+* **The open-vm-tools process might take a long time and consume 100% CPU of a core in a Linux OS with many IPv6 routes**
141+
142+ Prior to open-vm-tools 10.3.0, gathering network adapter information in a Linux guest OS with many IPv6 routes was a time-consuming process with 100% use of the CPU of a core. The exported data contained only a maximum of 100 routes. IPv4 routes took precedence over IPv6, leading to data loss in reporting IPv6 routes. If there were more than 100 IPv4 routes, IPv6 routes were not reported.
143+
144+ This performance issue has been resolved in this release. The default routes gathering behavior can be overridden by configuring the values in the /etc/vmware-tools/tools.conf file:
145+
146+ \[guestinfo\]
147+ max-ipv4-routes=0
148+ max-ipv6-routes=0
149+
150+ Note: If they are not manually set, or an invalid value (over 100 or less than 0) is set, 'max-ipv4-routes' and 'max-ipv6-routes' are set to 100 by default. They can be set to 0 to disable the data collection.
151+
152+ This issue is resolved in this release.
153+
154+* **Installation of the libvmtools package might fail the installation of VMware Tools**
155+
156+ When the package "libvmtools0" is installed in SUSE Linux 12 and open-vm-tools is not installed, the VMware Tools installer fails. This is done to prevent an incomplete installation. Users have to uninstall both open-vm-tools and libvmtools0 packages to install VMware Tools.
157+
158+Known Issues
159+------------
160+
161+* **Drag and Drop functionality fails to work in Ubuntu**
162+
163+ Drag and Drop functionality fails to work in Ubuntu 16.04.4 32-bit virtual machines installed using easy install. Also, failure of copy and paste functionality is observed in the same system.
164+
165+ Workaround:
166+
167+ * Add the modprobe.blacklist=vmwgfx linux kernel boot option.
168+ * To gain access to larger resolutions, remove svga.guestBackedPrimaryAware = "TRUE" option from the VMX file.
169+
170+* **Shared Folders mount is unavailable on Linux VM**
171+
172+ If the **Shared Folders** feature is enabled on a Linux VM while it is powered off, shared folders mount is not available upon restart.
173+
174+ Workaround: If the VM is powered on, disable and enable the **Shared Folders** feature from the interface.
175+
176+ For resolving the issue permanently, edit **/etc/fstab** and add an entry to mount the Shared Folders automatically on boot.
177+
178+ For example, add the line:
179+
180+ vmhgfs-fuse /mnt/hgfs fuse defaults,allow_other 0 0
181diff --git a/debian/changelog b/debian/changelog
182index 8efecfb..94f9ad0 100644
183--- a/debian/changelog
184+++ b/debian/changelog
185@@ -1,3 +1,31 @@
186+<<<<<<< debian/changelog
187+=======
188+open-vm-tools (2:10.3.0-0ubuntu1~18.04.1) bionic; urgency=medium
189+
190+ * Merge with Upstream Tag stable-10.3.0 (LP: #1784638) from
191+ https://github.com/vmware/open-vm-tools/releases/tag/stable-10.3.0
192+ Remaining changes:
193+ - Disable PrivateTmp for the open-vm-tools.service as it triggers issues
194+ when triggering processes that need tmp through VMOMI API (LP: 1758428)
195+ * Added changes:
196+ - d/p/debian/enable_vmhgfs-fuse_by_default: update to match changes in 10.3
197+ (Upstream changed the entry level from 4.0 to 3.10 - could be dropped,
198+ but stay close to what Debian has for now)
199+ - d/p/debian/scsi-udev-rule: update to match changes in 10.3 (DEVTYPE check
200+ added upstream)
201+
202+ -- Christian Ehrhardt <christian.ehrhardt@canonical.com> Wed, 01 Aug 2018 08:16:10 +0200
203+
204+open-vm-tools (2:10.2.5-1) unstable; urgency=medium
205+
206+ * [ea03a58] Update upstream source from tag 'upstream/10.2.5'
207+ Update to upstream version '10.2.5'
208+ with Debian dir 74e96286320224bb6d5b717034930169514dbd51
209+ * [c1c18d3] Refreshing patches.
210+
211+ -- Bernd Zeimetz <bzed@debian.org> Fri, 06 Apr 2018 11:18:50 +0200
212+
213+>>>>>>> debian/changelog
214 open-vm-tools (2:10.2.0-3ubuntu3) bionic; urgency=medium
215
216 * Disable PrivateTmp for the open-vm-tools.service as it triggers issues
217diff --git a/debian/patches/debian/enable_vmhgfs-fuse_by_default b/debian/patches/debian/enable_vmhgfs-fuse_by_default
218index a198265..ab0c3fd 100644
219--- a/debian/patches/debian/enable_vmhgfs-fuse_by_default
220+++ b/debian/patches/debian/enable_vmhgfs-fuse_by_default
221@@ -5,7 +5,7 @@
222 }
223
224 +/*
225- if (release < KERNEL_RELEASE(4, 0, 0)) {
226+ if (release < KERNEL_RELEASE(3, 10, 0)) {
227 fprintf(stderr, "%s: incompatible kernel version %02d.%02d.%02d\n",
228 __func__, k[0], k[1], k[2]);
229 goto exit;
230diff --git a/debian/patches/debian/scsi-udev-rule b/debian/patches/debian/scsi-udev-rule
231index fab2221..8c5fc64 100644
232--- a/debian/patches/debian/scsi-udev-rule
233+++ b/debian/patches/debian/scsi-udev-rule
234@@ -1,8 +1,11 @@
235 --- a/open-vm-tools/udev/99-vmware-scsi-udev.rules
236 +++ b/open-vm-tools/udev/99-vmware-scsi-udev.rules
237-@@ -1,3 +1,2 @@
238--ACTION=="add", SUBSYSTEMS=="scsi", ATTRS{vendor}=="VMware*", ATTRS{timeout}=="?*", ATTRS{model}=="Virtual disk*", RUN+="/bin/sh -c 'echo 180 >/sys$DEVPATH/timeout'"
239--ACTION=="add", SUBSYSTEMS=="scsi", ATTRS{vendor}=="VMware*", ATTRS{timeout}=="?*", ATTRS{model}=="VMware Virtual S", RUN+="/bin/sh -c 'echo 180 >/sys$DEVPATH/timeout'"
240--
241-+ACTION=="add", SUBSYSTEMS=="scsi", ENV{DEVTYPE}=="scsi_device", ATTRS{vendor}=="VMware*" , ATTRS{model}=="Virtual disk*", ATTRS{timeout}=="?*", ATTR{timeout}="180"
242-+ACTION=="add", SUBSYSTEMS=="scsi", ENV{DEVTYPE}=="scsi_device", ATTRS{vendor}=="VMware*" , ATTRS{model}=="VMware Virtual S", ATTRS{timeout}=="?*", ATTR{timeout}="180"
243+@@ -2,6 +2,6 @@
244+ #
245+ # This file is part of open-vm-tools
246+
247+-ACTION=="add", SUBSYSTEMS=="scsi", ATTRS{vendor}=="VMware*", ATTRS{model}=="Virtual disk*", ENV{DEVTYPE}=="disk", RUN+="/bin/sh -c 'echo 180 >/sys$DEVPATH/device/timeout'"
248+-ACTION=="add", SUBSYSTEMS=="scsi", ATTRS{vendor}=="VMware*", ATTRS{model}=="VMware Virtual S", ENV{DEVTYPE}=="disk", RUN+="/bin/sh -c 'echo 180 >/sys$DEVPATH/device/timeout'"
249++ACTION=="add", SUBSYSTEMS=="scsi", ATTRS{vendor}=="VMware*", ATTRS{model}=="Virtual disk*", ENV{DEVTYPE}=="disk", ATTR{timeout}="180"
250++ACTION=="add", SUBSYSTEMS=="scsi", ATTRS{vendor}=="VMware*", ATTRS{model}=="VMware Virtual S", ENV{DEVTYPE}=="disk", ATTR{timeout}="180"
251+
252diff --git a/debian/patches/fedora/wayland-crash-fix b/debian/patches/fedora/wayland-crash-fix
253deleted file mode 100644
254index 6f0b896..0000000
255--- a/debian/patches/fedora/wayland-crash-fix
256+++ /dev/null
257@@ -1,33 +0,0 @@
258---- a/open-vm-tools/services/plugins/desktopEvents/x11Lock.c
259-+++ b/open-vm-tools/services/plugins/desktopEvents/x11Lock.c
260-@@ -364,6 +364,13 @@ X11Lock_Init(ToolsAppCtx *ctx,
261- g_set_prgname(VMUSER_TITLE);
262- argv[0] = VMUSER_TITLE;
263-
264-+#if defined(GTK3) && GTK_MINOR_VERSION >= 10
265-+ /*
266-+ * There is no Wayland support yet, only X11 backend is supported.
267-+ */
268-+ gdk_set_allowed_backends("x11");
269-+#endif
270-+
271- /* XXX: is calling gtk_init() multiple times safe? */
272- gtk_init(&argc, (char ***) &argv);
273-
274---- a/open-vm-tools/services/plugins/dndcp/copyPasteDnDX11.cpp
275-+++ b/open-vm-tools/services/plugins/dndcp/copyPasteDnDX11.cpp
276-@@ -211,6 +211,14 @@ gboolean
277- CopyPasteDnDX11::Init(ToolsAppCtx *ctx)
278- {
279- TRACE_CALL();
280-+
281-+#if defined(GTK3) && GTK_MINOR_VERSION >= 10
282-+ /*
283-+ * There is no Wayland support yet, only X11 backend is supported.
284-+ */
285-+ gdk_set_allowed_backends("x11");
286-+#endif
287-+
288- CopyPasteDnDWrapper *wrapper = CopyPasteDnDWrapper::GetInstance();
289-
290- ASSERT(ctx);
291diff --git a/debian/patches/series b/debian/patches/series
292index 67a5c1f..c4eabb2 100644
293--- a/debian/patches/series
294+++ b/debian/patches/series
295@@ -2,4 +2,3 @@ debian/pam-use-common-auth-account
296 debian/max_nic_count
297 debian/enable_vmhgfs-fuse_by_default
298 debian/scsi-udev-rule
299-fedora/wayland-crash-fix
300diff --git a/open-vm-tools/AUTHORS b/open-vm-tools/AUTHORS
301index 4f94efe..9c57831 100644
302--- a/open-vm-tools/AUTHORS
303+++ b/open-vm-tools/AUTHORS
304@@ -13,3 +13,26 @@ Josh Paetzel Add support for 64-bit inodes in FreeBSD 12
305
306 Sebastian Parschauer Add support to properly report SLES12-SAP
307 - https://github.com/vmware/open-vm-tools/pull/123
308+
309+Andrew Stormont Fix finding C++ compiler for cross-compiling
310+ - https://github.com/vmware/open-vm-tools/pull/206
311+
312+Josh Paetzel Fix compilation error in clang 6.0
313+ - https://github.com/vmware/open-vm-tools/pull/221
314+
315+Mike Latimer Restrict udev rules to disk devices only
316+ - https://github.com/vmware/open-vm-tools/pull/216
317+
318+Thomas Mueller Ignore ENXIO errors with SyncDriver
319+ - https://github.com/vmware/open-vm-tools/pull/218
320+
321+Germán M. Bravo FreeBSD: Improper use of sysconf() for getpwent buffer size
322+ leads to vmtoolsd crash.
323+ - https://github.com/vmware/open-vm-tools/pull/238
324+
325+Ed Schouten Use standard SYSCTL_ADD_OID() macro to access the
326+ sysctl_add_oid() function across supported FreeBSD releases.
327+ - https://github.com/vmware/open-vm-tools/pull/125
328+
329+Steve Wills Fix vmmemctl.ko driver build for supported FreeBSD releases.
330+ - https://github.com/vmware/open-vm-tools/pull/140
331diff --git a/open-vm-tools/ChangeLog b/open-vm-tools/ChangeLog
332index 7e59500..9fbd129 100644
333--- a/open-vm-tools/ChangeLog
334+++ b/open-vm-tools/ChangeLog
335@@ -1,12483 +1,40128 @@
336-commit b6b01435c5d2eaaa66734392d0de754509b655fb
337+commit a30d7aaa4d10fbce4b7d262487fffaf1dc32d949
338 Author: Oliver Kurth <okurth@vmware.com>
339-Date: Thu Dec 14 13:46:57 2017 -0800
340+Date: Fri Jul 6 14:31:55 2018 -0700
341
342- update build number
343+ Common source file change, not directly applicable to open-vm-tools.
344+
345+ Enforce monotonic behavior for the value returned by times() on Mac.
346
347-commit 09a044d2a4496e5f6adcfceb4070ea55001655ee
348+commit 12e5559e4dcf3968dd45131077b68364578f3bef
349 Author: Oliver Kurth <okurth@vmware.com>
350-Date: Thu Dec 14 13:42:36 2017 -0800
351+Date: Fri Jul 6 14:31:55 2018 -0700
352
353- update copyright header
354+ Update the Tools-10.3.0 OSL.
355+
356+ Update the Tools-10.3.0 open source license files.
357
358-commit 702f79c5bc3de1b33ec7cdadef23df39d310fc8e
359+commit c80bb3fc7960bc78a6d39c89b6952218a401b0cf
360 Author: Oliver Kurth <okurth@vmware.com>
361-Date: Thu Dec 14 13:42:01 2017 -0800
362+Date: Fri Jul 6 14:31:55 2018 -0700
363
364- add modinfo version
365+ [tools-plugin] Potential solution for reported desktopEvent crash
366+
367+ On several distros like RHEL, CentOS and Fedora, plugin desktopEvents.so
368+ crashes have been reported. However, neither development or QE can
369+ reproduce this issue in local environments.
370+
371+ The XFetchName document states that it may generate BadWindow error. That
372+ means that the value for a Window argument does not name a defined Window.
373+ X FAQ also suggests handling badwindow error after finding it. Since
374+ the window does not exist when XFetchName is run on it, the name is not
375+ needed. Suppress this error to avoid a crash.
376+
377+ After grabbing the X server, use XSetErrorHandler to temporarily define
378+ a local error handler to intercept and cleanly handle any BadWindow
379+ errors. XSetErrorHandler returns the current error handler, so it is
380+ straightforward to reinstate GDK's original handler.
381
382-commit f58396af22966f23610bff164247771c82f2687f
383+commit 6172812c021469704c51817693c6c8f6bf226509
384 Author: Oliver Kurth <okurth@vmware.com>
385-Date: Fri Dec 8 18:57:38 2017 -0800
386+Date: Fri Jul 6 14:31:55 2018 -0700
387
388- CAF MA Performance Issues
389-
390- CAF MA Performance Issues
391+ Remove the new guest metrics feature switch, permanently enabling the
392+ collection of new guest metrics for vROps..
393+
394+commit 6e6285ec690a13ff8ba894ee463a5aa0fd034269
395+Author: Oliver Kurth <okurth@vmware.com>
396+Date: Tue Jun 19 11:07:46 2018 -0700
397+
398+ Previous change to configure.ac and vmtools.m4 caused a regression
399
400- Vmware CAF ManagementAgentHost service was polling every 5 secs to check if Guest Network "Tunnel(port 6672)" was enabled to preconfigure & bring up Vmware CAF CommAmqpListener service.
401- This resulted in more CPU Utilization as opposed to previous release in CAF & caused regression in vmtools 10.2.0.
402- We are increasing the Poll rate to 5 mins, which fixed the issue & is giving us the same CPU/memory utilizations as in vmtools 10.1.0.
403+ Backing out of 10.3.0.
404+
405+commit 699cda01fab8b1ad8a1e912d650aa92f7ffdf0e6
406+Author: Oliver Kurth <okurth@vmware.com>
407+Date: Tue Jun 19 11:07:46 2018 -0700
408+
409+ [OVT] Update copyright year to 2018 for few files.
410
411- We were checking for the different stages of listener preconfiguration status from the listenerpreConfigure.txt files in the polling time interval, which caused increased IO operations.
412- To fix that we have stored the value of listener preconfiguration status from the files into a variable locally & using the same at all places instead of file access.
413+ Updated the copyright year to 2018 for few files changed in the last
414+ few days.
415
416-commit 68ecbd767b84a4fd11dd00556eaac0ef09955640
417+commit cecbaf6b16f5fd1ecbfe4419310352353b047ba2
418 Author: Oliver Kurth <okurth@vmware.com>
419-Date: Thu Nov 30 15:17:27 2017 -0800
420+Date: Tue Jun 19 11:07:46 2018 -0700
421
422- Update the Tools-10.2.0 GA Open Source License Files.
423+ open-vm-tools: use AC_CHECK_TOOL for pkg-config
424+
425+ AC_CHECK_TOOL honors the --host setting to configure, and searches
426+ for tools with the cross compile prefix thus allowing for cross
427+ compile specific tools.
428+
429+ Fixes issue #26 in github.
430
431-commit e41c45536332a9195f5336bdcd0a94e11f8e9cfb
432+commit f2c8d02161569c96ac452f9d1063756d133562ba
433 Author: Oliver Kurth <okurth@vmware.com>
434-Date: Thu Nov 30 15:17:27 2017 -0800
435+Date: Tue Jun 19 11:07:45 2018 -0700
436
437- VGAuth changes:
438+ open-vm-tools: build dndcp with thread libs
439
440- - add calling LoadUserProfile()/UnloadUserProfile() in VGAuth
441- impersonation/unimpersonation code paths
442- - VMTools side code change to use the new VGAuth SDK.
443+ Recent changes in the dndcp plugin made it necessary to make sure that
444+ it links against pthread libs.
445
446-commit aa59fb2fd5f15b2514b1494171de40e082e46ba5
447+commit 99df5712ba7b8910c3db138c64aab6957f31c914
448 Author: Oliver Kurth <okurth@vmware.com>
449-Date: Thu Nov 30 15:17:27 2017 -0800
450+Date: Tue Jun 19 11:07:45 2018 -0700
451
452- VGAuth changes:
453+ Clipboard content on the host gets loaded to tmp on Linux guest with a right click on Guest
454
455- - add calling LoadUserProfile()/UnloadUserProfile() in VGAuth
456- impersonation/unimpersonation code paths
457- - VGAuth part of code change plus tools vix plugin make file.
458+ Root Cause:
459+ Dndcp plugin creates a sub thread to monitor if there is other application
460+ access the specific file. The root cause for this bug is the main thread
461+ doesn't update its field before wakeup the sub thread, this cause the sub
462+ thread get a wrong value.
463+
464+ Solution:
465+ Main thread should update the field before wakeup the sub thread.
466
467-commit 6bf279de6298f999abf66079e7e824d5498abd31
468+commit 99af79200f91c246580197b5698995fba4dc47af
469 Author: Oliver Kurth <okurth@vmware.com>
470-Date: Thu Nov 30 15:17:27 2017 -0800
471+Date: Tue Jun 19 11:07:45 2018 -0700
472
473- Remove guestStats that are beyond ESXi 6.0 U1 scope.
474+ open-vm-tools: build for FreeBSD fails in fakeMouseWayland
475+
476+ Root Cause:
477+ In the file fakeMouseWayland.cpp, several Linux related header files
478+ are included:
479+ <linux/input.h>
480+ <linux/ioctl.h>
481+ <linux/uinput.h>
482
483- The guestStats in R10 Tools release follow ESXi 6.0 U1 scope.
484- Remove the guestStats that are not in scope for ESXi 6.0 U1.
485+ These header files do not exist for FreeBSD and Solaris.
486+
487+ Solution:
488+ Lib fakeMouse is not needed by FreeBSD and Solaris, so update the makefile
489+ to build the fakemouse related code only on Linux.
490
491-commit e5e2057a423028dc58a8cf753a12c1d38903a823
492+commit 104cab14e08b93a2525992e09f0d13ff26d52d9d
493 Author: Oliver Kurth <okurth@vmware.com>
494-Date: Thu Nov 30 15:17:27 2017 -0800
495+Date: Tue Jun 19 11:07:45 2018 -0700
496
497- Fix memory leak in vmtoolsd.
498+ Use "/var/run" or "/run" instead of "/tmp" in Linux guest for imc package copy
499+
500+ 1. check if /var/run is a directory in VM
501+ 2. if Yes, use /var/run/XXXXXX
502+ 3. check if /run is a directory in VM
503+ 4. if Yes, use /run/XXXXXX
504+ 5. if both No, use /tmp/XXXXXX as before
505
506-commit 3e7058028ce4352c39dcc2d3a012aa32ed50c421
507+commit 8f93d803066032a738b9d9a6990e32ed17b589e1
508 Author: Oliver Kurth <okurth@vmware.com>
509-Date: Thu Nov 30 15:17:27 2017 -0800
510+Date: Tue Jun 19 11:07:45 2018 -0700
511
512- Tools: GuestInfo: ESX: dynamically load libvmkmemstats.so
513+ Build open-vm-tools with xmlsec1 by default.
514
515- The new version of the vmware tools will be installed on older version
516- of ESX. But these older versions do not come with libvmkmemstats.so
517- and a dynamic linking error occurs.
518+ Build open-vm-tools with xmlsec1 by default, rather than with
519+ xml-security-c as is done currently. This requires modifications
520+ to configure.ac to change the default for use_xmlsec1, plus
521+ modifications to bora-vmsoft/install/Source/tools-pkg.make to
522+ initialize flags for xmlsec1 and xml2 now needed by the OVT build
523+ that is done during tools builds.
524
525- This patch changes the code to deal with the case where the lib is not
526- available. Instead of relying on the linker to dynamically link with
527- libvmkmemstats.so, g_module_open() is used to open the library, if
528- available, and gracefully handle any eventual errors.
529- Before the patch, the whole libguestinfo would stop working and after
530- the patch only the memory stats are unavailable.
531+ Another change that surfaced during this was that the symbol that
532+ configure checks for the xmlsec library was wrong. It should be
533+ xmlSecCheckVersionExt rather than xmlSecCheckVersion. The latter
534+ is a header-defined macro but not a library symbol.
535
536-commit 41196c78ae6bd330f2f595071fe86e1082d19a85
537+commit 7313fdc5b2b14ac83340b2e59752b934494c2ae9
538 Author: Oliver Kurth <okurth@vmware.com>
539-Date: Thu Nov 30 15:17:27 2017 -0800
540+Date: Tue Jun 19 11:07:45 2018 -0700
541
542- Adding copyright notice to a few CAF related files bundled in Open-VM-Tools.
543+ [Wayland Copy & Paste] Part2: Uses VMBlock notification mechanism for Copy & Paste
544+
545+ This patch is part of the new feature for Workstation 15: \[P0\] Wayland
546+ support in Linux guest - Copy & Paste.
547+
548+ In the first patch, the notification mechanism is added to the VMBlock module.
549+ In this patch, the notification mechanism is used,
550
551-commit 59bf741d25837028c8464a71ac5f4f65558fcd6a
552+commit c04b9987786901f544c4df04f7701b48ac8f6475
553 Author: Oliver Kurth <okurth@vmware.com>
554-Date: Wed Nov 15 13:32:56 2017 -0800
555+Date: Tue Jun 19 11:07:45 2018 -0700
556
557- GuestInfo: add primary-nics and low-priority-nics options
558+ [Wayland Copy & Paste] Part1: Add notification mechanism to the VMBlock module
559
560- Add the options 'primary-nics' and 'low-priority-nics' for GuestInfo.
561+ This patch is part of the new feature for Workstation 15: [P0] Wayland support
562+ in Linux guest - Copy & Paste.
563
564- The options accept a list of comma separated patterns for interface names
565- which can be considered as 'primary' or 'low priority' network interfaces.
566- This will cause the NicInfo to be put on top of the list for primary
567- interfaces, and to the bottom for low priority interfaces.
568+ In the implementation of current VMTools, there is a restriction, in the first
569+ second after grab into the guest, the CopyPasteUIX11::LocalGetFileRequestCB,
570+ which is a callback from a file paste request from another guest application
571+ and begins copying the files from host to guest and return the file list,
572+ will return none directly.
573
574- Example:
575+ The Wayland file explorer will request the content in the clipboard after the
576+ user clicks on the file explorer, and the request will get nothing since the
577+ restriction in the VMTools, so the following ‘Paste’ operation will fail.
578
579- primary-nics=eth1
580+ Solution:
581+ This solution is only used for the Linux guest with Wayland. The behavior
582+ for Linux guest with X11 will not change.
583
584- will make sure that the IP address(es) for eth1 will be sorted on
585- top of the list of IP addresses.
586+ The restriction, the CopyPasteUIX11::LocalGetFileRequestCB returns directly
587+ in the first second after grab into the guest, will be removed.
588
589- primary-nics=eth*
590+ And, the notification mechanism will be added into the VM block file system.
591+ This mechanism is similar with the inotify module.
592
593- will make sure that any one of the addresses of all interfaces
594- matching eth* will be sorted on top of the list of IP addresses,
595- but won't guarantee which one if there is more than one.
596+ Take the VMBlock Fuse File System as an example, currently, the mount point contains below contents:
597
598- low-priority-nics=eth*
599+ * /blockdir/
600
601- will work analogously, but interfaces will be sorted to the bottom.
602+ * /dev
603
604- In case the limit of the number of interfaces to be reported is reached,
605- low priority interfaces are the first to be skipped.
606+ /blockdir/ contains the symlinks to the contents of the target directory.
607+
608+ /dev is the control file for VMBlock Fuse File System.
609+
610+ In this new solution, a new folder /notifydir/ will be added, each file in this folder is a special file, read from this file will be blocked until any other process read from the corresponding file in target directory or the block on the target directory is removed.
611+
612+ This patch only focus on the notification mechanism.
613
614-commit 60719485b84d2d227d8950c50aa4a6c3c171de10
615+commit 6c0b2130e7ee103ece06eb674c5f5dfea66c26f1
616 Author: Oliver Kurth <okurth@vmware.com>
617-Date: Wed Nov 15 13:32:56 2017 -0800
618+Date: Tue Jun 19 11:07:45 2018 -0700
619
620- Additional 2017 copyright updates.
621+ FreeBSD: clang compiler related changes to configure.ac
622+
623+ On FreeBSD, the unwind.h header is available in the libunwind
624+ package (/usr/ports/devel/libunwind) which may or may not be installed
625+ on a system. The libunwind functions to determine the call-chain in a
626+ program are defined only if " __GNU_SOURCE" is defined to enable "all"
627+ GCC extensions. Avoid the unwind.h header if seen on FreeBSD.
628+
629+ The "clang" compiler will issue warnings if the address of a member
630+ of a packed structure is taken. Since warnings are errors with -Wall,
631+ add --Wno-address-of-packed-member to CFLAGS when compiling with
632+ "clang".
633
634-commit ce05ffb4c8422e769f03f12e2529d0792668dda1
635+commit bba52bfa5b29c8860f18200022db5b8b250d326b
636 Author: Oliver Kurth <okurth@vmware.com>
637-Date: Wed Nov 15 13:32:55 2017 -0800
638+Date: Tue Jun 19 11:07:45 2018 -0700
639
640- Update copyright year to 2017 for open-vm-tools 10.2.0.
641+ open-vm-tools: build with tirpc
642+
643+ Newer distros (Fedora, OpenSuSE Tumblweed) no longer ship rpcgen with glibc,
644+ so we need to build with libtirpc (see
645+ https://bugzilla.redhat.com/show_bug.cgi?id=1531540 and
646+ https://bugzilla.suse.com/show_bug.cgi?id=1089181).
647+ With this change, configure will check for the presence of libtirpc and
648+ if found, sets flags to build with it. configure will also exit with an
649+ error if rpcgen is not found.
650
651-commit c1aea05a4ab27c93d8664a6d1803a4a5cb936bb3
652+commit 5c0b9496db96af9ea5e4b3b1321f0612a3f62d99
653 Author: Oliver Kurth <okurth@vmware.com>
654-Date: Wed Nov 15 13:32:55 2017 -0800
655+Date: Tue Jun 19 11:07:44 2018 -0700
656
657- DragNDrop plugin change for VMware Tools on Windows; not applicable to
658- open-vm-tools.
659+ Changes to build CAF with VS 2015; not applicable to open-vm-tools.
660
661-commit 6a9a7f9093af7f0378b134cd26ef2d2d61f0760b
662+commit 3961588fcce58090c249f4a65ad8cc109efecc5c
663 Author: Oliver Kurth <okurth@vmware.com>
664-Date: Wed Nov 15 13:32:55 2017 -0800
665+Date: Tue Jun 19 11:07:44 2018 -0700
666
667- Add SUSE Server for SAP Applications to hostinfoPosix.c
668-
669- On SLES-SP1-SAP the "lsb_release -sd" command returns the string
670- "SUSE Linux Enterprise Server for SAP Applications 12 SP1".
671- Parsing in HostinfoGetOSShortName() detects the sub-strings "suse"
672- and "enterprise" but not "server 12". STR_OS_SLES is returned
673- resulting in displaying of "SUSE Linux Enterprise 8/9" in the
674- summary screen of the vSphere client. This is wrong.
675+ Log full version of Tools in vmware.log.
676
677- Instead, search for the sub-string "server for sap applications 12"
678- and return STR_OS_SLES_12. SLES11-SAP is not affected.
679+ Currently, only the Tools build number is logged in vmware.log.
680+ It will be very handy to have the full version logged in
681+ there and avoid the need to manually lookup the build.
682+
683+commit bf494fd02a77a4f34ff420c03c0c5a19e43218d3
684+Author: Oliver Kurth <okurth@vmware.com>
685+Date: Tue Jun 19 11:07:44 2018 -0700
686+
687+ Tools 10.3.0 L10n drop2
688
689- Please see: github.com/vmware/open-vm-tools/pull/123
690+ This is to integrate the final L10n drop for VMware Tools 10.3.
691
692-commit 0c5e736804c5a95c998e5361aa2d41ab5dbf7ef5
693+commit 065f09b94e09f1127901db29e73cc9b9f36df4fc
694 Author: Oliver Kurth <okurth@vmware.com>
695-Date: Wed Nov 15 13:32:55 2017 -0800
696+Date: Tue Jun 19 11:07:44 2018 -0700
697
698- [Tools] Fix crash issue when stopping vmtoolsd(vmuser)
699+ Add two switches for max IPv4/6 routes to gather
700
701- When stopping vmtoolsd, the code tries to unload all plugins. The
702- signal TOOLS_CORE_SIG_CAPABILITIES is emitted before really starting
703- to unload plugins. If the plugin should try to call RpcChannel_Send
704- while processing the signal and the RPC channel has been shutdown, an
705- ASSERT is triggered. The fix is to check whether rpc exists and if
706- unavailable, avoid sending the TOOLS_CORE_SIG_CAPABILITIES signal.
707+ Gathering nic info in a Linux guest OS which is configured with large
708+ number(60000+) of ipv6 routes could result in vmtoolsd process taking a
709+ long time and rock solid 100% CPU of a core. Though tools only exports
710+ at most NICINFO_MAX_ROUTES(100) routes, it tries to read all the contents
711+ of /proc/net/ipv6_route which costs too much time because:
712+ 1. IPv6 route table is not efficient natively compared to ipv4 due to
713+ its implementation.
714+ 2. The g_io library can aggravate the performance.
715+
716+ On the other hand, when gathering routes, IPv4 comes first, and IPv6 second.
717+ And the routes reported to VMX has an overall limitation of serializing
718+ (NICINFO_MAX_ROUTES). If there's more than NICINFO_MAX_ROUTES IPv4 routes
719+ in system, no IPv6 will get reported.
720+
721+ Added two switches "max-ipv4-routes" and "max-ipv6-routes"
722+ (NICINFO_MAX_ROUTES by default) in tools.conf and let SlashProcNet_GetRoute*()
723+ only read the first max ipv4/6 routes lines of /proc/net/[ipv6_]route to avoid
724+ performance problem. Users can disable ipv4/ipv6 routes gathering
725+ separately if they want ipv6 or ipv4 only.
726
727-commit aaab4ead2428c2aa40766054bd3457db5458e695
728+commit bf86c612a8ffe1d20b98c20b76f0c34840a7a2a3
729 Author: Oliver Kurth <okurth@vmware.com>
730-Date: Wed Nov 15 13:32:55 2017 -0800
731+Date: Tue Jun 19 11:07:44 2018 -0700
732
733- open-vm-tools: make building with gtk3 the default
734+ Not checking symbols when building open-vm-tools
735
736- This makes building with gtk3 the default, and sets sane
737- defaults when building with/without gtk2/gtk3.
738+ Using a hard-coded mangled name is not a good idea because C++ does not
739+ have any standard for name mangling. Remove these mangled names introduced
740+ in an earlier fix.
741+
742+commit d36ed6e5b4784a36cb93f50e05d6a49b5d76b86e
743+Author: Oliver Kurth <okurth@vmware.com>
744+Date: Tue Jun 19 11:07:44 2018 -0700
745+
746+ [OVT] Update copyright year to 2018 for files modified since 10.2.5 GA
747
748-commit 1c854b407d9fcbf02f8d80542a6c731e3048193a
749+commit 8086ead225faf3a051952773c0b98b2c751b1e84
750 Author: Oliver Kurth <okurth@vmware.com>
751-Date: Wed Nov 15 13:32:54 2017 -0800
752+Date: Tue Jun 19 11:07:44 2018 -0700
753
754- VMware Tools 10.2.0 L10n message updates.
755+ Hgfs Win Client: fix bad illegal character escaping; not applicable to open-vm-tools.
756
757-commit 005db5fdbc6fae9d7f365cd02494c80da5fe7904
758+commit 7efc7b70a57cf734012a069fabab19e96f8cf16d
759 Author: Oliver Kurth <okurth@vmware.com>
760-Date: Wed Nov 15 13:32:54 2017 -0800
761+Date: Tue Jun 19 11:07:43 2018 -0700
762
763- Add new GOS definitions for virtual hardware version 14.
764+ Add the JACKHAMMER code name to the 10.3.0 release version defines.
765
766- RHEL 8 64-bit
767- CentOS 8 64-bit
768- Oracle 8 64_bit
769- SLES 15 64-bit
770- Asianux 8 64-bit
771- Other 4.x Linux Kernel
772- Other 4.x Linux Kernel 64-bit
773- FreeBSD 12
774- FreeBSD 12 64-bit
775- Darwin 18 64-bit
776+ Adding the code name JACKHAMMER to the 10.3.x series version notation
777+ for the public source release and use by future 10.3.x patches or
778+ updates.
779
780-commit 6e138c678923940ea8c3a3b8759036f3c5c2bf0d
781+commit d71381445f6c3b986e263435006428a44be0451a
782 Author: Oliver Kurth <okurth@vmware.com>
783-Date: Wed Nov 15 13:32:54 2017 -0800
784+Date: Tue Jun 19 11:07:43 2018 -0700
785
786- GuestInfo: enable nic/iproute information for Linux without libdnet
787+ Hgfs Server Plugin: only handle the shared folders client in hosted products
788
789- Linux glibc (since 2.3) fully supports getting ip addresses using
790- getifaddrs() for both IPv4 and IPv6. Use of getifaddrs() was already
791- implemented in nicInfoPosix.c for tools for ESXi. This change
792- enables that code also for Linux, if libdnet is not used.
793+ Only initialize the Shared Folders client redirector in hosted product
794+ environments.
795
796- The change also enables the iproute information, which does not
797- depend on libdnet, except by the use of addr_stob(), which can
798- be replaced easily with the existing function CountNetmaskBits().
799+ Details: Check if the tools system service started in a non-hosted product
800+ and if so do not start the shared folders client redirector.
801+ Check if the tools user service started in a non-hosted product product and if
802+ so then skip reconnecting any Shared Folders mapped drives.
803
804-commit c7bedd5b0729edfed3a7cd53eed7966f9efcc16f
805+commit ad7c68780a773d6d456687aff0d27f9cff808370
806 Author: Oliver Kurth <okurth@vmware.com>
807-Date: Wed Nov 15 13:32:54 2017 -0800
808+Date: Thu May 10 16:47:16 2018 -0700
809
810- Make disk free space reporting consistent with Linux 'df' command.
811+ update version number
812+
813+commit cac0f086ffcc00da73dd7dd80fef6956962f4dd6
814+Author: Oliver Kurth <okurth@vmware.com>
815+Date: Thu May 10 16:38:11 2018 -0700
816+
817+ Remove debug display of CPUID vendor string seen in VmCheck_IsVirtualWorld
818
819- On Linux, statfs syscall reports free space in two fields.
820- From http://man7.org/linux/man-pages/man2/statfs.2.html:
821- 1. f_bfree => Free blocks in filesystem
822- 2. f_bavail => Free blocks available to unprivileged user
823+ The "Debug" message containing vendor string returned by the CPUID
824+ instruction will appear on STDERR for stand-alone programs such
825+ as vmware-checkvm. This unexpected output is at best noise and may
826+ adversely affect existing scripts.
827+
828+commit 7ddbe3c9df400dfdf7d67d259ae3942d157dedb4
829+Author: Oliver Kurth <okurth@vmware.com>
830+Date: Mon Apr 30 15:42:54 2018 -0700
831+
832+ sync deploypkg files
833+
834+commit 80a23d71a281493071668fd45b77d7f8248fad68
835+Author: Oliver Kurth <okurth@vmware.com>
836+Date: Mon Apr 30 14:04:14 2018 -0700
837+
838+ Changes to common header files:
839+ - Add Amazon Linux 2 to the known guest OS list.
840+ - Other change not application to open-vm-tools.
841+
842+commit 48dc7a57ff3fe5cb1441040876f74b69772c1ea5
843+Author: Oliver Kurth <okurth@vmware.com>
844+Date: Mon Apr 30 14:04:13 2018 -0700
845+
846+ [DeployPkg] Replace Log() references with g_log()
847
848- For file systems that maintain reserved space for system
849- activities f_bfree > f_bavail because f_bfree includes the
850- reserved space in the file system. The reserved space is
851- typically 5% for 'ext4' file systems. Newer distros like
852- RHEL 7.x use 'xfs' by default and report same value for
853- both the fields.
854+ * Modified the code to replace a couple of Log() references with g_debug()
855+ so that they are properly logged with 'deplogPkg' domain instead of the
856+ generic 'vmsvc' domain in the tools log files.
857+
858+commit 9cb12223b4da529df043d95ab025f22c6ee00c39
859+Author: Oliver Kurth <okurth@vmware.com>
860+Date: Mon Apr 23 17:08:18 2018 -0700
861+
862+ [oss] Upgrade GTK+ and its dependent libraries for VMtools
863
864- The Linux 'df' command uses f_bavail in its reporting.
865- Tools reports, conditionally, f_bfree for root and f_bavail
866- for non-root. However, since vmtoolsd runs as root, Tools
867- always reports f_bfree, which is more free space than 'df'
868- would report (depending on amount of reserved space).
869+ GTK+ and its dependent libraries are upgraded to:
870+ gtk+ 2.24.32
871+ atk 2.28.1
872+ gdk-pixbuf 2.36.11
873+ pango 1.40.13
874+ cairo 1.14.12
875+ fontconfig 2.13.0
876+ freetype 2.9
877+
878+commit a5c03957c95ec78c92246b87cdf60a90b2eca7f7
879+Author: Oliver Kurth <okurth@vmware.com>
880+Date: Mon Apr 23 17:08:18 2018 -0700
881+
882+ Common header file change not applicable to open-vm-tools.
883+
884+commit f87d177acab33f00229234ed51722504e2f7afc7
885+Author: Oliver Kurth <okurth@vmware.com>
886+Date: Mon Apr 23 17:08:18 2018 -0700
887+
888+ Changes to common header files not directly applicable to open-vm-tools.
889+
890+commit ba65905dfc7e6c07d1aeea37db885284e54b02fa
891+Author: Oliver Kurth <okurth@vmware.com>
892+Date: Mon Apr 23 17:08:18 2018 -0700
893+
894+ Set perms on Tools script logs.
895
896- In order to be consistent with Linux 'df' command,
897- report f_bavail as the disk free space by default. This does
898- change the behavior a little bit in that Tools will report less
899- disk free space than before, the difference being the same as
900- the reserved space on the file system, typically 5%. This
901- should be OK in general because it makes the space reporting
902- a bit conservative. If this change in behavior is not desired
903- for some use cases, the old behavior can be restored by setting
904- the following newly added configuration in this change:
905+ Make the network script logs secure; set log file perms to 0600.
906+
907+commit aa59d16e0b5968efc298065ef50ece282d406265
908+Author: Oliver Kurth <okurth@vmware.com>
909+Date: Mon Apr 23 17:08:18 2018 -0700
910+
911+ [Wayland DnD] Part2: Open the uinput device file with root permission.
912
913- [guestinfo]
914- diskinfo-include-reserved=true
915+ The device file /dev/uinput (or /dev/input/uinput) can only be accessed
916+ by root account, so the dndcp plugin may failed to open this device file
917+ if the current user is not root account.
918
919- The existing callers that are outside the guestInfo plugin
920- will continue to include reserved space in their space
921- accounting as before.
922+ A way to fix this issue is opening this device file with root account,
923+ then pass the file descriptor to the sub task which is started with the
924+ current account. An example for this solution is blockVM file system
925+ device file.
926
927- Also fixed a few minor stuff/touchups in vmtoolsConfig.c.
928+ This patch is part of the new feature 'Wayland support in Linux guest'.
929
930-commit 2795cc29fb5243f0dd91bbe233ea267a0f5ff764
931+commit b3899c91d348d23c2e6c22944b8ac1a06e4e3988
932 Author: Oliver Kurth <okurth@vmware.com>
933-Date: Wed Nov 15 13:32:54 2017 -0800
934+Date: Mon Apr 23 17:08:18 2018 -0700
935
936- Add Str_Strncpy
937+ [Wayland DnD] Part1: Add 'fakeMouse' module which is used to simulate the
938+ mouse motion under Wayland
939
940- Add a Str_Strncpy function that, unlike strncpy, guarantees
941- NUL-termination.
942+ For Linux guest with X11, the VMTools uses the X system APIs to simulate
943+ the mouse motion, but these X11 System APIs do not work in Wayland. Need
944+ to pick up another method to simulate the mouse motion.
945+
946+ Another way to simulate the mouse motion is using uinput module.
947+
948+ uinput is a kernel module that makes it possible to emulate input devices
949+ from userspace. By writing to /dev/uinput (or /dev/input/uinput) device,
950+ a process can create a virtual input device with specific capabilities.
951+ Once this virtual device is created, the process can send events through
952+ it, that will be delivered to userspace and in-kernel consumers.
953+
954+ Here is the link which contains more information about the uinput module:
955+
956+ https://www.kernel.org/doc/html/v4.12/input/uinput.html
957+
958+ This patch adds a new module named 'fakeMouse' which is used to simulate the mouse motion under Wayland.
959+
960+ This patch is part of the new feature 'Wayland support in Linux guest'.
961
962-commit 36627cdec863b57cfbc544d489075891982aaec7
963+commit 995befcb0d6156fb47773c96db6d478173d1bc89
964 Author: Oliver Kurth <okurth@vmware.com>
965-Date: Wed Nov 15 13:32:54 2017 -0800
966+Date: Mon Apr 23 17:08:18 2018 -0700
967
968- Fix a segfault when log file isn't set and conf is reloaded.
969-
970- When vmsvc.handler=file, but vmsvc.data isn't set, vmtoolsd crashed
971- on reloading the config file. This was caused by using a NULL value
972- as an argument to a strcmp().
973+ Add new guest metrics to be consumed by vROps.
974
975- This change fixes this by using g_strcmp0 which handles NULL pointers
976- gracefully, and setting confData to a default value before calling
977- g_strcmp0().
978+ Windows:
979+ * ProcessorQueueLength
980+ * CurrentDiskQueueLength
981+ * AvgDiskQueueLength
982
983- This also fixes a case where a change in the log file would be ignored.
984+ Linux:
985+ * CPU run queue size
986+ * Current disk queue size
987+ * Average disk queue size
988
989-commit 8803b5e1361c20fae371113e6a71d2bbb76fe840
990+commit 9d6cfe650cd15095e65024fbb5d9cd6944e1cf14
991 Author: Oliver Kurth <okurth@vmware.com>
992-Date: Wed Nov 15 13:32:53 2017 -0800
993+Date: Mon Apr 23 17:08:17 2018 -0700
994
995- guestOS: Uniquely run time identify Photon
996+ Historical: Recording version numbers assigned for 10.2.x patches.
997
998- Currently VMware Photon 2 is identified at run time as a Linux 4.x kernel.
999- This is correct, but the Photon distro has an LSB compliant identification
1000- file.
1001+ Define TOOLS_VERSION_CHAINSAW_PATCH1 as 10.2.1.
1002+ Define TOOLS_VERSION_CHAINSAW_PATCH2 as 10.2.6.
1003+
1004+commit ba6c319f18d294b36c0e989f851fbfdbc8a629b7
1005+Author: Oliver Kurth <okurth@vmware.com>
1006+Date: Mon Apr 23 17:08:17 2018 -0700
1007+
1008+ Bump up the version requirement for glib and friends to 2.34.0
1009
1010- Attempt to check the LSB compliant identification file for Photon. If
1011- present, identify the guest as "vmware-photon".
1012+ For open-vm-tools, we are bumping up the minimum version requirement
1013+ to 2.34.0 for glib and its friends. Modified the configure.ac
1014+ with the proper new version checks. Also, updated the
1015+ error message with the proper version.
1016
1017-commit fddd4c7f1c270d5bcf183afac084d4729153215f
1018+commit 26d03ad8075913cb869b814462b7285c02367252
1019 Author: Oliver Kurth <okurth@vmware.com>
1020-Date: Mon Oct 2 15:28:57 2017 -0700
1021+Date: Mon Apr 23 17:08:17 2018 -0700
1022
1023- With the build of VMware Tools 10.2.0 product shifted to the
1024- product release branch, changing the 10.2.0 release macros to
1025- reflect that change of status.
1026+ Common header file change not applicable to open-vm-tools.
1027
1028-commit ffa6a60b1f98ce0564238f3a2abe0046d54ac2ea
1029+commit ce1ed002f5e05f09678e15b4021bac8155edb1eb
1030 Author: Oliver Kurth <okurth@vmware.com>
1031-Date: Mon Oct 2 15:28:57 2017 -0700
1032+Date: Mon Apr 23 17:08:17 2018 -0700
1033
1034- Update the Tools-10.2.0-Beta Open Source License Files.
1035+ Common source file changes that are not directly related to open-vm-tools.
1036+
1037+ Build vmtools and vgauth for Windows with xmlsec instead of
1038+ xml-security-c. It will still be possible to build with xml-security-c
1039+ either by commenting out the definition of USE_XMLSEC_FOR_WINDOWS in
1040+ bora-vmsoft/vgauth/make/inc/defs.mk or adding a make command line
1041+ argument of USE_XMLSEC_FOR_WINDOWS=0.
1042
1043-commit 631907ab8989ad07d3b8c03829f5700bb2e3ee1a
1044+commit d5c0bcea04aae65484ba3c2756b64acf6f6388d0
1045 Author: Oliver Kurth <okurth@vmware.com>
1046-Date: Fri Sep 15 11:47:09 2017 -0700
1047+Date: Mon Apr 23 17:08:17 2018 -0700
1048
1049- copy README.md from master
1050+ Update bora-vmsoft/install/Source/README
1051+
1052+ The content is stale. Since the file is used internally and is
1053+ not published, rather than maintain it in two places, point to
1054+ the current README file and Release Notes on github.
1055
1056-commit 962d4f21e2365e81d68ca2920175c0f1edbb6770
1057+commit 512d5475520ec5e0525633cd47530faaae774b5e
1058 Author: Oliver Kurth <okurth@vmware.com>
1059-Date: Fri Sep 15 11:32:25 2017 -0700
1060+Date: Mon Apr 23 17:08:17 2018 -0700
1061
1062- update version to 10.2.0
1063+ Common header file change not applicable to open-vm-tools.
1064
1065-commit 1604e7c59f9491e0f98e39dc511a534ffea68879
1066+commit 982998c9a6a3ec8664f9c4c08ff9ef30f52a9ae2
1067 Author: Oliver Kurth <okurth@vmware.com>
1068-Date: Fri Sep 15 11:35:01 2017 -0700
1069+Date: Mon Apr 23 17:08:17 2018 -0700
1070
1071- sync libDeployPkg files
1072+ Common header file change not applicable to open-vm-tools.
1073
1074-commit 2ec91a3f67059cff2d47c662e2177714742a241f
1075+commit ab36b3227275a5beded8a5115929e2d649c6aad3
1076 Author: Oliver Kurth <okurth@vmware.com>
1077-Date: Fri Sep 15 11:23:58 2017 -0700
1078+Date: Mon Apr 23 17:08:17 2018 -0700
1079
1080- GuestStats: Report memNeeded on ESX as a guest
1081+ Common header file changes not applicable to open-vm-tools.
1082
1083-commit f439d57482f7dd42e359fb0792269573c63c55a7
1084+commit 0527d5c5f14f626a5129231778ec433dfff55c2a
1085 Author: Oliver Kurth <okurth@vmware.com>
1086-Date: Fri Sep 15 11:23:58 2017 -0700
1087+Date: Mon Apr 23 17:08:17 2018 -0700
1088
1089- GOSTable: Add MacOS 10.14 and FreeBSD 12
1090+ Common header file change not applicable to open-vm-tools.
1091
1092-commit 1d661a68fced6b91e6c5e757915cddf8b7c7eb15
1093+commit 571dc1fbadd962d91dcb7a44652b501de3f48e0e
1094 Author: Oliver Kurth <okurth@vmware.com>
1095-Date: Fri Sep 15 11:23:58 2017 -0700
1096+Date: Mon Apr 23 17:08:16 2018 -0700
1097
1098- Guest OS: Add CentOS 8, OracleLinux 8, and AsiaNux 8
1099+ Common header file change not applicable to open-vm-tools.
1100
1101-commit 8b2369ac8512b1436dbe2de5617e0265b522ee3a
1102+commit 998903d73496bf6080053f994c8410dc880db2f9
1103 Author: Oliver Kurth <okurth@vmware.com>
1104-Date: Fri Sep 15 11:23:58 2017 -0700
1105+Date: Mon Apr 23 17:08:16 2018 -0700
1106
1107- lib/file: Remove long dead functions from file.h
1108-
1109- These routines no longer exist. Remove them from the header file.
1110+ Common header file change not applicable to open-vm-tools.
1111
1112-commit e2da656025ba8ddb8a8b223f9e73c0057a2eeeb9
1113+commit 3b814f9b4dcbf54893078a4ba187d8d0cbf23e31
1114 Author: Oliver Kurth <okurth@vmware.com>
1115-Date: Fri Sep 15 11:23:57 2017 -0700
1116+Date: Mon Apr 23 17:08:16 2018 -0700
1117
1118- Revert part of the previous commit.
1119+ lib/hashMap/hashMap.c:
1120+ Add new HashMap_Get() which uses a constant time memory comparison function.
1121
1122- Remove the VIM mapping for now.
1123+ lib/misc/utilMem.c:
1124+ Constant time memory and string comparison functions.
1125
1126-commit 6ca6d42820b0ae44b02187925ebce7d2d21ab5e0
1127+commit 5daceb4448834143d884b061f391c37aeaaad683
1128 Author: Oliver Kurth <okurth@vmware.com>
1129-Date: Fri Sep 15 11:23:57 2017 -0700
1130+Date: Mon Apr 23 17:08:16 2018 -0700
1131
1132- guestOS: Add SLES 15 and RHEL 8
1133+ Changes to common header files not applicable to open-vm-tools.
1134
1135-commit 31a6c06caeb75afd7d6a7e017c3b95b60ca9b6f0
1136+commit 42d1e6b11c0b11c1b1f6f967cb5c4d7e2f3b39e0
1137 Author: Oliver Kurth <okurth@vmware.com>
1138-Date: Fri Sep 15 11:23:57 2017 -0700
1139+Date: Mon Apr 23 17:08:16 2018 -0700
1140
1141- Change to common header file; not applicable to open-vm-tools.
1142+ Change to common header file not applicable to open-vm-tools.
1143
1144-commit 1b9b067c39da8446cb28a66914ff61dabadc71e9
1145+commit f4b7b227119712c90be4a3583d4430a3fcc1d093
1146 Author: Oliver Kurth <okurth@vmware.com>
1147-Date: Fri Sep 15 11:23:57 2017 -0700
1148+Date: Mon Apr 23 17:08:16 2018 -0700
1149
1150- Change to shared header file unrelated to open-vm-tools.
1151+ Change to common header file not applicable to open-vm-tools.
1152
1153-commit 0c0f3e3c1fa82a1d63b75ccf6d8d775d915c66cf
1154+commit 874b8b4801a5bba439401db8e624e3e3d1989ca7
1155 Author: Oliver Kurth <okurth@vmware.com>
1156-Date: Fri Sep 15 11:23:57 2017 -0700
1157+Date: Mon Apr 23 17:08:16 2018 -0700
1158
1159- Changes to common header files; not applicable to open-vm-tools.
1160+ Common header file change not applicale to open-vm-tools.
1161
1162-commit c8811a844992cd610e0043998f8554989e843bd7
1163+commit ff2616a657c32bbb5e6799f8b8cd0a470d0e5202
1164 Author: Oliver Kurth <okurth@vmware.com>
1165-Date: Fri Sep 15 11:23:57 2017 -0700
1166+Date: Mon Apr 23 17:08:16 2018 -0700
1167
1168- Change to shared header file unrelated to open-vm-tools.
1169+ Common header file changes not applicable to open-vm-tools.
1170
1171-commit 91cd3e4fcf02ac4d5ada8723e6e6b285768d351b
1172+commit 5d9cc73f1c7979466d55f7897f98c0888d2fb15d
1173 Author: Oliver Kurth <okurth@vmware.com>
1174-Date: Fri Sep 15 11:23:57 2017 -0700
1175+Date: Mon Apr 23 17:08:15 2018 -0700
1176
1177- lib/file: Improve File_CreateDirectoryHierarchy error detection
1178+ Header file change in preparation for C++11 compilation. Also updating
1179+ copyright dates.
1180
1181-commit 84f5ee1d65982ced4f4e0dd847cfe7658e77b873
1182+commit 29fb30f6d1956ccd4ad803b1b7f0430e4ef28ceb
1183 Author: Oliver Kurth <okurth@vmware.com>
1184-Date: Fri Sep 15 11:23:57 2017 -0700
1185+Date: Mon Apr 23 17:08:15 2018 -0700
1186
1187- Fix processing RPC data in TimeSync RPC handler
1188+ FreeBSD vmmemctl: Fold in open-vm-tools pull requests #125 and #140
1189
1190- RPC data is whitespace delimited string and any leading whitespaces need to
1191- be ignoreed before processing data. The data here indicates whether timeSync
1192- should do a backward sync on this RPC callback.
1193+ This change incorporates two open-vm-tools pull requests that provide
1194+ code changes that allows the existing vmmemctl.ko driver to be compiled
1195+ on FreeBSD 10, 11 or 12.
1196+
1197+ Pull request #125:
1198+ An optional argument has been added to the sysctl_add_oid() function
1199+ in FreeBSD 12.x. All releases have a SYSCTL_ADD_OID() macro that does
1200+ not require the additional argument.
1201+
1202+ Pull request #140:
1203+ Functions and macros to lock and unlock memory pages and objects have
1204+ changed between the FBSD 10 & 11. The pull request provides a set C
1205+ preprocessor directives to select the appropriate code based on the
1206+ FreeBSD release being targeted.
1207+
1208+ The code change as been tidied up by using the release version checks
1209+ to define LOCK and UNLOCK macros for memory pages and objects at the
1210+ beginning of the source file. The code logic is easier to follow
1211+ without the abundance of #if, #else and #endif statements scattered
1212+ about.
1213+
1214+ Ed Schouten: https://github.com/vmware/open-vm-tools/pull/125
1215+ Steve Wills: https://github.com/vmware/open-vm-tools/pull/140
1216
1217-commit 31f97a69bf993057f56ea16e2899c2f55c84f8d6
1218+commit 2a34b181de524b3f0d01cad90d3da184bde7ad99
1219 Author: Oliver Kurth <okurth@vmware.com>
1220-Date: Fri Sep 15 11:23:57 2017 -0700
1221+Date: Mon Apr 23 17:08:15 2018 -0700
1222
1223- Change to shared header file unrelated to open-vm-tools.
1224+ Common source file changes not directly applicable to open-vm-tools.
1225
1226-commit 9291087e5c01b0dab662bb61530d3ee5ce469a13
1227+commit fab45e62a1468b86d2097a6a0784c4f259d6b0ef
1228 Author: Oliver Kurth <okurth@vmware.com>
1229-Date: Fri Sep 15 11:23:56 2017 -0700
1230+Date: Mon Apr 23 17:08:15 2018 -0700
1231
1232- Adjust some logging levels
1233+ Common header file change not applicable to open-vm-tools.
1234+
1235+commit 357e8418e5441c2c5fc75a19f7b6529d6bce7452
1236+Author: Oliver Kurth <okurth@vmware.com>
1237+Date: Mon Apr 23 17:08:15 2018 -0700
1238+
1239+ Common header file change not applicable to open-vm-tools.
1240+
1241+commit fad97e4a7c756b3b297e0fe9e68a1a4674c4fdcc
1242+Author: Oliver Kurth <okurth@vmware.com>
1243+Date: Mon Apr 23 17:08:15 2018 -0700
1244+
1245+ Common header file change not applicable to open-vm-tools.
1246+
1247+commit 357d9139342c19a98ed12f5961f415d099df3287
1248+Author: Oliver Kurth <okurth@vmware.com>
1249+Date: Fri Mar 23 15:05:36 2018 -0700
1250+
1251+ Common source file changes that are not applicable to open-vm-tools.
1252+
1253+commit 6c3261d152442fa11fc2b928490d74846f23465d
1254+Author: Oliver Kurth <okurth@vmware.com>
1255+Date: Fri Mar 23 15:05:36 2018 -0700
1256+
1257+ Common header file change not applicable to open-vm-tools.
1258+
1259+commit 3747daca8efbfe8e709687b97c874a29f183b717
1260+Author: Oliver Kurth <okurth@vmware.com>
1261+Date: Fri Mar 23 15:05:36 2018 -0700
1262+
1263+ Backout previous change to lib/include/vm_basic_math.h.
1264+
1265+commit f9414d19532a9664e6c260a8644ee09200e32429
1266+Author: Oliver Kurth <okurth@vmware.com>
1267+Date: Fri Mar 23 15:05:36 2018 -0700
1268+
1269+ Common header file change: lib/include/vm_basic_math.h
1270
1271- Make some of the more common vgauth failure cases show up at default
1272- debug level.
1273+ Define portability macros for Inf and Nan tests.
1274
1275-commit 0f94e2468307d13b9d70938e1ad817bceeb2e2b2
1276+commit de2010a1a45a9e515b932a1a83374539661a2b39
1277 Author: Oliver Kurth <okurth@vmware.com>
1278-Date: Fri Sep 15 11:23:56 2017 -0700
1279+Date: Fri Mar 23 15:05:35 2018 -0700
1280
1281- Add support for 64-bit inodes in FreeBSD 12
1282+ Add missing memory constraints for vm_atomic RMW (Read/Modify/Write) instructions
1283
1284- FreeBSD 12 is switching to 64-bit inodes which will cause some ABI
1285- breakage in user code. This fix modifies the getdirentries() syscall
1286- used in hgfsServerLinux.c for that FBSD 12 64-bit inodes.
1287+ There are two inseparable concepts involved when dealing with atomics:
1288+ 1. Atomicity of the access itself
1289+ 2. Ordering of the access with respect to other reads&writes (from the view of
1290+ other processors).
1291
1292- The fix was provided by Josh Paetzel in open-vm-tools pull request
1293- https://github.com/vmware/open-vm-tools/pull/190
1294+ Our Read-Modify-Write functions are all meant to provide the highest level of
1295+ ordering guarantee: Sequential Consistency, which means no reordering of reads
1296+ or writes across the access. We properly implement that on ARM, and on
1297+ x86/x64 at the hardware layer. But, on x86/x64 we needed to tell the compiler
1298+ (it must flush out any pending reads/writes that are currently hiding in
1299+ registers)
1300+
1301+ Side Note: we do *not* change the pure Read and pure Write functions, only
1302+ the Read/Modify/Write ones. On both ARM and x86/x64, vm_atomic functions like
1303+ Atomic_WriteN provide no (re)ordering guarantees today (at the hardware layer
1304+ on ARM or at the compiler layer on x86/x64). This is because some callers
1305+ didn't need or want such guarantees - as such, Atomic_WriteN by itself is
1306+ *not* sufficient to, say, release a lock. Making these remaining atomic
1307+ weapons safe by default will require us to first
1308+ 1. add new unordered atomic equivalents of Atomic_ReadN/TestBitN and
1309+ Atomic_WriteN (in C11 terminology, acquire/release and relaxed)
1310+ 2. Scan the tree and switch appropriate callers to the new functions
1311+
1312+ *and only then*
1313+ 3. Strengthen the defaults, affecting only callers who needed the stronger
1314+ defaults to be correct. ... but that would be a separate change in the
1315+ future.
1316+
1317+ Codegen differences (vmm.vmm64):
1318+ --------------------------------
1319+ The function that uncovered this was ST_HandleCrossCall, which invoked
1320+ Atomic_And64.
1321+
1322+ original w/o explicit compiler mem barrier in ST_HandleCrossCall:
1323+ ...
1324+ lock and QWORD PTR [rdx+0x0],rax
1325+ movsxd rax,DWORD PTR [rip+offset] <-- load reordered after Atomic_And64
1326+ lea rax,[rax+rax*2]
1327+ lea rdi,[rax*8+0x0]
1328+
1329+ with "memory" constraint, it's now identical to code w/an explicit
1330+ compiler mem barrier (which was the workaround):
1331+ ...
1332+ mov edx,DWORD PTR [rip+offset] <-- load emitted prior to Atomic_And64
1333+ ...
1334+ lock and QWORD PTR [rsi+0x0],rax
1335+ movsxd rax,edx <-- ... and used after Atomic_And64
1336+ lea rax,[rax+rax*2]
1337+ lea rdi,[rax*8+0x0]
1338+
1339+ vmm.vmm64's .text section shrank 28 bytes
1340+ vmware-vmx's .text section shrank 16 bytes
1341+
1342+ Given that these are tiny fractions of the .text section, this suggests the
1343+ problem was quite rare, which is why it escaped our attention until now.
1344+ (Testing of vmx's lib/lock, lib/sync, lib/vprobe, and lib/misc saw no
1345+ differences with GCC 4.4, 6.4, 7.1 or Clang)
1346+
1347+ While in there: nuke some tabs
1348+
1349+ Slated for a future change: vmkapi_atomic.h
1350
1351-commit b851f91268e947ab4e7aff8c6bc9e3c84f7d81f4
1352+commit 333ac41076afff4e31ccb0d0688e1581e8c9019a
1353 Author: Oliver Kurth <okurth@vmware.com>
1354-Date: Fri Sep 15 11:23:56 2017 -0700
1355+Date: Fri Mar 23 15:05:35 2018 -0700
1356
1357- Enable bsd_vsnprintf for __ANDROID__
1358-
1359- Remove the __ANDROID__ check from Str_Vsnprintf, et al. It's
1360- not supposed to be there anymore.
1361+ Common header file change not applicable to open-vm-tools.
1362
1363-commit 75c55bc6c01624884515b71af7e1a7a7843519e6
1364+commit 8671bd8d4f68a490a5b20f1876f05797f3057c4b
1365 Author: Oliver Kurth <okurth@vmware.com>
1366-Date: Fri Sep 15 11:23:56 2017 -0700
1367+Date: Fri Mar 23 15:05:35 2018 -0700
1368
1369- Add support to check if a native guest time sync service is running.
1370+ vmcheck.c VmCheck_IsVirtualWorld(): Always check for a working backdoor.
1371
1372- This change adds support to VMware tools timesync to identify if a guest
1373- native time synchronization service is running. If a native sync service is
1374- running, then a resync command is issued. If native time sync service is not
1375- running, we fall back on legacy VMware tools onetime sync to do guest time
1376- correction.
1377+ The specific checks for Xen and VirtualPC hypervisors currently happen
1378+ only if the VMware hypervisor is not detected. The test for a working
1379+ VMware backdoor is then done to avoid all other hypervisors.
1380
1381- We also post a callback to do legacy VMware tools onetime sync after a
1382- timeout period. A timeout can be configured if guest native resync command
1383- fails to sync guest time.
1384+ In the case where running on a VMware hypervisor and the backdoor
1385+ channel has been disabled such as with
1386+
1387+ monitor_control.restrict_backdoor = "TRUE"
1388+
1389+ vmtoolsd, vmware-toolbox-cmd and vmware-checkvm will crash when
1390+ attempting to get the version number of the installed VMware Tools.
1391+
1392+ Added an additional test to detect Linux KVM with the existing tests
1393+ for the Xen hypervisor and Microsoft Virtual PC. Avoid checking for
1394+ a working backdoor if a non VMware hypervisor is seen.
1395+
1396+ Microsoft Hv checking to be added later and is tracked in a separate PR.
1397+ Oracle VirtualBox provides no unique CPUID vendor signature string.
1398
1399-commit 695ab7662e4c9d25a5f86d298f04d777cd400cbf
1400+commit 09958952cc761075d5546b18bed0ce59260ec4db
1401 Author: Oliver Kurth <okurth@vmware.com>
1402-Date: Fri Sep 15 11:23:56 2017 -0700
1403+Date: Fri Mar 23 15:05:35 2018 -0700
1404
1405- Fix some compatibility issues between bsd_vsnprintf and bsd_vsnwprintf
1406+ FreeBSD open-vm-tools kernel modules compilations cannot locate <stdint.h>
1407
1408- Fix some compatibility issues between bsd_vsnprintf and
1409- bsd_vsnwprintf so that the lib/string unit tests can have
1410- consistent results.
1411+ With the change for VMware headers to utilize the standard types
1412+ defined in C99 standard headers, the compilation of FreeBSD kernel
1413+ modules must specifically add /usr/include to the compilation
1414+ options.
1415
1416- * bsd_vsnprintf used uppercase hexadecimal digits for %p but
1417- bsd_vsnwprintf used lowercase. vsnprintf has much more
1418- inertia, so use uppercase in both.
1419+ CFLAGS += -isystem /usr/include
1420
1421- * bsd_vsnprintf's floating point output was adjusted for bug
1422- 704706, but corresponding changes were not made to
1423- bsd_vsnwprintf.
1424+ This change updates the Makefiles's for FreeBSD kernel modules and
1425+ drivers.
1426
1427-commit deb3feeefd8f653d1fe0e54e6708d8cacde5ab1d
1428+commit cdf0406dc669f2284e1e810ac5820f123d46a50e
1429 Author: Oliver Kurth <okurth@vmware.com>
1430-Date: Fri Sep 15 11:23:56 2017 -0700
1431+Date: Fri Mar 23 15:05:35 2018 -0700
1432
1433- lib/file: Continue simplifying and optimizing
1434+ FreeBSD: Improper use of sysconf() for getpwent buffer size leads to
1435+ vmtoolsd crash.
1436
1437- Since we're UTF8 only, there are simplifications and
1438- optimizations that can be done to lib/file, particularly in the
1439- routines that look for directory separators and ASCII characters like
1440- '.'. We don't need to use the unicode library to deal with these
1441- type of code points.
1442+ On FreeBSD, sysconf(_SC_GETPW_R_SIZE_MAX) can return -1 if it has
1443+ no hard limit ultimately resulting in an incorrect buffer size.
1444
1445- This is the second in a sequence of changes to improve lib/file.
1446+ This change is adapting the sysconf() ifixes done elsewhere to
1447+ bora-vmsoft/services/plugins/vix/vixTools.c and updating the
1448+ open-vm-tools AUTHORS file to share credit for the pull request.
1449+
1450+ https://github.com/vmware/open-vm-tools/pull/238
1451
1452-commit a1290e66021b3d1e9d0f3c45edea80c5e7fb8488
1453+commit e20e9bd49d244749ee6bcd4ea7d57a26d891afbe
1454 Author: Oliver Kurth <okurth@vmware.com>
1455-Date: Fri Sep 15 11:23:56 2017 -0700
1456+Date: Fri Mar 23 15:05:35 2018 -0700
1457
1458- Change to shared header file unrelated to open-vm-tools.
1459+ Common header file change not applicable to open-vm-tools.
1460
1461-commit 27d72451d479d96f1d1de901cb76820f5bdac38e
1462+commit 7e03f0676a8d1a8667d7d6aeda968a74c8708c0e
1463 Author: Oliver Kurth <okurth@vmware.com>
1464-Date: Fri Sep 15 11:23:56 2017 -0700
1465+Date: Fri Mar 23 15:05:35 2018 -0700
1466
1467- Change to shared header file unrelated to open-vm-tools.
1468+ Common header file change not applicable to open-vm-tools.
1469
1470-commit e30c97abc0fb8f0f6034d56d93b63b629365e2cb
1471+commit 0c4420178932c1879f402ece689e5cfaf5f37d84
1472 Author: Oliver Kurth <okurth@vmware.com>
1473-Date: Fri Sep 15 11:23:56 2017 -0700
1474+Date: Fri Mar 23 15:05:35 2018 -0700
1475
1476- Fix lib/string unit tests
1477-
1478- Updates to lib/string.str.c and its unit tests.
1479-
1480- * On Linux, Str_Vsnwprintf uses vswprintf from glibc[1].
1481- However, glibc's vswprintf implementation appears to be
1482- broken by not NUL-terminating the destination if truncation
1483- occurs. Make Str_Vsnwprintf explicitly NUL-terminate along
1484- this path.
1485-
1486- * The unit tests expected that Str_Vsnwprintf use %s for
1487- wchar_t* arguments (and %S for char* ones). That is a
1488- Microsoft-ism (necessary for TCHAR-based printf functions
1489- to use the same format strings with or without _UNICODE).
1490- Our bsd_vsnwprintf function instead uses %s for char* (and
1491- %S for wchar_t*). Existing callers to Str_...wprintf use
1492- use the BSD implementation and expect the BSD behavior
1493- (which is consistent with standard C in this regard), so
1494- go with the existing behavior and adjust the tests.
1495+ CAF changes for Windows; not applicable to open-vm-tools.
1496+
1497+commit e9463abdc0d56d0612237faf01a5736c9998b499
1498+Author: Oliver Kurth <okurth@vmware.com>
1499+Date: Fri Mar 23 14:57:12 2018 -0700
1500+
1501+ sysconf() usage leads to crashes in BSD tools
1502
1503- * Some of the tests passed int arguments for floating-point
1504- format specifiers. This is undefined behavior.
1505+ Not using the sysconf interface properly when determinining the
1506+ getpwent buffer size. Fix this.
1507
1508- * Some of the tests had more format specifiers than
1509- arguments. More undefined behavior.
1510+ Problem was identified and proposed fix was submitted in pull request
1511+ https://github.com/vmware/open-vm-tools/pull/238
1512+
1513+commit 4eff69adab058331a1e93aee17ed9a4e13fa8714
1514+Author: Oliver Kurth <okurth@vmware.com>
1515+Date: Fri Mar 23 14:57:12 2018 -0700
1516+
1517+ [lib/file]: remove useless heap allocation
1518
1519- * Finally, the existing Str_...printf tests are
1520- fundamentally flawed: they compare output against the
1521- system's printf functions. However, the whole point of
1522- having our own is to have consistent behavior across
1523- platforms and to work around bugs; the output therefore
1524- cannot be expected to consistently match. Instead rewrite
1525- the tests to compare Str_...printf output against fixed
1526- strings.[2] Additionally, enable these tests only if
1527- HAS_BSD_PRINTF/HAS_BSD_WPRINTF are enabled; I see no point
1528- in testing the system versions (which won't have consistent
1529- output), and IMO the BSD implementations are the only ones
1530- we should be supporting.
1531+ FileIO_AtomicUpdateEx allocates the argument to the "swap" ioctl
1532+ on the heap. This argument is a struct which contains a single int
1533+ fd... there is no need to heap-allocate it, the stack is just fine.
1534+
1535+commit 6de42f7d96fb5c70d70ae3b68011477f8b93aef2
1536+Author: Oliver Kurth <okurth@vmware.com>
1537+Date: Fri Mar 23 14:57:12 2018 -0700
1538+
1539+ bora/lib: Use _exit when in the context of a signal handler
1540
1541- [1] I do not understand why HAS_BSD_WPRINTF is enabled on
1542- Linux only for < gcc 2.96 (and not at all for macOS).
1543- This probably should be fixed, but not as part of this
1544- change. (I also don't know why HAS_BSD_WPRINTF is
1545- distinct from HAS_BSD_PRINTF.)
1546+ There are a few cases in bora/lib where exit(3) is used in the
1547+ context of a signal handler. It was recently noticed that exit(3) is
1548+ not async-signal-safe, and _exit(2) should be used instead.
1549
1550- [2] bsd_vsnwprintf is not consistent with bsd_vsnprintf for
1551- all format specifiers. I plan to deal with this later,
1552- but for now, make the expected strings match the actual
1553- output so we have a starting point where everything
1554- passes.
1555+ This patch changes a call from exit(3) to _exit(2) in bora/lib.
1556
1557-commit d04babd5bc7de9015c0fe881652723498069e7fa
1558+commit 54415a34a372388374bf322d8118ef47c7b0f9f7
1559 Author: Oliver Kurth <okurth@vmware.com>
1560-Date: Fri Sep 15 11:23:56 2017 -0700
1561+Date: Fri Mar 23 14:57:12 2018 -0700
1562
1563- lib/file: Cleanly handle directory separators
1564+ Hgfs FUSE Client: enable the FUSE client for RHEL 7, Ubuntu 14.04 and others
1565
1566- We want to handle Windows allowance of "/" and "\" as directory
1567- separators. Let's have an easy way to check things and use it.
1568+ The RHEL 7.x releases are all kernel 3.10 based. Currently the Hgfs FUSE
1569+ client will not be enabled for these earlier kernel versions, enabled only
1570+ for 4.0 kernels and later. This means for default tools install on plaftorms
1571+ running those kernel versions the Hgfs kernel client must be installed and
1572+ used for Shared Folders. The consequence of this means that the tar tools
1573+ installer must be run to provide the Hgfs kernel client on top of the OVT
1574+ install.
1575
1576- This is first in a sequence of changes to improve our handling of
1577- directory separators in lib/file.
1578+ To remove the need to install the tar tools we must enable support for the
1579+ Hgfs FUSE client, which just requires the kernel version check to be modified
1580+ from 4.0.0 to 3.10.0.
1581
1582-commit f72d3ce3571f93e9dc8a404bece8264e8081e493
1583+commit 84977ad9a0ca964d5873516c42efec328bac23c9
1584 Author: Oliver Kurth <okurth@vmware.com>
1585-Date: Fri Sep 15 11:23:55 2017 -0700
1586+Date: Fri Mar 23 14:57:12 2018 -0700
1587
1588- Add missing "const" to previous commit.
1589+ Changes to common header files; not applicable to open-vm-tools.
1590
1591-commit a518cc08a6e6f77a665eefa0f29b19e5077a8445
1592+commit 587d95eeadbdab2f20020ef24686bd989af6d8b0
1593 Author: Oliver Kurth <okurth@vmware.com>
1594-Date: Fri Sep 15 11:23:55 2017 -0700
1595+Date: Fri Mar 23 14:57:11 2018 -0700
1596
1597- lib/file: Rework File_ReplaceExtension and File_RemoveExtension
1598-
1599- Fix a bug and simplify the code.
1600+ lib/misc/hostinfoPosix.c: Fix sscanf format string case typo.
1601
1602-commit 24de06bc3d445d68ebee9b55efd5393520ef8dab
1603+commit 8e22cb4da06036b71a06698da3377ed72cfef440
1604 Author: Oliver Kurth <okurth@vmware.com>
1605-Date: Fri Sep 15 11:23:55 2017 -0700
1606+Date: Fri Mar 23 14:57:11 2018 -0700
1607
1608- Change to shared header file unrelated to open-vm-tools.
1609+ Changes to common header files; not applicable to open-vm-tools.
1610
1611-commit a53bde7ecfdd3c544010559f1b84c11396fa9f7d
1612+commit 9e3738b457eba1d9f8302fa449e9521da59f2dfd
1613 Author: Oliver Kurth <okurth@vmware.com>
1614-Date: Fri Sep 15 11:23:55 2017 -0700
1615+Date: Fri Mar 23 14:57:11 2018 -0700
1616
1617- Change to shared header file unrelated to open-vm-tools.
1618+ Changes to common header files; not applicable to open-vm-tools.
1619
1620-commit d840729ea449e19f9f2b6d5105c053c09085c364
1621+commit 18358aecd27f7d77b71d5ab31250edc600b7bfbc
1622 Author: Oliver Kurth <okurth@vmware.com>
1623-Date: Fri Sep 15 11:23:55 2017 -0700
1624+Date: Fri Mar 23 14:57:11 2018 -0700
1625
1626- Rename some parameters
1627-
1628- The generic parameter names for Posix_Symlink/Posix_Link are
1629- rather confusing. Rename them.
1630+ Changes to common header files; not applicable to open-vm-tools.
1631
1632-commit 1917d98e6b002670095cec13b363f5894ab8cc0f
1633+commit 670dba44e90c64173a1f67e617a7193f18fc3a2c
1634 Author: Oliver Kurth <okurth@vmware.com>
1635-Date: Fri Sep 15 11:23:55 2017 -0700
1636+Date: Fri Mar 23 14:57:11 2018 -0700
1637
1638- Revert previous commit.
1639+ Common header file change not applicable to open-vm-tools.
1640
1641-commit fbc7387c1edb0bc619cc05fecb84030809c38867
1642+commit 5fe941cd27194495811036667d312f14aece1975
1643 Author: Oliver Kurth <okurth@vmware.com>
1644-Date: Fri Sep 15 11:23:55 2017 -0700
1645+Date: Fri Mar 23 14:57:11 2018 -0700
1646
1647- lib/file: File_ReplaceExtension fails in the root directory
1648-
1649- On Linux, File_ReplaceExtension returns an incorrect path name for a
1650- file in the root directory. The code, as written, doesn't differentiate
1651- "test.txt" from "/test.txt". Fix this.
1652+ Common header file change not applicable to open-vm-tools.
1653
1654-commit 0f386a32789574bb73f75f0e8e82e80f0511416c
1655+commit 03faa87192b23354a996b4d62282c002de002c59
1656 Author: Oliver Kurth <okurth@vmware.com>
1657-Date: Fri Sep 15 11:23:55 2017 -0700
1658+Date: Fri Mar 23 14:57:11 2018 -0700
1659
1660- Update AUTHORS with pull request for fixing gcc6 build issues.
1661+ Common header file change not applicable to open-vm-tools.
1662+
1663+commit 2438cefba37d37de65bf2003b1880f47b529ef47
1664+Author: Oliver Kurth <okurth@vmware.com>
1665+Date: Tue Mar 6 10:38:43 2018 -0800
1666+
1667+ Enhancements for rpcChannel library.
1668
1669- The issue in linuxDeployment.c has been fixed. This change is to
1670- udpate the AUTHORS file.
1671+ rpcChannel.c file contains the code for building rpcChannel library. A good
1672+ amount of the same code is duplicated in rpcChannelSimple.c file to
1673+ build a simplified version (no glib dependency) of the rpcChannel library.
1674+ It's recommended to remove the duplication and maintain only one single
1675+ file which can be used to build both 'glib-dependent rpcChannel' and
1676+ 'glib independent rpcChannel' library.
1677
1678- - https://github.com/vmware/open-vm-tools/pull/107
1679- - https://github.com/vmware/open-vm-tools/pull/107/files#diff-ffeb9f9be2f25b5b92ecf9101fa3aae5
1680+ This changeset implements the following changes:
1681+ * Removed rpcChannelSimple.c
1682+
1683+ * Renamed I_USE_SIMPLE_RPC make variable to USE_RPCI_ONLY. If this
1684+ flag is specified, rpcChannel library will be built using only RPCI.
1685+ No dependencies on rpcIn will be added. This inturn will remove
1686+ dependencies on dynxdr, xdr and glib.
1687+
1688+ * Modified the RpcChannelInt structure to have only the necessary
1689+ attributes when USE_RPCI_ONLY is defined.
1690+
1691+ * Modified a bunch of functions into '#if defined(NEED_RPCIN)' block
1692+ to make available only when necessary.
1693+
1694+ * Modified guestrpc.h to provide the declarations for few RpcChannel_*
1695+ functions only when needed.
1696+
1697+ * Modified rpcChannel library to implement necessary stub files / functions
1698+ when it has to be built 'with rpci only' setting.
1699+
1700+ * Removed various copies of 'glib_stubs.c' maintained by different
1701+ consumers of rpcChannel (appmonitorlib, vmGuestLib, 'imgcust' components).
1702+
1703+ * Modified the make files of various consumers (vmGuestLib, appmonitorlib,
1704+ imgcust components [linux-pkg-deployer, guestcustutil, UnitTest]) to
1705+ remove the dependencies for dynxdr library.
1706+
1707+ * Did some code refactoring.
1708+ - Removed some dead code in some make files.
1709
1710-commit 2ad25b6bfe88e47dc9b2b995eba5af1a317aacd0
1711+commit 87be66f17bf7911a8ec59ce9917778f7f653a398
1712 Author: Oliver Kurth <okurth@vmware.com>
1713-Date: Fri Sep 15 11:23:55 2017 -0700
1714+Date: Tue Mar 6 10:38:43 2018 -0800
1715
1716- Update __IS_FREE_BSD__ macro in vm_basic_defs.h
1717+ Implement a new function VMTools_GetTimeAsString.
1718
1719- The __IS_FREEBSD__ macro in vm_basic_defs.h uses "defined" in
1720- the definition. That is undefined behavior and the FreeBSD default
1721- compiler, clang (LLVM), warns about this pervasively misused
1722- construct. With all warnings equivalent to an error, builds fail.
1723+ * Implemented a new function VMTools_GetTimeAsString in
1724+ vmtools library which returns a properly formatted UTC timestamp
1725+ information. This function can be used by different modules / plugins
1726+ in 'VMware Tools' to add the timestamp information in log files.
1727
1728- The object-like macro __IS_FREEBSD__ has been rewritten in a manner
1729- acceptable to the current C standard.
1730+ Example of UTC timestamp information: "2018-02-22T21:17:38.517Z"
1731
1732- Open-vm-tools pull request: https://github.com/vmware/open-vm-tools/pull/136
1733+ * Modified vmtools logging module to call the new function and
1734+ prepend the UTC timestamp information in every log message.
1735+
1736+ * Modified deployPkgLog.c to use the new function.
1737+
1738+ * Removed references / definition of System_GetTimeAsString since
1739+ it is no longer used anywhere in the code.
1740
1741-commit c1c9b66c580bdda09d0c1e41d3d01e2803a9221f
1742+commit acbf7d90add72d9d3aa70bb8677179e7b3d28e23
1743 Author: Oliver Kurth <okurth@vmware.com>
1744-Date: Fri Sep 15 11:23:54 2017 -0700
1745+Date: Tue Mar 6 10:38:43 2018 -0800
1746
1747 Common header file change; not applicable to open-vm-tools.
1748
1749-commit 39b3a708936a663d24a5ab8c6f4c45cd44dc12bb
1750+commit 87ddd2684bff33836db5667718449f42642c76e2
1751 Author: Oliver Kurth <okurth@vmware.com>
1752-Date: Fri Sep 15 11:23:54 2017 -0700
1753+Date: Tue Mar 6 10:38:43 2018 -0800
1754
1755- Include new CAF PMT files in open-vm-tools
1756+ GOS Table: The official Amazon Linux 2 string is "amazonlinux2-64"
1757
1758- Add new CAF PMT files CmonitorListener.cpp, CMonitorListener.h,
1759- and preconfigure-Listener.sh to open-vm-tools.
1760+ The hosted UI isn't creating an Amazon 2 VM with the correct guest OS
1761+ identifier string. Fix this.
1762
1763-commit fcee9fe84ab642d88230a0cb7b8db6fe6e2207d2
1764+commit 91b42f829a0ddc13a1657610700332dad7a9e362
1765 Author: Oliver Kurth <okurth@vmware.com>
1766-Date: Fri Sep 15 11:23:54 2017 -0700
1767+Date: Tue Mar 6 10:38:43 2018 -0800
1768
1769- Re-instate ASSERTS in circList.h
1770+ Fix vgauth log timestamps to have zone and use UTC
1771
1772-commit 136eab69cc5fcd9e4bdb2766810f5cb0a791c0ad
1773+commit d225ed26cca556f559c035234d11bd7d380c6d7f
1774 Author: Oliver Kurth <okurth@vmware.com>
1775-Date: Fri Sep 15 11:23:54 2017 -0700
1776+Date: Tue Mar 6 10:38:42 2018 -0800
1777
1778- services/plugins/dndcp/dnd/dndCPMsgV4.c:
1779- - Rework DnDCP v4 message validation.
1780+ Common header file change; not applicable to open-vm-tools
1781
1782-commit aa18cc61e5f1233cafff489be63b5660d9b8458b
1783+commit d585ee8fcc4135d6d52fdc38ec2e0ca747663bf7
1784 Author: Oliver Kurth <okurth@vmware.com>
1785-Date: Fri Sep 15 11:23:54 2017 -0700
1786+Date: Tue Mar 6 10:38:42 2018 -0800
1787
1788- deployPkg: Fix duplicate log message issue
1789+ Compilation fixes to build Tools with VS2015
1790
1791- Use linebuffer to prevent duplicate log message for forked off processes during customization.
1792+ This change consists of fixing warnings/errors as a result of building Tools with VS2015.
1793
1794-commit 321eaaafc80bc4d7e7c07b779d8021ff7adb27fc
1795+commit 03c98a1fb30513b223e3d6eafb21b5f4d4c6c5bc
1796 Author: Oliver Kurth <okurth@vmware.com>
1797-Date: Fri Sep 15 11:23:54 2017 -0700
1798+Date: Tue Mar 6 10:38:42 2018 -0800
1799
1800- Make TimeUtil_GetTimeFormat avoid a null pointer dereference if ctime_r fails
1801+ Add timestamp information to each deploypkg log message.
1802
1803- ctime_r potentially could return NULL on failure. Instead of
1804- blindly dereferencing the result, TimeUtil_GetTimeFormat
1805- should check for that and also return NULL (which callers
1806- should already expect on failure).
1807+ * Modified deployPkgLog.c file to prepend UTC timestamp information
1808+ to each log message coming from 'deploypkg' module in 'VMware Tools'.
1809+
1810+ * Used bunch of glib functions to get the current UTC time. As per
1811+ the glib manual, these glib functions are available since 2.26. 2.26 was
1812+ released around 8 years ago which is kind of very old. Having the glib
1813+ dependency on 2.26 is OK.
1814+
1815+ * Did some minor code refactoring. In DeployPkg.c file, at all
1816+ call sites for DeployPkgLog_Log, replaced the hard coded values with
1817+ the proper LogLevel enums.
1818
1819-commit 74fab8557791b3b546c39a0a833ff9b5d9914d40
1820+commit 73a21a057dc23cf428b5fa1799eb0c5945732fee
1821 Author: Oliver Kurth <okurth@vmware.com>
1822-Date: Fri Sep 15 11:23:54 2017 -0700
1823+Date: Tue Mar 6 10:38:42 2018 -0800
1824
1825- Change to shared header file unrelated to open-vm-tools.
1826+ Common header file change; not applicable to open-vm-tools.
1827
1828-commit c4b6c83951aef605686f6313be4d0e18fb5abf9f
1829+commit 3eb8434aebde9a2eebc65d57044d8ea6367d685f
1830 Author: Oliver Kurth <okurth@vmware.com>
1831-Date: Fri Sep 15 11:23:54 2017 -0700
1832+Date: Tue Mar 6 10:38:42 2018 -0800
1833
1834- resolutionSet: Should not free RandR12Info when RandR12GetInfo failed
1835-
1836- If for some reason RandR12GetInfo failed to return RandR12Info,
1837- it should not follow the cleanup path to free it. Instead it
1838- should return FALSE.
1839+ Common header file change; not applicable to open-vm-tools.
1840
1841-commit ff8a4800edf33a887efcce487efd763f9343c71f
1842+commit 24e9d211752210abb94bd1e76bec8be20d8abef8
1843 Author: Oliver Kurth <okurth@vmware.com>
1844-Date: Fri Sep 15 11:23:54 2017 -0700
1845+Date: Tue Mar 6 10:38:42 2018 -0800
1846
1847- Export and call a valist version of Msg_Append
1848+ vm_basic_types.h: enable stdint.h for c99
1849
1850- This change exports a valist version of Msg_Append.
1851+ C99 mode (a.k.a. __STDC_VERSION__ >= 199901L) guarantees
1852+ the stdint.h header will be present, which means we can use it
1853+ for standard types instead of rolling our own.
1854
1855-commit e43c3c193057843232471bb7c427781c22774832
1856+commit b4016c210e7cb6c0407d40dba5edfa64d550bef3
1857 Author: Oliver Kurth <okurth@vmware.com>
1858-Date: Fri Sep 15 11:23:53 2017 -0700
1859+Date: Tue Mar 6 10:38:41 2018 -0800
1860
1861- Common header file change: not applicable to open-vm-tools.
1862+ Don't lose errno/lastError when logging
1863+
1864+ guestOps need to see errno/lastError in order to return the proper
1865+ error to VIX/guestOps APIs. Logging (at any layer) can cause these
1866+ to be overwritten, so make sure they're preserved.
1867
1868-commit e28fabf2876cd256b80ad863a0d610d103fd121e
1869+commit 14a0ffe23be6437c9ee656ccf2d516ead6265dfd
1870 Author: Oliver Kurth <okurth@vmware.com>
1871-Date: Fri Sep 15 11:23:53 2017 -0700
1872+Date: Mon Feb 26 19:23:18 2018 -0800
1873
1874- VThreadID: change to uintptr_t
1875+ Enhancing CAF listener preconfigured check logic to update the preconfigured flag at runtime
1876+
1877+ 1. Preconfigure listener and start listener upon tunnel enabled logic are
1878+ invoked in two different threads.
1879+ 2. There is a case where preconfigure logic is performed after the
1880+ pre-configured flag is computed in the enable-listener thread.
1881+
1882+ The current patch invalidates the flag in the start listener thread and
1883+ should guarantee the preconfigured status is up-to-date.
1884
1885-commit 2c2426bd2120546d93f0b7b49a22e9b3689556c0
1886+commit 60f7afc97264435e1c04c2e70fe39397261b52b4
1887 Author: Oliver Kurth <okurth@vmware.com>
1888-Date: Fri Sep 15 11:23:53 2017 -0700
1889+Date: Mon Feb 26 19:22:04 2018 -0800
1890
1891- Add 10.1.15 update release to vm_tools_version.h
1892+ CAF MA Performance Issues
1893+
1894+ CAF MA Performance Issues
1895+
1896+ Vmware CAF ManagementAgentHost service was polling every 5 secs to check if Guest Network "Tunnel(port 6672)" was enabled to preconfigure & bring up Vmware CAF CommAmqpListener service.
1897+ This resulted in more CPU Utilization as opposed to previous release in CAF & caused regression in vmtools 10.2.0.
1898+ We are increasing the Poll rate to 5 mins, which fixed the issue & is giving us the same CPU/memory utilizations as in vmtools 10.1.0.
1899+
1900+ We were checking for the different stages of listener preconfiguration status from the listenerpreConfigure.txt files in the polling time interval, which caused increased IO operations.
1901+ To fix that we have stored the value of listener preconfiguration status from the files into a variable locally & using the same at all places instead of file access.
1902
1903-commit a02ecfdc12e18aa9aa1b4f9e1d6c61fa3eb9cdd3
1904+commit 872baeed3fd1e79f89143baa0b9c47077b655567
1905 Author: Oliver Kurth <okurth@vmware.com>
1906-Date: Fri Sep 15 11:23:53 2017 -0700
1907+Date: Mon Feb 26 12:29:08 2018 -0800
1908
1909- Change to shared header file unrelated to open-vm-tools.
1910+ lib/file: add File_MakeSafeTempSubdir
1911+
1912+ File_MakeSafeTempDir and File_GetSafeTmpDir are typically used to create
1913+ "safe" temp dirs on Windows and Linux. These are dirs in a known-secure
1914+ location with known-secure security attributes that only allow access to
1915+ the current user. These APIs work fine. However, on Windows if one creates
1916+ a subdir inside the safe dir, the subdir may be given an unexpected
1917+ (and overly restrictive) set of default DACLs on it in unusual situations.
1918+ The solution is to introduce a new API specifically to allow a caller to
1919+ create a subdir within an existing safe dir that ensures the DACLs
1920+ are exactly what are needed.
1921
1922-commit 182df3e67dcd21f143aa5e1741ba4381067a21ee
1923+commit bdbab22ec42544dbfff657b811d695e5b5a6d429
1924 Author: Oliver Kurth <okurth@vmware.com>
1925-Date: Fri Sep 15 11:23:53 2017 -0700
1926+Date: Mon Feb 26 12:29:08 2018 -0800
1927
1928- lib/file: Posix FileLock_Lock pathName handling
1929+ Remove the header file safetime.h
1930
1931- Locking "/tmp" should create a lock "/tmp.lck".
1932- Locking "tmp" should create a lock "./tmp.lck".
1933+ This removes the file itself.
1934
1935-commit 06c0cf16d765c4718825cc28ad9997476b5b0423
1936+commit 047f05f379eb73530ac943d35cda5c162e045fa2
1937 Author: Oliver Kurth <okurth@vmware.com>
1938-Date: Fri Sep 15 11:23:53 2017 -0700
1939+Date: Mon Feb 26 12:29:08 2018 -0800
1940
1941- Add vmx config options for guest time service resync.
1942+ Common source file change; not applicable to open-vm-tools.
1943+
1944+commit 2c927bb65029cb89ba0c4b7ba9b341890166823d
1945+Author: Oliver Kurth <okurth@vmware.com>
1946+Date: Mon Feb 26 12:29:07 2018 -0800
1947+
1948+ Skip specified file systems when doing a quiesced snapshot on Linux
1949
1950- VMware tools timeSync can be enabled in a guest that also has a native
1951- time service running. This can lead to race conditions when both the time
1952- services are trying to correct system time. Particularly, when both of
1953- these services tries to do a step correction on certain events, guest
1954- time behaves in an undesirable manner that could cause guest
1955- applications to fail. This change introduces a couple of vmx config options
1956- that can be used to eliminate or atleast reduce the chance of race
1957- condition between VMware tools timeSync and guest native time service
1958- (like w32time or NTP).
1959+ Add a tools.conf setting "excludedFileSystems" that specifies one or
1960+ more file system mount points to be skipped over when performing a
1961+ quiesced snapshot on Linux guests. The value of excludedFileSystems
1962+ is a comma-separated list of glob-style patterns as recognized by the
1963+ glib routines described here:
1964
1965- The basic idea is to utilize native time service to resynchronize and
1966- recalibrate its parameters and force to do a step correction if
1967- necessary. VMware tools timeSync would send a service request to native
1968- guest time service when it needs to do a step correction, rather than
1969- correcting system time itself. This helps in having a single service
1970- responsible for correcting guest system time and eliminates/reduces race
1971- condition.
1972+ https://developer.gnome.org/glib/stable/glib-Glob-style-pattern-matching.html
1973
1974- "time.synchronize.guest.resync"=<TRUE|FALSE> controls whether this new
1975- method of guest time synchronization is enabled or not.
1976- There might be situations where native guest time service resync request
1977- is not successful. This could happen if the native time service is not
1978- configured correctly or if there is an intermittent network outage, etc.
1979- We would like to fall back to using legacy way of VMware tool timeSync
1980- onetime correction in such failure scenarios.
1981- "time.synchronize.guest.resync.timeout>=0" vmx option allows us to achieve
1982- that. Tools timeSync would initiate a resync request, then wait for
1983- 'timeout' period of time and would fall back of legacy timeSync onetime
1984- sync behavior. This allows us to correct guest time even in case of
1985- native guest time service failure.
1986+ With this change, when performing a quiesced snapshot, the sync driver
1987+ freeze routine removes from the list of mount points it is to process
1988+ any path that matches a pattern in the excludedFileSystems list.
1989+
1990+ In the course of testing the change, a bug was found in SyncDriverFreeze
1991+ in which it returned SD_ERROR rather than FALSE when the path list is
1992+ empty.
1993+
1994+ This change also includes some whitespace cleanup in syncDriverWin32.c.
1995
1996-commit bb819650082a6714d0435831bf2bbf31c66718c5
1997+commit 9fb904dbdbd12952f2743d1463cda56a72c50c90
1998 Author: Oliver Kurth <okurth@vmware.com>
1999-Date: Fri Sep 15 11:23:53 2017 -0700
2000+Date: Mon Feb 26 12:29:07 2018 -0800
2001
2002- Common source file change; not directly applicable to open-vm-tools.
2003+ lib/file: Paranoid clear of old cached values
2004+
2005+ Rare, but an app might toggle addPid; cover this. Also optimize the
2006+ cache update.
2007
2008-commit 433f1f2b4db1e55e9576ab5bb0bf02a4e040a299
2009+commit d244dac08f07cbbcba3f66eab7d78c16150edfba
2010 Author: Oliver Kurth <okurth@vmware.com>
2011-Date: Fri Sep 15 11:23:53 2017 -0700
2012+Date: Mon Feb 26 12:29:07 2018 -0800
2013
2014- Change to shared header file unrelated to open-vm-tools.
2015+ lib/file: File_GetSafeTmpDir is not aware of credentials changes
2016+
2017+ Some applications may masquerade their use (change their EUID).
2018+ Futhermore, each thread in an application can have a separate EUID.
2019+
2020+ Anytime a application or thread asked for its safe temporary directory,
2021+ it needs to get the same result regardless of how many times it asks.
2022+
2023+ Change File_GetSafeTmpDir to cache the EUID associated with the cached
2024+ values. If there is an EUID change, invalidate the existing cache
2025+ entries and recompute them. The recomputation process is stable, in
2026+ that it will obtain the same return any time it is called.
2027+
2028+ This way we get the benefit of the cache (performance), ensured
2029+ correctness (for applications that do not masquerade), and correctness
2030+ for those applications that do masquerade.
2031
2032-commit 63e4a016d5bba58121cbbebb8f7711a0bf70436c
2033+commit f9177b133f7f683fcc0f85770712d8069ec52421
2034 Author: Oliver Kurth <okurth@vmware.com>
2035-Date: Fri Sep 15 11:23:52 2017 -0700
2036+Date: Mon Feb 26 12:29:07 2018 -0800
2037
2038- VThread: factor out common thread-name assignment
2039+ Common header file change; not applicable to open-vm-tools.
2040
2041-commit 4a08aedc1a3bfbe666896d13380265f3948684ac
2042+commit 4da56779c42a55ce1b872748f9d6fd90bd10d281
2043 Author: Oliver Kurth <okurth@vmware.com>
2044-Date: Fri Sep 15 11:23:52 2017 -0700
2045+Date: Mon Feb 26 12:29:07 2018 -0800
2046
2047- Hgfs OSX Server: Create and use server callback table for change notifications
2048-
2049- There are now three different callbacks into the Hgfs server from the file
2050- change notification component. So we now pass these in a table to the nofify
2051- module when it is initialized instead of ad hoc. Previously, the same
2052- callback is passed for every subscriber watch event and therefore duplicated
2053- and stored in each subscriber.
2054-
2055- Note that the feature is currently switched off by default until these changes
2056- are complete. A user will explicitly have to enable the VMX file setting and
2057- would cause a VMX assert to be triggered.
2058+ lib/file: Clean up POSIX File_GetSafeTempDir() in fileTempPosix.c
2059
2060- Details:
2061- - The server now creates a table for its notification callbacks and passes
2062- it to the notify initialization function.
2063- - The server now includes the async thread registration callbacks previously
2064- ifdef'd out.
2065- - The Notify_Init function APIs are updated to reflect the new argument for
2066- callbacks.
2067- - The HgfsNotify_AddSubscriber argument does not include the callback as it
2068- is now passed once at the initialization time.
2069- - The HgfsNotifyEventReceiveCb type has been modified now it is an entry in
2070- the callback table.
2071- - The subscriber callback function call is now validated to be non-NULL
2072- before calling.
2073- - The Mac notify module adds the server callback table to its FS event
2074- context which is passed to the event generating submodule for the Mac
2075- implementation.
2076- - The Mac notify module adds its own FS event callbacks for thread register
2077- and unregister called from the FS event module when registering and
2078- unregistering its FS event thread.
2079+ Make things clearer.
2080
2081-commit 3633fa4ab2b5cbd97bfed0cdc14cda842675bd9e
2082+commit f608f63948520ab2088870a800bcc62c67a416ab
2083 Author: Oliver Kurth <okurth@vmware.com>
2084-Date: Fri Sep 15 11:23:52 2017 -0700
2085+Date: Mon Feb 26 12:29:07 2018 -0800
2086
2087- CAF - Preconfigure the listener + follow guest proxy
2088-
2089- Listener is auto configured during the install upon MA being started.
2090- Listener is started/stopped automatically when tunnel is enabled/disabled.
2091+ Common header file change; not applicable to open-vm-tools.
2092
2093-commit 1f72b0f9878355ea2263d57b16dd35682b2720f9
2094+commit 5d98c8b5183e236dc8fb548647574f4b24e87d23
2095 Author: Oliver Kurth <okurth@vmware.com>
2096-Date: Fri Sep 15 11:23:52 2017 -0700
2097+Date: Mon Feb 26 12:29:07 2018 -0800
2098
2099- Change to shared header file unrelated to open-vm-tools.
2100+ Common header file change; not applicable to open-vm-tools.
2101
2102-commit e854fc4e547c5f7f4c989e38e233e6567d588386
2103+commit 65a35ec640223e4455e016c883261f514eb21492
2104 Author: Oliver Kurth <okurth@vmware.com>
2105-Date: Fri Sep 15 11:23:52 2017 -0700
2106+Date: Mon Feb 26 12:29:06 2018 -0800
2107
2108- Add error logging to lib/file/file.c create folder functions
2109+ Common header file change; not applicable to open-vm-tools.
2110
2111-commit 7e5f9a8025926b56e77d63f11cff70b606dfd0be
2112+commit aefcbec68487e14de8938fafbf0606a9ce37b2b9
2113 Author: Oliver Kurth <okurth@vmware.com>
2114-Date: Fri Sep 15 11:23:52 2017 -0700
2115+Date: Mon Feb 26 12:29:06 2018 -0800
2116
2117- Re-gen rabbitproxy key if its perms are bad
2118+ Skip davfs mount points during quiescing (part 2)
2119
2120- Make sure nothing has played with our keyfile permissions.
2121- The old (9.10) VB script that generated the key left it world-readable,
2122- and it's also possible someone could mess up the perms.
2123- This change checks the perms, and if they're wrong, regenerates
2124- the cert & key.
2125+ Refactor the change to skip davfs mount points. Capture the length
2126+ of the static URL prefixes at compile time and avoid repetitive
2127+ strlen() calls when checking each active mount point.
2128
2129-commit ad4f5db55d031ce7d1b75ddc64c3f046c24469de
2130+commit f459a325c4eec2e31eddc7f74901623b30ea0525
2131 Author: Oliver Kurth <okurth@vmware.com>
2132-Date: Fri Sep 15 11:23:52 2017 -0700
2133+Date: Mon Feb 26 12:29:06 2018 -0800
2134
2135- GuestInfo: Add option to exclude network interfaces
2136-
2137- VMs running docker can have hundred of virtual network interfaces.
2138- Also, docker creates one virtual network interface 'docker0' with
2139- an IPv4 address. This address is useless outside the VM, and should
2140- not be propagated via GuestInfo, or even as the primary network
2141- address.
2142+ Skip davfs mount points during quiescing
2143
2144- This change adds on option for tools.conf to exclude specific
2145- network interface names using patterns with wildcards. This makes
2146- it easy to exclude virtual docker interface names with the option
2147+ The davfs2 is a Linux filesystem that allows mounting a Web Distributed
2148+ Authoring and Versioning (WebDAV) network resource as a local filesystem.
2149+ On some Linux releases, the FREEZE ioctl() is rejected and quiescing
2150+ these filesystems is not attempted. On others, however, the FREEZE is
2151+ not rejected and there exists the potential of a quiescing deadlock
2152+ if the davfs2 attempts to write to its cache in /var which has already
2153+ been quiesced.
2154
2155- exclude-nics=docker*,veth*
2156+ This fix is to avoid a potential deadlock by excluding davfs2 mounts
2157+ as the networking filesystem they are. Since davfs2 may be implemented
2158+ on the Linux fuse (default) or coda filesystem kernel module,
2159+ the detection of these network mounts must be based upon detection
2160+ of the URL prefix of the mounted device name.
2161
2162- For convenience, the option is set to docker*,veth* by default,
2163- except for Windows, where it is "vEthernet*". To
2164- send information of all interfaces, including docker* and veth*,
2165- the option needs to be set to an empty value: exclude-nics=
2166+ The static function SyncDriverIsRemoteFSType() is being updated to
2167+ not only exclude remote filesystems based on filesystem type but also
2168+ to exclude davfs2 remote filesystems by the "http://" or "https://"
2169+ URL prefix on the device name. The function name is being changed
2170+ to SyncDriverIsRemoteFS().
2171
2172-commit 6a74858200ae2fb5908b74676da56124d83a8285
2173+commit 3af8139cfcb4578dd9d7cd9a85301ed808775eb4
2174 Author: Oliver Kurth <okurth@vmware.com>
2175-Date: Fri Sep 15 11:23:52 2017 -0700
2176+Date: Mon Feb 26 12:29:06 2018 -0800
2177
2178- Fix vm_basic_types.h broken in previous commit.
2179+ vm_basic_types.h: scrub FMTxx specifiers
2180+
2181+ Reduce the amount of magic in vm_basic_types.h... nowadays, any
2182+ system we support (including Tools) DEFINITELY supports C99-style
2183+ specifiers, with two exceptions: pre-vs2015 MSVC, and pre-10.13
2184+ macOS kernels.
2185+
2186+ Rip out all the pre-C99 junk. Add a few comments explaining exactly
2187+ what the caveats here are.
2188
2189-commit 6cc7edaf4294f47d6210af45c1ba64d967a031a2
2190+commit 442683ac70f1f1c8665feb347be40cac5c8edd65
2191 Author: Oliver Kurth <okurth@vmware.com>
2192-Date: Fri Sep 15 11:23:52 2017 -0700
2193+Date: Mon Feb 26 12:29:06 2018 -0800
2194
2195- Change to shared header file unrelated to open-vm-tools.
2196+ amazonlinux2-64 should use OVT only, not tar tools linux.iso.
2197
2198-commit 8b50e2372fbf110a1e41225c9e67fb6720344f8b
2199+commit b4e66d7ac1f29b4d81877741c0dc85b8eeb68365
2200 Author: Oliver Kurth <okurth@vmware.com>
2201-Date: Fri Sep 15 11:23:52 2017 -0700
2202+Date: Mon Feb 26 12:29:06 2018 -0800
2203
2204- Change to shared header file unrelated to open-vm-tools.
2205+ Common header file change; not applicable to open-vm-tools.
2206
2207-commit d36368429913b21291917e4b00bc2ba92e2d3c0a
2208+commit 16e63100ba9aeb419d22d8ade3af1eda2e3f02c0
2209 Author: Oliver Kurth <okurth@vmware.com>
2210-Date: Fri Sep 15 11:23:52 2017 -0700
2211+Date: Mon Feb 26 12:29:05 2018 -0800
2212
2213- Remove VThread_WaitThread
2214+ Changes to common header files; not applicable to open-vm-tools.
2215
2216-commit cd7b6d0c9575f9728f425d3043fc87639bc2cab0
2217+commit f5b05ca724708bd54b5c5b7dc3f9d0d959134773
2218 Author: Oliver Kurth <okurth@vmware.com>
2219-Date: Fri Sep 15 11:23:51 2017 -0700
2220+Date: Mon Feb 26 12:29:05 2018 -0800
2221
2222- VThreadBase: Final cleanups
2223+ Common header file change; not applicable to open-vm-tools.
2224
2225-commit a10c8df8b9f9609e025d231fe596e2fce6b8e750
2226+commit 783e87e2a465d28db5233e7d1e284fa9410ffec4
2227 Author: Oliver Kurth <okurth@vmware.com>
2228-Date: Fri Sep 15 11:23:51 2017 -0700
2229+Date: Mon Feb 26 12:29:05 2018 -0800
2230
2231- Tools Hgfs Plugin: Refresh Hgfs drives on client start
2232-
2233- In order to get Explorer to see that VMware Shared Fodlers
2234- drives are available when the feature is enabled, we touch
2235- each drive that is mapped as a VMware Shared Folder. This
2236- is to prevent users being confused when they have the feature
2237- enabled but Explorer creates the user's drive mappings before
2238- the tools service has initialized the Hgfs plugin and started
2239- the Hgfs client. In this situation the drives are marked
2240- as red (disconnected) until the user clicks on the mapped
2241- drive when Explorer will refresh the connction and set it
2242- to green (connected).
2243+ Remove uses of header file safetime.h
2244
2245- Details:
2246- - Main service will usually create otheriwse open a named event
2247- to synchronize with the user service.
2248- - Main service will start the HGFS client redirector (as before
2249- this is not new).
2250- - Main service will set the synchronization event to signalled.
2251- - User service will usually open the named event (or create it
2252- if first).
2253- - User service will enumerate all the mapped network drives and,
2254- if they are provided by the VMware Shared Folder redirector,
2255- reconnect them.
2256- - The named event will be created with Administrators group all
2257- access and Everyone with modify state to signal it and synchronize
2258- to wait on it.
2259+ - (many places) replace "safetime.h" with <time.h> and/or <sys/stat.h>,
2260+ occasionally re-ordering this header to top of file
2261+ - (many places) remove "safetime.h" as no time functions are used
2262
2263-commit d4a5693af649e7c8f87667c60b7e6575b15faa0e
2264+commit bf31e9478b99b5713f2c330e48d2e40c5091d3bc
2265 Author: Oliver Kurth <okurth@vmware.com>
2266-Date: Fri Sep 15 11:23:51 2017 -0700
2267+Date: Mon Feb 26 12:29:04 2018 -0800
2268
2269- Emphatically close virtual disk.
2270-
2271- Sometimes I/O stack modules return EBUSY during teardown.
2272- This may be due to an external process opening files at
2273- inopportune moments. The workaround is to retry the affected
2274- operations.
2275+ Common header file change; not applicable to open-vm-tools.
2276
2277-commit 04d01f93f26b748d0fbb6bc1ea571e90fbc005d7
2278+commit cbdbeef4b6c3454f58e9733079140edcc30fdb2a
2279 Author: Oliver Kurth <okurth@vmware.com>
2280-Date: Fri Sep 15 11:23:51 2017 -0700
2281+Date: Mon Feb 26 12:29:03 2018 -0800
2282
2283- lib/file/filePosix.c: Implement File_GetMountPath() for POSIX
2284- - The change implements File_GetMountPath() for POSIX,
2285- using realpath(3) and readlink(2).
2286+ Remove GLIBC_VERSION_NN macros
2287
2288- Changes to common header files; not applicable to open-vm-tools.
2289+ No existing usages. Astute observers will note we currently
2290+ use glibc-2.5 minimum (so all but one of these macros are ALWAYS
2291+ defined).
2292
2293-commit 47ffaf37a9f604ffc1099d249dba21857dd426d3
2294+commit eec6e2798def2e9ff6da5e73b092cfe92e60b763
2295 Author: Oliver Kurth <okurth@vmware.com>
2296-Date: Fri Sep 15 11:23:51 2017 -0700
2297+Date: Wed Feb 7 16:39:26 2018 -0800
2298
2299- VThreadBase: Switch to "stable" thread IDs
2300-
2301- Now that lib/thread no longer has a dependency on small-numbered
2302- VThreadIDs, and now that lib/thread has ceeded control of assigning
2303- VThreadIDs to threads, we can make VThreadBase really simple.
2304+ Common header file change not applicable to open-vm-tools.
2305
2306-commit c6f360fc8e9b25d9478864903886895cedeff4e0
2307+commit 5170db44c1c7b814d0d2bd4131e1895dbd999db7
2308 Author: Oliver Kurth <okurth@vmware.com>
2309-Date: Fri Sep 15 11:23:51 2017 -0700
2310+Date: Wed Feb 7 16:39:26 2018 -0800
2311
2312- lib/lock: Clarify comments
2313+ Use a unique random temp directory for vmtoolsd on Linux.
2314+
2315+ The temporay directory currently used by vmtoolsd and its plugins
2316+ on Linux is of the form /tmp/vmware-<user>. Since it is used to
2317+ upload VMware Tools upgrade and GOS customization scripts and commands,
2318+ that name predictability may make it susceptible to attack. This
2319+ change adds a new function File_GetSafeRandomTmpDir() in
2320+ bora/lib/file/fileTempPosix.c to both add the PID to the user name
2321+ and add a random number suffix to the temp directory path.
2322+
2323+ /tmp/vmware-<user>_<pid>-nnnnnn
2324+
2325+ VMware Tools commands and plugins are being updated to use this random
2326+ temp directory.
2327
2328-commit d98582711a87185657cd9f125d58f3fdd48dbc0a
2329+commit 9bc56af5d0cb7dcc6f079ff4ab4d3456535365b2
2330 Author: Oliver Kurth <okurth@vmware.com>
2331-Date: Fri Sep 15 11:23:51 2017 -0700
2332+Date: Wed Feb 7 16:39:26 2018 -0800
2333
2334- Clear vmusr as resolution_server when resolutionKMS is enabled
2335-
2336- Whenever resolutionKMS is enabled, send
2337- "tools.capability.resolution_server toolbox-dnd 0" to clear
2338- resolutionSet as resolution server.
2339+ Changes to common header files not applicable to open-vm-tools.
2340
2341-commit 22c3f23f55153f08e788db6c4ae7a96d555ed8ca
2342+commit 3e4091698461c0a5c36f9025410941f189c5af69
2343 Author: Oliver Kurth <okurth@vmware.com>
2344-Date: Fri Sep 15 11:23:51 2017 -0700
2345+Date: Wed Feb 7 16:39:26 2018 -0800
2346
2347- Changes to common source files; not applicable to open-vm-tools.
2348+ Fix two comment typos in hostinfoPosix.c.
2349
2350-commit eecfdd625b3e134830a7c012fc8aadda36bfd4da
2351+commit cf4f582e5b3c2df25aa775d77d458a15583a05ad
2352 Author: Oliver Kurth <okurth@vmware.com>
2353-Date: Fri Sep 15 11:23:51 2017 -0700
2354+Date: Wed Feb 7 16:39:26 2018 -0800
2355
2356- Use correct osname for FreeBSD 11.
2357-
2358- For FreeBSD 11 and later the correct osname is "freeBSD11".
2359- Without the correct osname, guestInfo ends up with the wrong
2360- guestId and guestFullName.
2361+ open-vm-tools: ignore with/without gtk2/3 options when building without X
2362
2363- Also cleaned up some unused code.
2364+ When building without X support, we should ignore the options to enable/disable
2365+ gtk2 and gtk3. This was reported in gthub issue
2366+ https://github.com/vmware/open-vm-tools/issues/228 .
2367
2368-commit 0ca5c37c17a9631533de41eba1f770ca833c07e9
2369+commit 0a099c6f4949a05d1400dc147ab68ad15ebf152a
2370 Author: Oliver Kurth <okurth@vmware.com>
2371-Date: Fri Sep 15 11:23:50 2017 -0700
2372+Date: Wed Feb 7 16:39:26 2018 -0800
2373
2374- Change to shared header file unrelated to open-vm-tools.
2375+ Common header file change not applicable to open-vm-tools.
2376
2377-commit fbead2824b81be34cb2a61e1310da9188adc383f
2378+commit 7be0019e01c7d473deffb8b8646fce1dff22e11a
2379 Author: Oliver Kurth <okurth@vmware.com>
2380-Date: Fri Sep 15 11:23:50 2017 -0700
2381+Date: Wed Feb 7 16:39:25 2018 -0800
2382
2383- Change to shared header file unrelated to open-vm-tools.
2384+ Common header file changes not applicable to open-vm-tools.
2385
2386-commit fbd04d3227be7adeb307b508d7994236161927f5
2387+commit f838807d08b9c4e72d4887642d4181dea25b6c35
2388 Author: Oliver Kurth <okurth@vmware.com>
2389-Date: Fri Sep 15 11:23:50 2017 -0700
2390+Date: Wed Feb 7 16:39:25 2018 -0800
2391
2392- Common header file change; not applicable to open-vm-tools.
2393+ Common header file change not applicable to open-vm-tools.
2394
2395-commit 74e48b8fc16e6cfe765a32568e437a98d3ad1548
2396+commit 25d00050c8009dd74e3bbcf1883fdd408411a693
2397 Author: Oliver Kurth <okurth@vmware.com>
2398-Date: Fri Sep 15 11:23:50 2017 -0700
2399+Date: Wed Feb 7 16:39:25 2018 -0800
2400
2401- Common header file change; not applicable to open-vm-tools.
2402+ Common header file change not applicable to open-vm-tools.
2403
2404-commit 00b13522c0f12774b2d39e999855216f53648c1a
2405+commit 6b6038522ed24ea134eb4e4a2752288f6f42fcd5
2406 Author: Oliver Kurth <okurth@vmware.com>
2407-Date: Fri Sep 15 11:23:50 2017 -0700
2408+Date: Wed Feb 7 16:39:25 2018 -0800
2409
2410- Change to shared header file unrelated to open-vm-tools.
2411+ Header file change not applicable to open-vm-tools.
2412
2413-commit 407459a2ceee1d845a5055a856b5947ca00836f4
2414+commit ee4bd450c4449f8905dbca2e4759660fda5c58dc
2415 Author: Oliver Kurth <okurth@vmware.com>
2416-Date: Fri Sep 15 11:23:50 2017 -0700
2417+Date: Tue Feb 6 16:32:40 2018 -0800
2418
2419- VSOCK: Add getsockopt to determine stream socket disconnect cause
2420+ fix buffer overrun in AsyncTCPSocketConnect()
2421
2422- This is the vSocket part of adding support for getting the
2423- disconnect cause of a vSocket stream socket. This adds a
2424- getsockopt option to determine stream socket disconnect cause
2425- as registered by the underlying VMCI queue pair.
2426+ Callers may pass a struct smaller than sockaddr_storage, but a
2427+ sockaddr_storage-sized chunk gets copied to asock->remoteAddr.
2428+ memcpy() should be used.
2429+
2430+ One such caller is AsyncSocket_ConnectUnixDomain(). It passes sockaddr_un.
2431+ sizeof(sockaddr_un) == 110, sizeof(sockaddr_storage) == 128.
2432+
2433+ Caught by AddressSanitizer.
2434
2435-commit ad5c63faa35f3b3e8e6a035e76ba1c043ae8c756
2436+commit 13df0e2fc2f68aeab0380761eb0c5ab129730710
2437 Author: Oliver Kurth <okurth@vmware.com>
2438-Date: Fri Sep 15 11:23:50 2017 -0700
2439+Date: Tue Feb 6 16:32:40 2018 -0800
2440
2441- Convert Util_GetCurrentThreadId to VThreadBase_GetKernelID
2442-
2443- This code now "lives" in VThreadBase since it is thread-related. The
2444- two functions behave (very) similarly.
2445+ open-vm-tools: use pkg-config for building with icu
2446
2447- Some locations should use VThreadIDs instead of KernelIDs. Convert them.
2448-
2449- Remove the util.h and lib/misc bits.
2450+ icu uses pkg-config in recent versions, and no longer ships with
2451+ icu-config in most recent versions. Make the configure script
2452+ use pkg-config for icu if available, and icu-config if not. For
2453+ pkg-config we need to specify 'icui18n' which returns the same result
2454+ as icu-config did to link with icui18n.
2455
2456-commit 55a1aa0c2917bf69c919bd6b202464d8b3febee3
2457+commit 3a8221c7e4b149efacf87658ac239d815c56adba
2458 Author: Oliver Kurth <okurth@vmware.com>
2459-Date: Fri Sep 15 11:23:50 2017 -0700
2460+Date: Tue Feb 6 16:32:40 2018 -0800
2461
2462- Remove Util_GetCurrentThreadId from VIX
2463-
2464- Some cleanup now that VThreadBase_GetKernelID() is available
2465- in VIX code, we log the thread which made certain API calls.
2466+ Ignore ENXIO errors with SyncDriver
2467
2468- The thread name is already logged in our Log() implementation,
2469- so having the thread ID merely wastes bytes. Remove it.
2470+ A quiesced snapshot fails when the target VM has a bind mount. The
2471+ problem is that the syncDriver gets an ENXIO error when it tries to
2472+ open the mount point. To fix the problem, let the quiesce operation
2473+ skip a mount point when opening it results in an ENXIO error.
2474
2475- (Thread IDs like this are useful for correlating with kernel logs.
2476- Which in practice does not apply to VIX).
2477+ This change is based on pull request
2478+ https://github.com/vmware/open-vm-tools/pull/218 .
2479
2480-commit b8912055edb714afd8c0b1124a64502c712f0f6c
2481+commit ff754c8a99bffe92b07c933898c7d9d20c02873f
2482 Author: Oliver Kurth <okurth@vmware.com>
2483-Date: Fri Sep 15 11:23:50 2017 -0700
2484+Date: Tue Feb 6 16:32:40 2018 -0800
2485
2486- Add some tweaks to make it easier to test old tokens
2487-
2488- At times its useful to be able to play with SAML tokens
2489- which have expired assertions but we still care about
2490- signing or aliasStore configuration issues. This change makes it
2491- easy to tweak the code and run these old tokens through.
2492+ Refinement for memory corruption bug fix in StdIO_ReadNextLine
2493
2494-commit 241fd29fa3352d17aacc13754de3304538d0a3d4
2495+commit 7b45a62730624c711fb4eb63a0bfd125a2befa57
2496 Author: Oliver Kurth <okurth@vmware.com>
2497-Date: Fri Sep 15 11:23:50 2017 -0700
2498+Date: Tue Feb 6 16:32:40 2018 -0800
2499
2500- Enable XML manifest by default.
2501-
2502- Enable Tools enableXmlManifest by default for quiesced snapshots on Linux.
2503+ lib/file: Style clean up in the public file.h
2504
2505-commit 3b80a0df4bac2f5de52117096a482ab3f490f52a
2506+commit 3a7dc2f92e6cb61c9ca8e57c367c972683355278
2507 Author: Oliver Kurth <okurth@vmware.com>
2508-Date: Fri Sep 15 11:23:50 2017 -0700
2509+Date: Tue Feb 6 16:32:40 2018 -0800
2510
2511- lib/file: Must be errno safe
2512-
2513- lib/file is documented to be safe about returning errno. This is true
2514- on Window and Posix platforms. We've had a bug where free can change
2515- errno. We created Posix_Free to protect errno but haven't used it
2516- consistently.
2517-
2518- Make lib/file use Posix_Free universally.
2519+ Common header file changes not applicable to open-vm-tools.
2520
2521-commit 0dd222a31a10c0591a95009e7ca7c60046b6e6b3
2522+commit c52bb302a181d4bdd0b2b61d6e901339b61d2dab
2523 Author: Oliver Kurth <okurth@vmware.com>
2524-Date: Fri Sep 15 11:23:49 2017 -0700
2525+Date: Tue Feb 6 16:32:40 2018 -0800
2526+
2527+ Common header file change not applicable to open-vm-tools.
2528+
2529+commit 035765d487f8ab9b2222ad239b278e4725aa5a22
2530+Author: Oliver Kurth <okurth@vmware.com>
2531+Date: Tue Feb 6 16:32:39 2018 -0800
2532
2533 Changes to common header files; not applicable to open-vm-tools.
2534
2535-commit 94e8e7478d2528466d0eecbd29aa441f748a4235
2536+commit 3011466e0f59471292a58ba5124238898d18945a
2537 Author: Oliver Kurth <okurth@vmware.com>
2538-Date: Fri Sep 15 11:23:49 2017 -0700
2539+Date: Tue Feb 6 16:32:39 2018 -0800
2540
2541- Hgfs Server: Fix the tools build
2542+ open-vm-tools: use ENV{DEVTYPE}=="disk" in udev scsi rule
2543
2544- Make the HgfsServerAsyncInfoIncCount to be VMX code only as the current
2545- usage is not in the tools implementation.
2546+ Fix udev scsi rule to not print warnings on boot.
2547+ The rule now checks for the device type. The previous fix by
2548+ trying to check for a valid timeout field did not work as expected.
2549+ This change uses the rule from Mike Latimer at
2550+ https://github.com/vmware/open-vm-tools/pull/216
2551
2552-commit 3466376924a5338b3b596d8f960942e30b0ecef7
2553+commit 9da6562e0c04fa79fad726513508a628f29f4812
2554 Author: Oliver Kurth <okurth@vmware.com>
2555-Date: Fri Sep 15 11:23:49 2017 -0700
2556+Date: Tue Feb 6 16:32:39 2018 -0800
2557
2558- Hgfs Server: Move async request globals into the Hgfs session
2559-
2560- This change moves the async request globals into the Hgfs session.
2561- They are only applicable to a session and only used during a session's
2562- lifetime, so making them global is not necessary and means that
2563- they take up resources when not used.
2564-
2565- Details:
2566- - Move the previous globals into a structure for async requests.
2567- - Add the async requests structure to the HgfsSessionInfo object.
2568- - Create a set of helper functions to init, exit and manipulate the
2569- async requests structure.
2570- - Remove the calls to init and teardown the globals now they don't
2571- exist.
2572- - Add the helper calls to the session creation and destruction.
2573- - Add the helper calls to replace adding a new async request, removing
2574- an async request, and waiting for all async requests to complete.
2575+ Common header file change not applicable to open-vm-tools.
2576
2577-commit 93f1036f2d69c6c50780a536eb6b2a15b198c03a
2578+commit 6ccc073a58e1822dc4eb8c20e10dc89791643e9c
2579 Author: Oliver Kurth <okurth@vmware.com>
2580-Date: Fri Sep 15 11:23:49 2017 -0700
2581+Date: Tue Feb 6 16:32:39 2018 -0800
2582
2583- Remove dead FileMacos_IsOnExternalDevice function.
2584-
2585- FileMacos_IsOnExternalDevice does not have any callers.
2586+ Fix memory corruption bug in StdIO_ReadNextLine
2587
2588-commit 0db66edd78699e10f069476998cb3469c42da316
2589+commit 4f729b61b908c82318b8dcfc16264c15b58817c8
2590 Author: Oliver Kurth <okurth@vmware.com>
2591-Date: Fri Sep 15 11:23:49 2017 -0700
2592+Date: Tue Feb 6 16:32:39 2018 -0800
2593
2594- Common header file change; not applicable to open-vm-tools.
2595+ Common header file changes not applicable to open-vm-tools.
2596
2597-commit 10eed7e90059f666e50a0ca4df1de2f4947bd62b
2598+commit 9fa726051f7efe1b7e0bab745b7bad85d1fb3efb
2599 Author: Oliver Kurth <okurth@vmware.com>
2600-Date: Fri Sep 15 11:23:49 2017 -0700
2601+Date: Tue Feb 6 16:32:39 2018 -0800
2602
2603- Add MacOS 10.13 to guest os tables
2604+ Common header file changes not applicable to open-vm-tools.
2605
2606-commit dec55c31e7dcdbb747647123ad60cc2cde4e0635
2607+commit 378c193d4a57cfed14045ffed6ea641957ed18c7
2608 Author: Oliver Kurth <okurth@vmware.com>
2609-Date: Fri Sep 15 11:23:49 2017 -0700
2610+Date: Tue Feb 6 16:32:39 2018 -0800
2611
2612- Avoid loading resolutionSet when support for resolutionKMS available
2613-
2614- Loading resolutionSet with display NULL will cause a segmentation
2615- fault in vmtoolsd user process. This change only avoids the
2616- SEG fault. Still need to channel the resolution/topology request
2617- to correct channel presenting the capabilities.
2618+ Common header file change not applicable to open-vm-tools.
2619
2620-commit 4fe253f4e6234f3bb78b270c371d8fdba967ff0d
2621+commit ba83dcff6214190f8ed545401f2bfa27650bbf07
2622 Author: Oliver Kurth <okurth@vmware.com>
2623-Date: Fri Sep 15 11:23:49 2017 -0700
2624+Date: Tue Feb 6 16:32:39 2018 -0800
2625
2626- Common header file change; not applicable to open-vm-tools.
2627+ Common header file change not directly applicable to open-vm-tools.
2628
2629-commit 3a9fa9be672b582088c3219420b2dfcb37b60376
2630+commit fc922804318de417578fd08fab2e07c1d58e8de8
2631 Author: Oliver Kurth <okurth@vmware.com>
2632-Date: Fri Sep 15 11:23:49 2017 -0700
2633+Date: Tue Feb 6 16:32:39 2018 -0800
2634
2635- Formalize VThreadBase "Stable" and "Kernel" IDs
2636-
2637- Unrelated to open-vm-tools.
2638+ Update copyright year to 2018.
2639
2640-commit 932781290802e9c152b219c656d18ca03bf4df43
2641+commit ca39511ceb8e88254cad71e98cba5cbfff08a99d
2642 Author: Oliver Kurth <okurth@vmware.com>
2643-Date: Fri Sep 15 11:23:48 2017 -0700
2644+Date: Tue Feb 6 16:32:39 2018 -0800
2645
2646- lib/file: Less variation on file lock waits
2647+ UUID: Clean up UUID_PackText
2648
2649- The wait time are large enough that less variance will prevent too
2650- frequent polling. This is important due to the randomized waiting now.
2651+ Use size_t, not int.
2652
2653-commit ffc043963f8da7e83bc091262301876ce7016a76
2654+commit c358e5e181b95d872da9ffcc943cc147ae0584f8
2655 Author: Oliver Kurth <okurth@vmware.com>
2656-Date: Fri Sep 15 11:23:48 2017 -0700
2657+Date: Tue Feb 6 16:32:39 2018 -0800
2658
2659- Remove definition for "solaris12-64"
2660+ Changes to common header files; not applicable to open-vm-tools.
2661
2662-commit 964e7623701cd03bd4b8529abab0a083b94e8570
2663+commit 0ccc8b1a79bf76b9826c37b2133e5dbd4b9904dc
2664 Author: Oliver Kurth <okurth@vmware.com>
2665-Date: Fri Sep 15 11:23:48 2017 -0700
2666+Date: Tue Feb 6 16:32:38 2018 -0800
2667
2668- Change to shared header file unrelated to open-vm-tools.
2669+ Common header file change not applicable to open-vm-tools.
2670
2671-commit 24a6ab223b139fdc191b913d8d551ed61ca07e01
2672+commit 5c6f7b09d6865496036653360301092b8672675f
2673 Author: Oliver Kurth <okurth@vmware.com>
2674-Date: Fri Sep 15 11:23:48 2017 -0700
2675+Date: Tue Feb 6 16:32:38 2018 -0800
2676
2677- Change to shared header file unrelated to open-vm-tools.
2678+ guestOS identification: Tweak handling the LSB
2679+
2680+ The multi-standard handing code dealt with the LSB strictly. This
2681+ causes some issues with older distros that are not LSB compliant but
2682+ happened to work due to a specific behavior.
2683+
2684+ Return the LSB to "LSB and old way" and provide some specific coverage
2685+ of detaults to ensure coverage.
2686
2687-commit a6ce51f170a2073b5b39680c2526de9e4de865b2
2688+commit 2516f528e47722faa38868d99939c825f13c2bdb
2689 Author: Oliver Kurth <okurth@vmware.com>
2690-Date: Fri Sep 15 11:23:48 2017 -0700
2691+Date: Tue Feb 6 16:32:38 2018 -0800
2692
2693- Fix Atomic_SetBit64 being miscompiled when the bit argument is a constant.
2694+ Restore "ufs" to the list of known filesystems
2695+
2696+ Removing extraneous #ifdef VMX86_TOOLS - #endif
2697
2698-commit d7a7fca30e47414827528163a4c96145dcd6043e
2699+commit 3c453912325ead3f19b84fced65217608069ddfa
2700 Author: Oliver Kurth <okurth@vmware.com>
2701-Date: Fri Sep 15 11:23:48 2017 -0700
2702+Date: Tue Feb 6 16:32:38 2018 -0800
2703
2704- lib/include/sha1.h:
2705- - Clean up - change unnamed struct to "struct SHA1-CTX" in SHA1_CTX typedef.
2706+ Restore "ufs" to the list of known filesystems
2707+
2708+ A previous change, 5074636, to remove "ufs" from the kernel also removed
2709+ "ufs" from the known list of Linux filesystems. As a result, the "ufs"
2710+ filesystems on FreeBSD and Solaris VMs cannot be seen and therefore
2711+ no disk information is available in vmsvc/get.guest output.
2712
2713-commit 22b146ef9a291b9c4cd8a604de3e042cec886eda
2714+commit aa6502a057aec571a72b971cb13cf0e9d713cddc
2715 Author: Oliver Kurth <okurth@vmware.com>
2716-Date: Fri Sep 15 11:23:48 2017 -0700
2717+Date: Tue Feb 6 16:32:38 2018 -0800
2718
2719- lib/thread: Prune a little more
2720-
2721- Remove automatic VThread_SetName for unmanaged threads.
2722-
2723- Other minor removals and tweaks:
2724- - modify "safe" name in VThreadBase to use gettid or
2725- pthread_threadid_np if available
2726- - Move lib/thread name computation to child thread to remove dependency
2727- on VThreadID in parent.
2728- - Convert VThreadFreeID to VThreadFree (and avoid a lookup)
2729- - Move VThreadBase_ForgetSelf to VThreadDestroyThread to
2730- make VThreadHostDestroyThread straightforward.
2731- - The 'priority' field had become write-only after earlier cleanups
2732- to replace AdjustThreadPriority with SetThreadPriority. Remove it,
2733- and some dead comments mentioning it.
2734- - Remove unused 'signalNestCount' atomic.
2735- - Remove two unimplemented VThreadInt prototypes.
2736- - Remove a vacuously-true ASSERT in VThreadHostExitThread()
2737+ Update tools copyright to 2018
2738
2739-commit b1c4f77f80b8ecfe3c97bd8d14b42e8543b12303
2740+commit 5af33281a66ebf0c30ad15074f931f33bda0bc9d
2741 Author: Oliver Kurth <okurth@vmware.com>
2742-Date: Fri Sep 15 11:23:48 2017 -0700
2743+Date: Tue Feb 6 16:32:38 2018 -0800
2744
2745- Change to shared header file unrelated to open-vm-tools.
2746+ Common header file change not applicable to open-vm-tools.
2747
2748-commit 564668d513a4fdb595fd4440f4e640c752c24e12
2749+commit dc028e7bbb63865e1ae1c6262872e74c47c80d61
2750 Author: Oliver Kurth <okurth@vmware.com>
2751-Date: Fri Sep 15 11:23:48 2017 -0700
2752+Date: Tue Feb 6 16:32:38 2018 -0800
2753
2754- lib/file: Add a comment on why sleeps for file locks are randomized
2755-
2756- The randomization prevents lock cadence issues (thundering herds).
2757+ Common header file change that is not applicable to open-vm-tools.
2758
2759-commit 087e74c292fcad86afa08d6a21b88cb57ab3bc7e
2760+commit d55cc529267b0b385fc9d4453075d023c789e46f
2761 Author: Oliver Kurth <okurth@vmware.com>
2762-Date: Fri Sep 15 11:23:48 2017 -0700
2763+Date: Tue Feb 6 16:32:38 2018 -0800
2764
2765- Hgfs OSX Server: Reinstate checkpoint synchronization and process session
2766-
2767- First reinstate the server checkpoint synchronization routine by adding
2768- it into the table the HGFS server session callback table which is returned
2769- to the transports upon initialization. These transports will then call
2770- into the HGFS server when asked by the HGFS server manager which receives
2771- the check point synchronization calls.
2772-
2773- When processing the synchronization request for the operation type -
2774- freeze or thaw we must pass through the session information to the
2775- activation and deactivation calls into the file system change notification
2776- subsystem. These calls will require the session for register-unregister
2777- any active threads generating events. This change just plumbs through
2778- the session as the argument. Follow on changes will make use of the
2779- session argument passing it on to the event generating component.
2780+ Hgfs Server: replace duplicate function usage with a common function.
2781
2782- Bonus here is that we can delete an unwarranted global from the HGFS server.
2783- A to do comment is added to move the async globals into the HGFS server
2784- session object as they should be a per HGFS session and are useful only
2785- on a per session basis. No session then no need for them to be around and
2786- if the session does have asynchronous support then again will not be required.
2787- For example, if the transport does not support this behavior no need to
2788- check them.
2789+ This change simply replaces a duplicate function usage with a common
2790+ function and removes the duplicate one.
2791
2792-commit 774bfbf5d5752b22947dd975b14734c30aec6379
2793+commit ccdef7096a4782dd00b6f55695aff9c3f01cf4b5
2794 Author: Oliver Kurth <okurth@vmware.com>
2795-Date: Fri Sep 15 11:23:47 2017 -0700
2796+Date: Tue Feb 6 16:32:38 2018 -0800
2797
2798- Improve a comment
2799+ hostinfoPosix.c: Change a warning to a log message.
2800
2801-commit a7c6fce7191365c07b1e70abee314e18295b49c9
2802+commit 2321ff31fa671658ad0af3af22eef27e5d9af050
2803 Author: Oliver Kurth <okurth@vmware.com>
2804-Date: Fri Sep 15 11:23:47 2017 -0700
2805+Date: Tue Feb 6 16:32:38 2018 -0800
2806
2807- Clarify a comment. Spell out the units.
2808+ Switch IMC to use RpcChannel_SendOne instead of deprecated RpcOut_sendOne
2809+
2810+ Modify ./libDeployPkg/Makefile.am to build deploypkg module for
2811+ open-vm-tools correctlly.
2812
2813-commit 35683b97ced00c29b0e3f65ee50ec6740e143a8d
2814+commit d9f7c825cfbe075c3b643632419ff26a72628e41
2815 Author: Oliver Kurth <okurth@vmware.com>
2816-Date: Fri Sep 15 11:23:47 2017 -0700
2817+Date: Tue Feb 6 16:32:38 2018 -0800
2818
2819- lib/file: Use MIN macro
2820+ lib/file: Clean up a few things.
2821
2822-commit 9c13bf3fb45c4ce5711cedbde11272fd3dd39511
2823+commit b4ee6678c9dd8cdf4e144056545dd41ba0636085
2824 Author: Oliver Kurth <okurth@vmware.com>
2825-Date: Fri Sep 15 11:23:47 2017 -0700
2826+Date: Tue Feb 6 16:32:37 2018 -0800
2827
2828- lib/file: consistant usage of msec
2829+ hostinfoPosix.c: Pick up some review comments
2830+
2831+commit ce060ca498defdf08da4fac899dc623328d47a5d
2832+Author: Oliver Kurth <okurth@vmware.com>
2833+Date: Tue Feb 6 16:32:37 2018 -0800
2834+
2835+ GuestOS: Support the os-release standard
2836
2837- We now want msec to be at the end, to be consistant with our current
2838- usage.
2839+ While bringing up Amazon Linux as a guest, it was discovered that
2840+ Amazon Linux was not LSB compilant. The LSB standard defines a way
2841+ to uniquely determine which distro one is running on. Since our code
2842+ was based on the LSB standard, we made some changes to explicitly
2843+ detect Amazon Linux and handle it as a special case.
2844+
2845+ Amazon let us know that there is a "new" standard - os-release - which
2846+ they are compliant with. One must explicitly install Amazon Linux in a
2847+ special way to obtain the LSB compliance.
2848+
2849+ Researching the "new" standard, it turned out to not be that different
2850+ than the LSB standard. Further research showed that some distros (e.g.
2851+ Ubuntu) are releasing with both standards.
2852+
2853+ This change refactors the existing code, removes the explicit Amazon
2854+ Linux checking, and accepts the os-release standard. Amazon Linux then
2855+ "just falls out".
2856
2857-commit a2165e98d3edac4f0c395549bd12a905038f9e81
2858+commit 6bd88d82e943d691c4312e3f2e7cef1038af7a9c
2859 Author: Oliver Kurth <okurth@vmware.com>
2860-Date: Fri Sep 15 11:23:47 2017 -0700
2861+Date: Tue Feb 6 16:32:37 2018 -0800
2862
2863- lib/lock: msec consistancy
2864+ Reduce Vigor transport socket draining overhead
2865
2866- We want the "msec" at the end of variables. This improves readability
2867- and is consistant with the usage elsewhere.
2868+ A previous change in VigorPollImpl and asyncsocket to fix a memory
2869+ leak that causes a performance regression for parallel reconfiguration of
2870+ running VMs (the kind requiring FSR). During an FSR, the connection
2871+ between hostd and the source vmx would drop and hostd would then
2872+ reconnect to the destination vmx. One source of regression is that
2873+ the buffer has to be drained when a disconnect happens and the draining
2874+ logic may potentially unregister and re-register the recv callback
2875+ multiple times. This change adds an asyncsocket function specifically
2876+ for draining recv that reduces the manipulation of callback. It
2877+ reduces the regression by up to ~50% (the effect is more pronounced with
2878+ more VMs).
2879
2880-commit 8da9461f220ed391f60a78c4f0a9509c474f4d12
2881+commit de9b602664d91c54288b91a81f6a01d7cb927fce
2882 Author: Oliver Kurth <okurth@vmware.com>
2883-Date: Fri Sep 15 11:23:47 2017 -0700
2884+Date: Tue Feb 6 16:32:37 2018 -0800
2885
2886- lib/file: FileLockSleeper issues
2887+ atomic: add TestSetBitVector and TestClearBitVector functions
2888
2889- While waiting for a contended file lock, FileLockSleeper was using
2890- fixed values for how long to sleep between attempts. This can lead to
2891- a "thundering herd" of waiters - several waiters all on the same
2892- cadence. Randomize waiting to avoid any cadence.
2893+ Implement atomic set/clear bit from a byte array.
2894
2895- Waiting for a lock should wait no longer than the specified time. Fix
2896- This.
2897+ Also add missing "memory" constraint to non-atomic ClearBitVector()
2898+ and ComplementBitVector().
2899
2900-commit 174644096520c5cd6d26a4a9cf3d8e5a410af52a
2901+commit 17e9209aeb4f6d3a3535b7064916f3a25b985395
2902 Author: Oliver Kurth <okurth@vmware.com>
2903-Date: Fri Sep 15 11:23:47 2017 -0700
2904+Date: Tue Feb 6 16:32:37 2018 -0800
2905
2906- Fixing the UTF-8 locale dependency in CAF.
2907+ Tools Hgfs Server Plugin: fix logging of client redirector handling functions
2908
2909- CAF currently has hard dependency on UTF-8 locale which is
2910- resulting in Tools and CAF failures in environments without
2911- UTF-8 support. Modify the existing code to fallback to
2912- ANSI C locale if UTF-8 is not found.
2913+ Modify logging of client redirector handling functions for starting the client
2914+ redirector kernel component and reconnecting mapped drives at services start
2915+ up. This changes the level from warning to info as these messages are purely
2916+ informational and not warnings of unexpected events or conditions.
2917
2918-commit d3491185377ec39e8031b1ffb806fe781f329c1f
2919+commit 076b7201b61af9f3dcb36050ff37a8145a05d404
2920 Author: Oliver Kurth <okurth@vmware.com>
2921-Date: Fri Sep 15 11:23:47 2017 -0700
2922+Date: Tue Feb 6 16:32:37 2018 -0800
2923
2924- VThreadID: widen to uint64
2925+ Fix error reported by clang 6.0.0 - comparison 'int' <= 4294967295 is always true
2926
2927- Convert VThreadID to uint64.
2928+ Fix the logical constant compare warning/error in vixTools.c of the
2929+ vix plugin. Rewrite the continuous for loop to simply iterate from
2930+ zero to MAX_INT32.
2931
2932-commit de798a4a4ab0d09bb3c0366f383bf8a46bf7d194
2933+commit 7a58576e98e5bdb47fbe101c43b106ba77f2e811
2934 Author: Oliver Kurth <okurth@vmware.com>
2935-Date: Fri Sep 15 11:23:46 2017 -0700
2936+Date: Tue Feb 6 16:32:37 2018 -0800
2937
2938- TimeUtil_GetTimeOfDay reports incorrect time on Windows
2939+ Add VMware Tools 10.2.5 to vm_tools_version.h
2940
2941- The conversion from FILETIME to Unix time was off.
2942+ - Add tools version 10.2.5 as the first scheduled tools 10.2.x
2943+ update - TOOLS_VERSION_CHAINSAW_UPDATE1
2944+ - Corrected a typo in a macro name in an earlier tools version
2945+ definition.
2946
2947-commit 8ba9c76d322b24dc56b9bf51b018a0925f9f6d1d
2948+commit 13c49b85cebacea847d30c4e5a0b92fa7ea9dba8
2949 Author: Oliver Kurth <okurth@vmware.com>
2950-Date: Fri Sep 15 11:23:46 2017 -0700
2951+Date: Tue Feb 6 16:32:37 2018 -0800
2952
2953- Unify mapping tables between VMX and VIM guest OS keys
2954-
2955- There are multiple places that maintain their own tables
2956- mapping VMX guest OS keys to or from VIM guest OS keys.
2957- Unify them to make the situation a bit less cumbersome.
2958+ hostinfo: Identify Amazon Linux
2959
2960- Put the mapping table into guest_os_tables.h.
2961- The different sites use the mappings in different ways (some
2962- code wants the VIM guest OS keys as strings, whereas other
2963- code wants them as enum identifiers), so use preprocessor
2964- macros to extract the data.
2965+ Amazon Linux is not LSB compliant. Add a small amount of code such that
2966+ Amazon Linux can differentiated from all of other Linuxen and correctly
2967+ report its identifying data.
2968
2969-commit 211e99aad3da1a9c755e30bf4cf02667ff5480c4
2970+commit c5bc784da611ee929e0da7c20a410e03e6540613
2971 Author: Oliver Kurth <okurth@vmware.com>
2972-Date: Fri Sep 15 11:23:46 2017 -0700
2973+Date: Fri Jan 26 15:04:36 2018 -0800
2974
2975- Save errno after kill() fails, restore the saved errno after logging the error.
2976+ Set X11 as the backend for gtk3 of open-vm-tools
2977+
2978+ Open-vm-tools defaults to gtk3. For distros like Fedora 27, Wayland is
2979+ the default display server. With no restriction on the backend, plugins
2980+ will try to use Wayland as the backend of Gtk+3. As a result,
2981+ gdk_display_get_default() returns a Wayland display;
2982+ gdk_display_get_default_group() also returns a Wayland window. Applying
2983+ GDK_WINDOW_XID() on the Wayland window will result in the crash reported
2984+ on recent Linux releases that default to a Wayland display server.
2985+
2986+ As X11-specific code is widely used in tools plugins, a migratation to
2987+ Wayland in the short term is not possible. So, as a compromised solution,
2988+ plugins can be forced to run on XWayland, which is the compatible mode
2989+ of Wayland for legacy X11 clients.
2990+
2991+ gdk_set_allowed_backends() only applies when flag GTK3 is defined, and Gtk
2992+ version cwgreater than 3.10.
2993
2994-commit e1d6a45ccceb058eb428baca7d0b1a72c29c9fe5
2995+commit 98e0ab52c86b3a1d4fd38cec6913b1f5ba0f336c
2996 Author: Oliver Kurth <okurth@vmware.com>
2997-Date: Fri Sep 15 11:23:46 2017 -0700
2998+Date: Fri Jan 26 15:04:36 2018 -0800
2999
3000- Fix error introduced in strutil.c
3001+ hostinfo: More cleanup
3002+
3003+ Continue the prep for Amazon Linux.
3004
3005-commit 3c12e7db4c252e67a1f9a8e758408a0af387850c
3006+commit ce769ae4aa3a14810b418c044629f2d9dcb72a37
3007 Author: Oliver Kurth <okurth@vmware.com>
3008-Date: Fri Sep 15 11:23:46 2017 -0700
3009+Date: Fri Jan 26 15:04:36 2018 -0800
3010
3011- timeutil.c code cleanup.
3012+ hostinfo: More prep work for Amazon Linux support
3013+
3014+ Amazon Linux is not LSB compliant but it does have a file that is
3015+ much like an LSB compliant release (name=value pairs). Make the names
3016+ of the structures generic... the logic can be reused for Amazon Linux
3017+ in a follow up change.
3018+
3019+ Fix up some function headers.
3020
3021-commit 324bec1a2057ceb7d37469709ed2b8db2ca6348e
3022+commit 7fce1b8f9ec60c27865717f536a4e440587500ad
3023 Author: Oliver Kurth <okurth@vmware.com>
3024-Date: Fri Sep 15 11:23:46 2017 -0700
3025+Date: Fri Jan 26 15:04:36 2018 -0800
3026
3027- The check for overflow in StrUtil_SafeStrcat needs work.
3028+ Refactor HostinfoOSData...
3029
3030- Might as well avoid protential overflow while also checking for
3031- "insane" string lengths.
3032+ Refactor the HostinfoOsData in several smaller and simpler routines.
3033+ This will make it easier to maintain in the future (it was pretty
3034+ unwieldy already) and easier to add the logic for a non-LSB Linux.
3035+
3036+ More refactoring and actually adding the Amazon recognition code will
3037+ follow.
3038
3039-commit 9363088bda0da2ff1798fb0ac39117054cc83421
3040+commit b2b71c7995f4389cd7a9899dca8aa29bd9fa9c6a
3041 Author: Oliver Kurth <okurth@vmware.com>
3042-Date: Fri Sep 15 11:23:46 2017 -0700
3043+Date: Fri Jan 26 15:04:36 2018 -0800
3044
3045- Common source file changes that are not applicable to open-vm-tools.
3046+ Common header file change not applicable to open-vm-tools.
3047
3048-commit 7f80d52ddbe15f33b666eb429e64852becff1696
3049+commit 40bcee40c892cc7de92825cce1226576d6eab66c
3050 Author: Oliver Kurth <okurth@vmware.com>
3051-Date: Fri Sep 15 11:23:46 2017 -0700
3052+Date: Fri Jan 26 15:04:35 2018 -0800
3053
3054- Remove obsolete product version definitions
3055+ Changes to common source files:
3056+
3057+ lib/asyncsocket/asyncsocket.c: Use ASSERT instead of VERIFY when removings
3058+ poll callback in AsyncSocketCancelRecv.
3059+ lib/include/vm_product_versions.h: Change not applicable to open-vm-tools.
3060
3061-commit 3b63e7702a0c945bd9a87b24ef5cfd54574227a2
3062+commit 757833d601541e9bde24571fa22e669900e98a7e
3063 Author: Oliver Kurth <okurth@vmware.com>
3064-Date: Fri Sep 15 11:23:46 2017 -0700
3065+Date: Fri Jan 26 15:04:35 2018 -0800
3066
3067- Don't call FreeLibrary with NULL.
3068+ Change the glibc constraint to 2.11 from 2.12.
3069
3070- According to the documentation and annotations of FreeLibrary, NULL is
3071- not a legal value to pass. All other calls to FreeLibrary are
3072- correctly handled.
3073+ Earlier, we made a change to stop building open-vm-tools
3074+ for LINUX systems with glibc < 2.12 But SLES 11 SP4 which is
3075+ supported comes with glibc 2.11.3 The check will
3076+ block SLES 11 SP4 from moving to OVT 10.2.x To fix it, this change
3077+ relaxes the glibc constraint to 2.11.
3078
3079-commit d8c55cda2442b948d12de3c542c3c30c2daa9926
3080+commit 75825dcc7548d779f23c4c93429736d690d86a45
3081 Author: Oliver Kurth <okurth@vmware.com>
3082-Date: Fri Sep 15 11:23:46 2017 -0700
3083+Date: Fri Jan 26 15:04:35 2018 -0800
3084
3085- Common header file change; not applicable to open-vm-tools.
3086+ Hgfs: remove Hgfs VMCI transport header from linux open-vm-tools
3087+
3088+ Linux Hgfs clients do not use the VMCI module for a transport and have
3089+ since migrated to a FUSE implementation. Therefore we do not need to
3090+ include the Hgfs VMCI transport header file.
3091
3092-commit 765d498b9aadd37a72cd3a0f79f67dd6a878ef90
3093+commit 09b6621863ece170e4fc6b617f0bc1e3d17867f2
3094 Author: Oliver Kurth <okurth@vmware.com>
3095-Date: Fri Sep 15 11:23:45 2017 -0700
3096+Date: Fri Jan 26 15:04:35 2018 -0800
3097
3098- Common header file change; not applicable to open-vm-tools.
3099+ Hgfs Server: fix error result for new dir creation in the virtual folder
3100+
3101+ The Hgfs server code detects when a client tries to create a new folder in the
3102+ virtual folder containing the VMware Shares. This is not allowed as only the
3103+ host can add new Shares which appears in this folder. The current error code
3104+ returned to the client in these cases is access denied. This is only correct
3105+ when the new folder does not collide with an existing share. This stops clients
3106+ treating the virtual folder as a regular read/write physical folder. However,
3107+ for the case where the name collides, the access denied error is not correct,
3108+ as it does not tell the client the folder already exists. This causes some
3109+ applications to fail as they expect to see this error if the path component
3110+ exists as that is okay and expected. At this point the application will continue
3111+ to traverse the path and ensure the next component exists or if not create that.
3112+
3113+ To ensure that applications don't prematurely fail and can test that the share
3114+ still exists in the path the Hgfs server should return HGFS_ERROR_FILE_EXIST
3115+ and leave HGFS_ERROR_ACCESS_DENIED for all other cases.
3116
3117-commit e5fd332b6ce8e712dffa7d8e828e3e4a47a3f063
3118+commit fb3630fb0d7846b9f06f0c506c38eadf0cfbfa81
3119 Author: Oliver Kurth <okurth@vmware.com>
3120-Date: Fri Sep 15 11:23:45 2017 -0700
3121+Date: Fri Jan 26 15:04:35 2018 -0800
3122
3123- Common header file change: not applicable to open-vm-tools.
3124+ Hgfs: get rid of vmware_pack_begin and vmware_pack_end header files
3125+
3126+ Get rid of vmware_pack_begin and vmware_pack_end header files and
3127+ replace with the pragma pack and pop. This code currently only
3128+ affects Windows clients and the VMX HGFS VMCI transport.
3129
3130-commit 84cf06912d4060ce29fd7a3b765eb34917dd1501
3131+commit f7c551253400e7f153cc696b5b121cd6e0d4ebd8
3132 Author: Oliver Kurth <okurth@vmware.com>
3133-Date: Fri Sep 15 11:23:45 2017 -0700
3134+Date: Fri Jan 26 15:04:35 2018 -0800
3135
3136- Remove logic for unsupported versions of macOS.
3137+ GOSTable: Amazon Linux 2
3138
3139- We no longer support macOS 10.4-10.7. Remove the old logic that supported
3140- these versions.
3141+ Add the basic support for Amazon Linux 2. The distro identification
3142+ code will follow in a separate change.
3143
3144-commit bccd28961d9c23271126fee1a2b45c9acd698107
3145+commit c8f7c09d106884c19100077fdffe8f11b80d6bdb
3146 Author: Oliver Kurth <okurth@vmware.com>
3147-Date: Fri Sep 15 11:23:45 2017 -0700
3148+Date: Fri Jan 5 14:47:15 2018 -0800
3149
3150- Create symlink for vmware-user
3151-
3152- When the vmtoolsd user daemon receives a SIGUSR2, it restarts itself
3153- by executing 'vmware-user' and terminates. This is used on upgrades,
3154- to make sure the current version of vmtoolsd is running.
3155-
3156- In the tar installer, /usr/bin/vmware-user is a symlink to
3157- vmware-user-suid-wrapper. Unfortunately, that symlink was not installed
3158- by open-vm-tools.
3159-
3160- Package maintainers should send this signal to the vmtoolsd user
3161- process when open-vm-tools is updated.
3162+ Changes to common header files not applicable to open-vm-tools
3163
3164-commit 4e7e626ceef413b02c3831cc25f70be970bc9829
3165+commit 5939eaefbad529e811c64b46d93ddcce56615db8
3166 Author: Oliver Kurth <okurth@vmware.com>
3167-Date: Fri Sep 15 11:23:45 2017 -0700
3168+Date: Fri Jan 5 14:47:15 2018 -0800
3169
3170- AsyncSocket:
3171- - Fix issue where the listening socket becomes bad and the callback
3172- function is invoked unexpectedly.
3173- - Change not directly applicable to open-vm-tools.
3174+ Common header file change not applicable to open-vm-tools
3175
3176-commit c85fe685b518311d3fa1f2ce44b6c7ba38500d2d
3177+commit 55f323265bb7aee605a40f289f9c1a8ba7be56c6
3178 Author: Oliver Kurth <okurth@vmware.com>
3179-Date: Fri Sep 15 11:23:45 2017 -0700
3180+Date: Fri Jan 5 14:47:15 2018 -0800
3181
3182- err.h: Add missing include
3183-
3184- err.h is missing any include that would provide a definition for DWORD.
3185- Fix by including vm_basic_defs.h (which includes windows.h)
3186+ Common header file change not applicable to open-vm-tools
3187
3188-commit 05d0f730fb032f80de169318d90fb973012a9d93
3189+commit d42e5bf76689c820dfb84d681c007c96197f6182
3190 Author: Oliver Kurth <okurth@vmware.com>
3191-Date: Fri Sep 15 11:23:45 2017 -0700
3192+Date: Fri Jan 5 14:47:15 2018 -0800
3193
3194- Common source file change: lib/include/strutil.[ch]
3195- - Add function StrUtil_GetLastItem() and static functions StrUtilStrcmp(),
3196- StrUtilStrncmp(), StrUtilStrcasecmp(), StrUtilStrncasecmp(),
3197- StrUtilHasListItem() and StrUtilRemoveListItem().
3198+ Common header file change not applicable to open-vm-tools.
3199
3200-commit 836575d370458bd2c34324f921d561c551a6b0d1
3201+commit 90819beef53238ba108be35cba93329b9d160de7
3202 Author: Oliver Kurth <okurth@vmware.com>
3203-Date: Fri Sep 15 11:23:45 2017 -0700
3204+Date: Fri Jan 5 14:47:15 2018 -0800
3205
3206- Remove N_PLAT_NLM (NetWare)
3207+ Get rid of convertutf and bsd_printf for all non-Win VMware Tools
3208
3209- Long ago, we supported NetWare. That's long since gone, but a few
3210- of the macros have managed to survive fumigation since. This removes
3211- all such macros.
3212+ The MsgFmt_* functions are referenced in a few utilities
3213+ related to VMware Tools. This change replaces the MsgFmt_*
3214+ with a stub. This also affects the Windows version.
3215
3216-commit 237cb3a758d23355f559756ce159f59f6dea8c5c
3217+commit e5e478d46f047aa8f22b427b9d4505581af9915a
3218 Author: Oliver Kurth <okurth@vmware.com>
3219-Date: Fri Sep 15 11:23:45 2017 -0700
3220+Date: Fri Jan 5 14:47:15 2018 -0800
3221
3222- Update the open source license files for Tools.
3223+ Fix the SSL/AsyncSocket "SSL_shutdown:shutdown while in init" problem
3224+
3225+ QE regression tests have caught a bug in the bora SSL/AsyncSocket
3226+ layer. A normal SSL connection could be abnormally terminated by some
3227+ other random connections.
3228+
3229+ Seems a common bug of the SSL usage according to the link below.
3230+ VMware is not the first one to hit it. :-)
3231+ https://marc.info/?l=openssl-users&w=4&r=1&s=shutdown+while+in+init&q=b
3232+
3233+ The cause is that the SSL error queue was not cleared before
3234+ calling the SSL IO functions like SSL_write,read,connect,accept.
3235+ Refer to the man page of SSL_get_error, Paragraph 2 of the Description.
3236+ Fixed the problem by adding addtional call to clear the error queue.
3237+
3238+ Found another problem that the system error is not preserved between
3239+ where it is set after the SSL IO call and the use of it to determine
3240+ whether to retry the SSL IO. This is probably due to tools has its
3241+ own logging which does not preserve the system error number.
3242+ Fixed the logging.
3243
3244-commit b51fee38c87ecccd7774107e22b85f0eea1a7309
3245+commit 8a9c43698ebcc858314ec1c041d24b8e8d1372cf
3246 Author: Oliver Kurth <okurth@vmware.com>
3247-Date: Fri Sep 15 11:23:45 2017 -0700
3248+Date: Fri Jan 5 14:47:15 2018 -0800
3249
3250- Revert previous commit.
3251+ vm_basic_types.h: use stdint.h a little more.
3252+
3253+ Now that enough of the builds are C++11, let's make the common case
3254+ use the <stdint.h> header to define the intNN types directly
3255+ from language-standard intNN_t types, and treat pre-C99/C++98
3256+ code as the special case.
3257+
3258+ This also provides some clarity about the last __STRICT_ANSI__
3259+ macros in this file. One was related to usage of 'long long' in
3260+ strict c90 mode and has been replaced with a comment indicating that
3261+ 64-bit-variable compiler extensions are mandatory (strict c90 mode is
3262+ not allowed via the headers). The other related to X11 headers; those
3263+ headers have been examined to understand the workarounds needed and
3264+ the exact scenario(s) that are problematic have been commented (turns
3265+ out FreeBSD had nothing to do with the problem).
3266+
3267+ Finally, all the Bool-related definitions have been moved and merged
3268+ to a single location NOT at the top of the file.
3269+
3270+ Net effects of this change:
3271+ - non-linux C++11 (so Windows+Mac) now uses stdint.h
3272+ - exact set of macros involved in declaring Bool is reduced
3273+ - compiling with c90 mode really will break now (use gnu90 instead).
3274
3275-commit f68ecb12ebc92592463c0cdcd97f50bc5abb8ea2
3276+commit 2674b02449875b04889be00400f52351105ab25f
3277 Author: Oliver Kurth <okurth@vmware.com>
3278-Date: Fri Sep 15 11:23:44 2017 -0700
3279+Date: Fri Jan 5 14:47:15 2018 -0800
3280
3281- lib/misc: StrUtil_SafeStrcat length overflow checking
3282-
3283- The check for overflow in StrUtil_SafeStrcat needs work.
3284+ Consume vmx headear files in bora tree instead of gosc's own copy
3285
3286- Might as well avoid protential overflow while also checking for
3287- "insane" string lengths.
3288+ 1. Consuming header files from bora/vmx instead of gosc/vmx
3289+ 2. Deprecated "gosc/vmx/public/toolsdDeployPkg.h",
3290+ use "bora/guestABI/include/vmware/guestrpc/deploypkg.h" instead.
3291+ Combined macro definition to the new header file and modified
3292+ reference accordingly.
3293+ 3. Modified makefile for open-vm-tools to consume new header file,
3294+ removed old header file staging in open-vm-tools.stage
3295
3296-commit ecdc55d43ab00c0a0454af1bc15a8b215f086c55
3297+commit bd018012a08579e89209e23b69963937210e5182
3298 Author: Oliver Kurth <okurth@vmware.com>
3299-Date: Fri Sep 15 11:23:44 2017 -0700
3300+Date: Fri Jan 5 14:47:15 2018 -0800
3301
3302- lib/thread: Change VThread_CreateThread prototype
3303-
3304- Change the VThread_CreateThread prototype from this:
3305+ Common header file change not applicable to open-vm-tools
3306+
3307+commit 36929119b9e28df8e267c49b5661354253439215
3308+Author: Oliver Kurth <okurth@vmware.com>
3309+Date: Fri Jan 5 14:47:15 2018 -0800
3310+
3311+ Remove some __STRICT_ANSI__ guards in vm_basic_types.h
3312
3313- VThreadID VThread_CreateThread(void (*fn)(void *), void *data,
3314- VThread tid, const char *name);
3315- to this:
3316+ Some time in the distant past, these guards were needed to
3317+ work around... something. (Probably, it was that 'long long'
3318+ is not a valid type in strict c90 mode). Note that we don't
3319+ use c90 mode, we only use gnu90 or c99.
3320
3321- Bool VThread_CreateThread(void (*fn)(void *), void *data,
3322- const char *name, VThread *tid);
3323+ This ends up being relevant because for C++ we are indeed
3324+ using -std=c++11 (which implies __STRICT_ANSI__). The Linux/C++
3325+ section of this file thus had duplicate definitions (which I am
3326+ now removing) to work around the gap.
3327
3328- The new prototype returns essentially the same information, with
3329- one important advancement: we can contractually guarantee the 'tid'
3330- field is populated BEFORE the child thread starts. This neatly
3331- avoids all sorts of interesting race conditions where the child
3332- starts running before the CreateThread function passes back its
3333- return value. This style of design is preferred by operating
3334- systems (see Posix pthread_create, Win32 CreateThread).
3335+ Quick cheat sheet for -std= values:
3336+ - c90 := __STRICT_ANSI__, no long long type
3337+ - gnu90 := c90 + gcc extensions, has long long type
3338+ - c99 := __STRICT_ANSI__, has long long type (defined in c99)
3339+ - c++11 := __STRICT_ANSI__, has long long type (defined in C++11)
3340
3341-commit 998f79aaf08b7d1f94693441a71c7f8dba4be34c
3342+commit 6b1ef0ef99f34011da3f5383414eeedf81c59d3b
3343 Author: Oliver Kurth <okurth@vmware.com>
3344-Date: Fri Sep 15 11:23:44 2017 -0700
3345+Date: Fri Jan 5 14:47:15 2018 -0800
3346
3347- Don't try to use broken RPC channel
3348+ open-vm-tools: fix finding C++ compiler for cross-compiling
3349
3350- Make sure RPC channel exists before trying to use it.
3351+ Patch contributed by Andrew Stormont (andy-js) on github:
3352+ https://github.com/vmware/open-vm-tools/pull/206 and
3353+ https://github.com/vmware/open-vm-tools/issues/92.
3354
3355-commit 5c3e95565dc086143e1311e53f0b5cacacca8233
3356+commit df18c2c2c3e7dde4478ee68a5f4a96600a3d07a2
3357 Author: Oliver Kurth <okurth@vmware.com>
3358-Date: Fri Sep 15 11:23:44 2017 -0700
3359+Date: Fri Jan 5 14:47:14 2018 -0800
3360
3361- Check for Xen, VirtualPC etc., only if VMware not detected
3362+ Allow copying of object policy within the same container
3363
3364- This is a workaround to avoid random vmtoolsd crashes when running
3365- on a VMware VM. This fix ensures that we check for Xen and VirtualPC only
3366- if we haven't already detected a VMware hypervisor.
3367+ ObjLib_CloneExtParams is currently not allowing copying of policy from
3368+ parent to child/clone object on VSAN. This is because the copy policy
3369+ check is based on unique filesystem ID, which will be different for
3370+ parent and child on VSAN because they will mostly be created on same
3371+ container but different namespace. This change uses VCFS root instead
3372+ of namespace UUID to make the comparison on VSAN.
3373+
3374+ Bonus fix: File_FullPath is now fixed to work for any combination of
3375+ ancestor path being present. Currently it only works if either the
3376+ given path exists, or when only the last component of the path does
3377+ not exist. And since this fix relies on finding the VCFS root of both
3378+ parent and child (parent is present but child is not),
3379+ ObjLibPathToVCFSRoot has been modified to rely on File_FullPath in
3380+ addition to Util_GetCanonicalPath if the path does not exist.
3381
3382-commit 8dac3e7b85c8c19168c89ddae32d2e99c2b693c5
3383+commit a678f3ea9f6de366b3b3de2f99956d93d2216b08
3384 Author: Oliver Kurth <okurth@vmware.com>
3385-Date: Fri Sep 15 11:23:44 2017 -0700
3386+Date: Fri Jan 5 14:47:14 2018 -0800
3387
3388- Change to shared header file unrelated to open-vm-tools.
3389+ Correction to previous change for Solaris11_64 GOS.
3390
3391-commit 5799596b11f1a907a35549952812bd20c48a84d5
3392+commit 74eb0c942f78f775c9de2bfd0e4f9970a8cded51
3393 Author: Oliver Kurth <okurth@vmware.com>
3394-Date: Fri Sep 15 11:23:44 2017 -0700
3395+Date: Fri Jan 5 14:47:14 2018 -0800
3396
3397- strutil.c: code clean up
3398+ Properly classify Solaris 11-64 as 64-bit
3399
3400-commit d2321f07f86157886bbfa96c05c5bf4598151696
3401+commit 47e604c2dba131c13300fe15bf4ad69d5b996674
3402 Author: Oliver Kurth <okurth@vmware.com>
3403-Date: Fri Sep 15 11:23:44 2017 -0700
3404+Date: Mon Dec 4 16:27:21 2017 -0800
3405
3406- Atomic_CMPXCHG64: pass by value and remove gcc-2.96-isms
3407+ Common header file change; not applicable to open-vm-tools.
3408
3409-commit e2247e5ba1830c5ed70153027df4834285cd1041
3410+commit 584aa9f307c85b07fa8adaf113e87cc3c200cca9
3411 Author: Oliver Kurth <okurth@vmware.com>
3412-Date: Fri Sep 15 11:23:44 2017 -0700
3413+Date: Mon Dec 4 16:27:21 2017 -0800
3414
3415- Revert the previous commit.
3416+ Common header file change; not applicable to open-vm-tools.
3417
3418-commit 42ac2a1eca59453870d8f09b83948f3c04c559c3
3419+commit 976e505b4ad5233f4eb97c7e09be63f6b0662fc7
3420 Author: Oliver Kurth <okurth@vmware.com>
3421-Date: Fri Sep 15 11:23:44 2017 -0700
3422+Date: Mon Dec 4 16:27:21 2017 -0800
3423
3424- Get rid of convertutf and bsd_printf for all non-Windows Tools
3425-
3426- Eliminate the use of convertutf8.c for all non-Windows Tools.
3427-
3428- The MsgFmt_* functions are referenced in a few utilities
3429- related to VMware Tools. This change replaces the MsgFmt_*
3430- with a stub. This also affects the Windows version.
3431+ Common header file change; not applicable to open-vm-tools.
3432
3433-commit 8484528eef9106be5a58885b29083a8622bcdc76
3434+commit 96f90f19e87cfb9b1dd62d30f4b88333d973bb90
3435 Author: Oliver Kurth <okurth@vmware.com>
3436-Date: Fri Sep 15 11:23:44 2017 -0700
3437+Date: Mon Dec 4 16:27:21 2017 -0800
3438
3439- fileIO.h: Clean up some comments
3440-
3441- Make the comment style consistent
3442+ open-vm-tools: add missing copyright headers
3443
3444-commit 9fbb5a9c0eb6aa1571689c1b960ab7acf7cb7b19
3445+commit 124c6437b0fcac3e65a7748f336e8b47d9528767
3446 Author: Oliver Kurth <okurth@vmware.com>
3447-Date: Fri Sep 15 11:23:44 2017 -0700
3448+Date: Mon Dec 4 16:27:21 2017 -0800
3449
3450- lib/file: support POSIX O_CLOEXEC
3451-
3452- On POSIX systems add support for O_CLOEXEC - close the file descriptor
3453- if the program does a variant of the exec system call.
3454+ Common header file change; not applicable to open-vm-tools.
3455
3456-commit f5f0d2872ff77a586a24a8959a74e85cbf30654e
3457+commit 11ff20501da5a4a4a6bcc05797b0129462cafc95
3458 Author: Oliver Kurth <okurth@vmware.com>
3459-Date: Fri Sep 15 11:23:43 2017 -0700
3460+Date: Mon Dec 4 16:27:21 2017 -0800
3461
3462- Hgfs Server: Fix snapshot synchronization callback
3463-
3464- Currently when snapshots occur, the VMX calls the HGFS server
3465- manager synchronization callback to notify the Hgfs server to
3466- freeze or thaw the Hgfs file IO activity. First, this Hgfs
3467- server synchronization callback is called regardless of the
3468- Hgfs Shared folders feature and server is enabled or not.
3469- Consequently, the Hgfs server callback lamely uses a global
3470- variable to track the server state just for this call and
3471- returns without doing anything if not initialized.
3472- Second, the HGFS server now requires the transport connection
3473- in order to extract the Hgfs session as the file notification
3474- component requires the session to allow its event generating
3475- thread to callback to the server to register and unregister
3476- through the transport which uses the PhysMem APIs.
3477-
3478- This change fixes:
3479- - call the Hgfs server only if Shared Folders and the server
3480- are enabled
3481- - call through the channel manager and channel transport to
3482- the Hgfs server
3483- - Hgfs server session callback table is extehded with a server
3484- quiesce callback.
3485- - HgfsServerSessionQuiesce callback now replaces the old
3486- HgfsServer_Quiesce exported API.
3487- - Make the quiesce callback use an enum to the thaw-freeze op
3488- instead of a bool
3489- - remove the Hgfs server initialized global now it is not required
3490-
3491- The tools implementation of the Hgfs server code does not use this
3492- API and thus the guest Hgfs manager and transport channel do not
3493- implement any code which will use the session quiesce callback.
3494+ Common header file change; not applicable to open-vm-tools.
3495
3496-commit 4dbe96f4970bd8878bfe3da2b2ed46c9c4ccf099
3497+commit 3dc2785d95c6b6ca42161c270fc9b3f17764ff2d
3498 Author: Oliver Kurth <okurth@vmware.com>
3499-Date: Fri Sep 15 11:23:43 2017 -0700
3500+Date: Mon Dec 4 16:27:21 2017 -0800
3501
3502- FreeBSD: Use the "dhclient" command to renew a DHCP IP address.
3503-
3504- On FreeBSD, "/etc/rc.d/netif" is sufficient to stop a network interface
3505- when suspending a VM. When resuming a VM, DHCP configured interfaces
3506- must be restarted with "/etc/rc.d/dhclient".
3507-
3508- This fix is courtesy of Steve Wills, maintainer of open-vm-tools on
3509- FreeBSD, and Shuai Wang.
3510-
3511- Pull request: https://github.com/vmware/open-vm-tools/pull/142
3512+ Common header file change; not applicable to open-vm-tools.
3513
3514-commit 27a9808452e78dfb76234c8c8c983ec3ccd04dc0
3515+commit 525f5824a48d8856ec30250d73a99da9fea2c39f
3516 Author: Oliver Kurth <okurth@vmware.com>
3517-Date: Fri Sep 15 11:23:43 2017 -0700
3518+Date: Mon Dec 4 16:27:21 2017 -0800
3519
3520- Add utilZero.h to open-vm-tools
3521+ Common header file change; not applicable to open-vm-tools.
3522
3523-commit 7bffaf26f46a28893e07df2a46bfdb612b8a15c2
3524+commit fe6997afdc10d3bd7396c7dea7417523851166d6
3525 Author: Oliver Kurth <okurth@vmware.com>
3526-Date: Fri Sep 15 11:23:43 2017 -0700
3527+Date: Mon Dec 4 16:27:20 2017 -0800
3528
3529- Remove memory zero related functions from util.h
3530-
3531- Add a new header utilZero.h
3532+ Update the Tools-10.2.0 GA Open Source License Files.
3533
3534-commit 88358a74766f2302f85d4e614a07fd07dbed9a37
3535+commit 9ac30cc60efd96556df21e87d5e8a42c7057fc95
3536 Author: Oliver Kurth <okurth@vmware.com>
3537-Date: Fri Sep 15 11:23:43 2017 -0700
3538+Date: Mon Dec 4 16:27:20 2017 -0800
3539
3540- Log xmlsec1 version details
3541-
3542- For better debugging of open-vm-tools, log the xmlsec1 version info.
3543+ RpcVMX: Report driver name and driver version to vmx to store the key-value in
3544+ GuestVars, and write a log in vmware.log using RpcVMX_Log.
3545
3546-commit 21dc0516201085e760d831d187b5232acf3a17d0
3547+commit 1667bc143164a6709debca423e4be0241e3275db
3548 Author: Oliver Kurth <okurth@vmware.com>
3549-Date: Fri Sep 15 11:23:43 2017 -0700
3550+Date: Mon Dec 4 16:27:20 2017 -0800
3551
3552- Hgfs Server: Fix a memory leak on server exit not destroying the shares
3553-
3554- This change fixes a memory leak on server exit not destroying the shares.
3555- The list of shares is not destroyed and left.
3556+ GuestInfo: skip check for shrinkable disk when gathering disk info
3557
3558- Fix this at the Hgfs server tear down by calling the shares reset with an
3559- empty list which will cause all shares to be treated as stale and so deleted.
3560+ Some Linux OSes may have a non-existing device mounted to a filesystem,
3561+ for example Photon OS has the root file system mounted from
3562+ /dev/root, which does not exist. The wiper library does a check
3563+ for a shrinkable disk, and this fails. This change skips the check
3564+ when gathering data for diskinfo, but leaves it intact for
3565+ other disk wiper purposes. Information from read-only flesystems
3566+ will also be reported.
3567
3568-commit cec1221e1a48db9e127ad271d6e7ddfc7fe27dce
3569+commit 35b115033acb5c65e22bd4e44b90d6d69a6815c6
3570 Author: Oliver Kurth <okurth@vmware.com>
3571-Date: Fri Sep 15 11:23:43 2017 -0700
3572+Date: Mon Dec 4 16:27:20 2017 -0800
3573
3574- Change to shared header file unrelated to open-vm-tools.
3575+ FileIO: Add customizable privileged file opener for Apple. The change is
3576+ not applicable to open-vm-tools.
3577
3578-commit a11b7dda01aaefa63f57cbe2f15352c06f2c55eb
3579+commit eb8456de3ddb41ecc7155c447e4bac17ca440a5d
3580 Author: Oliver Kurth <okurth@vmware.com>
3581-Date: Fri Sep 15 11:23:43 2017 -0700
3582+Date: Mon Dec 4 16:27:20 2017 -0800
3583
3584- CnP formatted text doesn't keep text format in Fedora 25
3585-
3586- In Fedora24, the selection target name for rtf is text/richtext.
3587- In Fedora25, the selection target name for rtf is changed to text/rtf,
3588- which Tools did not support.
3589-
3590- Add support for the new selection target name "text/rtf".
3591+ Make AutoCPtr's constructor explicit to make it more obvious when
3592+ pointer ownership is transferred. (This also matches std::auto_ptr.)
3593
3594-commit 99ee155b5923cc036c7412b494c36e7d7dd38f50
3595+commit 29c40dee7848e52437b5dab2ed466771a15df13b
3596 Author: Oliver Kurth <okurth@vmware.com>
3597-Date: Fri Sep 15 11:23:43 2017 -0700
3598+Date: Thu Nov 30 15:38:04 2017 -0800
3599
3600- Support building open-vm-tools only for FreeBSD 10 and later.
3601-
3602- Implemented a check for FreeBSD version and abort if the
3603- detected version is less than 10.
3604+ Make logfiles readable only by admin/root.
3605
3606-commit 6091407c4a7e191925bb1b668a99df4ca7e2fab5
3607+commit 989d96498a370034423515d3818fd02749677097
3608 Author: Oliver Kurth <okurth@vmware.com>
3609-Date: Fri Sep 15 11:23:43 2017 -0700
3610+Date: Thu Nov 30 15:38:04 2017 -0800
3611
3612- Stop building open-vm-tools for LINUX systems with glibc < 2.12.
3613-
3614- Implemented a check for glibc version and abort if the detected
3615- version is lesser than 2.12 (This affects RHEL5 and older generations).
3616-
3617- Implemented a config switch '--disable-glibc-check', which when specified,
3618- will skip checking for compatible glibc version.
3619-
3620- Modified the tools-pkg.make file to specify --disable-glibc-check
3621- while executing "./configure" for open-vm-tools.
3622-
3623- Note: glibc check is done only for Linux systems.
3624+ Common header file change not applicable to open-vm-tools.
3625
3626-commit 94509955865e6bef7818675761d6dbb9d83df6e5
3627+commit c4387fa58c21a0174a9cd6b053e565aea2c4870f
3628 Author: Oliver Kurth <okurth@vmware.com>
3629-Date: Fri Sep 15 11:23:43 2017 -0700
3630+Date: Thu Nov 30 15:38:04 2017 -0800
3631
3632- Change to shared header file unrelated to open-vm-tools.
3633+ Common header file change not applicable to open-vm-tools.
3634
3635-commit 888d4a7a8394e4391b9abb09b3884f7e1d5971b9
3636+commit e2f15a777d241f468f5ca2bc0b608f3ecb71fc6a
3637 Author: Oliver Kurth <okurth@vmware.com>
3638-Date: Fri Sep 15 11:23:42 2017 -0700
3639+Date: Thu Nov 30 15:38:04 2017 -0800
3640
3641- Hgfs Server: Remove the register share callback and usage part 2
3642-
3643- Now the function is not being called at all it is time to remove
3644- it along with the callback table entry for it.
3645+ Common header files change not applicable to open-vm-tools.
3646
3647-commit ec6c1f40fb15ffb0d8d6658b9a99c21c706ccb59
3648+commit d3c3a4d3e9d97e09b07018df2dccb4b4b2c4dd1b
3649 Author: Oliver Kurth <okurth@vmware.com>
3650-Date: Fri Sep 15 11:23:42 2017 -0700
3651+Date: Thu Nov 30 15:38:04 2017 -0800
3652
3653- Dynamic socket options API for async sockets
3654- lib/asyncsocket/asyncsocket.c:
3655- lib/asyncsocket/asyncSocketInterface.c:
3656- lib/asyncsocket/asyncSocketVTable.h:
3657- lib/include/asyncsocket.h:
3658- - Add AsyncTCPSocketSetOption(), AsyncTCPSocketGetOption() and
3659- AsyncSocket_EstablishMinBufferSizes functions.
3660- - Remove/deprecate specific option set functions to be subsumed
3661- by ->setOption().
3662- - ->useNodelay() (TCP_NODELAY), ->setTCPTimeouts (3x TCP_... options),
3663- ->setBufferSize (SO_{SND|RCV}BUF), ->setSendLowLatencyMode() (non-native
3664- option regarding buffering/callback behavior).
3665-
3666- lib/rpcIn/rpcin.c:
3667- services/plugins/grabbitmqProxy/grabbitmqProxyPlugin.c:
3668- - replace AsyncSocket_SetBufferSizes() calls with
3669- AsyncSocket_EstablishMinBufferSizes() calls.
3670-
3671- Common header file change: not applicable to open-vm-tools.
3672+ Common header file change that is not applicable to open-vm-tools.
3673
3674-commit 63b5e3c8138c8d8561f2be8391ac3dc062e6afa1
3675+commit 9a08115f6b111445f57302651f7fcb1e4f11e907
3676 Author: Oliver Kurth <okurth@vmware.com>
3677-Date: Fri Sep 15 11:23:42 2017 -0700
3678+Date: Thu Nov 30 15:38:04 2017 -0800
3679
3680- Remove BDOOR_CMD_FAS_GET_NVDIMM_FMT_CODE
3681-
3682- Now that our guest FW can read the NVDIMM format interface
3683- code (FIC) from the NVDIMM controllers MMIO space we have
3684- no need for a backdoor call to do the same thing. This
3685- change removes the backdoor call for reading the FIC and
3686- makes it's callers read the FIC from the NVDIMM controllers
3687- MMIO space instead.
3688+ Changes to common header files not directly applicable to open-vm-tools.
3689
3690-commit 028854fd377698d261aad7787723e4d3db1069b9
3691+commit a8f4c5ada9852dfdb251715f3785b1fee45b8f67
3692 Author: Oliver Kurth <okurth@vmware.com>
3693-Date: Fri Sep 15 11:23:42 2017 -0700
3694+Date: Thu Nov 30 15:38:04 2017 -0800
3695
3696- Hgfs Server: Remove the register share callback and usage
3697+ Change to common header file; not applicable to open-vm-tools.
3698+
3699+commit 443f07aab7c60df74e1731127921b92447c86d61
3700+Author: Oliver Kurth <okurth@vmware.com>
3701+Date: Thu Nov 30 15:38:04 2017 -0800
3702+
3703+ Typo correction in common header file comment.
3704+
3705+commit a5d480e471fe4e0e73f6be28ab65f6ecde64f775
3706+Author: Oliver Kurth <okurth@vmware.com>
3707+Date: Thu Nov 30 15:38:03 2017 -0800
3708+
3709+ Improve diskinfo debug output
3710+
3711+ Add more debug information so that it is easier to figure out why some
3712+ partitions are not being found.
3713+
3714+commit 08abcfc9cc08c758a8189e69e7f99ab270a2e553
3715+Author: Oliver Kurth <okurth@vmware.com>
3716+Date: Thu Nov 30 15:38:03 2017 -0800
3717+
3718+ Make VigorPollImpl FD-based callbacks non-periodic (take 3)
3719+
3720+ The previous attempt reveals another pre-existing issue. An fd that is
3721+ closed by AsyncSocket may be reused right away. The SharedStream for
3722+ that fd may still have an outstanding callback that needs to fire
3723+ before it would be destroyed. If the destruction happens after the fd
3724+ is re-used and the new owner is using boost asio stream, the Release()
3725+ call would cancel the async read/write operation for the new owner.
3726+ One simple fix is to dup the fd when creating a SharedStream. This
3727+ means hostd would need 2 fds for each running VM. The hostd fd limit
3728+ is currently 4096 and I was able to power on 1K VMs. If necessary, the
3729+ fd limit can be increased (the system limit is 32K).
3730+
3731+ Previous description:
3732+
3733+ The original change has an issue on Linux that is not observed in ESX.
3734+ When the read and write callbacks fire in parallel, both would release
3735+ the reference to the SharedStream, triggering its destructor. Later
3736+ when the read callback tries to re-register itself, it would hit a
3737+ boost exception. To avoid that, I delayed the reset of
3738+ CallbackFD::stream to the end of Invoke so that the SharedStream
3739+ object woudl not be destroyed as long as the callback is re-registered.
3740+
3741+ Original description:
3742+
3743+ The hard-to-reproduce AsyncSocket leak turns out to be a variation of
3744+ PR 1530561. The fix for that bug only plugs the leak when the race is
3745+ between a VigorPollImpl callback that fires with an CanceledException
3746+ (which can be triggered by another callback registered on the same fd --
3747+ this is the boost behavior) and a thread trying to unregister the same
3748+ callback (e.g. upon detection of a disconnect). There is still a
3749+ potential reference leak when the read and write callbacks run in
3750+ parallel, if a disconnection happens between the two asyncsocket
3751+ callbacks (the asyncsocket callbacks take the asyncsocket lock, so they
3752+ are mostly serialized). The second asyncsocket callback handling the
3753+ disconnect error would unregister the first callback while the first
3754+ callback would be attempting to re-register itself at the VigorPollImpl
3755+ level (to provide the periodic behavior exposed by IVmdbPoll). If the
3756+ unregister wins the race, it would return false because the callback
3757+ cannot be cancelled (it is running). Then ReRegister would not find
3758+ the callback in the hash table, so the callback would not fire again,
3759+ which means the reference taken when registering the callback is leaked.
3760+
3761+ Applying the fix for PR 1530561 in the above scenario would not work
3762+ because an AsycnSocket callback may unregister itself and in that case
3763+ the reference is appropriately released. Unless we save the thread ID
3764+ in Unregister, we would not be able to distinguish when the callback
3765+ needs to run in order to release the reference. After considering
3766+ various options, I believe trying to support periodic fd-based
3767+ callbacks on top of a multi-threaded poll API is troublesome. This
3768+ change adds a poll flag for one-shot callbacks and used that in
3769+ AsyncSocket with IVmdbPoll. VigorPollImpl only support the one-shot
3770+ behavior. In the long term I would like to retire IVmdbPoll and create
3771+ a new poll interface. For now I would like to minimize churn while
3772+ fixing the memory leak.
3773+
3774+commit 595f5add83e8fbf1ffcabd7537d294c1c9c4edfe
3775+Author: Oliver Kurth <okurth@vmware.com>
3776+Date: Thu Nov 30 15:38:03 2017 -0800
3777+
3778+ Fix memory leak in vmtoolsd.
3779+
3780+commit 884aa32f9c9f773957275e09cd6620598185718a
3781+Author: Oliver Kurth <okurth@vmware.com>
3782+Date: Thu Nov 30 15:38:03 2017 -0800
3783+
3784+ Tools: GuestInfo: ESX: dynamically load libvmkmemstats.so
3785
3786- Remove the register share callback and usage which is an HGFS server
3787- libray function passed back to the VMX Hgfs server manager and policy
3788- manager. This tracked shares as they were individually added and removed.
3789- It carried with it VMDB behavior which was erroneous for the HGFS server
3790- share tracking.
3791+ The new version of the vmware tools will be installed on older version
3792+ of ESX. But these older versions do not come with libvmkmemstats.so
3793+ and a dynamic linking error occurs.
3794
3795- This API has been replaced by piggybacking on the Hgfs server InvalidateObjects
3796- callback which informs the Hgfs server when the VMDB has finished updating
3797- the Hgfs policy manager with shares and the Policy manager's list is complete.
3798- At this point the Hgfs server can close any open handles on stale shares and
3799- remove those stale shares and add new shares.
3800+ This patch changes the code to deal with the case where the lib is not
3801+ available. Instead of relying on the linker to dynamically link with
3802+ libvmkmemstats.so, g_module_open() is used to open the library, if
3803+ available, and gracefully handle any eventual errors.
3804+ Before the patch, the whole libguestinfo would stop working and after
3805+ the patch only the memory stats are unavailable.
3806
3807-commit f8d262a1dd1467b097b55f646ac3302531e4aef0
3808+commit 6151fbafe8714c15614dd254ff8816cd28620f3c
3809 Author: Oliver Kurth <okurth@vmware.com>
3810-Date: Fri Sep 15 11:23:42 2017 -0700
3811+Date: Thu Nov 30 15:38:03 2017 -0800
3812
3813- lib/misc/strutil.[ch]: New functions added; not applicable to open-vm-tools
3814- - Added functions StrUtil_GetNextItem, StrUtil_HasListItem,
3815- StrUtil_HasListItemCase, StrUtil_AppendListItem,
3816- StrUtil_RemoveListItem, StrUtil_RemoveListItemCase
3817+ Correcting the few copyright notice added to a few CAF related files bundled in Open-VM-Tools.
3818
3819-commit 2edd97267f299ec18b9c60cf613bef99497729b3
3820+commit 23cfd0c0fc03c36b83c47614037f85ff98806b86
3821 Author: Oliver Kurth <okurth@vmware.com>
3822-Date: Fri Sep 15 11:23:42 2017 -0700
3823+Date: Thu Nov 30 15:38:03 2017 -0800
3824
3825- Hgfs Server: Fix shares update for change notification
3826+ Adding copyright notice to a few CAF related files bundled in Open-VM-Tools.
3827+
3828+commit 6056c840a4a5593a3f4a87acc175b5eac3ce23dc
3829+Author: Oliver Kurth <okurth@vmware.com>
3830+Date: Tue Oct 24 14:07:36 2017 -0700
3831+
3832+ DragNDrop plugin change for VMware Tools on Windows; not applicable to
3833+ open-vm-tools.
3834+
3835+commit 965dbcad8680e32a8b093715b29656505a8eaf44
3836+Author: Oliver Kurth <okurth@vmware.com>
3837+Date: Tue Oct 24 14:07:36 2017 -0700
3838+
3839+ GuestInfo: add primary-nics and low-priority-nics options
3840
3841- This change fixes UI updates of the shares which currently
3842- update by a poorly designed algorithm which causes change
3843- notification subscriptions to be deleted and not restored
3844- and also unnecessary deactivation and activation of the
3845- events generation.
3846+ Add the options 'primary-nics' and 'low-priority-nics' for GuestInfo.
3847
3848- Currently, the UI updates the HGFS shares in the HGFS server
3849- via the RegisterShare callback. This is done from HGFS VMX
3850- policy code which handles updates from the UI and maintains
3851- the HGFS shares. The UI calls the policy code for each share
3852- to remove it until the list of shares is empty. It then calls
3853- back for each share to add the existing shares back to the list.
3854- Currently, the policy code calls the HGFS server RegisterShare
3855- callback to delete the share as it removes them and then again
3856- to add each one back in that added to the policy shares list.
3857- Unfortunately, as the shares are removed any existing subscribers
3858- for change notifications on the deleted share are also destroyed.
3859- Furthermore, when the shares list is empty, the count of subscribers
3860- will also be zero at this point causing a deactivation of the
3861- file change event generator. Once, the shares are added back in
3862- via the RegisterShare callback no event subscribers will be
3863- restored as they are not tracked and the event generation
3864- will also not be activated due to that reason.
3865+ The options accept a list of comma separated patterns for interface names
3866+ which can be considered as 'primary' or 'low priority' network interfaces.
3867+ This will cause the NicInfo to be put on top of the list for primary
3868+ interfaces, and to the bottom for low priority interfaces.
3869
3870- The fix is to make the shares tracking be handled in the same
3871- manner as the HGFS server does for open handles on shares.
3872- The HGFS policy waits until the shares list updates are complete
3873- as the UI is done updating the shares. The HGFS policy then calls
3874- the HGFS server InvalidateObjects callback with the new complete
3875- list of shares which may or may not be different from the previous
3876- list. The HGFS server InvalidateObjects goes through its current list
3877- of shares and searches for each share in the new list of shares and
3878- if it fails to locate it, then closes all open handles on that share.
3879- Once the list has been exhausted, all open handles remaining will be
3880- on shares that still exist.
3881+ Example:
3882
3883- The same callback is now used for resetting the list of shares for
3884- the current subscribers of change events and not the RegisterShare
3885- callback which should be removed altogether. We now make sure that
3886- the reset of file change event shares only removes shares not found
3887- on the new list thereby only removing subscribers on those stale shares.
3888- All subscribers for shares remaining on the lists are not deleted,
3889- remain intact and unaffected. Furthermore, file system event
3890- generation will also not be deactivated unless all subscribers
3891- happen to be for shares that were deleted.
3892+ primary-nics=eth1
3893
3894- This change is the first part which as code to piggyback on the HGFS
3895- server InvalidateObjects callback to compare any shares in its list
3896- with the new list and delete shares not found. The RegisterSharecallback
3897- function code is deleted and temporarily is an empty callback.
3898- This will be deleted along with the callback code from the HGFS
3899- policy manager in a subsequent change.
3900+ will make sure that the IP address(es) for eth1 will be sorted on
3901+ top of the list of IP addresses.
3902
3903- Details:
3904- HgfsServerRegisterShare - is gutted and just an empty function just
3905- logging that it is called.
3906- HgfsServerCleanupDeletedFolders is effectively renamed to
3907- HgfsServerSharesDeleteStale w/o the lock acquistion/release.
3908- HgfsServerSharesDeleteStale now free the share name as well as the
3909- share object to stop memory leak.
3910- HgfsServerShareAddInternal is extracted from the old defunct
3911- HgfsServerRegisterShare w/o the lock acquisition/release.
3912- HgfsServerShareAdd acquires and releases the lock and calls
3913- HgfsServerShareAddInternal
3914- HgfsServerSharesReset is created and called from the
3915- HgfsServerInvalidateObjects
3916- HgfsServerEnumerateSharedFolders now calls the new HgfsServerShareAdd
3917- for all shares which is used to initialize the shares on HGFS server
3918- start.
3919- HgfsServerGetLocalNameInfo now does not get the Shared Folder handle
3920- from the VMX policy host, instead getting it from the existing
3921- HgfsServerGetShareHandle (the server maintained list of shares).
3922- This is only used for setting subscribers from the client when
3923- using handles and not path names.
3924- HgfsServerSetDirWatchByName now uses the handle returned by the
3925- HgfsServerGetLocalNameInfo call.
3926- markedForDeletion is now removed as holding stale state is not needed
3927- since stale shares are deleted and resources freed immediately.
3928+ primary-nics=eth*
3929+
3930+ will make sure that any one of the addresses of all interfaces
3931+ matching eth* will be sorted on top of the list of IP addresses,
3932+ but won't guarantee which one if there is more than one.
3933+
3934+ low-priority-nics=eth*
3935+
3936+ will work analogously, but interfaces will be sorted to the bottom.
3937+
3938+ In case the limit of the number of interfaces to be reported is reached,
3939+ low priority interfaces are the first to be skipped.
3940
3941-commit 357f5304834d40ce8a1e97838766f34cc6d89ddd
3942+commit b5c64af227b2eea0f23f2c8f3cf40c5d24c8548f
3943 Author: Oliver Kurth <okurth@vmware.com>
3944-Date: Fri Sep 15 11:23:42 2017 -0700
3945+Date: Tue Oct 24 14:07:35 2017 -0700
3946
3947- Change to shared header file unrelated to open-vm-tools.
3948+ VGAuth changes:
3949+
3950+ - add calling LoadUserProfile()/UnloadUserProfile() in VGAuth
3951+ impersonation/unimpersonation code paths
3952+ - VMTools side code change to use the new VGAuth SDK.
3953
3954-commit 2ca4b125656100d69c9f7868bccbb55d0547e852
3955+commit cc18f0829bbf9d61b36f6c292a2f4fb9b9618812
3956 Author: Oliver Kurth <okurth@vmware.com>
3957-Date: Fri Sep 15 11:23:42 2017 -0700
3958+Date: Tue Oct 24 14:07:35 2017 -0700
3959
3960- Common header file change; not applicable to open-vm-tools.
3961+ VGAuth changes:
3962+
3963+ - add calling LoadUserProfile()/UnloadUserProfile() in VGAuth
3964+ impersonation/unimpersonation code paths
3965+ - VGAuth part of code change plus tools vix plugin make file.
3966
3967-commit 94028b39e929b162ebc320f455fb2f5b3af53f04
3968+commit 4b0af4d8b889eccd0fbc18d63698c95f83be1ca3
3969 Author: Oliver Kurth <okurth@vmware.com>
3970-Date: Fri Sep 15 11:23:42 2017 -0700
3971+Date: Tue Oct 24 14:07:35 2017 -0700
3972
3973- Check timeout setting for scsi device before setting
3974+ [Tools] Fix crash issue when stopping vmtoolsd(vmuser)
3975
3976- The rule to set the timeout value for SCSI devices was too generic,
3977- and caused error messages, when the timeout field was set
3978- when it didn't exist. This is not harmful, but generates unnecessary
3979- noise. This change adds a check if the timeout field exists.
3980+ When stopping vmtoolsd, the code tries to unload all plugins. The
3981+ signal TOOLS_CORE_SIG_CAPABILITIES is emitted before really starting
3982+ to unload plugins. If the plugin should try to call RpcChannel_Send
3983+ while processing the signal and the RPC channel has been shutdown, an
3984+ ASSERT is triggered. The fix is to check whether rpc exists and if
3985+ unavailable, avoid sending the TOOLS_CORE_SIG_CAPABILITIES signal.
3986
3987-commit 5c77f471ccb8b87dd80f3928b313480aeb8edf0a
3988+commit 13438dc9ab2af20587e003bc7f8ba088dc2d3ed8
3989 Author: Oliver Kurth <okurth@vmware.com>
3990-Date: Fri Sep 15 11:23:41 2017 -0700
3991+Date: Tue Oct 24 14:07:35 2017 -0700
3992
3993- Change to shared header file unrelated to open-vm-tools.
3994+ Update copyright year to 2017 for open-vm-tools 10.2.0.
3995
3996-commit dc81979e78e1b8f42639aeb7aaec69f7ea49eb79
3997+commit a94ed0b8af8afc7d446312c3b391f336421bd4c3
3998 Author: Oliver Kurth <okurth@vmware.com>
3999-Date: Fri Sep 15 11:23:41 2017 -0700
4000+Date: Tue Oct 24 14:07:33 2017 -0700
4001
4002- Remove convertutf and bsd_printf
4003+ Add SUSE Server for SAP Applications to hostinfoPosix.c
4004
4005- The license for convertutf.c and convertutf.h does not
4006- explicitly permit, or prohibit, modification of the files,
4007- and restricts use to "products supporting the Unicode
4008- Standard". This is a problem for distribution with Debian,
4009- which complies to strict guidelines. See details at
4010- https://github.com/vmware/open-vm-tools/issues/148
4011- and
4012- https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=823100
4013+ On SLES-SP1-SAP the "lsb_release -sd" command returns the string
4014+ "SUSE Linux Enterprise Server for SAP Applications 12 SP1".
4015+ Parsing in HostinfoGetOSShortName() detects the sub-strings "suse"
4016+ and "enterprise" but not "server 12". STR_OS_SLES is returned
4017+ resulting in displaying of "SUSE Linux Enterprise 8/9" in the
4018+ summary screen of the vSphere client. This is wrong.
4019
4020- The code is not essential for open-vm-tools. It's needed by
4021- code in bsd_printf.c and related code, which in turn is
4022- needed by msgfmt.c and msgList.c. The latter code is not needed
4023- for open-vm-tools, and can therefore be eliminated from
4024- the open-vm-tools package.
4025+ Instead, search for the sub-string "server for sap applications 12"
4026+ and return STR_OS_SLES_12. SLES11-SAP is not affected.
4027
4028- When HAS_BSD_PRINTF isn't set, Str_Snprintf() and
4029- Str_Vsnprintf will fall back to vsnprintf(), and
4030- Str_Asprintf()/Str_Vasprintf() will fall back to
4031- vasprintf(). Under Linux and FreeBSD these functions are
4032- properly implemented, and support %ls and %S.
4033+ Please see: github.com/vmware/open-vm-tools/pull/123
4034
4035-commit 131e4a60fa2d2db0c30920d826d23aec44d8ab09
4036+commit 2aba22668d4f61ddad7dff2a3e872458bf64e67a
4037 Author: Oliver Kurth <okurth@vmware.com>
4038-Date: Fri Sep 15 11:23:41 2017 -0700
4039+Date: Tue Oct 24 14:07:33 2017 -0700
4040
4041- Remove Linux kernel modules
4042+ lib/file: Enhance File_EnsureDirectoryEx to do more checking
4043
4044- Remove Linux kernel modules from open-vm-tools.
4045+ When creating a directory, distinguish whether an EEXIST error is
4046+ because the directory already exists or because there is a file with
4047+ that path name. Return the appropriate error.
4048
4049-commit 5034ce882ff4ab49fc4a874009ce638b377bcdaa
4050+commit c579e664050ddd35e975b4a7fa18beb74f2decdc
4051 Author: Oliver Kurth <okurth@vmware.com>
4052-Date: Fri Sep 15 11:23:41 2017 -0700
4053+Date: Tue Oct 24 14:07:33 2017 -0700
4054
4055- optimize clamped uadd functions
4056+ VMware Tools 10.2.0 L10n changes for VGAuth.
4057+
4058+commit 07973b8c75feafba8c5ea400a87d0f03cdea744d
4059+Author: Oliver Kurth <okurth@vmware.com>
4060+Date: Tue Oct 24 14:07:33 2017 -0700
4061+
4062+ Common header file changed; not applicable to open-vm-tools.
4063+
4064+commit b88ff280ea0ea778ef9a4e422129bbf66291be73
4065+Author: Oliver Kurth <okurth@vmware.com>
4066+Date: Tue Oct 24 14:07:33 2017 -0700
4067+
4068+ lib/file: Reduce the create directory spam
4069
4070- For unsigned adds, if there's no overflow, the result will be larger
4071- or equal than either source operand. Consequently, if there's an
4072- overflow, the result will be smaller than both, and checking against
4073- one source operand is sufficient. Found accidentally...
4074- (With just one comparison, gcc is in fact able to figure out the
4075- comparison is really the same as the add overflowing and will omit
4076- the comparison. But it won't do this with two comparisons.)
4077+ The lib/file primitives (e.g. create file, create directory) may fail -
4078+ but they also return errno/GetLastError. The caller should inspect a
4079+ failure and decide what to do (or log). The lib/file primitives should
4080+ not log. The client should do that. The primitives are the high
4081+ performance path and failure isn't necessarily a failure, only the
4082+ client can decide.
4083+
4084+ The lib/file primitives (e.g. create file, create directory) may fail -
4085+ but they also return errno/GetLastError. The caller should inspect a
4086+ failure and decide what to do (or log). The lib/file primitives should
4087+ not log. The client should do that. The primitives are the high
4088+ performance path and failure isn't necessarily a failure, only the
4089+ client can decide.
4090
4091-commit ce18b4a333b1d0e757ba3e9b3f650f5d860f35c9
4092+commit 8bdee4f53760e3a63a890653a0960c09b9258db9
4093 Author: Oliver Kurth <okurth@vmware.com>
4094-Date: Fri Sep 15 11:23:41 2017 -0700
4095+Date: Tue Oct 24 14:07:33 2017 -0700
4096+
4097+ Misc GuestOS ID fixes.
4098+
4099+ - Centos8 64bit guest will have linux 4.x. Moved Centos8-64 guest id
4100+ from all3xlinux64 to all4xlinux64 guest list.
4101+ - oracle8_64 is missing in the list. Added it to all4xlinux64 guest list.
4102+ - Photon has linux 4.x. Moved photon from all3xlinux64 to all4xlinux64
4103+ guest list.
4104+
4105+ - Changed the HostinfoOSData() function to return other4xlinux for
4106+ the distros where the version cannot be determined.
4107+
4108+commit 2ca8abc426c42e3ad7c05fd22e38ca04d6cc5e86
4109+Author: Oliver Kurth <okurth@vmware.com>
4110+Date: Tue Oct 24 14:07:33 2017 -0700
4111+
4112+ Bump imgcust version to 8.4.0.xxxx
4113+
4114+commit 921f05729bdbcb83a98ab1a28641baabd095af97
4115+Author: Oliver Kurth <okurth@vmware.com>
4116+Date: Tue Oct 24 14:07:33 2017 -0700
4117+
4118+ Back out commit d2c18c44...: Make VigorPollImpl FD-based callbacks non-periodic
4119+
4120+ Yet another issue is exposed by the change. This is a clean backout
4121+ but keeping the cleanupOnError fix in SharedStreamFactory::Get.
4122+
4123+commit e373c1ca328f78581d915940bd7e98abdb76a089
4124+Author: Oliver Kurth <okurth@vmware.com>
4125+Date: Tue Oct 24 14:07:32 2017 -0700
4126+
4127+ open-vm-tools: make building with gtk3 the default
4128+
4129+ This makes building with gtk3 the default, and sets sane
4130+ defaults when building with/without gtk2/gtk3.
4131+
4132+commit 3455478483a6f8e810c00519b6611020e25fee83
4133+Author: Oliver Kurth <okurth@vmware.com>
4134+Date: Tue Oct 24 14:07:32 2017 -0700
4135+
4136+ Common header file change; not applicable to open-vm-tools.
4137+
4138+commit a62edfbf695ea5ad4bf8f8d91bac1740e428158f
4139+Author: Oliver Kurth <okurth@vmware.com>
4140+Date: Tue Oct 24 14:07:32 2017 -0700
4141+
4142+ Common header file change; not directly applicable to open-vm-tools
4143+
4144+commit 009def580b00040fa6e6c07cb5743e60973973f5
4145+Author: Oliver Kurth <okurth@vmware.com>
4146+Date: Mon Oct 23 14:21:23 2017 -0700
4147+
4148+ GuestInfo: enable nic/iproute information for Linux without libdnet
4149+
4150+ Linux glibc (since 2.3) fully supports getting ip addresses using
4151+ getifaddrs() for both IPv4 and IPv6. Use of getifaddrs() was already
4152+ implemented in nicInfoPosix.c for tools for ESXi. This change
4153+ enables that code also for Linux, if libdnet is not used.
4154+
4155+ The change also enables the iproute information, which does not
4156+ depend on libdnet, except by the use of addr_stob(), which can
4157+ be replaced easily with the existing function CountNetmaskBits().
4158+
4159+commit 7643a1eddcc2cdc0b8a42af821ae92ca076ee37a
4160+Author: Oliver Kurth <okurth@vmware.com>
4161+Date: Mon Oct 23 14:21:22 2017 -0700
4162+
4163+ Make disk free space reporting consistent with Linux 'df' command.
4164+
4165+ On Linux, statfs syscall reports free space in two fields.
4166+ From http://man7.org/linux/man-pages/man2/statfs.2.html:
4167+ 1. f_bfree => Free blocks in filesystem
4168+ 2. f_bavail => Free blocks available to unprivileged user
4169+
4170+ For file systems that maintain reserved space for system
4171+ activities f_bfree > f_bavail because f_bfree includes the
4172+ reserved space in the file system. The reserved space is
4173+ typically 5% for 'ext4' file systems. Newer distros like
4174+ RHEL 7.x use 'xfs' by default and report same value for
4175+ both the fields.
4176+
4177+ The Linux 'df' command uses f_bavail in its reporting.
4178+ Tools reports, conditionally, f_bfree for root and f_bavail
4179+ for non-root. However, since vmtoolsd runs as root, Tools
4180+ always reports f_bfree, which is more free space than 'df'
4181+ would report (depending on amount of reserved space).
4182+
4183+ In order to be consistent with Linux 'df' command,
4184+ report f_bavail as the disk free space by default. This does
4185+ change the behavior a little bit in that Tools will report less
4186+ disk free space than before, the difference being the same as
4187+ the reserved space on the file system, typically 5%. This
4188+ should be OK in general because it makes the space reporting
4189+ a bit conservative. If this change in behavior is not desired
4190+ for some use cases, the old behavior can be restored by setting
4191+ the following newly added configuration in this change:
4192+
4193+ [guestinfo]
4194+ diskinfo-include-reserved=true
4195+
4196+ The existing callers that are outside the guestInfo plugin
4197+ will continue to include reserved space in their space
4198+ accounting as before.
4199+
4200+ Also fixed a few minor stuff/touchups in vmtoolsConfig.c.
4201+
4202+commit ff6daf51be641a805f94fa11415e032bad3ef48a
4203+Author: Oliver Kurth <okurth@vmware.com>
4204+Date: Mon Oct 23 14:21:22 2017 -0700
4205+
4206+ Porting some common code to another architecture; not applicable to
4207+ open-vm-tools.
4208+
4209+commit a1d4afc447091d9fbccf89be6561accfc1e33aa9
4210+Author: Oliver Kurth <okurth@vmware.com>
4211+Date: Mon Oct 23 14:21:22 2017 -0700
4212+
4213+ Add support to tools timeSync to issue w32tm resync in Windows guests.
4214+
4215+ This change adds support to issue a w32tm resync command from within
4216+ VMware tools timeSync in order to reconfigure w32time configuration
4217+ parameters. This forces guest time to be resynchronized to external
4218+ time server.
4219+
4220+commit d2c18c44df3fbc410e04b2f1b2595a326a52afec
4221+Author: Oliver Kurth <okurth@vmware.com>
4222+Date: Mon Oct 23 14:21:22 2017 -0700
4223+
4224+ Add a poll flag for one-shot callbacks in AsyncSocket
4225+
4226+ The original change had an issue. When the read and write callbacks
4227+ fire in parallel, both would release the reference to the SharedStream,
4228+ triggering its destructor. Later when the read callback tried to
4229+ re-register itself, it would hit a boost exception. To avoid that,
4230+ delay the reset of CallbackFD::stream to the end of Invoke so that the
4231+ SharedStream object will not be destroyed as long as the callback is
4232+ re-registered.
4233+
4234+commit 485dc67e56ad68e05d4106059594279f67dd119b
4235+Author: Oliver Kurth <okurth@vmware.com>
4236+Date: Mon Oct 23 14:21:22 2017 -0700
4237+
4238+ Change to shared header file unrelated to open-vm-tools.
4239+
4240+commit 9719f528b4ca3d91952e8feaca49d005f7944097
4241+Author: Oliver Kurth <okurth@vmware.com>
4242+Date: Mon Oct 23 14:21:22 2017 -0700
4243+
4244+ HostDiskMacos: Migrate macOS host disk functions from file and user to hostDisk.
4245+
4246+commit c81c16581af70d6242dceccf3b9cdfd0dd3a88f4
4247+Author: Oliver Kurth <okurth@vmware.com>
4248+Date: Mon Oct 23 14:21:22 2017 -0700
4249+
4250+ Revert - HostDiskMacos: Migrate macOS host disk functions from file and user to hostDisk.
4251+
4252+commit d9fa89c015f72f233f46c8dd73640bbd3006d901
4253+Author: Oliver Kurth <okurth@vmware.com>
4254+Date: Mon Oct 23 14:21:21 2017 -0700
4255+
4256+ HostDiskMacos: Migrate macOS host disk functions from file and user to hostDisk.
4257+
4258+commit 02d088e2603a292375f5d8db73b431ce30ddbf9c
4259+Author: Oliver Kurth <okurth@vmware.com>
4260+Date: Mon Oct 23 14:21:21 2017 -0700
4261+
4262+ Fix a segfault when log file isn't set and conf is reloaded.
4263+
4264+ When vmsvc.handler=file, but vmsvc.data isn't set, vmtoolsd crashed
4265+ on reloading the config file. This was caused by using a NULL value
4266+ as an argument to a strcmp().
4267+
4268+ This change fixes this by using g_strcmp0 which handles NULL pointers
4269+ gracefully, and setting confData to a default value before calling
4270+ g_strcmp0().
4271+
4272+ This also fixes a case where a change in the log file would be ignored.
4273+
4274+commit 60179f0b8a4faaa66b490ba7b3f927664e634d6f
4275+Author: Oliver Kurth <okurth@vmware.com>
4276+Date: Mon Oct 23 14:21:21 2017 -0700
4277+
4278+ Revert - HostDiskMacos: Migrate macOS host disk functions from file and user to hostDisk.
4279+
4280+commit a01a01b881672f41e827ea50b9e4501b1cc09fc6
4281+Author: Oliver Kurth <okurth@vmware.com>
4282+Date: Mon Oct 23 14:21:21 2017 -0700
4283+
4284+ Changes to header files vmnet_defs.h and vmxnet3_defs.h needed to
4285+ integrate ENS capabilities into existing Uplink capabilities.
4286+ The changes are not directly applicable to open-vm-tools.
4287+
4288+commit 6d86d11a0d1715e80417380c4565d2141cd39c15
4289+Author: Oliver Kurth <okurth@vmware.com>
4290+Date: Mon Oct 23 14:21:21 2017 -0700
4291+
4292+ HostDiskMacos: Migrate macOS host disk functions from file and user to hostDisk.
4293+
4294+commit 2e95b4a100dff023d0e88315829c988c063228d5
4295+Author: Oliver Kurth <okurth@vmware.com>
4296+Date: Mon Oct 23 14:21:21 2017 -0700
4297+
4298+ Update file version for imgcust deliverables
4299+
4300+commit 6288ac9749b21a5eb791b080c20e1028eaab5173
4301+Author: Oliver Kurth <okurth@vmware.com>
4302+Date: Mon Oct 23 14:21:21 2017 -0700
4303+
4304+ Revert change to add a poll flag for one-shot callbacks.
4305+
4306+commit 39d8a762211ed0d599cc9834f4eaf15c9fa41dfa
4307+Author: Oliver Kurth <okurth@vmware.com>
4308+Date: Mon Oct 23 14:21:21 2017 -0700
4309+
4310+ strutil.c: Add a case-insensitive version of StrUtil_EndsWith.
4311+
4312+ Common header file change; not applicable to open-vm-tools.
4313+
4314+commit a0741150a070825f22b35d7e1642c0c88f29673d
4315+Author: Oliver Kurth <okurth@vmware.com>
4316+Date: Mon Oct 23 14:21:21 2017 -0700
4317+
4318+ Update of a product version in a shared header file; not applicable to
4319+ open-vm-tools.
4320+
4321+commit 7b8e29217723040cfeec1f1db09afc2560237439
4322+Author: Oliver Kurth <okurth@vmware.com>
4323+Date: Mon Oct 23 14:21:20 2017 -0700
4324+
4325+ AsyncSocket: Fix DoOneMsg's inBlockingRecv bookkeeping
4326+
4327+ For the I[Vmdb]Poll support in AsyncTCPSocket, inBlockingRecv has been
4328+ used to avoid conflict with AsyncSocketDoOneMsg. There is an issue
4329+ with where inBlocking Recv is decremented, which is right after poll,
4330+ where the thread would drop the lock. The lock may also be dropped
4331+ during AsyncTCPSocketFillRecvBuffer, and for that there is a separate
4332+ inDoOneMsg flag. This change unifies the two flags and makes
4333+ inBlockingRecv cover both functions that may drop the lock. This fixes
4334+ the race that would allow AsyncTCPSocketRecvCallback to run when
4335+ AsyncTCPSocketDoOneMsg is in progress. A couple places where we
4336+ previously checked inBlockingRecv to report an error now have to also
4337+ check inRecvLoop (TRUE during AsyncTCPSocketFillRecvBuffer) -- those
4338+ checks cannot be enforced during FillRecvBuffer because the client
4339+ callback is allowed to change the callback or cancel it. The lone
4340+ usage of inDoOneMsg is switched to inBlockingRecv.
4341+
4342+commit ac699fac9d8030fe2c804ad8720d7fa7b5e72839
4343+Author: Oliver Kurth <okurth@vmware.com>
4344+Date: Mon Oct 23 14:21:20 2017 -0700
4345+
4346+ Set the Tools version to 10.3.0
4347+
4348+commit 2fae8543aaeed65725575dac50c55ea554b349a1
4349+Author: Oliver Kurth <okurth@vmware.com>
4350+Date: Mon Oct 23 14:21:20 2017 -0700
4351+
4352+ guestOS: Uniquely run time identify Photon
4353+
4354+ Currently VMware Photon 2 is identified at run time as a Linux 4.x kernel.
4355+ This is correct, but the Photon distro has an LSB compliant identification
4356+ file.
4357+
4358+ Attempt to check the LSB compliant identification file for Photon. If
4359+ present, identify the guest as "vmware-photon".
4360+
4361+commit 729acd5603c62d514d5e244faf9e508db2b9efd7
4362+Author: Oliver Kurth <okurth@vmware.com>
4363+Date: Mon Oct 23 14:21:20 2017 -0700
4364+
4365+ Add new GOS definitions in HWV=14
4366+
4367+commit f9c76215aaed31a6210112df578ed9d6c3c25712
4368+Author: Oliver Kurth <okurth@vmware.com>
4369+Date: Mon Oct 23 14:21:20 2017 -0700
4370+
4371+ Fix ASSERT of registering the same callback twice (take 2)
4372+
4373+ Re-check the condition of inBlockingRecv after the lock
4374+ may have been dropped.
4375+
4376+commit a20022349089880cb43ccdef082f02de95476984
4377+Author: Oliver Kurth <okurth@vmware.com>
4378+Date: Mon Oct 23 14:21:20 2017 -0700
4379+
4380+ Fix ASSERT of registering the same callback twice
4381+
4382+ The previous change for Poll introduced a bug in AsyncSocket.
4383+ When re-registering the recv callback, it needs to check whether
4384+ there is a concurrent blocking recv (which means the send callback
4385+ has detected a disconnection and is draining the pipe). The recv
4386+ callback should act like a no-op in that case (other than to
4387+ release the reference).
4388+
4389+commit 396d5adb3aba9ab0e059a4b45ac2e3d68fb513f9
4390+Author: Oliver Kurth <okurth@vmware.com>
4391+Date: Mon Oct 23 14:21:19 2017 -0700
4392+
4393+ Change to shared header file unrelated to open-vm-tools.
4394+
4395+commit 3cb87c817b804e231b0d2aa4c007a61b83999750
4396+Author: Oliver Kurth <okurth@vmware.com>
4397+Date: Mon Oct 23 14:21:19 2017 -0700
4398+
4399+ Hgfs Protocol: clean up the Hgfs protocol operation capabilities
4400+
4401+ This change cleans up the operation capability and its flags which
4402+ currently are not clearly associated with the type to which they refer.
4403+ The name doesn't help in that regard either.
4404+
4405+ The capability and flags are used in the Hgfs session creation by
4406+ both the server and client to dictate the protocol operation versions
4407+ to be used during the lifetime of that session. The flags denote
4408+ which operations are currently used and how they are expected to be
4409+ used.
4410+
4411+commit 14c579038de187e0bdbc952073524e4a0668548e
4412+Author: Oliver Kurth <okurth@vmware.com>
4413+Date: Mon Oct 23 14:21:19 2017 -0700
4414+
4415+ Update the Tools-10.2.0-Beta Open Source License Files.
4416+
4417+commit fa4c5b9eac9e2899aef8f6a831e121152adc075b
4418+Author: Oliver Kurth <okurth@vmware.com>
4419+Date: Mon Oct 23 14:21:19 2017 -0700
4420+
4421+ hosted file locking: An upper bound on creating the lock directory
4422+
4423+ There is currently no upper bound on how long we wait to enter a hosted
4424+ file lock (create lock directory and the direct entry (the "D")). Fix
4425+ this.
4426+
4427+commit 2496fecbcd4c99bb3cc73df64b24982607f54227
4428+Author: Oliver Kurth <okurth@vmware.com>
4429+Date: Mon Oct 23 14:21:19 2017 -0700
4430+
4431+ Add Str_Strncpy
4432+
4433+ Add a Str_Strncpy function that, unlike strncpy, guarantees
4434+ NUL-termination.
4435+
4436+commit 314d3ca4d1b2a6a28427fc19510f89c7d7df6234
4437+Author: Oliver Kurth <okurth@vmware.com>
4438+Date: Mon Oct 23 14:21:19 2017 -0700
4439+
4440+ lib/file: Hosted file locking code robustness improvement
4441+
4442+ The hosted file locking code tosses a random number generator and
4443+ creates an directory name (D name) and member name (M name) that both
4444+ use the random number.
4445+
4446+ If the D name cannot be created we try again until we can create one.
4447+ The assumption is other lockers are racing with the code. The random
4448+ number generator makes the chance of collisons small and soon we get
4449+ a D name.
4450+
4451+ Once a D name can be created, we check if the M name exists. If it
4452+ does, we remove the D name and try again until we get a unique D and
4453+ M name. Once the M name is created, the D name is discarded.
4454+
4455+ If we're unable to remove the D name, we could land up filling the
4456+ locking directory with garbage that cannot be cleaned up. Fail if
4457+ we're unable to remove the D entry.
4458+
4459+commit 824c7718031c6adbc02b7a60b61639bc029b9852
4460+Author: Oliver Kurth <okurth@vmware.com>
4461+Date: Mon Oct 23 14:21:19 2017 -0700
4462+
4463+ Add a poll flag for one-shot callbacks in AsyncSocket.
4464+
4465+commit 7367296bebe4eed2bc5555f49fbaeea197be94ef
4466+Author: Oliver Kurth <okurth@vmware.com>
4467+Date: Mon Oct 23 14:21:19 2017 -0700
4468+
4469+ Disable lib/string wprintf functions for non-Windows builds
4470+
4471+ The lib/string wprintf functions currently are enabled only
4472+ for Windows and Linux builds, but Windows is the only
4473+ platform that uses them. Disable them for Linux, too.
4474+
4475+ This also means HAS_BSD_WPRINTF can be removed.
4476+
4477+commit fcc96bf4c1123fb51d96fdbb935e83b91bd04765
4478+Author: Oliver Kurth <okurth@vmware.com>
4479+Date: Mon Oct 23 14:21:18 2017 -0700
4480+
4481+ Remove Str_Mbscpy and Str_Mbscat
4482+
4483+ Since we assume that all non-wide-char strings are UTF-8, the
4484+ implementations of Str_Mbscpy and Str_Mbscat are basically
4485+ identical to those of Str_Strcpy and Str_Strcat. We thus do
4486+ not need the Str_Mbs versions.
4487+
4488+commit c8f3f5164f277ee311543c153e6cf4d9a5c3b17c
4489+Author: Oliver Kurth <okurth@vmware.com>
4490+Date: Mon Oct 23 14:21:18 2017 -0700
4491+
4492+ GOSTable: Linux 4.x kernel
4493+
4494+ Add Linux 4.x entries to the Guest OS table.
4495+
4496+commit b7ee5608972cdb7a585fb7b1a13fb62f24f546e9
4497+Author: Oliver Kurth <okurth@vmware.com>
4498+Date: Mon Oct 23 14:21:18 2017 -0700
4499+
4500+ lib/file: FileIO_AtomicUpdateEx ASSERT
4501+
4502+ ASSERT(File_IsSameFile(dirName, dstDirName)) fired when NFS went
4503+ down at just the right moment. It was not obvious that the ASSERT
4504+ fired due to an NFS failure.
4505+
4506+ File_IsSameFile correctly returns errno upon failure. Check the
4507+ errno value to properly detect and return an error.
4508+
4509+commit 631907ab8989ad07d3b8c03829f5700bb2e3ee1a
4510+Author: Oliver Kurth <okurth@vmware.com>
4511+Date: Fri Sep 15 11:47:09 2017 -0700
4512+
4513+ copy README.md from master
4514+
4515+commit 962d4f21e2365e81d68ca2920175c0f1edbb6770
4516+Author: Oliver Kurth <okurth@vmware.com>
4517+Date: Fri Sep 15 11:32:25 2017 -0700
4518+
4519+ update version to 10.2.0
4520+
4521+commit 1604e7c59f9491e0f98e39dc511a534ffea68879
4522+Author: Oliver Kurth <okurth@vmware.com>
4523+Date: Fri Sep 15 11:35:01 2017 -0700
4524+
4525+ sync libDeployPkg files
4526+
4527+commit 2ec91a3f67059cff2d47c662e2177714742a241f
4528+Author: Oliver Kurth <okurth@vmware.com>
4529+Date: Fri Sep 15 11:23:58 2017 -0700
4530+
4531+ GuestStats: Report memNeeded on ESX as a guest
4532+
4533+commit f439d57482f7dd42e359fb0792269573c63c55a7
4534+Author: Oliver Kurth <okurth@vmware.com>
4535+Date: Fri Sep 15 11:23:58 2017 -0700
4536+
4537+ GOSTable: Add MacOS 10.14 and FreeBSD 12
4538+
4539+commit 1d661a68fced6b91e6c5e757915cddf8b7c7eb15
4540+Author: Oliver Kurth <okurth@vmware.com>
4541+Date: Fri Sep 15 11:23:58 2017 -0700
4542+
4543+ Guest OS: Add CentOS 8, OracleLinux 8, and AsiaNux 8
4544+
4545+commit 8b2369ac8512b1436dbe2de5617e0265b522ee3a
4546+Author: Oliver Kurth <okurth@vmware.com>
4547+Date: Fri Sep 15 11:23:58 2017 -0700
4548+
4549+ lib/file: Remove long dead functions from file.h
4550+
4551+ These routines no longer exist. Remove them from the header file.
4552+
4553+commit e2da656025ba8ddb8a8b223f9e73c0057a2eeeb9
4554+Author: Oliver Kurth <okurth@vmware.com>
4555+Date: Fri Sep 15 11:23:57 2017 -0700
4556+
4557+ Revert part of the previous commit.
4558+
4559+ Remove the VIM mapping for now.
4560+
4561+commit 6ca6d42820b0ae44b02187925ebce7d2d21ab5e0
4562+Author: Oliver Kurth <okurth@vmware.com>
4563+Date: Fri Sep 15 11:23:57 2017 -0700
4564+
4565+ guestOS: Add SLES 15 and RHEL 8
4566+
4567+commit 31a6c06caeb75afd7d6a7e017c3b95b60ca9b6f0
4568+Author: Oliver Kurth <okurth@vmware.com>
4569+Date: Fri Sep 15 11:23:57 2017 -0700
4570+
4571+ Change to common header file; not applicable to open-vm-tools.
4572+
4573+commit 1b9b067c39da8446cb28a66914ff61dabadc71e9
4574+Author: Oliver Kurth <okurth@vmware.com>
4575+Date: Fri Sep 15 11:23:57 2017 -0700
4576+
4577+ Change to shared header file unrelated to open-vm-tools.
4578+
4579+commit 0c0f3e3c1fa82a1d63b75ccf6d8d775d915c66cf
4580+Author: Oliver Kurth <okurth@vmware.com>
4581+Date: Fri Sep 15 11:23:57 2017 -0700
4582+
4583+ Changes to common header files; not applicable to open-vm-tools.
4584+
4585+commit c8811a844992cd610e0043998f8554989e843bd7
4586+Author: Oliver Kurth <okurth@vmware.com>
4587+Date: Fri Sep 15 11:23:57 2017 -0700
4588+
4589+ Change to shared header file unrelated to open-vm-tools.
4590+
4591+commit 91cd3e4fcf02ac4d5ada8723e6e6b285768d351b
4592+Author: Oliver Kurth <okurth@vmware.com>
4593+Date: Fri Sep 15 11:23:57 2017 -0700
4594+
4595+ lib/file: Improve File_CreateDirectoryHierarchy error detection
4596+
4597+commit 84f5ee1d65982ced4f4e0dd847cfe7658e77b873
4598+Author: Oliver Kurth <okurth@vmware.com>
4599+Date: Fri Sep 15 11:23:57 2017 -0700
4600+
4601+ Fix processing RPC data in TimeSync RPC handler
4602+
4603+ RPC data is whitespace delimited string and any leading whitespaces need to
4604+ be ignoreed before processing data. The data here indicates whether timeSync
4605+ should do a backward sync on this RPC callback.
4606+
4607+commit 31f97a69bf993057f56ea16e2899c2f55c84f8d6
4608+Author: Oliver Kurth <okurth@vmware.com>
4609+Date: Fri Sep 15 11:23:57 2017 -0700
4610+
4611+ Change to shared header file unrelated to open-vm-tools.
4612+
4613+commit 9291087e5c01b0dab662bb61530d3ee5ce469a13
4614+Author: Oliver Kurth <okurth@vmware.com>
4615+Date: Fri Sep 15 11:23:56 2017 -0700
4616+
4617+ Adjust some logging levels
4618+
4619+ Make some of the more common vgauth failure cases show up at default
4620+ debug level.
4621+
4622+commit 0f94e2468307d13b9d70938e1ad817bceeb2e2b2
4623+Author: Oliver Kurth <okurth@vmware.com>
4624+Date: Fri Sep 15 11:23:56 2017 -0700
4625+
4626+ Add support for 64-bit inodes in FreeBSD 12
4627+
4628+ FreeBSD 12 is switching to 64-bit inodes which will cause some ABI
4629+ breakage in user code. This fix modifies the getdirentries() syscall
4630+ used in hgfsServerLinux.c for that FBSD 12 64-bit inodes.
4631+
4632+ The fix was provided by Josh Paetzel in open-vm-tools pull request
4633+ https://github.com/vmware/open-vm-tools/pull/190
4634+
4635+commit b851f91268e947ab4e7aff8c6bc9e3c84f7d81f4
4636+Author: Oliver Kurth <okurth@vmware.com>
4637+Date: Fri Sep 15 11:23:56 2017 -0700
4638+
4639+ Enable bsd_vsnprintf for __ANDROID__
4640+
4641+ Remove the __ANDROID__ check from Str_Vsnprintf, et al. It's
4642+ not supposed to be there anymore.
4643+
4644+commit 75c55bc6c01624884515b71af7e1a7a7843519e6
4645+Author: Oliver Kurth <okurth@vmware.com>
4646+Date: Fri Sep 15 11:23:56 2017 -0700
4647+
4648+ Add support to check if a native guest time sync service is running.
4649+
4650+ This change adds support to VMware tools timesync to identify if a guest
4651+ native time synchronization service is running. If a native sync service is
4652+ running, then a resync command is issued. If native time sync service is not
4653+ running, we fall back on legacy VMware tools onetime sync to do guest time
4654+ correction.
4655+
4656+ We also post a callback to do legacy VMware tools onetime sync after a
4657+ timeout period. A timeout can be configured if guest native resync command
4658+ fails to sync guest time.
4659+
4660+commit 695ab7662e4c9d25a5f86d298f04d777cd400cbf
4661+Author: Oliver Kurth <okurth@vmware.com>
4662+Date: Fri Sep 15 11:23:56 2017 -0700
4663+
4664+ Fix some compatibility issues between bsd_vsnprintf and bsd_vsnwprintf
4665+
4666+ Fix some compatibility issues between bsd_vsnprintf and
4667+ bsd_vsnwprintf so that the lib/string unit tests can have
4668+ consistent results.
4669+
4670+ * bsd_vsnprintf used uppercase hexadecimal digits for %p but
4671+ bsd_vsnwprintf used lowercase. vsnprintf has much more
4672+ inertia, so use uppercase in both.
4673+
4674+ * bsd_vsnprintf's floating point output was adjusted for bug
4675+ 704706, but corresponding changes were not made to
4676+ bsd_vsnwprintf.
4677+
4678+commit deb3feeefd8f653d1fe0e54e6708d8cacde5ab1d
4679+Author: Oliver Kurth <okurth@vmware.com>
4680+Date: Fri Sep 15 11:23:56 2017 -0700
4681+
4682+ lib/file: Continue simplifying and optimizing
4683+
4684+ Since we're UTF8 only, there are simplifications and
4685+ optimizations that can be done to lib/file, particularly in the
4686+ routines that look for directory separators and ASCII characters like
4687+ '.'. We don't need to use the unicode library to deal with these
4688+ type of code points.
4689+
4690+ This is the second in a sequence of changes to improve lib/file.
4691+
4692+commit a1290e66021b3d1e9d0f3c45edea80c5e7fb8488
4693+Author: Oliver Kurth <okurth@vmware.com>
4694+Date: Fri Sep 15 11:23:56 2017 -0700
4695+
4696+ Change to shared header file unrelated to open-vm-tools.
4697+
4698+commit 27d72451d479d96f1d1de901cb76820f5bdac38e
4699+Author: Oliver Kurth <okurth@vmware.com>
4700+Date: Fri Sep 15 11:23:56 2017 -0700
4701+
4702+ Change to shared header file unrelated to open-vm-tools.
4703+
4704+commit e30c97abc0fb8f0f6034d56d93b63b629365e2cb
4705+Author: Oliver Kurth <okurth@vmware.com>
4706+Date: Fri Sep 15 11:23:56 2017 -0700
4707+
4708+ Fix lib/string unit tests
4709+
4710+ Updates to lib/string.str.c and its unit tests.
4711+
4712+ * On Linux, Str_Vsnwprintf uses vswprintf from glibc[1].
4713+ However, glibc's vswprintf implementation appears to be
4714+ broken by not NUL-terminating the destination if truncation
4715+ occurs. Make Str_Vsnwprintf explicitly NUL-terminate along
4716+ this path.
4717+
4718+ * The unit tests expected that Str_Vsnwprintf use %s for
4719+ wchar_t* arguments (and %S for char* ones). That is a
4720+ Microsoft-ism (necessary for TCHAR-based printf functions
4721+ to use the same format strings with or without _UNICODE).
4722+ Our bsd_vsnwprintf function instead uses %s for char* (and
4723+ %S for wchar_t*). Existing callers to Str_...wprintf use
4724+ use the BSD implementation and expect the BSD behavior
4725+ (which is consistent with standard C in this regard), so
4726+ go with the existing behavior and adjust the tests.
4727+
4728+ * Some of the tests passed int arguments for floating-point
4729+ format specifiers. This is undefined behavior.
4730+
4731+ * Some of the tests had more format specifiers than
4732+ arguments. More undefined behavior.
4733+
4734+ * Finally, the existing Str_...printf tests are
4735+ fundamentally flawed: they compare output against the
4736+ system's printf functions. However, the whole point of
4737+ having our own is to have consistent behavior across
4738+ platforms and to work around bugs; the output therefore
4739+ cannot be expected to consistently match. Instead rewrite
4740+ the tests to compare Str_...printf output against fixed
4741+ strings.[2] Additionally, enable these tests only if
4742+ HAS_BSD_PRINTF/HAS_BSD_WPRINTF are enabled; I see no point
4743+ in testing the system versions (which won't have consistent
4744+ output), and IMO the BSD implementations are the only ones
4745+ we should be supporting.
4746+
4747+ [1] I do not understand why HAS_BSD_WPRINTF is enabled on
4748+ Linux only for < gcc 2.96 (and not at all for macOS).
4749+ This probably should be fixed, but not as part of this
4750+ change. (I also don't know why HAS_BSD_WPRINTF is
4751+ distinct from HAS_BSD_PRINTF.)
4752+
4753+ [2] bsd_vsnwprintf is not consistent with bsd_vsnprintf for
4754+ all format specifiers. I plan to deal with this later,
4755+ but for now, make the expected strings match the actual
4756+ output so we have a starting point where everything
4757+ passes.
4758+
4759+commit d04babd5bc7de9015c0fe881652723498069e7fa
4760+Author: Oliver Kurth <okurth@vmware.com>
4761+Date: Fri Sep 15 11:23:56 2017 -0700
4762+
4763+ lib/file: Cleanly handle directory separators
4764+
4765+ We want to handle Windows allowance of "/" and "\" as directory
4766+ separators. Let's have an easy way to check things and use it.
4767+
4768+ This is first in a sequence of changes to improve our handling of
4769+ directory separators in lib/file.
4770+
4771+commit f72d3ce3571f93e9dc8a404bece8264e8081e493
4772+Author: Oliver Kurth <okurth@vmware.com>
4773+Date: Fri Sep 15 11:23:55 2017 -0700
4774+
4775+ Add missing "const" to previous commit.
4776+
4777+commit a518cc08a6e6f77a665eefa0f29b19e5077a8445
4778+Author: Oliver Kurth <okurth@vmware.com>
4779+Date: Fri Sep 15 11:23:55 2017 -0700
4780+
4781+ lib/file: Rework File_ReplaceExtension and File_RemoveExtension
4782+
4783+ Fix a bug and simplify the code.
4784+
4785+commit 24de06bc3d445d68ebee9b55efd5393520ef8dab
4786+Author: Oliver Kurth <okurth@vmware.com>
4787+Date: Fri Sep 15 11:23:55 2017 -0700
4788+
4789+ Change to shared header file unrelated to open-vm-tools.
4790+
4791+commit a53bde7ecfdd3c544010559f1b84c11396fa9f7d
4792+Author: Oliver Kurth <okurth@vmware.com>
4793+Date: Fri Sep 15 11:23:55 2017 -0700
4794+
4795+ Change to shared header file unrelated to open-vm-tools.
4796+
4797+commit d840729ea449e19f9f2b6d5105c053c09085c364
4798+Author: Oliver Kurth <okurth@vmware.com>
4799+Date: Fri Sep 15 11:23:55 2017 -0700
4800+
4801+ Rename some parameters
4802+
4803+ The generic parameter names for Posix_Symlink/Posix_Link are
4804+ rather confusing. Rename them.
4805+
4806+commit 1917d98e6b002670095cec13b363f5894ab8cc0f
4807+Author: Oliver Kurth <okurth@vmware.com>
4808+Date: Fri Sep 15 11:23:55 2017 -0700
4809+
4810+ Revert previous commit.
4811+
4812+commit fbc7387c1edb0bc619cc05fecb84030809c38867
4813+Author: Oliver Kurth <okurth@vmware.com>
4814+Date: Fri Sep 15 11:23:55 2017 -0700
4815+
4816+ lib/file: File_ReplaceExtension fails in the root directory
4817+
4818+ On Linux, File_ReplaceExtension returns an incorrect path name for a
4819+ file in the root directory. The code, as written, doesn't differentiate
4820+ "test.txt" from "/test.txt". Fix this.
4821+
4822+commit 0f386a32789574bb73f75f0e8e82e80f0511416c
4823+Author: Oliver Kurth <okurth@vmware.com>
4824+Date: Fri Sep 15 11:23:55 2017 -0700
4825+
4826+ Update AUTHORS with pull request for fixing gcc6 build issues.
4827+
4828+ The issue in linuxDeployment.c has been fixed. This change is to
4829+ udpate the AUTHORS file.
4830+
4831+ - https://github.com/vmware/open-vm-tools/pull/107
4832+ - https://github.com/vmware/open-vm-tools/pull/107/files#diff-ffeb9f9be2f25b5b92ecf9101fa3aae5
4833+
4834+commit 2ad25b6bfe88e47dc9b2b995eba5af1a317aacd0
4835+Author: Oliver Kurth <okurth@vmware.com>
4836+Date: Fri Sep 15 11:23:55 2017 -0700
4837+
4838+ Update __IS_FREE_BSD__ macro in vm_basic_defs.h
4839+
4840+ The __IS_FREEBSD__ macro in vm_basic_defs.h uses "defined" in
4841+ the definition. That is undefined behavior and the FreeBSD default
4842+ compiler, clang (LLVM), warns about this pervasively misused
4843+ construct. With all warnings equivalent to an error, builds fail.
4844+
4845+ The object-like macro __IS_FREEBSD__ has been rewritten in a manner
4846+ acceptable to the current C standard.
4847+
4848+ Open-vm-tools pull request: https://github.com/vmware/open-vm-tools/pull/136
4849+
4850+commit c1c9b66c580bdda09d0c1e41d3d01e2803a9221f
4851+Author: Oliver Kurth <okurth@vmware.com>
4852+Date: Fri Sep 15 11:23:54 2017 -0700
4853+
4854+ Common header file change; not applicable to open-vm-tools.
4855+
4856+commit 39b3a708936a663d24a5ab8c6f4c45cd44dc12bb
4857+Author: Oliver Kurth <okurth@vmware.com>
4858+Date: Fri Sep 15 11:23:54 2017 -0700
4859+
4860+ Include new CAF PMT files in open-vm-tools
4861+
4862+ Add new CAF PMT files CmonitorListener.cpp, CMonitorListener.h,
4863+ and preconfigure-Listener.sh to open-vm-tools.
4864+
4865+commit fcee9fe84ab642d88230a0cb7b8db6fe6e2207d2
4866+Author: Oliver Kurth <okurth@vmware.com>
4867+Date: Fri Sep 15 11:23:54 2017 -0700
4868+
4869+ Re-instate ASSERTS in circList.h
4870+
4871+commit 136eab69cc5fcd9e4bdb2766810f5cb0a791c0ad
4872+Author: Oliver Kurth <okurth@vmware.com>
4873+Date: Fri Sep 15 11:23:54 2017 -0700
4874+
4875+ services/plugins/dndcp/dnd/dndCPMsgV4.c:
4876+ - Rework DnDCP v4 message validation.
4877+
4878+commit aa18cc61e5f1233cafff489be63b5660d9b8458b
4879+Author: Oliver Kurth <okurth@vmware.com>
4880+Date: Fri Sep 15 11:23:54 2017 -0700
4881+
4882+ deployPkg: Fix duplicate log message issue
4883+
4884+ Use linebuffer to prevent duplicate log message for forked off processes during customization.
4885+
4886+commit 321eaaafc80bc4d7e7c07b779d8021ff7adb27fc
4887+Author: Oliver Kurth <okurth@vmware.com>
4888+Date: Fri Sep 15 11:23:54 2017 -0700
4889+
4890+ Make TimeUtil_GetTimeFormat avoid a null pointer dereference if ctime_r fails
4891+
4892+ ctime_r potentially could return NULL on failure. Instead of
4893+ blindly dereferencing the result, TimeUtil_GetTimeFormat
4894+ should check for that and also return NULL (which callers
4895+ should already expect on failure).
4896+
4897+commit 74fab8557791b3b546c39a0a833ff9b5d9914d40
4898+Author: Oliver Kurth <okurth@vmware.com>
4899+Date: Fri Sep 15 11:23:54 2017 -0700
4900+
4901+ Change to shared header file unrelated to open-vm-tools.
4902+
4903+commit c4b6c83951aef605686f6313be4d0e18fb5abf9f
4904+Author: Oliver Kurth <okurth@vmware.com>
4905+Date: Fri Sep 15 11:23:54 2017 -0700
4906+
4907+ resolutionSet: Should not free RandR12Info when RandR12GetInfo failed
4908+
4909+ If for some reason RandR12GetInfo failed to return RandR12Info,
4910+ it should not follow the cleanup path to free it. Instead it
4911+ should return FALSE.
4912+
4913+commit ff8a4800edf33a887efcce487efd763f9343c71f
4914+Author: Oliver Kurth <okurth@vmware.com>
4915+Date: Fri Sep 15 11:23:54 2017 -0700
4916+
4917+ Export and call a valist version of Msg_Append
4918+
4919+ This change exports a valist version of Msg_Append.
4920+
4921+commit e43c3c193057843232471bb7c427781c22774832
4922+Author: Oliver Kurth <okurth@vmware.com>
4923+Date: Fri Sep 15 11:23:53 2017 -0700
4924+
4925+ Common header file change: not applicable to open-vm-tools.
4926+
4927+commit e28fabf2876cd256b80ad863a0d610d103fd121e
4928+Author: Oliver Kurth <okurth@vmware.com>
4929+Date: Fri Sep 15 11:23:53 2017 -0700
4930+
4931+ VThreadID: change to uintptr_t
4932+
4933+commit 2c2426bd2120546d93f0b7b49a22e9b3689556c0
4934+Author: Oliver Kurth <okurth@vmware.com>
4935+Date: Fri Sep 15 11:23:53 2017 -0700
4936+
4937+ Add 10.1.15 update release to vm_tools_version.h
4938+
4939+commit a02ecfdc12e18aa9aa1b4f9e1d6c61fa3eb9cdd3
4940+Author: Oliver Kurth <okurth@vmware.com>
4941+Date: Fri Sep 15 11:23:53 2017 -0700
4942+
4943+ Change to shared header file unrelated to open-vm-tools.
4944+
4945+commit 182df3e67dcd21f143aa5e1741ba4381067a21ee
4946+Author: Oliver Kurth <okurth@vmware.com>
4947+Date: Fri Sep 15 11:23:53 2017 -0700
4948+
4949+ lib/file: Posix FileLock_Lock pathName handling
4950+
4951+ Locking "/tmp" should create a lock "/tmp.lck".
4952+ Locking "tmp" should create a lock "./tmp.lck".
4953+
4954+commit 06c0cf16d765c4718825cc28ad9997476b5b0423
4955+Author: Oliver Kurth <okurth@vmware.com>
4956+Date: Fri Sep 15 11:23:53 2017 -0700
4957+
4958+ Add vmx config options for guest time service resync.
4959+
4960+ VMware tools timeSync can be enabled in a guest that also has a native
4961+ time service running. This can lead to race conditions when both the time
4962+ services are trying to correct system time. Particularly, when both of
4963+ these services tries to do a step correction on certain events, guest
4964+ time behaves in an undesirable manner that could cause guest
4965+ applications to fail. This change introduces a couple of vmx config options
4966+ that can be used to eliminate or atleast reduce the chance of race
4967+ condition between VMware tools timeSync and guest native time service
4968+ (like w32time or NTP).
4969+
4970+ The basic idea is to utilize native time service to resynchronize and
4971+ recalibrate its parameters and force to do a step correction if
4972+ necessary. VMware tools timeSync would send a service request to native
4973+ guest time service when it needs to do a step correction, rather than
4974+ correcting system time itself. This helps in having a single service
4975+ responsible for correcting guest system time and eliminates/reduces race
4976+ condition.
4977+
4978+ "time.synchronize.guest.resync"=<TRUE|FALSE> controls whether this new
4979+ method of guest time synchronization is enabled or not.
4980+ There might be situations where native guest time service resync request
4981+ is not successful. This could happen if the native time service is not
4982+ configured correctly or if there is an intermittent network outage, etc.
4983+ We would like to fall back to using legacy way of VMware tool timeSync
4984+ onetime correction in such failure scenarios.
4985+ "time.synchronize.guest.resync.timeout>=0" vmx option allows us to achieve
4986+ that. Tools timeSync would initiate a resync request, then wait for
4987+ 'timeout' period of time and would fall back of legacy timeSync onetime
4988+ sync behavior. This allows us to correct guest time even in case of
4989+ native guest time service failure.
4990+
4991+commit bb819650082a6714d0435831bf2bbf31c66718c5
4992+Author: Oliver Kurth <okurth@vmware.com>
4993+Date: Fri Sep 15 11:23:53 2017 -0700
4994+
4995+ Common source file change; not directly applicable to open-vm-tools.
4996+
4997+commit 433f1f2b4db1e55e9576ab5bb0bf02a4e040a299
4998+Author: Oliver Kurth <okurth@vmware.com>
4999+Date: Fri Sep 15 11:23:53 2017 -0700
5000+
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches