commit b6b01435c5d2eaaa66734392d0de754509b655fb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Dec 14 13:46:57 2017 -0800

    update build number

commit 09a044d2a4496e5f6adcfceb4070ea55001655ee
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Dec 14 13:42:36 2017 -0800

    update copyright header

commit 702f79c5bc3de1b33ec7cdadef23df39d310fc8e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Dec 14 13:42:01 2017 -0800

    add modinfo version

commit f58396af22966f23610bff164247771c82f2687f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Dec 8 18:57:38 2017 -0800

    CAF MA Performance Issues
    
    CAF MA Performance Issues
    
    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.
    This resulted in more CPU Utilization as opposed to previous release in CAF & caused regression in vmtools 10.2.0.
    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.
    
    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.
    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.

commit 68ecbd767b84a4fd11dd00556eaac0ef09955640
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Nov 30 15:17:27 2017 -0800

    Update the Tools-10.2.0 GA Open Source License Files.

commit e41c45536332a9195f5336bdcd0a94e11f8e9cfb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Nov 30 15:17:27 2017 -0800

    VGAuth changes:
    
     - add calling LoadUserProfile()/UnloadUserProfile() in VGAuth
       impersonation/unimpersonation code paths
     - VMTools side code change to use the new VGAuth SDK.

commit aa59fb2fd5f15b2514b1494171de40e082e46ba5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Nov 30 15:17:27 2017 -0800

    VGAuth changes:
    
     - add calling LoadUserProfile()/UnloadUserProfile() in VGAuth
       impersonation/unimpersonation code paths
     - VGAuth part of code change plus tools vix plugin make file.

commit 6bf279de6298f999abf66079e7e824d5498abd31
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Nov 30 15:17:27 2017 -0800

    Remove guestStats that are beyond ESXi 6.0 U1 scope.
    
    The guestStats in R10 Tools release follow ESXi 6.0 U1 scope.
    Remove the guestStats that are not in scope for ESXi 6.0 U1.

commit e5e2057a423028dc58a8cf753a12c1d38903a823
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Nov 30 15:17:27 2017 -0800

    Fix memory leak in vmtoolsd.

commit 3e7058028ce4352c39dcc2d3a012aa32ed50c421
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Nov 30 15:17:27 2017 -0800

    Tools: GuestInfo: ESX: dynamically load libvmkmemstats.so
    
    The new version of the vmware tools will be installed on older version
    of ESX.  But these older versions do not come with libvmkmemstats.so
    and a dynamic linking error occurs.
    
    This patch changes the code to deal with the case where the lib is not
    available.  Instead of relying on the linker to dynamically link with
    libvmkmemstats.so, g_module_open() is used to open the library, if
    available, and gracefully handle any eventual errors.
    Before the patch, the whole libguestinfo would stop working and after
    the patch only the memory stats are unavailable.

commit 41196c78ae6bd330f2f595071fe86e1082d19a85
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Nov 30 15:17:27 2017 -0800

    Adding copyright notice to a few CAF related files bundled in Open-VM-Tools.

commit 59bf741d25837028c8464a71ac5f4f65558fcd6a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Nov 15 13:32:56 2017 -0800

    GuestInfo: add primary-nics and low-priority-nics options
    
    Add the options 'primary-nics' and 'low-priority-nics' for GuestInfo.
    
    The options accept a list of comma separated patterns for interface names
    which can be considered as 'primary' or 'low priority' network interfaces.
    This will cause the NicInfo to be put on top of the list for primary
    interfaces, and to the bottom for low priority interfaces.
    
    Example:
    
    primary-nics=eth1
    
    will make sure that the IP address(es) for eth1 will be sorted on
    top of the list of IP addresses.
    
    primary-nics=eth*
    
    will make sure that any one of the addresses of all interfaces
    matching eth* will be sorted on top of the list of IP addresses,
    but won't guarantee which one if there is more than one.
    
    low-priority-nics=eth*
    
    will work analogously, but interfaces will be sorted to the bottom.
    
    In case the limit of the number of interfaces to be reported is reached,
    low priority interfaces are the first to be skipped.

commit 60719485b84d2d227d8950c50aa4a6c3c171de10
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Nov 15 13:32:56 2017 -0800

    Additional 2017 copyright updates.

commit ce05ffb4c8422e769f03f12e2529d0792668dda1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Nov 15 13:32:55 2017 -0800

    Update copyright year to 2017 for open-vm-tools 10.2.0.

commit c1aea05a4ab27c93d8664a6d1803a4a5cb936bb3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Nov 15 13:32:55 2017 -0800

    DragNDrop plugin change for VMware Tools on Windows; not applicable to
    open-vm-tools.

commit 6a9a7f9093af7f0378b134cd26ef2d2d61f0760b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Nov 15 13:32:55 2017 -0800

    Add SUSE Server for SAP Applications to hostinfoPosix.c
    
    On SLES-SP1-SAP the "lsb_release -sd" command returns the string
    "SUSE Linux Enterprise Server for SAP Applications 12 SP1".
    Parsing in HostinfoGetOSShortName() detects the sub-strings "suse"
    and "enterprise" but not "server 12".  STR_OS_SLES is returned
    resulting in displaying of "SUSE Linux Enterprise 8/9" in the
    summary screen of the vSphere client.  This is wrong.
    
    Instead, search for the sub-string "server for sap applications 12"
    and return STR_OS_SLES_12.  SLES11-SAP is not affected.
    
    Please see: github.com/vmware/open-vm-tools/pull/123

commit 0c5e736804c5a95c998e5361aa2d41ab5dbf7ef5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Nov 15 13:32:55 2017 -0800

    [Tools] Fix crash issue when stopping vmtoolsd(vmuser)
    
    When stopping vmtoolsd, the code tries to unload all plugins.  The
    signal TOOLS_CORE_SIG_CAPABILITIES is emitted before really starting
    to unload plugins.  If the plugin should try to call RpcChannel_Send
    while processing the signal and the RPC channel has been shutdown, an
    ASSERT is triggered.  The fix is to check whether rpc exists and if
    unavailable, avoid sending the TOOLS_CORE_SIG_CAPABILITIES signal.

commit aaab4ead2428c2aa40766054bd3457db5458e695
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Nov 15 13:32:55 2017 -0800

    open-vm-tools: make building with gtk3 the default
    
    This makes building with gtk3 the default, and sets sane
    defaults when building with/without gtk2/gtk3.

commit 1c854b407d9fcbf02f8d80542a6c731e3048193a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Nov 15 13:32:54 2017 -0800

    VMware Tools 10.2.0 L10n message updates.

commit 005db5fdbc6fae9d7f365cd02494c80da5fe7904
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Nov 15 13:32:54 2017 -0800

    Add new GOS definitions for virtual hardware version 14.
    
      RHEL 8 64-bit
      CentOS 8 64-bit
      Oracle 8 64_bit
      SLES 15 64-bit
      Asianux 8 64-bit
      Other 4.x Linux Kernel
      Other 4.x Linux Kernel 64-bit
      FreeBSD 12
      FreeBSD 12 64-bit
      Darwin 18 64-bit

commit 6e138c678923940ea8c3a3b8759036f3c5c2bf0d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Nov 15 13:32:54 2017 -0800

    GuestInfo: enable nic/iproute information for Linux without libdnet
    
    Linux glibc (since 2.3) fully supports getting ip addresses using
    getifaddrs() for both IPv4 and IPv6. Use of getifaddrs() was already
    implemented in nicInfoPosix.c for tools for ESXi. This change
    enables that code also for Linux, if libdnet is not used.
    
    The change also enables the iproute information, which does not
    depend on libdnet, except by the use of addr_stob(), which can
    be replaced easily with the existing function CountNetmaskBits().

commit c7bedd5b0729edfed3a7cd53eed7966f9efcc16f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Nov 15 13:32:54 2017 -0800

    Make disk free space reporting consistent with Linux 'df' command.
    
    On Linux, statfs syscall reports free space in two fields.
    From http://man7.org/linux/man-pages/man2/statfs.2.html:
    1. f_bfree => Free blocks in filesystem
    2. f_bavail => Free blocks available to unprivileged user
    
    For file systems that maintain reserved space for system
    activities f_bfree > f_bavail because f_bfree includes the
    reserved space in the file system. The reserved space is
    typically 5% for 'ext4' file systems. Newer distros like
    RHEL 7.x use 'xfs' by default and report same value for
    both the fields.
    
    The Linux 'df' command uses f_bavail in its reporting.
    Tools reports, conditionally, f_bfree for root and f_bavail
    for non-root.  However, since vmtoolsd runs as root, Tools
    always reports f_bfree, which is more free space than 'df'
    would report (depending on amount of reserved space).
    
    In order to be consistent with Linux 'df' command,
    report f_bavail as the disk free space by default. This does
    change the behavior a little bit in that Tools will report less
    disk free space than before, the difference being the same as
    the reserved space on the file system, typically 5%. This
    should be OK in general because it makes the space reporting
    a bit conservative. If this change in behavior is not desired
    for some use cases, the old behavior can be restored by setting
    the following newly added configuration in this change:
    
    [guestinfo]
    diskinfo-include-reserved=true
    
    The existing callers that are outside the guestInfo plugin
    will continue to include reserved space in their space
    accounting as before.
    
    Also fixed a few minor stuff/touchups in vmtoolsConfig.c.

commit 2795cc29fb5243f0dd91bbe233ea267a0f5ff764
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Nov 15 13:32:54 2017 -0800

    Add Str_Strncpy
    
    Add a Str_Strncpy function that, unlike strncpy, guarantees
    NUL-termination.

commit 36627cdec863b57cfbc544d489075891982aaec7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Nov 15 13:32:54 2017 -0800

    Fix a segfault when log file isn't set and conf is reloaded.
    
    When vmsvc.handler=file, but vmsvc.data isn't set, vmtoolsd crashed
    on reloading the config file. This was caused by using a NULL value
    as an argument to a strcmp().
    
    This change fixes this by using g_strcmp0 which handles NULL pointers
    gracefully, and setting confData to a default value before calling
    g_strcmp0().
    
    This also fixes a case where a change in the log file would be ignored.

commit 8803b5e1361c20fae371113e6a71d2bbb76fe840
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Nov 15 13:32:53 2017 -0800

    guestOS: Uniquely run time identify Photon
    
    Currently VMware Photon 2 is identified at run time as a Linux 4.x kernel.
    This is correct, but the Photon distro has an LSB compliant identification
    file.
    
    Attempt to check the LSB compliant identification file for Photon. If
    present, identify the guest as "vmware-photon".

commit fddd4c7f1c270d5bcf183afac084d4729153215f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 2 15:28:57 2017 -0700

    With the build of VMware Tools 10.2.0 product shifted to the
    product release branch, changing the 10.2.0 release macros to
    reflect that change of status.

commit ffa6a60b1f98ce0564238f3a2abe0046d54ac2ea
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 2 15:28:57 2017 -0700

    Update the Tools-10.2.0-Beta Open Source License Files.

commit 631907ab8989ad07d3b8c03829f5700bb2e3ee1a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:47:09 2017 -0700

    copy README.md from master

commit 962d4f21e2365e81d68ca2920175c0f1edbb6770
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:32:25 2017 -0700

    update version to 10.2.0

commit 1604e7c59f9491e0f98e39dc511a534ffea68879
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:35:01 2017 -0700

    sync libDeployPkg files

commit 2ec91a3f67059cff2d47c662e2177714742a241f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:58 2017 -0700

    GuestStats: Report memNeeded on ESX as a guest

commit f439d57482f7dd42e359fb0792269573c63c55a7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:58 2017 -0700

    GOSTable: Add MacOS 10.14 and FreeBSD 12

commit 1d661a68fced6b91e6c5e757915cddf8b7c7eb15
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:58 2017 -0700

    Guest OS: Add CentOS 8, OracleLinux 8, and AsiaNux 8

commit 8b2369ac8512b1436dbe2de5617e0265b522ee3a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:58 2017 -0700

    lib/file: Remove long dead functions from file.h
    
    These routines no longer exist. Remove them from the header file.

commit e2da656025ba8ddb8a8b223f9e73c0057a2eeeb9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:57 2017 -0700

    Revert part of the previous commit.
    
    Remove the VIM mapping for now.

commit 6ca6d42820b0ae44b02187925ebce7d2d21ab5e0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:57 2017 -0700

    guestOS: Add SLES 15 and RHEL 8

commit 31a6c06caeb75afd7d6a7e017c3b95b60ca9b6f0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:57 2017 -0700

    Change to common header file; not applicable to open-vm-tools.

commit 1b9b067c39da8446cb28a66914ff61dabadc71e9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:57 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 0c0f3e3c1fa82a1d63b75ccf6d8d775d915c66cf
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:57 2017 -0700

    Changes to common header files; not applicable to open-vm-tools.

commit c8811a844992cd610e0043998f8554989e843bd7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:57 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 91cd3e4fcf02ac4d5ada8723e6e6b285768d351b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:57 2017 -0700

    lib/file: Improve File_CreateDirectoryHierarchy error detection

commit 84f5ee1d65982ced4f4e0dd847cfe7658e77b873
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:57 2017 -0700

    Fix processing RPC data in TimeSync RPC handler
    
    RPC data is whitespace delimited string and any leading whitespaces need to
    be ignoreed before processing data. The data here indicates whether timeSync
    should do a backward sync on this RPC callback.

commit 31f97a69bf993057f56ea16e2899c2f55c84f8d6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:57 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 9291087e5c01b0dab662bb61530d3ee5ce469a13
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:56 2017 -0700

    Adjust some logging levels
    
    Make some of the more common vgauth failure cases show up at default
    debug level.

commit 0f94e2468307d13b9d70938e1ad817bceeb2e2b2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:56 2017 -0700

    Add support for 64-bit inodes in FreeBSD 12
    
    FreeBSD 12 is switching to 64-bit inodes which will cause some ABI
    breakage in user code.  This fix modifies the getdirentries() syscall
    used in hgfsServerLinux.c for that FBSD 12 64-bit inodes.
    
    The fix was provided by Josh Paetzel in open-vm-tools pull request
    https://github.com/vmware/open-vm-tools/pull/190

commit b851f91268e947ab4e7aff8c6bc9e3c84f7d81f4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:56 2017 -0700

    Enable bsd_vsnprintf for __ANDROID__
    
    Remove the __ANDROID__ check from Str_Vsnprintf, et al.  It's
    not supposed to be there anymore.

commit 75c55bc6c01624884515b71af7e1a7a7843519e6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:56 2017 -0700

    Add support to check if a native guest time sync service is running.
    
    This change adds support to VMware tools timesync to identify if a guest
    native time synchronization service is running. If a native sync service is
    running, then a resync command is issued. If native time sync service is not
    running, we fall back on legacy VMware tools onetime sync to do guest time
    correction.
    
    We also post a callback to do legacy VMware tools onetime sync after a
    timeout period. A timeout can be configured if guest native resync command
    fails to sync guest time.

commit 695ab7662e4c9d25a5f86d298f04d777cd400cbf
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:56 2017 -0700

    Fix some compatibility issues between bsd_vsnprintf and bsd_vsnwprintf
    
    Fix some compatibility issues between bsd_vsnprintf and
    bsd_vsnwprintf so that the lib/string unit tests can have
    consistent results.
    
    * bsd_vsnprintf used uppercase hexadecimal digits for %p but
    bsd_vsnwprintf used lowercase.  vsnprintf has much more
    inertia, so use uppercase in both.
    
    * bsd_vsnprintf's floating point output was adjusted for bug
    704706, but corresponding changes were not made to
    bsd_vsnwprintf.

commit deb3feeefd8f653d1fe0e54e6708d8cacde5ab1d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:56 2017 -0700

    lib/file: Continue simplifying and optimizing
    
    Since we're UTF8 only, there are simplifications and
    optimizations that can be done to lib/file, particularly in the
    routines that look for directory separators and ASCII characters like
    '.'. We don't need to use the unicode library to deal with these
    type of code points.
    
    This is the second in a sequence of changes to improve lib/file.

commit a1290e66021b3d1e9d0f3c45edea80c5e7fb8488
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:56 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 27d72451d479d96f1d1de901cb76820f5bdac38e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:56 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit e30c97abc0fb8f0f6034d56d93b63b629365e2cb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:56 2017 -0700

    Fix lib/string unit tests
    
    Updates to lib/string.str.c and its unit tests.
    
    * On Linux, Str_Vsnwprintf uses vswprintf from glibc[1].
    However, glibc's vswprintf implementation appears to be
    broken by not NUL-terminating the destination if truncation
    occurs.  Make Str_Vsnwprintf explicitly NUL-terminate along
    this path.
    
    * The unit tests expected that Str_Vsnwprintf use %s for
    wchar_t* arguments (and %S for char* ones).  That is a
    Microsoft-ism (necessary for TCHAR-based printf functions
    to use the same format strings with or without _UNICODE).
    Our bsd_vsnwprintf function instead uses %s for char* (and
    %S for wchar_t*).  Existing callers to Str_...wprintf use
    use the BSD implementation and expect the BSD behavior
    (which is consistent with standard C in this regard), so
    go with the existing behavior and adjust the tests.
    
    * Some of the tests passed int arguments for floating-point
    format specifiers.  This is undefined behavior.
    
    * Some of the tests had more format specifiers than
    arguments.  More undefined behavior.
    
    * Finally, the existing Str_...printf tests are
    fundamentally flawed: they compare output against the
    system's printf functions.  However, the whole point of
    having our own is to have consistent behavior across
    platforms and to work around bugs; the output therefore
    cannot be expected to consistently match.  Instead rewrite
    the tests to compare Str_...printf output against fixed
    strings.[2]  Additionally, enable these tests only if
    HAS_BSD_PRINTF/HAS_BSD_WPRINTF are enabled; I see no point
    in testing the system versions (which won't have consistent
    output), and IMO the BSD implementations are the only ones
    we should be supporting.
    
    [1] I do not understand why HAS_BSD_WPRINTF is enabled on
    Linux only for < gcc 2.96 (and not at all for macOS).
    This probably should be fixed, but not as part of this
    change. (I also don't know why HAS_BSD_WPRINTF is
    distinct from HAS_BSD_PRINTF.)
    
    [2] bsd_vsnwprintf is not consistent with bsd_vsnprintf for
    all format specifiers.  I plan to deal with this later,
    but for now, make the expected strings match the actual
    output so we have a starting point where everything
    passes.

commit d04babd5bc7de9015c0fe881652723498069e7fa
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:56 2017 -0700

    lib/file: Cleanly handle directory separators
    
    We want to handle Windows allowance of "/" and "\" as directory
    separators. Let's have an easy way to check things and use it.
    
    This is first in a sequence of changes to improve our handling of
    directory separators in lib/file.

commit f72d3ce3571f93e9dc8a404bece8264e8081e493
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:55 2017 -0700

    Add missing "const" to previous commit.

commit a518cc08a6e6f77a665eefa0f29b19e5077a8445
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:55 2017 -0700

    lib/file: Rework File_ReplaceExtension and File_RemoveExtension
    
    Fix a bug and simplify the code.

commit 24de06bc3d445d68ebee9b55efd5393520ef8dab
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:55 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit a53bde7ecfdd3c544010559f1b84c11396fa9f7d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:55 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit d840729ea449e19f9f2b6d5105c053c09085c364
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:55 2017 -0700

    Rename some parameters
    
    The generic parameter names for Posix_Symlink/Posix_Link are
    rather confusing.  Rename them.

commit 1917d98e6b002670095cec13b363f5894ab8cc0f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:55 2017 -0700

    Revert previous commit.

commit fbc7387c1edb0bc619cc05fecb84030809c38867
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:55 2017 -0700

    lib/file: File_ReplaceExtension fails in the root directory
    
    On Linux, File_ReplaceExtension returns an incorrect path name for a
    file in the root directory. The code, as written, doesn't differentiate
    "test.txt" from "/test.txt". Fix this.

commit 0f386a32789574bb73f75f0e8e82e80f0511416c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:55 2017 -0700

    Update AUTHORS with pull request for fixing gcc6 build issues.
    
    The issue in linuxDeployment.c has been fixed. This change is to
    udpate the AUTHORS file.
    
    - https://github.com/vmware/open-vm-tools/pull/107
    - https://github.com/vmware/open-vm-tools/pull/107/files#diff-ffeb9f9be2f25b5b92ecf9101fa3aae5

commit 2ad25b6bfe88e47dc9b2b995eba5af1a317aacd0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:55 2017 -0700

    Update __IS_FREE_BSD__ macro in vm_basic_defs.h
    
    The __IS_FREEBSD__ macro in vm_basic_defs.h uses "defined" in
    the definition.  That is undefined behavior and the FreeBSD default
    compiler, clang (LLVM), warns about this pervasively misused
    construct.  With all warnings equivalent to an error, builds fail.
    
    The object-like macro __IS_FREEBSD__ has been rewritten in a manner
    acceptable to the current C standard.
    
    Open-vm-tools pull request: https://github.com/vmware/open-vm-tools/pull/136

commit c1c9b66c580bdda09d0c1e41d3d01e2803a9221f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:54 2017 -0700

    Common header file change; not applicable to open-vm-tools.

commit 39b3a708936a663d24a5ab8c6f4c45cd44dc12bb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:54 2017 -0700

    Include new CAF PMT files in open-vm-tools
    
    Add new CAF PMT files CmonitorListener.cpp, CMonitorListener.h,
    and preconfigure-Listener.sh to open-vm-tools.

commit fcee9fe84ab642d88230a0cb7b8db6fe6e2207d2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:54 2017 -0700

    Re-instate ASSERTS in circList.h

commit 136eab69cc5fcd9e4bdb2766810f5cb0a791c0ad
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:54 2017 -0700

    services/plugins/dndcp/dnd/dndCPMsgV4.c:
      - Rework DnDCP v4 message validation.

commit aa18cc61e5f1233cafff489be63b5660d9b8458b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:54 2017 -0700

    deployPkg: Fix duplicate log message issue
    
    Use linebuffer to prevent duplicate log message for forked off processes during customization.

commit 321eaaafc80bc4d7e7c07b779d8021ff7adb27fc
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:54 2017 -0700

    Make TimeUtil_GetTimeFormat avoid a null pointer dereference if ctime_r fails
    
    ctime_r potentially could return NULL on failure.  Instead of
    blindly dereferencing the result, TimeUtil_GetTimeFormat
    should check for that and also return NULL (which callers
    should already expect on failure).

commit 74fab8557791b3b546c39a0a833ff9b5d9914d40
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:54 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit c4b6c83951aef605686f6313be4d0e18fb5abf9f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:54 2017 -0700

    resolutionSet: Should not free RandR12Info when RandR12GetInfo failed
    
    If for some reason RandR12GetInfo failed to return RandR12Info,
    it should not follow the cleanup path to free it. Instead it
    should return FALSE.

commit ff8a4800edf33a887efcce487efd763f9343c71f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:54 2017 -0700

    Export and call a valist version of Msg_Append
    
    This change exports a valist version of Msg_Append.

commit e43c3c193057843232471bb7c427781c22774832
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:53 2017 -0700

    Common header file change: not applicable to open-vm-tools.

commit e28fabf2876cd256b80ad863a0d610d103fd121e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:53 2017 -0700

    VThreadID: change to uintptr_t

commit 2c2426bd2120546d93f0b7b49a22e9b3689556c0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:53 2017 -0700

    Add 10.1.15 update release to vm_tools_version.h

commit a02ecfdc12e18aa9aa1b4f9e1d6c61fa3eb9cdd3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:53 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 182df3e67dcd21f143aa5e1741ba4381067a21ee
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:53 2017 -0700

    lib/file: Posix FileLock_Lock pathName handling
    
    Locking "/tmp" should create a lock "/tmp.lck".
    Locking "tmp" should create a lock "./tmp.lck".

commit 06c0cf16d765c4718825cc28ad9997476b5b0423
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:53 2017 -0700

    Add vmx config options for guest time service resync.
    
    VMware tools timeSync can be enabled in a guest that also has a native
    time service running. This can lead to race conditions when both the time
    services are trying to correct system time. Particularly, when both of
    these services tries to do a step correction on certain events, guest
    time behaves in an undesirable manner that could cause guest
    applications to fail. This change introduces a couple of vmx config options
    that can be used to eliminate or atleast reduce the chance of race
    condition between VMware tools timeSync and guest native time service
    (like w32time or NTP).
    
    The basic idea is to utilize native time service to resynchronize and
    recalibrate its parameters and force to do a step correction if
    necessary. VMware tools timeSync would send a service request to native
    guest time service when it needs to do a step correction, rather than
    correcting system time itself. This helps in having a single service
    responsible for correcting guest system time and eliminates/reduces race
    condition.
    
    "time.synchronize.guest.resync"=<TRUE|FALSE> controls whether this new
    method of guest time synchronization is enabled or not.
    There might be situations where native guest time service resync request
    is not successful. This could happen if the native time service is not
    configured correctly or if there is an intermittent network outage, etc.
    We would like to fall back to using legacy way of VMware tool timeSync
    onetime correction in such failure scenarios.
    "time.synchronize.guest.resync.timeout>=0" vmx option allows us to achieve
    that. Tools timeSync would initiate a resync request, then wait for
    'timeout' period of time and would fall back of legacy timeSync onetime
    sync behavior. This allows us to correct guest time even in case of
    native guest time service failure.

commit bb819650082a6714d0435831bf2bbf31c66718c5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:53 2017 -0700

    Common source file change; not directly applicable to open-vm-tools.

commit 433f1f2b4db1e55e9576ab5bb0bf02a4e040a299
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:53 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 63e4a016d5bba58121cbbebb8f7711a0bf70436c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:52 2017 -0700

    VThread: factor out common thread-name assignment

commit 4a08aedc1a3bfbe666896d13380265f3948684ac
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:52 2017 -0700

    Hgfs OSX Server: Create and use server callback table for change notifications
    
    There are now three different callbacks into the Hgfs server from the file
    change notification component. So we now pass these in a table to the nofify
    module when it is initialized instead of ad hoc. Previously, the same
    callback is passed for every subscriber watch event and therefore duplicated
    and stored in each subscriber.
    
    Note that the feature is currently switched off by default until these changes
    are complete. A user will explicitly have to enable the VMX file setting and
    would cause a VMX assert to be triggered.
    
    Details:
    - The server now creates a table for its notification callbacks and passes
      it to the notify initialization function.
    - The server now includes the async thread registration callbacks previously
      ifdef'd out.
    - The Notify_Init function APIs are updated to reflect the new argument for
      callbacks.
    - The HgfsNotify_AddSubscriber argument does not include the callback as it
      is now passed once at the initialization time.
    - The HgfsNotifyEventReceiveCb type has been modified now it is an entry in
      the callback table.
    - The subscriber callback function call is now validated to be non-NULL
      before calling.
    - The Mac notify module adds the server callback table to its FS event
      context which is passed to the event generating submodule for the Mac
      implementation.
    - The Mac notify module adds its own FS event callbacks for thread register
      and unregister called from the FS event module when registering and
      unregistering its FS event thread.

commit 3633fa4ab2b5cbd97bfed0cdc14cda842675bd9e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:52 2017 -0700

    CAF - Preconfigure the listener + follow guest proxy
    
    Listener is auto configured during the install upon MA being started.
    Listener is started/stopped automatically when tunnel is enabled/disabled.

commit 1f72b0f9878355ea2263d57b16dd35682b2720f9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:52 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit e854fc4e547c5f7f4c989e38e233e6567d588386
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:52 2017 -0700

    Add error logging to lib/file/file.c create folder functions

commit 7e5f9a8025926b56e77d63f11cff70b606dfd0be
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:52 2017 -0700

    Re-gen rabbitproxy key if its perms are bad
    
    Make sure nothing has played with our keyfile permissions.
    The old (9.10) VB script that generated the key left it world-readable,
    and it's also possible someone could mess up the perms.
    This change checks the perms, and if they're wrong, regenerates
    the cert & key.

commit ad4f5db55d031ce7d1b75ddc64c3f046c24469de
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:52 2017 -0700

    GuestInfo: Add option to exclude network interfaces
    
    VMs running docker can have hundred of virtual network interfaces.
    Also, docker creates one virtual network interface 'docker0' with
    an IPv4 address. This address is useless outside the VM, and should
    not be propagated via GuestInfo, or even as the primary network
    address.
    
    This change adds on option for tools.conf to exclude specific
    network interface names using patterns with wildcards. This makes
    it easy to exclude virtual docker interface names with the option
    
    exclude-nics=docker*,veth*
    
    For convenience, the option is set to docker*,veth* by default,
    except for Windows, where it is "vEthernet*". To
    send information of all interfaces, including docker* and veth*,
    the option needs to be set to an empty value: exclude-nics=

commit 6a74858200ae2fb5908b74676da56124d83a8285
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:52 2017 -0700

    Fix vm_basic_types.h broken in previous commit.

commit 6cc7edaf4294f47d6210af45c1ba64d967a031a2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:52 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 8b50e2372fbf110a1e41225c9e67fb6720344f8b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:52 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit d36368429913b21291917e4b00bc2ba92e2d3c0a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:52 2017 -0700

    Remove VThread_WaitThread

commit cd7b6d0c9575f9728f425d3043fc87639bc2cab0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:51 2017 -0700

    VThreadBase: Final cleanups

commit a10c8df8b9f9609e025d231fe596e2fce6b8e750
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:51 2017 -0700

    Tools Hgfs Plugin: Refresh Hgfs drives on client start
    
    In order to get Explorer to see that VMware Shared Fodlers
    drives are available when the feature is enabled, we touch
    each drive that is mapped as a VMware Shared Folder. This
    is to prevent users being confused when they have the feature
    enabled but Explorer creates the user's drive mappings before
    the tools service has initialized the Hgfs plugin and started
    the Hgfs client. In this situation the drives are marked
    as red (disconnected) until the user clicks on the mapped
    drive when Explorer will refresh the connction and set it
    to green (connected).
    
    Details:
    - Main service will usually create otheriwse open a named event
      to synchronize with the user service.
    - Main service will start the HGFS client redirector (as before
      this is not new).
    - Main service will set the synchronization event to signalled.
    - User service will usually open the named event (or create it
      if first).
    - User service will enumerate all the mapped network drives and,
      if they are provided by the VMware Shared Folder redirector,
      reconnect them.
    - The named event will be created with Administrators group all
      access and Everyone with modify state to signal it and synchronize
      to wait on it.

commit d4a5693af649e7c8f87667c60b7e6575b15faa0e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:51 2017 -0700

    Emphatically close virtual disk.
    
    Sometimes I/O stack modules return EBUSY during teardown.
    This may be due to an external process opening files at
    inopportune moments. The workaround is to retry the affected
    operations.

commit 04d01f93f26b748d0fbb6bc1ea571e90fbc005d7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:51 2017 -0700

    lib/file/filePosix.c: Implement File_GetMountPath() for POSIX
      - The change implements File_GetMountPath() for POSIX,
        using realpath(3) and readlink(2).
    
    Changes to common header files; not applicable to open-vm-tools.

commit 47ffaf37a9f604ffc1099d249dba21857dd426d3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:51 2017 -0700

    VThreadBase: Switch to "stable" thread IDs
    
    Now that lib/thread no longer has a dependency on small-numbered
    VThreadIDs, and now that lib/thread has ceeded control of assigning
    VThreadIDs to threads, we can make VThreadBase really simple.

commit c6f360fc8e9b25d9478864903886895cedeff4e0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:51 2017 -0700

    lib/lock: Clarify comments

commit d98582711a87185657cd9f125d58f3fdd48dbc0a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:51 2017 -0700

    Clear vmusr as resolution_server when resolutionKMS is enabled
    
    Whenever resolutionKMS is enabled, send
    "tools.capability.resolution_server toolbox-dnd 0" to clear
    resolutionSet as resolution server.

commit 22c3f23f55153f08e788db6c4ae7a96d555ed8ca
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:51 2017 -0700

    Changes to common source files; not applicable to open-vm-tools.

commit eecfdd625b3e134830a7c012fc8aadda36bfd4da
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:51 2017 -0700

    Use correct osname for FreeBSD 11.
    
    For FreeBSD 11 and later the correct osname is "freeBSD11".
    Without the correct osname, guestInfo ends up with the wrong
    guestId and guestFullName.
    
    Also cleaned up some unused code.

commit 0ca5c37c17a9631533de41eba1f770ca833c07e9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:50 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit fbead2824b81be34cb2a61e1310da9188adc383f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:50 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit fbd04d3227be7adeb307b508d7994236161927f5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:50 2017 -0700

    Common header file change; not applicable to open-vm-tools.

commit 74e48b8fc16e6cfe765a32568e437a98d3ad1548
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:50 2017 -0700

    Common header file change; not applicable to open-vm-tools.

commit 00b13522c0f12774b2d39e999855216f53648c1a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:50 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 407459a2ceee1d845a5055a856b5947ca00836f4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:50 2017 -0700

    VSOCK: Add getsockopt to determine stream socket disconnect cause
    
    This is the vSocket part of adding support for getting the
    disconnect cause of a vSocket stream socket. This adds a
    getsockopt option to determine stream socket disconnect cause
    as registered by the underlying VMCI queue pair.

commit ad5c63faa35f3b3e8e6a035e76ba1c043ae8c756
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:50 2017 -0700

    Convert Util_GetCurrentThreadId to VThreadBase_GetKernelID
    
    This code now "lives" in VThreadBase since it is thread-related. The
    two functions behave (very) similarly.
    
    Some locations should use VThreadIDs instead of KernelIDs. Convert them.
    
    Remove the util.h and lib/misc bits.

commit 55a1aa0c2917bf69c919bd6b202464d8b3febee3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:50 2017 -0700

    Remove Util_GetCurrentThreadId from VIX
    
    Some cleanup now that VThreadBase_GetKernelID() is available
    in VIX code, we log the thread which made certain API calls.
    
    The thread name is already logged in our Log() implementation,
    so having the thread ID merely wastes bytes. Remove it.
    
    (Thread IDs like this are useful for correlating with kernel logs.
    Which in practice does not apply to VIX).

commit b8912055edb714afd8c0b1124a64502c712f0f6c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:50 2017 -0700

    Add some tweaks to make it easier to test old tokens
    
    At times its useful to be able to play with SAML tokens
    which have expired assertions but we still care about
    signing or aliasStore configuration issues.  This change makes it
    easy to tweak the code and run these old tokens through.

commit 241fd29fa3352d17aacc13754de3304538d0a3d4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:50 2017 -0700

    Enable XML manifest by default.
    
    Enable Tools enableXmlManifest by default for quiesced snapshots on Linux.

commit 3b80a0df4bac2f5de52117096a482ab3f490f52a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:50 2017 -0700

    lib/file: Must be errno safe
    
    lib/file is documented to be safe about returning errno. This is true
    on Window and Posix platforms. We've had a bug where free can change
    errno. We created Posix_Free to protect errno but haven't used it
    consistently.
    
    Make lib/file use Posix_Free universally.

commit 0dd222a31a10c0591a95009e7ca7c60046b6e6b3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:49 2017 -0700

    Changes to common header files; not applicable to open-vm-tools.

commit 94e8e7478d2528466d0eecbd29aa441f748a4235
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:49 2017 -0700

    Hgfs Server: Fix the tools build
    
    Make the HgfsServerAsyncInfoIncCount to be VMX code only as the current
    usage is not in the tools implementation.

commit 3466376924a5338b3b596d8f960942e30b0ecef7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:49 2017 -0700

    Hgfs Server: Move async request globals into the Hgfs session
    
    This change moves the async request globals into the Hgfs session.
    They are only applicable to a session and only used during a session's
    lifetime, so making them global is not necessary and means that
    they take up resources when not used.
    
    Details:
    - Move the previous globals into a structure for async requests.
    - Add the async requests structure to the HgfsSessionInfo object.
    - Create a set of helper functions to init, exit and manipulate the
      async requests structure.
    - Remove the calls to init and teardown the globals now they don't
      exist.
    - Add the helper calls to the session creation and destruction.
    - Add the helper calls to replace adding a new async request, removing
      an async request, and waiting for all async requests to complete.

commit 93f1036f2d69c6c50780a536eb6b2a15b198c03a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:49 2017 -0700

    Remove dead FileMacos_IsOnExternalDevice function.
    
    FileMacos_IsOnExternalDevice does not have any callers.

commit 0db66edd78699e10f069476998cb3469c42da316
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:49 2017 -0700

    Common header file change; not applicable to open-vm-tools.

commit 10eed7e90059f666e50a0ca4df1de2f4947bd62b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:49 2017 -0700

    Add MacOS 10.13 to guest os tables

commit dec55c31e7dcdbb747647123ad60cc2cde4e0635
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:49 2017 -0700

    Avoid loading resolutionSet when support for resolutionKMS available
    
    Loading resolutionSet with display NULL will cause a segmentation
    fault in vmtoolsd user process. This change only avoids the
    SEG fault. Still need to channel the resolution/topology request
    to correct channel presenting the capabilities.

commit 4fe253f4e6234f3bb78b270c371d8fdba967ff0d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:49 2017 -0700

    Common header file change; not applicable to open-vm-tools.

commit 3a9fa9be672b582088c3219420b2dfcb37b60376
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:49 2017 -0700

    Formalize VThreadBase "Stable" and "Kernel" IDs
    
    Unrelated to open-vm-tools.

commit 932781290802e9c152b219c656d18ca03bf4df43
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:48 2017 -0700

    lib/file: Less variation on file lock waits
    
    The wait time are large enough that less variance will prevent too
    frequent polling. This is important due to the randomized waiting now.

commit ffc043963f8da7e83bc091262301876ce7016a76
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:48 2017 -0700

    Remove definition for "solaris12-64"

commit 964e7623701cd03bd4b8529abab0a083b94e8570
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:48 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 24a6ab223b139fdc191b913d8d551ed61ca07e01
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:48 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit a6ce51f170a2073b5b39680c2526de9e4de865b2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:48 2017 -0700

    Fix Atomic_SetBit64 being miscompiled when the bit argument is a constant.

commit d7a7fca30e47414827528163a4c96145dcd6043e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:48 2017 -0700

    lib/include/sha1.h:
      - Clean up - change unnamed struct to "struct SHA1-CTX" in SHA1_CTX typedef.

commit 22b146ef9a291b9c4cd8a604de3e042cec886eda
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:48 2017 -0700

    lib/thread: Prune a little more
    
    Remove automatic VThread_SetName for unmanaged threads.
    
    Other minor removals and tweaks:
    - modify "safe" name in VThreadBase to use gettid or
      pthread_threadid_np if available
    - Move lib/thread name computation to child thread to remove dependency
      on VThreadID in parent.
    - Convert VThreadFreeID to VThreadFree (and avoid a lookup)
    - Move VThreadBase_ForgetSelf to VThreadDestroyThread to
      make VThreadHostDestroyThread straightforward.
    - The 'priority' field had become write-only after earlier cleanups
      to replace AdjustThreadPriority with SetThreadPriority. Remove it,
      and some dead comments mentioning it.
    - Remove unused 'signalNestCount' atomic.
    - Remove two unimplemented VThreadInt prototypes.
    - Remove a vacuously-true ASSERT in VThreadHostExitThread()

commit b1c4f77f80b8ecfe3c97bd8d14b42e8543b12303
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:48 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 564668d513a4fdb595fd4440f4e640c752c24e12
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:48 2017 -0700

    lib/file: Add a comment on why sleeps for file locks are randomized
    
    The randomization prevents lock cadence issues (thundering herds).

commit 087e74c292fcad86afa08d6a21b88cb57ab3bc7e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:48 2017 -0700

    Hgfs OSX Server: Reinstate checkpoint synchronization and process session
    
    First reinstate the server checkpoint synchronization routine by adding
    it into the table the HGFS server session callback table which is returned
    to the transports upon initialization. These transports will then call
    into the HGFS server when asked by the HGFS server manager which receives
    the check point synchronization calls.
    
    When processing the synchronization request for the operation type -
    freeze or thaw we must pass through the session information to the
    activation and deactivation calls into the file system change notification
    subsystem. These calls will require the session for register-unregister
    any active threads generating events.  This change just plumbs through
    the session as the argument. Follow on changes will make use of the
    session argument passing it on to the event generating component.
    
    Bonus here is that we can delete an unwarranted global from the HGFS server.
    A to do comment is added to move the async globals into the HGFS server
    session object as they should be a per HGFS  session and are useful only
    on a per session basis. No session then no need for them to be around and
    if the session does have asynchronous support then again will not be required.
    For example, if the transport does not support this behavior no need to
    check them.

commit 774bfbf5d5752b22947dd975b14734c30aec6379
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:47 2017 -0700

    Improve a comment

commit a7c6fce7191365c07b1e70abee314e18295b49c9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:47 2017 -0700

    Clarify a comment. Spell out the units.

commit 35683b97ced00c29b0e3f65ee50ec6740e143a8d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:47 2017 -0700

    lib/file: Use MIN macro

commit 9c13bf3fb45c4ce5711cedbde11272fd3dd39511
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:47 2017 -0700

    lib/file: consistant usage of msec
    
    We now want msec to be at the end, to be consistant with our current
    usage.

commit a2165e98d3edac4f0c395549bd12a905038f9e81
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:47 2017 -0700

    lib/lock: msec consistancy
    
    We want the "msec" at the end of variables. This improves readability
    and is consistant with the usage elsewhere.

commit 8da9461f220ed391f60a78c4f0a9509c474f4d12
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:47 2017 -0700

    lib/file: FileLockSleeper issues
    
    While waiting for a contended file lock, FileLockSleeper was using
    fixed values for how long to sleep between attempts. This can lead to
    a "thundering herd" of waiters - several waiters all on the same
    cadence. Randomize waiting to avoid any cadence.
    
    Waiting for a lock should wait no longer than the specified time. Fix
    This.

commit 174644096520c5cd6d26a4a9cf3d8e5a410af52a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:47 2017 -0700

    Fixing the UTF-8 locale dependency in CAF.
    
    CAF currently has hard dependency on UTF-8 locale which is
    resulting in Tools and CAF failures in environments without
    UTF-8 support.  Modify the existing code to fallback to
    ANSI C locale if UTF-8 is not found.

commit d3491185377ec39e8031b1ffb806fe781f329c1f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:47 2017 -0700

    VThreadID: widen to uint64
    
    Convert VThreadID to uint64.

commit de798a4a4ab0d09bb3c0366f383bf8a46bf7d194
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:46 2017 -0700

    TimeUtil_GetTimeOfDay reports incorrect time on Windows
    
    The conversion from FILETIME to Unix time was off.

commit 8ba9c76d322b24dc56b9bf51b018a0925f9f6d1d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:46 2017 -0700

    Unify mapping tables between VMX and VIM guest OS keys
    
    There are multiple places that maintain their own tables
    mapping VMX guest OS keys to or from VIM guest OS keys.
    Unify them to make the situation a bit less cumbersome.
    
    Put the mapping table into guest_os_tables.h.
    The different sites use the mappings in different ways (some
    code wants the VIM guest OS keys as strings, whereas other
    code wants them as enum identifiers), so use preprocessor
    macros to extract the data.

commit 211e99aad3da1a9c755e30bf4cf02667ff5480c4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:46 2017 -0700

    Save errno after kill() fails, restore the saved errno after logging the error.

commit e1d6a45ccceb058eb428baca7d0b1a72c29c9fe5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:46 2017 -0700

    Fix error introduced in strutil.c

commit 3c12e7db4c252e67a1f9a8e758408a0af387850c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:46 2017 -0700

    timeutil.c code cleanup.

commit 324bec1a2057ceb7d37469709ed2b8db2ca6348e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:46 2017 -0700

    The check for overflow in StrUtil_SafeStrcat needs work.
    
    Might as well avoid protential overflow while also checking for
    "insane" string lengths.

commit 9363088bda0da2ff1798fb0ac39117054cc83421
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:46 2017 -0700

    Common source file changes that are not applicable to open-vm-tools.

commit 7f80d52ddbe15f33b666eb429e64852becff1696
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:46 2017 -0700

    Remove obsolete product version definitions

commit 3b63e7702a0c945bd9a87b24ef5cfd54574227a2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:46 2017 -0700

    Don't call FreeLibrary with NULL.
    
    According to the documentation and annotations of FreeLibrary, NULL is
    not a legal value to pass. All other calls to FreeLibrary are
    correctly handled.

commit d8c55cda2442b948d12de3c542c3c30c2daa9926
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:46 2017 -0700

    Common header file change; not applicable to open-vm-tools.

commit 765d498b9aadd37a72cd3a0f79f67dd6a878ef90
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:45 2017 -0700

    Common header file change; not applicable to open-vm-tools.

commit e5fd332b6ce8e712dffa7d8e828e3e4a47a3f063
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:45 2017 -0700

    Common header file change: not applicable to open-vm-tools.

commit 84cf06912d4060ce29fd7a3b765eb34917dd1501
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:45 2017 -0700

    Remove logic for unsupported versions of macOS.
    
    We no longer support macOS 10.4-10.7.  Remove the old logic that supported
    these versions.

commit bccd28961d9c23271126fee1a2b45c9acd698107
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:45 2017 -0700

    Create symlink for vmware-user
    
    When the vmtoolsd user daemon receives a SIGUSR2, it restarts itself
    by executing 'vmware-user' and terminates. This is used on upgrades,
    to make sure the current version of vmtoolsd is running.
    
    In the tar installer, /usr/bin/vmware-user is a symlink to
    vmware-user-suid-wrapper. Unfortunately, that symlink was not installed
    by open-vm-tools.
    
    Package maintainers should send this signal to the vmtoolsd user
    process when open-vm-tools is updated.

commit 4e7e626ceef413b02c3831cc25f70be970bc9829
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:45 2017 -0700

    AsyncSocket:
      - Fix issue where the listening socket becomes bad and the callback
        function is invoked unexpectedly.
      - Change not directly applicable to open-vm-tools.

commit c85fe685b518311d3fa1f2ce44b6c7ba38500d2d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:45 2017 -0700

    err.h: Add missing include
    
    err.h is missing any include that would provide a definition for DWORD.
    Fix by including vm_basic_defs.h (which includes windows.h)

commit 05d0f730fb032f80de169318d90fb973012a9d93
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:45 2017 -0700

    Common source file change: lib/include/strutil.[ch]
      - Add function StrUtil_GetLastItem() and static functions StrUtilStrcmp(),
        StrUtilStrncmp(), StrUtilStrcasecmp(), StrUtilStrncasecmp(),
        StrUtilHasListItem() and StrUtilRemoveListItem().

commit 836575d370458bd2c34324f921d561c551a6b0d1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:45 2017 -0700

    Remove N_PLAT_NLM (NetWare)
    
    Long ago, we supported NetWare. That's long since gone, but a few
    of the macros have managed to survive fumigation since. This removes
    all such macros.

commit 237cb3a758d23355f559756ce159f59f6dea8c5c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:45 2017 -0700

    Update the open source license files for Tools.

commit b51fee38c87ecccd7774107e22b85f0eea1a7309
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:45 2017 -0700

    Revert previous commit.

commit f68ecb12ebc92592463c0cdcd97f50bc5abb8ea2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:44 2017 -0700

    lib/misc: StrUtil_SafeStrcat length overflow checking
    
    The check for overflow in StrUtil_SafeStrcat needs work.
    
    Might as well avoid protential overflow while also checking for
    "insane" string lengths.

commit ecdc55d43ab00c0a0454af1bc15a8b215f086c55
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:44 2017 -0700

    lib/thread: Change VThread_CreateThread prototype
    
    Change the VThread_CreateThread prototype from this:
    
    VThreadID VThread_CreateThread(void (*fn)(void *), void *data,
                                   VThread tid, const char *name);
    to this:
    
    Bool VThread_CreateThread(void (*fn)(void *), void *data,
                              const char *name, VThread *tid);
    
    The new prototype returns essentially the same information, with
    one important advancement: we can contractually guarantee the 'tid'
    field is populated BEFORE the child thread starts. This neatly
    avoids all sorts of interesting race conditions where the child
    starts running before the CreateThread function passes back its
    return value. This style of design is preferred by operating
    systems (see Posix pthread_create, Win32 CreateThread).

commit 998f79aaf08b7d1f94693441a71c7f8dba4be34c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:44 2017 -0700

    Don't try to use broken RPC channel
    
    Make sure RPC channel exists before trying to use it.

commit 5c3e95565dc086143e1311e53f0b5cacacca8233
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:44 2017 -0700

    Check for Xen, VirtualPC etc., only if VMware not detected
    
    This is a workaround to avoid random vmtoolsd crashes when running
    on a VMware VM. This fix ensures that we check for Xen and VirtualPC only
    if we haven't already detected a VMware hypervisor.

commit 8dac3e7b85c8c19168c89ddae32d2e99c2b693c5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:44 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 5799596b11f1a907a35549952812bd20c48a84d5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:44 2017 -0700

    strutil.c: code clean up

commit d2321f07f86157886bbfa96c05c5bf4598151696
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:44 2017 -0700

    Atomic_CMPXCHG64: pass by value and remove gcc-2.96-isms

commit e2247e5ba1830c5ed70153027df4834285cd1041
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:44 2017 -0700

    Revert the previous commit.

commit 42ac2a1eca59453870d8f09b83948f3c04c559c3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:44 2017 -0700

    Get rid of convertutf and bsd_printf for all non-Windows Tools
    
    Eliminate the use of convertutf8.c for all non-Windows Tools.
    
    The MsgFmt_* functions are referenced in a few utilities
    related to VMware Tools. This change replaces the MsgFmt_*
    with a stub. This also affects the Windows version.

commit 8484528eef9106be5a58885b29083a8622bcdc76
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:44 2017 -0700

    fileIO.h: Clean up some comments
    
    Make the comment style consistent

commit 9fbb5a9c0eb6aa1571689c1b960ab7acf7cb7b19
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:44 2017 -0700

    lib/file: support POSIX O_CLOEXEC
    
    On POSIX systems add support for O_CLOEXEC - close the file descriptor
    if the program does a variant of the exec system call.

commit f5f0d2872ff77a586a24a8959a74e85cbf30654e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:43 2017 -0700

    Hgfs Server: Fix snapshot synchronization callback
    
    Currently when snapshots occur, the VMX calls the HGFS server
    manager synchronization callback to notify the Hgfs server to
    freeze or thaw the Hgfs file IO activity.  First, this Hgfs
    server synchronization callback is called regardless of the
    Hgfs Shared folders feature and server is enabled or not.
    Consequently, the Hgfs server callback lamely uses a global
    variable to track the server state just for this call and
    returns without doing anything if not initialized.
    Second, the HGFS server now requires the transport connection
    in order to extract the Hgfs session as the file notification
    component requires the session to allow its event generating
    thread to callback to the server to register and unregister
    through the transport which uses the PhysMem APIs.
    
    This change fixes:
    - call the Hgfs server only if Shared Folders and the server
      are enabled
    - call through the channel manager and channel transport to
      the Hgfs server
    - Hgfs server session callback table is extehded with a server
      quiesce callback.
    - HgfsServerSessionQuiesce callback now replaces the old
      HgfsServer_Quiesce exported API.
    - Make the quiesce callback use an enum to the thaw-freeze op
      instead of a bool
    - remove the Hgfs server initialized global now it is not required
    
    The tools implementation of the Hgfs server code does not use this
    API and thus the guest Hgfs manager and transport channel do not
    implement any code which will use the session quiesce callback.

commit 4dbe96f4970bd8878bfe3da2b2ed46c9c4ccf099
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:43 2017 -0700

    FreeBSD: Use the "dhclient" command to renew a DHCP IP address.
    
    On FreeBSD, "/etc/rc.d/netif" is sufficient to stop a network interface
    when suspending a VM.  When resuming a VM, DHCP configured interfaces
    must be restarted with "/etc/rc.d/dhclient".
    
    This fix is courtesy of Steve Wills, maintainer of open-vm-tools on
    FreeBSD, and Shuai Wang.
    
    Pull request: https://github.com/vmware/open-vm-tools/pull/142

commit 27a9808452e78dfb76234c8c8c983ec3ccd04dc0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:43 2017 -0700

    Add utilZero.h to open-vm-tools

commit 7bffaf26f46a28893e07df2a46bfdb612b8a15c2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:43 2017 -0700

    Remove memory zero related functions from util.h
    
    Add a new header utilZero.h

commit 88358a74766f2302f85d4e614a07fd07dbed9a37
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:43 2017 -0700

    Log xmlsec1 version details
    
    For better debugging of open-vm-tools, log the xmlsec1 version info.

commit 21dc0516201085e760d831d187b5232acf3a17d0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:43 2017 -0700

    Hgfs Server: Fix a memory leak on server exit not destroying the shares
    
    This change fixes a memory leak on server exit not destroying the shares.
    The list of shares is not destroyed and left.
    
    Fix this at the Hgfs server tear down by calling the shares reset with an
    empty list which will cause all shares to be treated as stale and so deleted.

commit cec1221e1a48db9e127ad271d6e7ddfc7fe27dce
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:43 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit a11b7dda01aaefa63f57cbe2f15352c06f2c55eb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:43 2017 -0700

    CnP formatted text doesn't keep text format in Fedora 25
    
    In Fedora24, the selection target name for rtf is text/richtext.
    In Fedora25, the selection target name for rtf is changed to text/rtf,
    which Tools did not support.
    
    Add support for the new selection target name "text/rtf".

commit 99ee155b5923cc036c7412b494c36e7d7dd38f50
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:43 2017 -0700

    Support building open-vm-tools only for FreeBSD 10 and later.
    
    Implemented a check for FreeBSD version and abort if the
    detected version is less than 10.

commit 6091407c4a7e191925bb1b668a99df4ca7e2fab5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:43 2017 -0700

    Stop building open-vm-tools for LINUX systems with glibc < 2.12.
    
    Implemented a check for glibc version and abort if the detected
    version is lesser than 2.12 (This affects RHEL5 and older generations).
    
    Implemented a config switch '--disable-glibc-check', which when specified,
    will skip checking for compatible glibc version.
    
    Modified the tools-pkg.make file to specify --disable-glibc-check
    while executing "./configure" for open-vm-tools.
    
    Note: glibc check is done only for Linux systems.

commit 94509955865e6bef7818675761d6dbb9d83df6e5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:43 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 888d4a7a8394e4391b9abb09b3884f7e1d5971b9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:42 2017 -0700

    Hgfs Server: Remove the register share callback and usage part 2
    
    Now the function is not being called at all it is time to remove
    it along with the callback table entry for it.

commit ec6c1f40fb15ffb0d8d6658b9a99c21c706ccb59
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:42 2017 -0700

    Dynamic socket options API for async sockets
      lib/asyncsocket/asyncsocket.c:
      lib/asyncsocket/asyncSocketInterface.c:
      lib/asyncsocket/asyncSocketVTable.h:
      lib/include/asyncsocket.h:
      - Add AsyncTCPSocketSetOption(), AsyncTCPSocketGetOption() and
        AsyncSocket_EstablishMinBufferSizes functions.
      - Remove/deprecate specific option set functions to be subsumed
        by ->setOption().
        - ->useNodelay() (TCP_NODELAY), ->setTCPTimeouts (3x TCP_... options),
          ->setBufferSize (SO_{SND|RCV}BUF), ->setSendLowLatencyMode() (non-native
          option regarding buffering/callback behavior).
    
      lib/rpcIn/rpcin.c:
      services/plugins/grabbitmqProxy/grabbitmqProxyPlugin.c:
      - replace AsyncSocket_SetBufferSizes() calls with
        AsyncSocket_EstablishMinBufferSizes() calls.
    
    Common header file change: not applicable to open-vm-tools.

commit 63b5e3c8138c8d8561f2be8391ac3dc062e6afa1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:42 2017 -0700

    Remove BDOOR_CMD_FAS_GET_NVDIMM_FMT_CODE
    
    Now that our guest FW can read the NVDIMM format interface
    code (FIC) from the NVDIMM controllers MMIO space we have
    no need for a backdoor call to do the same thing.  This
    change removes the backdoor call for reading the FIC and
    makes it's callers read the FIC from the NVDIMM controllers
    MMIO space instead.

commit 028854fd377698d261aad7787723e4d3db1069b9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:42 2017 -0700

    Hgfs Server: Remove the register share callback and usage
    
    Remove the register share callback and usage which is an HGFS server
    libray function passed back to the VMX Hgfs server manager and policy
    manager. This tracked shares as they were individually added and removed.
    It carried with it VMDB behavior which was erroneous for the HGFS server
    share tracking.
    
    This API has been replaced by piggybacking on the Hgfs server InvalidateObjects
    callback which informs the Hgfs server when the VMDB has finished updating
    the Hgfs policy manager with shares and the Policy manager's list is complete.
    At this point the Hgfs server can close any open handles on stale shares and
    remove those stale shares and add new shares.

commit f8d262a1dd1467b097b55f646ac3302531e4aef0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:42 2017 -0700

    lib/misc/strutil.[ch]:  New functions added; not applicable to open-vm-tools
      - Added functions StrUtil_GetNextItem, StrUtil_HasListItem,
              StrUtil_HasListItemCase, StrUtil_AppendListItem,
              StrUtil_RemoveListItem, StrUtil_RemoveListItemCase

commit 2edd97267f299ec18b9c60cf613bef99497729b3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:42 2017 -0700

    Hgfs Server: Fix shares update for change notification
    
    This change fixes UI updates of the shares which currently
    update by a poorly designed algorithm which causes change
    notification subscriptions to be deleted and not restored
    and also unnecessary deactivation and activation of the
    events generation.
    
    Currently, the UI updates the HGFS shares in the HGFS server
    via the RegisterShare callback. This is done from HGFS VMX
    policy code which handles updates from the UI and maintains
    the HGFS shares. The UI calls the policy code for each share
    to remove it until the list of shares is empty. It then calls
    back for each share to add the existing shares back to the list.
    Currently, the policy code calls the HGFS server RegisterShare
    callback to delete the share as it removes them and then again
    to add each one back in that added to the policy shares list.
    Unfortunately, as the shares are removed any existing subscribers
    for change notifications on the deleted share are also destroyed.
    Furthermore, when the shares list is empty, the count of subscribers
    will also be zero at this point causing a deactivation of the
    file change event generator. Once, the shares are added back in
    via the RegisterShare callback no event subscribers will be
    restored as they are not tracked and the event generation
    will also not be activated due to that reason.
    
    The fix is to make the shares tracking be handled in the same
    manner as the HGFS server does for open handles on shares.
    The HGFS policy waits until the shares list updates are complete
    as the UI is done updating the shares. The HGFS policy then calls
    the HGFS server InvalidateObjects callback with the new complete
    list of shares which may or may not be different from the previous
    list. The HGFS server InvalidateObjects goes through its current list
    of shares and searches for each share in the new list of shares and
    if it fails to locate it, then closes all open handles on that share.
    Once the list has been exhausted, all open handles remaining will be
    on shares that still exist.
    
    The same callback is now used for resetting the list of shares for
    the current subscribers of change events and not the RegisterShare
    callback which should be removed altogether.  We now make sure that
    the reset of file change event shares only removes shares not found
    on the new list thereby only removing subscribers on those stale shares.
    All subscribers for shares remaining on the lists are not deleted,
    remain intact and unaffected.  Furthermore, file system event
    generation will also not be deactivated unless all subscribers
    happen to be for shares that were deleted.
    
    This change is the first part which as code to piggyback on the HGFS
    server InvalidateObjects callback to compare any shares in its list
    with the new list and delete shares not found.  The RegisterSharecallback
    function code is deleted and temporarily is an empty callback.
    This will be deleted along with the callback code from the HGFS
    policy manager in a subsequent change.
    
    Details:
    HgfsServerRegisterShare - is gutted and just an empty function just
       logging that it is called.
    HgfsServerCleanupDeletedFolders is effectively renamed to
       HgfsServerSharesDeleteStale w/o the lock acquistion/release.
    HgfsServerSharesDeleteStale now free the share name as well as the
       share object to stop memory leak.
    HgfsServerShareAddInternal is extracted from the old defunct
       HgfsServerRegisterShare w/o the lock acquisition/release.
    HgfsServerShareAdd acquires and releases the lock and calls
       HgfsServerShareAddInternal
    HgfsServerSharesReset is created and called from the
       HgfsServerInvalidateObjects
    HgfsServerEnumerateSharedFolders now calls the new HgfsServerShareAdd
       for all shares which is used to initialize the shares on HGFS server
       start.
    HgfsServerGetLocalNameInfo now does not get the Shared Folder handle
       from the VMX policy host, instead getting it from the existing
       HgfsServerGetShareHandle (the server maintained list of shares).
       This is only used for setting subscribers from the client when
       using handles and not path names.
    HgfsServerSetDirWatchByName now uses the handle returned by the
       HgfsServerGetLocalNameInfo call.
    markedForDeletion is now removed as holding stale state is not needed
       since stale shares are deleted and resources freed immediately.

commit 357f5304834d40ce8a1e97838766f34cc6d89ddd
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:42 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 2ca4b125656100d69c9f7868bccbb55d0547e852
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:42 2017 -0700

    Common header file change; not applicable to open-vm-tools.

commit 94028b39e929b162ebc320f455fb2f5b3af53f04
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:42 2017 -0700

    Check timeout setting for scsi device before setting
    
    The rule to set the timeout value for SCSI devices was too generic,
    and caused error messages, when the timeout field was set
    when it didn't exist. This is not harmful, but generates unnecessary
    noise. This change adds a check if the timeout field exists.

commit 5c77f471ccb8b87dd80f3928b313480aeb8edf0a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:41 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit dc81979e78e1b8f42639aeb7aaec69f7ea49eb79
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:41 2017 -0700

    Remove convertutf and bsd_printf
    
    The license for convertutf.c and convertutf.h does not
    explicitly permit, or prohibit, modification of the files,
    and restricts use to "products supporting the Unicode
    Standard". This is a problem for distribution with Debian,
    which complies to strict guidelines. See details at
    https://github.com/vmware/open-vm-tools/issues/148
    and
    https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=823100
    
    The code is not essential for open-vm-tools. It's needed by
    code in bsd_printf.c and related code, which in turn is
    needed by msgfmt.c and msgList.c. The latter code is not needed
    for open-vm-tools, and can therefore be eliminated from
    the open-vm-tools package.
    
    When HAS_BSD_PRINTF isn't set, Str_Snprintf() and
    Str_Vsnprintf will fall back to vsnprintf(), and
    Str_Asprintf()/Str_Vasprintf() will fall back to
    vasprintf(). Under Linux and FreeBSD these functions are
    properly implemented, and support %ls and %S.

commit 131e4a60fa2d2db0c30920d826d23aec44d8ab09
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:41 2017 -0700

    Remove Linux kernel modules
    
    Remove Linux kernel modules from open-vm-tools.

commit 5034ce882ff4ab49fc4a874009ce638b377bcdaa
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:41 2017 -0700

    optimize clamped uadd functions
    
    For unsigned adds, if there's no overflow, the result will be larger
    or equal than either source operand. Consequently, if there's an
    overflow, the result will be smaller than both, and checking against
    one source operand is sufficient. Found accidentally...
    (With just one comparison, gcc is in fact able to figure out the
    comparison is really the same as the add overflowing and will omit
    the comparison. But it won't do this with two comparisons.)

commit ce18b4a333b1d0e757ba3e9b3f650f5d860f35c9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:41 2017 -0700

    VThread_Init: remove VThreadID parameter
    
    With the removal of static VThreadIDs, there is no longer any need
    to specify a specific VThreadID when initializing the VThread library.
    We can simply auto-assign an ID instead.
    
    Remove the VThreadID parameter from all callsites.
    Remove all VTHREAD_xxx_ID macros (except VTHREAD_INVALID_ID).
    Slightly adjust vthreadBase.c to "know" that VThreadIDs now start
    at 1, not 5.

commit 92259d4832396c82d50b7a678ab294dceca34907
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:41 2017 -0700

    Changes to guest_os.h for Solaris 11

commit 45212bdaa54e336f53327f571b0aad48b89c787d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:41 2017 -0700

    Replace ASSERT_DEVEL(p) with DEVEL_ONLY(ASSERT(p))
    
    It wasn't clear when ASSERT_DEVEL was enabled: was
    it for all VMX86_DEVEL builds or for the intersection of
    VMX86_DEVEL and VMX86_DEBUG?
    
    Replace ASSERT_DEVEL(p) with DEVEL_ONLY(ASSERT(p)) to make it
    clear that it's the latter.

commit 3bf9c558ae09cb518d654643ee1d435de5b3a93f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:41 2017 -0700

    Include syncManifest.c in open-vm-tools only on Linux
    
    The VMTools build includes syncManifest.c only on Linux
    and not on other OSes such as FreeBSD.  The open-vm-tools
    build needs to do the same.

commit 1183d2b3ab8a75cb42272caacec8cc7f193e4651
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:41 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 3ff49cad5bced6a1a2806a4791d42c33adfa8d25
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:40 2017 -0700

    Common header file change; not applicable to open-vm-tools.

commit b78434e97e937eb74c373c870d9c5b9e0b8296e8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:40 2017 -0700

    VMCI: Reset datagram buffer pointer on dealloc
    
    A customer was seeing a guest crash when unloading the VMCI
    driver - but only when upgrading to a specific version of UEK.
    It turns out, that a BH may run during module unload,
    and attempt to deliver datagrams to the datagram buffer after
    it has been deallocated. It turns out that the tasklet may not
    have been scheduled yet, so add a tasklet_disable to guard against
    this. Also, reset the datagram buffer pointer when the buffer is
    deallocated to indicate that it is no longer there.

commit e146ddb85e0f620faff25decc716ad406b4486e8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:40 2017 -0700

    Hgfs Server: Fix a memory leak of the transport connection
    
    This change fixes a memory leak of the transport connection object
    which was not being released on the final reference removal when
    the HGFS server is being torn down.
    
    This separates the initialization and destruction of the transport
    object into their own transport init and exit functions.  Added the
    lock destruct and free call of the transport object to the exit
    function that were previously missing.  Corrected or added some
    missing logging for debugging.
    
    Additionally, fixed the VMCI interface to correct its tear down
    order of functions which relied on the transport not being deleted.
    This involved moving the draining of out of band HGFS server requests
    or replies to the guest from being called after the HGFS server
    transport has been destroyed.  Now it is moved to the correct place,
    where the sequence is now:
    - disconnect the HGFS server (i.e., stop generating any new request/replies out of band,
    - drain the existing out of band HGFS requests/replies
    - close the VMCI transport and shared memory callbacks
    - close and teardown the HGFS server session and transport
    - teardown the VMCI channel itself

commit 7e50fb73f7920a305f7c29bf957eef3ef0b4cd72
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:40 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit b7512d420ef13408426928df08d0505c46c6522a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:40 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 45c2246c6c84ff1923ac3f33d884b124530db8e6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:40 2017 -0700

    Port X11 resolutionSet off gtk
    
    Replaced gtk calls with XOpenDisplay to obtain X Display.
    Also moved getting the display logic (XOpenDisplay) from
    ResolutionToolkitInit to ResolutionBackendInit and
    corresponding XCloseDisplay in ResolutionBackendCleanup.
    ResolutionInfoX11Type is used as back-end specific handle
    and canUseResolutionKMS bool variable to communicate to
    loader about resolutionCheckForKMS.  Removed gtk header
    from ResolutionX11.c and ResolutionRandR12.c.

commit a61a342fd48b248fc794d639c6690e42a4ebc7fb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:40 2017 -0700

    resolutionSet/resolutionKMS: Force load the vmwgfx kernel module
    
    When testing for resolutionKMS system support, make sure the vmwgfx kernel
    module is loaded before trying to obtain an open file descriptor to it.
    Otherwise both the resolutionKMS- and resolutionSet tests might fail.

commit 38f7adb5e37a49b6696f467efa5183d906538eee
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:40 2017 -0700

    Changes to common source files; not applicable to open-vm-tools.

commit 5949be840ee39f0853e98741bcae30e559914f00
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:40 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 9f3c5f179ed252f31c15e71ca45c83ae33a4dc62
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:40 2017 -0700

    Generate backup manifest files for quiesced snapshots on Linux.
    
    After a successful quiesced snapshot of a Linux guest, the
    snapshot is reported as not quiesced.  The underlying cause
    is:
    
    - a snapshot is identified as quiesced if and only if a backup
    manifest file was provided for the snapshot; and
    
    - backup manifest files are not provided for quiesced snapshots
    on Linux.
    
    To fix the problem, VMTools will generate backup manifest files
    for quiesced snaphots taken on Linux, and VMX will accept and
    store such files.  This change is for the VMTools side of the
    change.  The VMX change defines a new VMBACKUP_EVENT value relied
    on by the VMTools change.
    
    Changes in this commit include:
    - new source files syncManifest.h and syncManifest.c with code
    to generate the manifest file, and updates to syncDriverOps.c
    to invoke that code.
    - a new "SyncDriver_GetAttr" interface in the syncDriver code,
    used by the SyncManifest code to obtain the name of the backend
    provider and whether or not it is capable of quiescing.
    - makefile and configure boiler plate to add the two new source
    files to open-vm-tools and tools-for-linux.
    - a new tools.conf setting enableXmlManifest that specifies
    whether VMTools generates backup manifests for Linux.  For now,
    the default value of this setting will be false.

commit 5bb569f29cd9780872eb212fc5a6dda9d85d2711
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:39 2017 -0700

    Add a generic interface for accepting backup manifest files.
    
    The interface provided by VMX to allow VMTools to notify it that
    there is a backup manifest file to be transferred from the guest
    is specific to Windows guests.  A more generic interface is being
    implemented to enable backup manifest files for Linux guests.  A
    new vmbackup event is added for passing to vmx the guest's path
    for the manifest file, along with code for handling the event.

commit 4a9834cedf0bc1c0303e2b078db87f8754c99564
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:39 2017 -0700

    Spawn a new thread to handle deployPkg.deploy RPC
    
    Deploypkg takes some time to complete, so separating
    it to a new thread helps guarantee that the main
    tools thread can still respond to VMX ping/heartbeat
    messages.
    
    Before this change, the state changes on the vmx side are:
       ToolsDeployPkg_Begin
       ToolsDeployPkg begin finished
       ToolsDeployPkg finished copy
       deployPkg.deploy
       deployPkg.update.state 3    -- TOOLSDEPLOYPKG_DEPLOYING
       deployPkg.update.state 4 0  -- TOOLSDEPLOYPKG_RUNNING
       deployPkg.update.state 4 103 -- TOOLSDEPLOYPKG_RUNNING GUESTCUST_EVENT_ENABLE_NICS
       deployPkg.update.state 4 104  -- TOOLSDEPLOYPKG_RUNNING GUESTCUST_EVENT_QUERY_NICS
       ToolsDeployPkg finished deploy
    
       ToolsDeployPkg_Begin
       ToolsDeployPkg deploy state: 4
       deployPkg.update.state 5 0     -- TOOLSDEPLOYPKG_DONE
    
    After this change, the state changes are:
       ToolsDeployPkg_Begin
       ToolsDeployPkg begin finished
       ToolsDeployPkg finished copy
       deployPkg.deploy
       deployPkg.update.state 3
       ToolsDeployPkg finished deploy
    
       deployPkg.update.state 4 0
       deployPkg.update.state 4 103
       deployPkg.update.state 4 104
    
       ToolsDeployPkg_Begin
       ToolsDeployPkg deploy state: 4
       deployPkg.update.state 5 0
    
    There are no specific changes on vmx side.

commit 32df9c92ce5e9df85cabb7e488c5ed18faa41914
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:39 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit aabfe8a76e82644caac0d026bff2357be943ce6e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:39 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit db1c14fb0e23d0d400567ac1a90b5c4fb08b6665
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:39 2017 -0700

    Common source file changes; not directly applicable to open-vm-tools.

commit c68f83bfc9dad7ac2e46780b84255bf102fdc977
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:39 2017 -0700

    Log output from network script
    
    Log all output from the network script to help debugging.

commit 32c82dc60b2963924ef9f407916e17880ae20b04
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:39 2017 -0700

    Report version data via guestinfo vars
    
    Set up some guestVars to report Tools version info
    (version, build number, etc).

commit f01a8f551cfd6c82ae2d851d51dcf4173493e674
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:39 2017 -0700

    Rename VThread_IsXxx() to VMX_IsXxxThread()
    
    Unrelated to open-vm-tools.

commit 5617d9a776d51fa56f46e56e3484070cf704f8cb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:39 2017 -0700

    AsyncSocket: Fix lock rank violation introduced by WaitForReadMultiple
    
    There's a lock call that should be an unlock.

commit 17de351b6300c16aa91ea609bfae22c71ac8fc39
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:39 2017 -0700

    ARM: Better decode CPU Model Name
    
    Instead of always returning "ARM64", the CPU model name will now be the
    CPU vendor followed by the core name and revisio, eg.
    
    ARM Limited Cortex-A57 r1p2
    
    hostinfoPosix arm64 hack to always return "armv8 unknown" is removed,
    and will forward the CPU Model Name.

commit ef1e7f13ccd5878fb57f394cf709874e3dc11990
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:38 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 6c72a0e9670327ed2060ae8ca3d529f69de0a385
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:38 2017 -0700

    file: Report correct error message when file is locked.

commit 7397d21db121bb3b5498a44027f990381974e1f1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:38 2017 -0700

    Check for gdk_pixbuf_xlib-2.0 in configure script
    
    gdk_pixbuf_xlib-2.0 is no longer part of gdk-pixbuf2 in newer
    distributions (for example Fedora 26), so it's no longer pulled
    in as a dependency from the gtk devel packages. Therefore we
    need an extra check for it.

commit d50f3e6ba1e35020bcf7450701f492ba0ffb75a3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:38 2017 -0700

    Clean up overflow NIC issues
    
    If we hit the max number of IPs, we just keep going
    and try to add the next one.  This makes for extra work
    and produces lots of log spew.

commit c85ace8f7e180929f179dea9e21097c70e2e7e82
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:38 2017 -0700

    Common header file change; not applicable to open-vm-tools.

commit e5bf6e89f1f634f00a403c9e1ae3be96534a9d5a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:38 2017 -0700

    MKS Thread: make VThreadID dynamic
    
    Unrelated to open-vm-tools.

commit c2b6423692888f1f0534131c03c5aacc5d1632f2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:38 2017 -0700

    Smarter handling of large numbers of disk mounts
    
    Instead of just giving up if we find more than 255
    mounts, expose what we can.

commit 5965ba1d8ad2803f83771b25dc13b499a8a6c9e8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:38 2017 -0700

    Log DRM version in the debug message.
    
    The additional version in the message proved very useful
    while debugging resolutionKMS functionality.

commit 834787e0887697286e63b61c643771de2de6656a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:38 2017 -0700

    Remove ufs code
    
    There is currently no use case for it.

commit efcc77506932a563951908c5c0f9087cc0432c31
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:38 2017 -0700

    modules/shared/vmxnet/vmxnet3_defs.h:
      - Code restructure of some MACROS.

commit 04cf8f685846a7c817072f9fcfac6f6d9618b8c5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:37 2017 -0700

    Downgrading 10.2.0 Tools to 10.0.9 fails to start CAF.
    
    Create the cafenv.config file required by 10.0.9 Tools
    from cafenv.appconfig of 10.2.0 Tools.
    
    Clean up CAF files after Tools uninstall.

commit 3091d0b0e1143b49ba6f33d3bb2e4900c6b4c12b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:37 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit e5f98a856b27e39c06b9d9244adf9e4f195f28b8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:37 2017 -0700

    Add new AsyncSocket API to wait on multiple sockets at once
    
    Currently, there is no way to poll/select on multiple sockets through
    the asyncsocket library. VRDMA is encountering a use case for such
    functionality, so add such an API to asyncsocket.  It is only defined
    for AsyncTCPSocket, and is mostly just a wrapper around AsyncTCPSocketPoll.

commit d49040684aa60e696d615ec330ea8329c134ed0e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:37 2017 -0700

    Common header file change; not applicable to open-vm-tools.

commit 4c3c80df2b8c246e1441a9f34fb11b25dc344e97
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:37 2017 -0700

    Avoid name strings other than vmusr/vmsvc in vmtoolsd command line.
    
    Add name checking when parsing command line.

commit 699f7e7403fa3010a382d804806a9c5b50a38239
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:37 2017 -0700

    Changes to common header files; not applicable to open-vm-tools.

commit c6422b6c922a88a47e9c8121d9f45d2bb250c0b1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:37 2017 -0700

    Change defined(linux) to defined(__linux__) in open-vm-tools files.
    
    Reported by open source developer on GitHub,
    see github.com/vmware/open-vm-tools/pull/81.

commit dbce6217a9ba2e33bf536437393cf6fc4bb4eaa9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:37 2017 -0700

    Stop using deprecated glib APIs in vgauth
    
    Replace some static mutexes with the modern versions.

commit 9367d3e3cf8819b198dd52cd4e1f19872efcfefe
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:36 2017 -0700

    Fix HostinfoGetCmdOutput to return NULL on failure
    
    HostinfoGetCmdOutput unconditionally calls DynBuf_DetachString
    along its success path.  DynBuf_DetachString never returns NULL,
    so that broke callers expecting a NULL return value if the command
    had no output (which can happen if HostinfoGetCmdOutput attempts to
    run a non-existent executable; note that this does not trigger any
    of the failure paths).
    
    Restore the old code that checked if the DynBuf is non-empty
    before retrieving its contents.
    
    Bonus:
    * Fix incorrect documentation to Posix_Popen.
    * Adjust the StdIO_ReadNextLine documentation to clarify its behavior.

commit 15626c9d3a81d4d629902504ed7fd21d04f5e4b6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:36 2017 -0700

    Changes to common source files; not applicable to open-vm-tools.
    
    services/plugins/dndcp/stringxx/string.cc:
    services/plugins/dndcp/stringxx/string.hh:
     - Change  utf::string::toUpper() and related functions to  default the
       locale argument to a NULL pointer.

commit bea370f7deb0e216206223301dfe1db974e0ffee
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:36 2017 -0700

    Update vm_tools_version.h with Tools 10.1.x update and patch versions.
    
    Updating the VMware Tools version information for the known
    vmtools 10.1.x updates and patches.
    
    10.1.6  - vmtools_prod-cpd-ep3: CLN 4984516
    10.1.10 - vmtools-prod-cpd: CLN 5016060

commit f6d5355574b0342ad7ad471fbc2fbcb75bdb25dc
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:36 2017 -0700

    Check alignment in Atomic_* functions for the VMKernel
    
    Unrelated to open-vm-tools.

commit 47c77211f47644e1e999621d3974ebd09af84312
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:36 2017 -0700

    Fix i18n symbol violations
    
    Fix some of the illegal symbols that are flagged.  Also changed the
    wrapper for unsetenv to return an int to match the glibc-2.2.2 and
    later version.  Tools build for FreeBSD appears to be using an older
    libc so it always reports success in that case.

commit e9c2208a3240e36e590b0be9bda8b2a7510aae2c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:36 2017 -0700

    Common header file change; not applicable to open-vm-tools.

commit 8e0b9513236e4494f089cdaee641af5e80adc5c8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:36 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit a4ba5b7e40c384c76cf35209bdd421f97d70e142
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:36 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 5be59c7691509e30ffc44b67f8a6eba66e141d3d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:36 2017 -0700

    Revert the previous commit.

commit 94702b2a09cdbad725f6e536203c4bab1bdcf9c0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:36 2017 -0700

    Check alignment in Atomic_* functions for the VMKernel
    
    Unrelated to open-vm-tools.

commit f424d59444ae7718f5e47ebcd5b417df8acea456
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:35 2017 -0700

    Re-enable ASAN for DynBuf_Append()
    
    The problem is incorrectly instrumented callers.

commit 5f94953bafbbb2348ae2abe6d958828b311d1f6b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:35 2017 -0700

    Common header file change: not applicable to open-vm-tools.

commit f0df01ce187c5bfca5d361f45a6ca2f38a4bd934
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:35 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 3525fd7385f6c8185305d20d149fa59d5ebf9c5e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:35 2017 -0700

    New common header file: lib/include/product.h.
    Move public product types enum from lib/include/productState.h to product.h
    Common header file change; not applicable to open-vm-tools.

commit afb42f5edc9502a877d48aabaa1f8af31a959619
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:35 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit a71c02a67c6a78179449d3153751584873452016
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:35 2017 -0700

    Revert previous commit.

commit 6320d542cb1eb9cd1fed41ff22b4b2d42cd179c9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:35 2017 -0700

    Interpose dlopen() to only allow root-owned library
    
    Only allow dlopen() on library that meets the following:
    - the library file is root-owened
    - the directory is root-owned, and not others-writable.

commit 5fe82108703e3c0448e9243f2b58fada8f790d2a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:35 2017 -0700

    Restrict panic's int3 assembly to x86(_64).
    
    Panic could also be used for iOS.

commit 7e2a13784c6d3cc7ef4d57957608e1bd9e8b4b59
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:35 2017 -0700

    Delete unused COMPILER_FORCED_LOAD_AND_MEM_BARRIER
    
    Delete the macro definition.

commit d484f11a6b14d41ee202c3378a2c6174aa3d4784
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:35 2017 -0700

    Memory barriers: LD_LD_MEM_BARRIER -> SMP_R_BARRIER_R
    
    Delete the now unused, old macro name.

commit 93c968d5034cbc6f6948caa5129fd5fcfb18619c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:34 2017 -0700

    Memory barriers: LD_ST_MEM_BARRIER -> SMP_R_BARRIER_W
    
    Delete the now unused, old macro name.

commit ba6870484de7e795b394c3bf7674f5e28c17960f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:34 2017 -0700

    Memory barriers: LD_LDST_MEM_BARRIER -> SMP_R_BARRIER_RW
    
    Delete the now unused, old macro name.

commit 79a815083e2ba1b2f6c03b5aa4ae5275e0416a95
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:34 2017 -0700

    Memory barriers: ST_LD_MEM_BARRIER -> SMP_W_BARRIER_R
    
    Remove the now unused old macro name.

commit b89f4124fd5476dbba5a9f18d9c246c5a3f3543b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:34 2017 -0700

    Memory barriers: ST_ST_MEM_BARRIER -> SMP_W_BARRIER_W
    
    Remove the now unused old name.

commit 996d7bdf489f968c9c49adace1c1ac0a525a4c77
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:34 2017 -0700

    Memory barriers: ST_LDST_MEM_BARRIER -> SMP_W_BARRIER_RW
    
    Delete the now unused macro.

commit 8e417a5ea04edece3bcd88a9a03feb822b26646e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:34 2017 -0700

    Memory barriers: LDST_LD_MEM_BARRIER -> SMP_RW_BARRIER_R
    
    Deleted the old macro name.

commit 8d3de0c6acc829d3f9c283abf4f107b506e95d20
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:34 2017 -0700

    Memory barriers: LDST_ST_MEM_BARRIER -> SMP_RW_BARRIER_W
    
    Delete the now unused old macro.

commit 1cdb544b9962def25bfacd329c8850a0c45d199d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:34 2017 -0700

    Memory barriers: LDST_LDST_MEM_BARRIER -> SMP_RW_BARRIER_RW
    
    Delete the old macro that is now unused.

commit b3bf1f137b45232e7e9b2474127ba2d3e1411162
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:34 2017 -0700

    Memory barriers
    
    Unrelated to open-vm-tools.
    
    Previously added new barriers for arm64 and x86_common, but
    forgot to handle arm32. This change does that, and fixes a
    mangled comment.

commit 7c1f57a6f005d299b4254a295f6794f3e41a09b4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:34 2017 -0700

    Common header file change; not applicable to open-vm-tools.

commit c024d866ac746474487fea646f4787875e2dacdd
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:33 2017 -0700

    Remove NOT_TESTED() from EINTR handling in lib/file
    
    When FileIO_Read() & friends receive EINTR, they log NOT_TESTED, and
    retry read.  It seems innocent - until you provide your own function
    to handle logging.
    
    Now imagine that you create bidirectional communication protocol,
    and run it over the pipe.  And you do logging over this very same
    pipe.  Application is waiting for message, so it invoked
    FileIO_Read(), and is blocked on read().  Now you attach strace
    to the process.  That will interrupt pending read() with EINTR
    and log NOT_TESTED().  This logging performs FileIO_Write() on
    this very same pipe, and then performs FileIO_Read() to retrieve
    status of logging request.
    
    If it receives status of logging request, all is good.  Code
    returns from logging, and reexecutes read(), waiting for
    request from server.
    
    But if logging function receives anything else (f.e. other side
    sends request at same time strace was attached), it gets queued
    into internal data structures of the app for processing once
    code returns to main application loop.
    
    Problem is that FileIO_Read() will reenter read() without
    returning to the caller.  And that read() will block forever:
    other end already send request that is now pending in the
    request list, and so won't send anything until it sees
    we processed that pending request.  Hang.
    
    There are two possible fixes:
    
    1. Return EINTR from FileIO_Read(), or
    
    2. Do not do any logging from FileIO_Read()
    
    Approach #2 is much easier, as API semantic does not change,
    and currently it is broken.  So there is no need for NOT_TESTED()
    anymore...

commit ba915c1445124f6369a49788b9be2e8c2886bc10
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:33 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit c8200f190cffb6cf91db9d3660bc2736f66fb448
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:33 2017 -0700

    In DnD transport V3 check packet and payload size  to prevent OOB read
    or write.

commit 11094b0656ea13eff9b88cc207a4826f6ecd47b4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:33 2017 -0700

    Better Panic_BreakOnPanic implementation on macOS.
    
    There's actually a documented way to check whether a process is being
    debugged on macOS.  This change updates panic lib to use it.

commit 1fedc4083703a4438bb33617e9a56bacda41fd39
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:33 2017 -0700

    Hgfs Server: Very minor clean up of server callback table
    
    Another very minor clean up for final part for making the Hgfs server
    callback table constant.

commit 42494944951a72057279afb58deddfc72674a889
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:33 2017 -0700

    lib/include/vm_assert.h:
      - Remove unused ASSERT_* macros.
    
    modules/shared/vmxnet/vmnet_def.h:
      - Fix definition mismatch of VMNET_CAP_RX_LRO and VMK_PORT_CLIENT_CAP_HW_DCB.

commit c20933cea62e27e30f75e8e68251627bc06a1dee
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:33 2017 -0700

    Fix tools build
    
    dynbuf.c and sigPosix.c are consumed by tools.

commit 4752c44c3bd6406b9b4d829ca99c0044555face9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:33 2017 -0700

    Changes for userspace ASAN
    
    This is mostly disabling ASAN for some functions and adjusting overheads.
    Code, touching the guest memory, currently cannot be instrumented.

commit 861ad9d03153c9428f21b8a8af9762230ade2ca3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:33 2017 -0700

    Make CAF consume the same version of GLIB (and dependencies) used by Tools.
    
    Summary of changes-
    
    1. Linux: Make the following libraries point to their Tools
       counterparts by updating the LD_LIBRARY path in CAF makefile:
       -libglib-2.0.so.0
       -libiconv.so.2
       -libpcre.so.1
       -libz.so.1
       -libffi.so.6
       -libgthread-2.0.so.0
       -libstdc++.so.6
       -libgcc_s.so.1
    
    2. Linux: Add a new environmental variable INSTALL_MODE = tools/standalone
       in makefile, setting it to "tools" by default, to handle copying of the
       required GLIB (and dependencies) for CAF "standalone" installation.
    
    3. Linux: Update setupCafConfig function to add the INSTALL_MODE property
       if not present already to handle build2build upgrade case.

commit ae05d32a9303f27ff642ab39bb49abc46e3ba78b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:32 2017 -0700

    Add constants for macOS os major versions.
    
    MacOS versions can get a bit confusing because there are two parallel
    versioning schemes. There is the marketing version (e.g. 10.6, 10.7.5, etc.)
    which is what everybody uses when discussing the OS but is very hard to get
    at via code, and there is the kernel version (e.g. 10.0.0, 11.4.2) which
    is what is returned by POSIX syscalls like uname. The confusion sets in
    because in comments we tend to use the marketing version, but then the
    code actually checks for the kernel version.
    
    This change adds constants for the marketing version for comparisons with
    HostInfo_OSVersion(0) (the major version), which makes checking for
    10.6 vs 10.7 vs 10.8 etc. much more readable.

commit 03b89a4c99f257e724d90eff5c15560a4f9f2919
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:32 2017 -0700

    Add vgauth smoketest
    
    Provide the vgauth smoketest so open-vm-tools builders
    can validate VGAUthservice.

commit 57aac16fc9054bd20ccf004dfd09e02bdd127795
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:32 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit c1ef635e08ecd4c4aafc48a480ccd651935ce1e5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:32 2017 -0700

    Remove BDOOR_CMD_HOSTCOPY backdoor handler.
    
    The BDOOR_CMD_HOSTCOPY command has been under VMX86_DEVEL and is no
    longer used.  Remove it.

commit 7ca594dc06fc0b129265d19c51bb367333b01358
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:32 2017 -0700

    Fix building without ICU
    
    Building vgauth failed when building without ICU (with the
    --without-icu option). This was caused by not using cxx
    link options which are needed by xml-security, but only
    enabled when using ICU.
    
    Also fix the warning "invalid suffix on literal;".

commit d77b6c7ba1dc5a38e38c35c321eabe7ccbc801c1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:32 2017 -0700

    Tools Hgfs Transport: Make the server callback table constant
    
    Simple change to make the Hgfs tools transport use the server
    table of callbacks as a constant.

commit 880750417a7af90ad9b510524285e2d628d9a25d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:32 2017 -0700

    Common header file change: not applicable to oprn-vm-tools.

commit e02005e5b01e6335b233a2ab9d15f294a46a11e5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:32 2017 -0700

    Fix tools build
    
    For open-vm-tools there is code that strips off the
    "VMware Confidential" part of the msgfmt.c header. When
    the copyright years were updated in msgfmt.c, it broke
    the pattern matcher.

commit 4a61bffe80e57aeab0400813403c47a94e2acd1c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:31 2017 -0700

    Replace Atomic_MFence with architecture-independent barrier primitives
    
    Atomic_MFence was used to implement a full memory barrier on x86
    architectures. In an effort to clean up duplicate code, this change
    removes Atomic_MFence and replaces all previous uses with the most
    conservative architecture-independent barrier primitive
    (LDST_LDST_MEM_BARRIER). Since LDST_LDST_MEM_BARRIER is also a full
    memory barrier, this change does not affect any existing ordering
    semantics.

commit 34ff407a2ff5cbc0095fb95b30b1ba4e66f0f0c7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:31 2017 -0700

    Fix timesync state to be uncalibrated when adjustment is large (>60ms).
    
    VMtools has timesync plugin to adjust guest time to match host time. Timesync
    relies on a state machine (Uncalibrated, calibrating and PLL states) to
    adjust the amount of guest time to match host time. If the guest and host
    time differ by more than 60ms, state machine should reset to uncalibrated
    state. There is a bug currently that would leave the state in PLL mode even
    if the guest and host times differ by more than 60ms since absolute value of
    adjustment is not considered. This causes the time sync to happen slower than
    expected.

commit 488aea219340e6821b25fb4240791fa9e7903023
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:31 2017 -0700

    Specify the proper size while sending deploypkg.update.state RPC message.
    
    Due to a recent change, the VMX handler for 'deployPkg.update.state' RPC
    ignores the message if the specified argument size doesn't match with
    the string size.
    
    In the current code, in a certain error code path, deploypkg plugin
    specifies one extra byte in the size for 'deploypkg.update.size' RPC
    message.  This results in an error at the VMX layer.
    
    Fixed the code to specify the proper string length while sending the RPC.

commit 40ac04d8f3df4ea7eff9b890055fa565b368f4e3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:31 2017 -0700

    Implement ST_LD_MEM_BARRIER on x86 with a locked xor
    
    Microbenchmarks on modern Intel architectures show that a memory barrier
    implemented with locked xor operation performs about 30% better when
    compared to a barrier implemented with mfence, while providing the same
    memory ordering guarantees. This patch changes the implementation of
    ST_LD_MEM_BARRIER on x86 architectures to use the faster, locked xor
    operation. Additionally, support for Microsoft's compiler is added.

commit dda3fcee5a7382cdbd47e2eb5cb0af3f72b9b8e3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:31 2017 -0700

    atomic asm snippets: Remove unnecessary uses of "clrex"
    
    In our atomic asm snippets, we do not need to use "clrex".

commit 81fec44ea5303efa27fb0f04ba06f162ffdfb2df
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:31 2017 -0700

    atomic asm snippets: Replace "memory" clobber with "Q" constraint
    
    In our atomic asm snippets, using the "Q" constraint,
    (https://gcc.gnu.org/onlinedocs/gcc/Machine-Constraints.html tells gcc
    which exact memory is modified i.e. the bytes covered by the atomic variable),
    is better than using the "memory" clobber (tells gcc that all memory is
    modified, effectively a compiler memory barrier which prevents compiler
    optimizations).

commit 24bb7361bb1ed63201030841282369e571490f8b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:31 2017 -0700

    resolutionSet/resolutionKMS: Work around DRM control node removal
    
    DRM control nodes were removed in linux 4.10. Work with an updated
    version of the vmwgfx kernel module and target render- or primary
    nodes instead.

commit a7c41d1f862473b1fcde3c4fcb552ff5a648d022
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:31 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit dc91538f50ff7d3f3ccc8f2310f7ce79266c6153
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:31 2017 -0700

    vm_{atomic,uninterruptible}.h: Flip the polarity of the 32-bit function names
    
    Initially, we only had 32-bit atomic functions, so their names did not have a "32" suffix.
    
    Then, we added 64-bit functions. So,
    1) We used a "64" suffix for them.
    2) We provided additional names with a "32" suffix for the 32-bit functions, for consistency.
    
    The hope was that, over time, references to unsuffixed names would disappear.
    This change sends a stronger signal to developpers that the suffixed names
    are the ones to use, and that the unsuffixed names are the undesirable legacy
    ones to avoid.

commit d1721610e10cd7cc5f1009f608d7a2b12e5bfb54
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:30 2017 -0700

    vm_{atomic,uninterruptible}.h: Consistency cleanup
    
    This change brings a few dissidents back in line with the rest of the code.
    
    Also deleted Uninterruptible_FetchAndAdd64():
    o It was unused.
    o It provided the same functionality as Uninterruptible_ReadAdd64(), with a worse name and implementation.

commit 9cb35ce39ee24ea40fca08a0913dac79c662cf2d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:30 2017 -0700

    Add an error return to asyncsocket
    
    Change asyncsocket to return a ASOCKERR_REMOTE_DISCONNECT when a
    disconnection is detected during a send attempt.

commit 69b7e1f9423fe565b2cbe2ec784068b7f55a8247
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:30 2017 -0700

    Include sysmacros.h directly as mandated by glibc-2.25.
    
    glibc-2.25 generates a deprecation warning for using 'major'
    macro without including sysmacros.h.
    https://sourceware.org/glibc/wiki/Release/2.25
    
    This is breaking Fedora builds of open-vm-tools because
    Fedora 26 is switching to glibc-2.25.

commit b379074c3c635f684ef1630ea156eb2eefb04973
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:30 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 8afe56f5d1d33593d29b0247b0be5e2eba65d0a4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:30 2017 -0700

    Remove FileIO_GetVolumeSectorSize

commit a7886e7a44582fbc019e995afa2147eb0efd6710
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:30 2017 -0700

    Fixed invalid class pointer access if VSS provider not installed
    
    Some customers may disable VSS support by not installing VMware snapshot
    provider, which may lead to the VSS provider not being able to be
    initialized, which in turn could lead to a invalid class pointer access
    during complete initialization.
    
    This change checks provider initialization status before initialize
    completer to fix the issue.

commit c02d20001fbfd06558891fe5cf87c9aae33765cb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:30 2017 -0700

    Tools Hgfs Transport Logging: Migrate the to common tools conf logging
    
    Migrate the tools implementations of the HGFS policy, server manager
    and transport channels to use the common tools conf logging with the
    "hgfsd" domain setting.
    
    This allows the HGFS server core and the server managerand transport
    components to be independently logged.
    
    Changes are:
    - Move the logging definitions into the server manager lib common header
    - Add some log statements into the server manager public APIs
    - Redefine the policy manager (share handling) logging to the general tools
    logging.

commit 5034d1fb0aef6455a79d719c2f97ccf7f44c831a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:30 2017 -0700

    vm_atomic.h: Build Atomic_uint128 upon uint128 instead of __int128
    
    Atomic_{8,16,32,64} are built upon uint{8,16,32,64}.
    Atomic_uint128 is built upon __int128, which is inconsistent.
    This change builds it upon uint128 instead.

commit 20a42400e5ab98c4a2a6da254968c29d748d5d58
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:30 2017 -0700

    vm_atomic.h: Implement Atomic_Bool operations on top of Atomic_uint8 operations
    
    The atomic code was inconsistent:
    o On one hand we had Atomic_uint{16,32,64,128} basic types, on top of
      which we auto-generated more elaborate types such as Atomic_Ptr and
      Atomic_Int.
    o On the other hand we had no Atomic_uint8, we had Atomic_Bool implemented
      as a basic type, and we had CMPXCHG1B (based on uint8, defined for
      vmkernel and vmm only, with an x86-specific name) that was implemented
      similarly to Atomic_ReadIfEqualWriteBool (based on Atomic_Bool, defined
      for everybody, with an architecture-neutral name).
    
    This change brings a little bit of consistency:
    o It defines Atomic_uint8 as a basic type.
    o It auto-generates Atomic_Bool on top of it.
    o It deletes CMPXCHG1B.
    
    Also added a void * argument to AtomicUndefined(), which is used to
    "consume" function parameters to prevent some compilers from warning
    about unused parameters.

commit 92a2f1e908e7e132eea2beba57926ac2fee34902
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:30 2017 -0700

    Revert the previous commit.

commit 3e732d788ef472bdf07dc53a32bc2c3b271a1ee5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:29 2017 -0700

    vm_atomic.h: Implement Atomic_Bool operations on top of Atomic_uint8 operations
    
    The atomic code was inconsistent:
    o On one hand we had Atomic_uint{16,32,64,128} basic types, on top of
      which we auto-generated more elaborate types such as Atomic_Ptr and
      Atomic_Int.
    o On the other hand we had no Atomic_uint8, we had Atomic_Bool implemented
      as a basic type, and we had CMPXCHG1B (based on uint8, defined for
      vmkernel and vmm only, with an x86-specific name) that was implemented
      similarly to Atomic_ReadIfEqualWriteBool (based on Atomic_Bool, defined
      for everybody, with an architecture-neutral name).
    
    This change brings a little bit of consistency:
    o It defines Atomic_uint8 as a basic type.
    o It auto-generates Atomic_Bool on top of it.
    o It deletes CMPXCHG1B.
    
    Also added a void * argument to AtomicUndefined(), which is used to
    "consume" function parameters to prevent some compilers from warning
    about unused parameters.

commit 93efbb2335349fda6587cda662a389b8b99724b4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:29 2017 -0700

    Accelerate some Atomic_* operations
    
    Unrelated to open-vm-tools.

commit 04af878bf5b1c56a9513b606895c41c46def687c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:29 2017 -0700

    Hgfs VMCI Transport: Part I fix the shared memory interface to not assert
    
    THe HGFS VMCI transport uses the shared memory access functions to extract
    HGFS protocol packets for the HGFS server processing and for returning results.
    This interface recently changed to add thread tracking for these operations with
    the addition of register and unregister functions.
    
    The HGFS transport interface was missed on the initial change and hence now triggers
    an assert as the register function call has not been made.
    
    This is the first part of a change which addresses the assertion failure by adding the
    register and unregister calls for the HGFS VMCI transport interface which uses this
    shared memory.
    The calls are part of a set of callbacks provided by the supported transports to the
    HGFS server code for the VMX and tools. Since the backdoor transport does not make
    use of the shared memory and access calls it just sets the function callbacks to NULL.
    This is done for both the VMX backdoor channel and tools backdoor channel for packets
    routed into the HGFS server.
    
    This change does the following:
    - Adds the register and unregister callbacks to the channel callback table.
    - Modified the VMX VMCI channel to add the register and unregister callbacks and initialize
    the callback table with these new functions which are then passed to the HGFS server.
    - Modified the VMX and tools backdoor channels to NULL out the function pointers for the
    register and unregister callback functions.
    - Add the Hgfs server directory notification callbacks for register and unregister which are
    termporarily protected by  ifdef statements as they are not yet called from the directory
    notification component. These simply callback to the channel register and unregister functions
    to do the real work if present for the channel in use. (Only VMCI will use this.)

commit 3393f1082b454052a37e33f241e6ceb20fcb29f2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:29 2017 -0700

    Hgfs Server: Clean up logging macros and enable Hgfs Server tools logging
    
    The HGFS server logging macros are scattered throughout and repeated
    in each source file. This makes it difficult to modify between the
    VMX implementation and the tools. The tools side suffers currently and
    is thus hard to debug.
    
    This is the first in a couple of small changes to clean up the logging.
    
    First the cleanup by moving the server logging statements for LOG to a centralized
    private header file for the server code and not repeated in every source file.
    
    Second, move the HgfsServer LOG from hgfs to its own HgfsServer setting.
    New VMX file setting is:
    Loglevel.hgfsServer = "10"
    
    The current existing setting of "hgfs" will capture logging for the VMX
    such as the HGFS manager, policy and transport interfaces (VMCI/Backdoor).
    
    Third, the HgfsServer LOG statements for the tools builds (which go into
    both instances of the vmtoolsd sevice/daemon) and the upgrader application
    are now mapped to g_debug and Debug function calls respectively.
    This now allows the tools configuration logging to set the following which will capture all
    the Hgfs server logging:
    hgfsServer.level = "debug"
    
    Follow up changes will be made to check the tools backdoor transport interface log setting
    which currently uses something like:
    hgfsd.level = "debug"

commit 1cb088a145faa1db071fd71f82a46f8398e04682
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:29 2017 -0700

    Remove LISP in vm_{atomic,uninterruptible}.h
    
    Unrelated to open-vm-tools.

commit c04c7f646558a39445d2348dd99beec90ad587a6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:29 2017 -0700

    Add Util_Memdup(); replace DynBuf_AllocGet() calls with Util_Memdup().
    Remove Util_CombineStrings() and Util_SeparateStrings().
      - lib/dynxdr/dynxdr.c
      - lib/include/dynbuf.h
      - lib/include/util.h
      - lib/misc/dynbuf.c
      - lib/misc/utilMem.c
      - lib/user/util.c

commit 166ec44767193a5f2c6430effe56ac83fccc9c74
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:29 2017 -0700

    vm_{atomic,uninterruptible}.h: De-duplicate asm snippets
    
    Unrelated to open-vm-tools.

commit e2ac716f06f7343f69b2313f2c2b07d03fda7bd1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:29 2017 -0700

    Revert previous commit.

commit a22be75ad0fe2426dec3edcf77397b35e1aa4255
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:29 2017 -0700

    vm_{atomic,uninterruptible}.h: De-duplicate asm snippets
    
    Unrelated to open-vm-tools.

commit 549d415899e788f110b4b591240166feac5ef148
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:28 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 3787bcd2f4a9855e4776d772b82a86e8b389bc34
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:28 2017 -0700

    lib/log: Remove GuestLog_* declarations from log.h

commit 4d65be46b0eab5641bdad4ee3b50ff9cdd35e4ce
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:28 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 11c8e52f1f4032eff096cc0ba6aadfacae2ed0d3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:28 2017 -0700

    lib/uuid: UUID routines can fail
    
    If a UUID routine can fail, make this so. Document this and make it
    clear what the failure indicator is.
    
    This is the first step to having the UUID routine caller handle an
    error. The next steps require visiting the callers and plumb error
    detection.

commit 8d7ff7f20313100863e48f4e4ceaf6af020076a6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:28 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit c94d3ba624d5f3911977b028148357c178c68d8b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:28 2017 -0700

    lib/lock: Make MXUser_CreateSingleton* an inline
    
    This will speed up the common case nicely, protects type safety, and
    provides data encapsulation.

commit a418e3a9bf2bdb32cc86b295319024e3d6f3a128
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:28 2017 -0700

    Revert previous commit.

commit 881b9938c8d89d2fa15911aa34cf512393ec92a1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:28 2017 -0700

    lib/lock: Make MXUser_CreateSingleton* an inline
    
    This will speed up the common case nicely, protects type safety, and
    provides data encapsulation.

commit 181f8877e93ec215cfb24a2c23041371e5e5da89
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:28 2017 -0700

    Map certain PAM errors to VGAUTH_E_AUTHENTICATION_DENIED.
    
    VGAuth maps most PAM errors to VGAUTH_E_FAIL.  As a result,
    some authentication failures result in error messages reporting
    general failure rather than authentication failure.   To
    provide more useful error reporting, this change maps most
    PAM errors to VGAUTH_E_AUTHENTICATION_DENIED instead.

commit 025158629d36851a1a190abd3427747e41842aa2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:27 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 3446664945da9e57031fad8892b43b2b5a6ab76f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:27 2017 -0700

    lib/asyncsocket/asyncSocketBase.c:
      - Avoid infinite recursion with ASOCKLOG() and DecRef.
    
    lib/asyncsocket/asynsocket.c:
    lib/include/asyncsocket.h:
      - Fix race between AsyncSocket_DoOneMsg and the read callbac.k
    
    Changes to common header files: not applicable to open-vm-tools.

commit d014389df605a45b282bb2cc55334c7eecb487c0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:27 2017 -0700

    Exclude non-directory and non-existing paths during quiescing.
    
    A stale mount point or a special path that can't be opened
    could break quiescing operation in the Linux guest. We need
    to tolerate such cases by skipping such paths.

commit 1285fffabe27c98ab90012c5d89fd2d17bd48606
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:27 2017 -0700

    Make AsyncSocket_Close() idempotent; move dec-ref out of AsyncSocket_Close().
    
    Changes to common source files; not applicable to open-vm-tools.

commit 8cf4ff17a7f7f687a55075f67f8988bd45950704
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:27 2017 -0700

    Stop defining Atomic_MFence() in cross platform code
    
    No functional change to open-vm-tools.

commit 8bc03fbb6c41be9f501b409a8391af5d63ecebdb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:27 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit d8f465ade3ffd332017dc367fea8df806348f2d0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:27 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit a77e97df5b8145f29cb097bced90f7d91e2ff548
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:27 2017 -0700

    Add Posix_Free and try harder to avoid clearing errno
    
    free() can clear errno.  Apparently POSIX will prohibit that
    in a future version of the standard; in the meantime, add a
    Posix_Free function that guarantees errno preservation and
    start using it.
    
    Similarly, make Util_ZeroFree, Util_FreeList, etc. also
    preserve errno.

commit 4ce5f44e0bd0789f65fe4710df5293e71eb6d1c0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:27 2017 -0700

    ProductState: fix indent

commit 1aaa5e267bb500a77a2d3771e780ffb09134fc10
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:26 2017 -0700

    Allow enabling or disabling timesync multiple times.
    
    Toolbox cmd sends a presumed old value for timesync GuestRpc
    when enabling or disabling timesync. VMX side expects the guest
    side to be aware of old value and therefore errors out whenever
    guest repeats the operation.  Previously the implementation was
    silently ignoring the error.
    
    Avoid sending the guestRpc to enable or disable timesync when
    it is already in the desired state (enabled or disabled respectively).
    It is optimal and also avoids the unnecessary error.

commit 77c47a809b27a6b15d7c5bec739fd33983ceacd1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:26 2017 -0700

    Fix whitespace in localization file

commit 7cbc6d60863ef0b02f15814178ef2f318fcf697c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:26 2017 -0700

    Fix build breakage introduced in hostinfo hypervisor detection changes.
    
    ARM builds are breaking because Hostinfo_HypervisorPresent is defined
    but not used [-Werror=unused-function]. This change defines
    Hostinfo_HypervisorPresent only for i386 and x86_64 architectures.

commit 2bf0056a956888da2aeb07f62b4ae05f5cb5427e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:26 2017 -0700

    Hostinfo hypervisor detection changes.

commit f639109e1e33718f9ed6eddb614aa6fc018ded99
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:26 2017 -0700

    More cleanup of productState.h

commit 71d4840904ff0cb97f6bfb38a7b7295aa11dba73
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:26 2017 -0700

    Clean up productState.h

commit da6d3a5187e285bebcb2c7dbe2e5902e0b1c49b9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:26 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit b5c16034cf33adda41d4b970dbf72ee25581db4a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:26 2017 -0700

    HgfsServer: Rename the directory change notify callback to be more consistent.
    
    When setting a directory notification request we pass a callback for receiving
    directory change events which is currently poorly named. This simply renames
    the callback to be HgfsServerNotifyReceiveEventCb. This is being done for
    consistency and clarity when called by the notification component.

commit 5188c85f06c061a657809eb5a705a8da771ced0a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:26 2017 -0700

    Disable building VGAuth, deployPkg, grabbitmqProxy by default on non-Linux.
    
    VGAuth, deployPkg and grabbitmqProxy are not supported/tested for non-Linux
    guests. Tar installer does not even install these components on these guests.
    In order to avoid having non-Linux open-vm-tools users (like FreeBSD) go
    through disabling these manually, use the correct default in configure script.

commit c1eb3bb5e7fbff13156d05a037bf652cf2bdc384
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:25 2017 -0700

    Fixes for VThread change
    
    Two fixes for build issues
    - numVCPU.c: Windows compiler apparently doesn't like empty
    initalizer lists. Fill in with a value.
    - vthreadBase.c: when VTHREAD_INVALID_ID went from -1 to 0,
    missed some adjustment code in VThreadBaseSetLocal and
    VThreadBaseGetLocal which "adjusted" the value by +1/-1 so
    default-zero would work correctly. The value no longer needs
    adjustment. This did not impact Linux because Linux uses
    have a thread-local cache which returned before this slow path.

commit 2263933eb6569de38dd523ffab0786d237039502
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:25 2017 -0700

    VThread: change VTHREAD_INVALID_ID, move VTHREAD_MAX_THREADS
    
    Two tiny but wide-ranging changes.
    - Now that there are no remaining users of VTHREAD_MAX_THREADS outside
    the lib/thread library itself, reduce the scope of that declaration
    to vthreadInt.h.
    - Change VTHREAD_INVALID_ID to a value of 0 instead of a value of ~0.
    (And correspondingly, bump the ~4 hard-coded VThreadIDs that remain).
    This reflects that the ID may now be default-initialized.

commit d218f7a6c23c1c88b4f92ddaf1f6fbfb554cc115
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:25 2017 -0700

    VThreadBase: move TLS macro to header
    
    Detecting thread-local storage support would be helpful in lib/lock.
    Move the detection logic from vthreadBase.c to vthreadBase.h.
    
    Bonus cleanup: inline VThreadBaseSetNameRaw

commit ecc7259e47548e13189a79544fc66324d87e00e2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:25 2017 -0700

    Move VThread_CurName() entirely to thread-local storage
    
    A previous change switched VThreadBase to store thread names in
    thread-local storage on most platforms (all except mobile). This
    change is the follow-up: removing the old storage location for
    thread names.
    
    Briefly, this change removes the "name" field from VThreadBaseData and
    handles all the fallout. That's mostly straightforward, though
    lib/thread ended up storing a thread name in the "reserved" thread
    structures - this is mostly so the name passed to VThread_ReserveID
    would be preserved until VThread_CreateThread is called.
    
    After this, vthreadBase.c complexity only remains for VThreadIDs, which
    is the next step of this effort.

commit d17b458c340f76112707ede1e277b575e6e4301b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:25 2017 -0700

    Check the RPC return value in timesync enable/disable commands.
    
    toolbox-cmd timesync enable/disable commands always return success
    even when the command failed. Added a check for the return value of
    the RPC call and also print the error message using a generic
    message which required renaming existing "disk.wiper.error" key.

commit 58279b25999003b34eed8553732ea6239c1b819a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:25 2017 -0700

    VThread: put thread names in thread-local storage
    
    Next step in the "stop allocating per-thread memory" effort. This change
    moves thread name storage to thread-local storage. (VThreadIDs are
    the hardest and will come last). This is also only half the work; a
    it adds new storage but does not remove the old storage, which was
    left out to keep this change simpler.
    
    For platforms that have thread-local storage, the implementation is
    pretty straightforward, though initialization is inherently lazy.
    
    For platforms lacking thread-local storage (at this point: iOS and
    Android, see comment in vthreadBase.c), life is much harder.  Added
    a very large comment contemplating different solutions and
    ultimately concluding that unnamed threads on such a platform will
    get a best-effort (read: racy) name from a global buffer. Note that
    threads which are explicitly named WILL get a (non-racy) name, but
    it requires an explicit naming attempt.

commit ff41cba8ec3e90f7c1367f524defeaeb3bce2bff
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:25 2017 -0700

    hange to shared header file unrelated to open-vm-tools.

commit 8828236506e107831d6456d39f60f36b5e02632b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:25 2017 -0700

    fileLock.h: fix comments

commit a391909df76d7e94e7ec768b5946d448dc4ce55b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:25 2017 -0700

    Multiple changes:
     lib/file/file.c: - Add new function File_ContainSymLink().
     lib/file/filePosix.c: - Add new function File_GetMountPath()
     lib/include/file.h: - Add new function declarations.
    
     lib/include/dynbuf.h:
      - Clean up documentation.
      - Rename DynBuf_ConcatString() to DynBuf_Strcat().
      - New inline static function DynBuf_GetString().
     lib/misc/dynbuf.c:
      - Clean up documentation comments.
      - New function DynBuf_DetachString().
     lib/misc/hostinfoPosix.c:
      - Utilize new DynBuf functions.
     lib/misc/strutil.c:
      - Clarify documentaion comments based on DynBuf changes.
     lib/misc/utilMem.c:
      - Adjustment to comments.
    
    Common source file changeis; not applicable to open-vm-tools.

commit 5beba526e988e6c8605509343df2c58b50b45cd0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:24 2017 -0700

    Update copyright year for recently modified files.

commit 009d683ad725f34a0d7e497e6fa7d406af428847
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:24 2017 -0700

    Bump the VMware Tools update release to version 10.1.5

commit ccd1627ba7e4581a4066c99e6a76aa295b8fd7ba
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:24 2017 -0700

    Common header file change; not applicable to open-vm-tools.

commit 566c7114a43b73431ca9fca31658d38884e0b316
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:24 2017 -0700

    vmci changes to enhance void functions to return errors

commit 7cf255f467e45b1613c89e489ca85d26d80e956a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:24 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit da695443ecee6103552d44a0b174f00d24881372
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:24 2017 -0700

    vm_basic_types.h: rename macro IsBool to IS_BOOL, remove IsBool2.

commit 577ebaddbcfed70548c5bea89ff74f40d9a9d1cf
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:24 2017 -0700

    Update tools copyright to 2017

commit 545b02d45b27c392f9c4046f3043d19b5da82fe0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:24 2017 -0700

    Change ISO mapping for centos and oraclelinux from frozen ISO to linux.iso in gos table

commit 64c3d03340e7ef1d2694b7dac36d4f5b7179ad91
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:24 2017 -0700

    Tools Daemon: Do not use kernel client mount HGFS when FUSE unavailable
    
    When FUSE is not installed in new OS versions that are kernel 4.0 and newer
    the vmhgfs-fuse client is unavailable to use. Previously, the mount RPC handler
    would fall back to mounting Shared Folders using the kernel client.
    This really should not be done as it would entail the user running with an
    untested vmhgfs kernel driver client or worse the driver fails to build.
    Instead the RPC should really fail to mount.
    
    The RPC Mount Shared Folders should only mount the Shared Folders using the
    kernel client when FUSE is not supported by our HGFS FUSE client i.e., when
    the Linux kernel version is older than 4.0.
    
    To check for these conditions the vmhgfs-fuse component is run with the enabled
    option which returns with success for enabled, 1 for not enabled (older OS kernel)
    and 2 for newer kernel but FUSE is missing. These return values should be checked
    and  only if value 1 is returned then the mount using the kernel client should be
    attempted. Not as currently done with an unsuccessful result of 1 or 2.
    This matches the installer which does the same check.
    
    This fix is related to a bug which came about due to a user custom building
    and installing a newer kernel 4.0+ on top of a 3.x kernel with tools, and without FUSE.
    When the VM was rebooted using the 4.0+ kernel and running tools config script the
    script will to try and use the HGFS kernel client.
    The tools daemon RPC handler to mount the Shared Folders will also use the kernel
    client, too, in this scenario.
    This is bad as the HGFS kernel client is running untested by VMware.
    Both issues need to be closed, this change addresses the tools daemon RPC handler only.

commit fa7d640c18bb421159d6749c83eba8e8372a6519
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:23 2017 -0700

    disklib change unrelated to open-vm-tools
    
    On NFS, provide a way to revert to direct-write method for descriptor updates.

commit e1f94428ec7fd468b7f316bd5a09bd839428bf2d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:23 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit f543bb5ed11b393065d9449f7f5a34653cd0faf0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:23 2017 -0700

    Common source file change; not directly applicable to open-vm-tools.

commit c2d88806b6c12fd074d5eeb8c3b5be6282774d4e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:23 2017 -0700

    Remove TICKS_TO_USECS and USECS_TO_TICKS from poll.h
    
    Back before tickless kernels (which we now always require on Linux),
    there was a 50Hz-200Hz kernel "tick" for timekeeping.  It is no longer
    used in our code.

commit f7ada47b69f78b665325d633e7e45fa25bdc1232
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:23 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit e8b47cd8ea1af1f30a1a2fdfc45d41e7a0a3b992
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:23 2017 -0700

    pollInt.h
    
    Mac compiler is picky about an int->enum conversion, and requires
    a typecast.

commit 4a8aecf2d148ce11afbad939beb7b629a8970263
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:23 2017 -0700

    lib/poll: Trim PollClassSet
    
    We no longer need per-VCPU poll classes, trim PollClassSet down to
    a non-array size.
    
    Tweak a few pollInt.h algorithms so that compile-time-constant
    PollClass values can be constant-folded.

commit 73fe327f66448de81c324093a5d6fabd431f567e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:23 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit d6b169cc5ec51fef82127cd64aa155faf6dd695e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:23 2017 -0700

    VThread: some thread-local storage doc updates
    
    '0' is a safe default for pthread_key_t for all platforms which
    still use pthread_getspecific() instead of using __thread.
    
    This change updates the documentation in vthreadBase.c, and
    slightly simplifies the pthread_key_t initialization logic.

commit 124f09fedf4ea14b1c9817ddd3a72823c79eea50
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:22 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit c00e009050f59d450eebcadf4db7f8d4f93d8533
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:22 2017 -0700

    Update guest OS strings in guest_os.h:
      - Update "Other Linux 3.x kernel" to "Other Linux 3.x or later kernel".
    
    Add checks to services/plugins/dndcp/dnd/dndCPMsgV4.c to validate packet
    and payload size to prevent out-of-bounds  read and writes.
    
    Correct the requestNextCmd parameter used when asking for the next piece
    of a big binary transfer in RpcV4Util::RequestNextPacket().
    
    Common header file change; not applicable to open-vm-tools.

commit ac62637033af811fb3c9ac433ecc83ab1c9b03ff
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:22 2017 -0700

    Fix the recursive inclusion for vmtools_version.h
    
    Fix the recursive include file complication for
    'vmtools_version.h' when the new tools component is consumed.
    
    Add necessary macros to check and include the tools header file
    only if it was not already included.

commit 472477d674909ac24767dc1441187f790ce8d31b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:22 2017 -0700

    Consume VMware Tools Header files from Tools build.
    
    The 'tools' build component publishes the VMware Tools header file as
    'vmtools_version.h'. All products / components which consume 'tools'
    should be built with the header file published by the 'tools' build
    instead of the one archived in the include directory.

commit eb1375c6212d49f1d35bf5895b235b4a56dca851
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:22 2017 -0700

    Changes to common header files; not applicable to open-vm-tools.

commit 8e9a9eb20b70820f5c5d091db37a7d93c0653932
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:22 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 3b84457bab61db9402404bcc3eff6fced9339dc6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:22 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 02575ca8d15904552aa3e836978a59a124b862e7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:22 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit c5732c9b32f53d29b64a8b4b20620788a9fa6e3d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:22 2017 -0700

    Add VMware Tools version 10.1.1 to the version history.

commit 47a8b6dce4f39c822c5371225adc7d8017a2918f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:21 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 847f522f678d7ae4a894eed5dcaee0504ff2044c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:21 2017 -0700

    Fix comment.

commit 87f0f71f9929b29fb0c9b4643d92622b1a58a69c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:21 2017 -0700

    Add alias for 'verbose' for vgauth logging
    
    People keep using 'debug' instead of 'verbose'; make both work.

commit 5d4fb852891e7fc0944d49dc11b4ec3b7fc4b1d1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:21 2017 -0700

    Improve debugging
    
    Clarify some debugging messages.

commit 981cdc84c1903c259b2cf791b5c3903354f9bc5e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:21 2017 -0700

    Add -h support to hgfsclient

commit 63fb12f0d7fc5e0d22c9c6b9a8185367e7a8247d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:21 2017 -0700

    Improve usage for rpctool

commit 5dfef556fa4220a87c67177c3d3a82c1cd74bc5f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:21 2017 -0700

    add -h/--help for xferlogs

commit 39ebc8c154c54e4d467e267ce08f8ddbfdabd4b6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:21 2017 -0700

    Common source file change; not directly applicable to open-vm-tools.

commit 79fa1cd8c12b7ecee95785aecd141f5cd57267ee
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:21 2017 -0700

    Common header file change; not applicable to open-vm-tools.

commit c3d4bcc3ddb52b0c5875f7bf429c996ebe8921e5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:21 2017 -0700

    Enhanced log messages and a few new log messages.

commit 7a32f21bb655be311de1eaac658f332245a9c5a0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:20 2017 -0700

    Thaw filesystems if the snapshot commit message to VMX fails
    
    If it takes a long time to freeze filesystems, vmx may timeout the
    snapshot operation so the commit fails. After this happens we should
    thaw the frozen filesystems.

commit 2bb835b72b2e9071a8ad9547deff0515d015849f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:20 2017 -0700

    Don't try indefinitely to kill a process
    
    Some processes just can't be killed, and if guestOps
    try, Tools will just get stuck forever.

commit 09e467656e1faa49034f314878548bec870894f5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:20 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit e958a883452adff46d788bdd51518d859c48d556
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:20 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit afff26f7e749a416483c59431f17f09d311bac2d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:20 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit af8cf1d9864d41617dc1e53cc1106c71dfbcd8d5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:20 2017 -0700

    Add an ASSERT
    
    The issue is classified as "Intentional" since the value in question
    will never be negative in practice.  Add an ASSERT to make this clear.
    
    While here, add two missing function entry g_debug statements.

commit 5a6248591c5c7b02c0d32efe117814a680db4d06
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:20 2017 -0700

    Remove several LoadLibrary calls
    
    All the callsites in this change use LoadLibrary to
    work around functions not being present in Win2K or WinXP.
    We no longer support those platforms, so can link directly
    to the correct functions w/o dynamic loading.

commit 5eadbaf0b029c4ba7b60ae2f06e80dc9a2f3346f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:20 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit e0addb1131dc3ce9ec3aa6c32c29285893b3eec3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:20 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit dc70c048c4006741b4878b4e8c61276ad3490f35
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:20 2017 -0700

    GOSTable: Add basic support for Solaris 12
    
    Add support for Solaris 12.  Split out Solaris 10, 11, and 12 explicitly.

commit 751a92ec8f2781caa5e9da96ab11e5b28d9ae142
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:19 2017 -0700

    lib/file: consistent ASSERT policy
    
    ASSERTs on pointers are against NULL

commit 5ad8a6869b293d8c8fb6276d227e12dbb5563d32
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:19 2017 -0700

    lib/file: Unable to perform file rotation in the root directory
    
    This was caused by improper detection of the root file system.

commit 2b7bbda895a221e26424fe3a09147cd3fcccb8ab
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:19 2017 -0700

    lib/file: some cleanup
    
    Line things up; style made common

commit d3bf42683a887081fca903a70666685a581c76ef
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:19 2017 -0700

    Change to util_misc.c to delete unused variable.

commit 903d5ddf13cf3feab01a80c37d0681985b0162ca
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:19 2017 -0700

    Fix the help message for --disable-xml-security-c option.
    
    The help message printed for '--disable-xml-security-c' option is wrong. The
    existing help message is best suited for '--enable-xml-security-c'.
    
    1. Modified the help message to show the option as '--enable-xmlsecurity'
    2. Modified the option name from --xx-xml-security-c to --xx-xmlsecurity
       in order to maintain consistency between --disable/enable and
       --with/without options.

commit 794d2d4626115a23aa7d1ff6436d6de6abb86b26
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:19 2017 -0700

    Add Atomic_ReadIfEqualWrite128
    
    This enables atomic CAS of a 128 bit entity. As gcc >= 4.6 already
    provides intristics for it, the funciton is just a simple wrapper,
    and built only for those compliers.

commit 57612be42c1e13a178e4fcf4581246b8420aa192
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:19 2017 -0700

    Revert previous commit.

commit 934252b4d48eb69c3466fac8fe49305308c7f228
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:19 2017 -0700

    Add Atomic_ReadIfEqualWrite128
    
    It enables atomic CAS of a 128 bit entity. As gcc >= 4.6 already
    provides intristics for it, the funciton is just a simple wrapper,
    and built only for those compliers.

commit 416e2c5a0d4459ef63d05eb23e514e18532a6baf
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:19 2017 -0700

    Changes in file.c File_GetSizeEx() to be 64 bit compatible and treat the
    size of temporary file that disappears between the File_ListDirectory() and
    File_GetSize() calls as size 0.
    
    Common header file change; not applicable to open-vm-tools.

commit 15e43152056346d3490d22d9a13e5018bea4f4b0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:18 2017 -0700

    Hgfs Linux: Fix mounter versioning constants
    
    Currently, to allow for the mount information structure, which is passed
    from the user mode mounter application to the Linux and OSX HGFS kernel
    mode drivers, to be modified and support backwards compatibility, the
    structure is versioned.  However, the version field uses a badly named
    constant implying it is the HGFS protocol version. This now clashes with
    a new enum for the HGFS protocol version added for tracking and reporting
    the protocol version in use.  The mount information structure version
    should have the version constants named for their intended purpose
    e.g. HGFS_MOUNTINFO_VERSION.
    
    This change modifies the contant and uses an enum. This effects the mounter
    and HGFS kernel and OSX kernel mode components.

commit 8fc9d9d5b8308134115665168355f82ef4536a68
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:18 2017 -0700

    Remove SAML bypass from vixTools.c.

commit 76c0d8f2f48560d74f11ae6fdb37a5ff535dba6b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:18 2017 -0700

    Build resolutionCommon when KMS is enabled
    
    When ./configure is called with the '--without-x' option,
    the resolutionKMS plugin failed to build because disabling
    X disabled resolutionCommon as well. This changes enables
    resolutionCommon when either X or KMS are enabled, or both.

commit f36f5da9f0a1134325495872f8853e01cadf51ad
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:18 2017 -0700

    Fix help messages related to xerces and xmlsecurity libraries.
    
    When configuring open-vm-tools, if the system doesn't have
    xmlsecurity and xerces libraries, the 'configure' step stops and
    gives a hint that the user should try with '--without-xerces-c'
    and '--without-xml-security-c' options. Those options are wrong
    and the right ones are '--without-xmlsecurity' and '--without-xerces'.
    
    Fixed the configure.ac script to print the proper '--without-xxxx'
    messages in the warnings.

commit 9a29c78975c870a2bf2bd12213c4f7e3acbbd23a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:18 2017 -0700

    Reset gGuestInfoLastGatherTime on channel reset.
    
    Reset gGuestInfoLastGatherTime on a channel reset
    to avoid unnecessary warning during resume and snapshot restore.
    Also rename global variables vmResumed -> gVMResumed and
    guestInfoLastGatherTime -> gGuestInfoLastGatherTime.

commit bcd6bdc0c64ee3ea306598d2be9bfaf468e69100
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:18 2017 -0700

    uuid.h: style changes

commit 907a656a708c8730f3a98d5c34ea7f1bab6fd187
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:18 2017 -0700

    Common header file change; not applicable to open-vm-tools.

commit f20c79b5f779cd0910c57aaa744b9a5823173f00
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:18 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 01292c6c69dc514ada450a8decc3b1aa733e7903
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:18 2017 -0700

    Hgfs Protocol: remove unused constants for version
    
    Create a new protocol version enum for subsequent use and remove the
    unused constants and one misnamed clashing constant.
    The misnamed one for MountInfo will be fixed in a subsequent change.

commit 614afdd309e71ddfcbab349c3c135822cb048cdb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:18 2017 -0700

    Remove extern "C"

commit 48cc781074c88ed5347ee0a809f2e1d22c9fee7d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:17 2017 -0700

    lib/file: consistent style

commit f119378a1b745873c8ae0d3183d47ff65fad9f6b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:17 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit c8497284a62807fc69955681f24ca1d16bb82ffa
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:17 2017 -0700

    Bump Tools version to 10.2.0
    
    Bump the Tools version to 10.2.0 for the next feature release.

commit c713911ec2d41e845e18293d73b059f0f7190008
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:17 2017 -0700

    Extern "C"

commit 9e4713f300302650581ae6223e9fc06e556d7996
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:17 2017 -0700

    Minor cleanup in public/backdoor_def.h

commit f8f76e2237254d56775fcc99f27542a93e1b005a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:17 2017 -0700

    Fix build error in message.c

commit e29770d0d0cac4abc65b35102abadece597d04cd
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:17 2017 -0700

    Remove extern "C"

commit 805301a3caf702b2b6e57cb790565f2872934808
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:17 2017 -0700

    Remove extern "C"

commit 29052188e4874e3cbb035a59d7027a4304af49c3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:17 2017 -0700

    Remove extern "C"

commit 1213229802046c9f1cc57811546f6b512e4759e8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:16 2017 -0700

    Revert previous commit.

commit 5e9ecc4923fb6043c9e1ca94b87cf2fca1788c7f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:16 2017 -0700

    Remove extern "C"

commit 92e764dc82ee0195e0a4fa2a3d5e2d0dbe252b6f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:16 2017 -0700

    lib/file, lib/misc: style commonization

commit 63237e872772c61299c423123cb41373c35a76ea
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:16 2017 -0700

    lib/file: style commonization

commit bdf4795f81c2f17b9918917b39dbe11363059bcb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:16 2017 -0700

    Remove extern "C"

commit da40ed7745a5173953a3be5d939825e4b105db88
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:16 2017 -0700

    Remove extern "C"

commit a315228823edb6391294f8e55b27d42c8cd17fa0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:16 2017 -0700

    Remove extern "C"

commit d82b1ff5363b81a66575fbc92db07839aa31d22f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:16 2017 -0700

    Remove extern "C"

commit 6d2db8c281212a4ae0e55bde487d0ad7f8bed969
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:16 2017 -0700

    Remove extern "C"

commit 73e7e44715c615c56c28589642ec579ca063297f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:16 2017 -0700

    Hgfs FUSE Client: Improve write error log message
    
    A simple improvement to provide a more complete error message when
    an error occurs writing data to the HGFS server.

commit 1b4051b027a2b4c7743f8d81b92dd04676182c0a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:16 2017 -0700

    Remove extern "C"

commit e4e0670e746b892da52ae7446e7fc526caf8be61
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:15 2017 -0700

    lib/file: style fixes
    
    Some changes were against the style of lib/file. Fix this.

commit aa84e68d0b85662725f54108efb77addfc2b1afd
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:15 2017 -0700

    Revert previous commit.

commit 602a113ec5931fb806d7831336d8f62bdcec1c8e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:15 2017 -0700

    Uninline CodeSet_Utf8FindCodePointBoundary
    
    It's a bit too big...

commit 31162d6d147a2a2c3cd58f70c29a4a4c88c724a4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:15 2017 -0700

    Hgfs FUSE client: fix broken attribute caching on writes
    
    The FUSE write implementation incorrectly invalidated the cache of file
    attributes. The return code for the write operation checked for only invalidating
    attribute cache if the result was zero. However, this result is negative for
    an error (in which case the cached attributes should not be invalidated) and anything
    else is the number of bytes written.
    
    The fix for the broken attribute caching on writes is made to check the result
    for greater than zero so any success. If no bytes were actually written we take
    the conservative approach of still invalidating the cache as so all the files
    attributes for that file will be reset in the FUSE client. This should be rare
    at best.

commit 2f852bc476c65815244016ce379c46127977a98d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:15 2017 -0700

    Fix typo in open-vm-tools OSL.

commit edf9be0fa0c0037292daebba2b79b625b68f42c2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:15 2017 -0700

    Set up pid/socket directory earlier
    
    /var/run/vmware is used for both the sockets and the
    pid file.  In fresh open-vm-tools scenarios, it tends
    not to exist when we need it for the pid file.  Refactor
    the code and make sure it exists soon enough to be used
    for the pid file.

commit 6c1f7f329400177030f0b9e1ac2554da72dde242
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:15 2017 -0700

    Use realloc_n instead of realloc
    
    Now that we have a modern glib, use g_realloc_n() since its a bit safer.

commit 5979cbda3b735737eab3569403bb21dea84ecb61
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:15 2017 -0700

    Update the Open Source License Files for Tools-10.1.0 and open-vm-tools.

commit 4d9a7c52d11c4f99c589fdb286d1d745d7a3e02c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:15 2017 -0700

    codesetBase.c should have no dependencies
    
    These are routines that can be used anywhere without being tied
    to the rest of codeset.

commit aba2e60151d5711fb49df32c638687c8c7d085c1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:14 2017 -0700

    Add some missing debug logs in vixTools.c.
    
    Add log messages corresponding to VIX error VIX_E_FILE_NAME_INVALID (=22).

commit 3cf3bc33a1b4f698d67e0cc5506645f149f4b025
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:14 2017 -0700

    Remove extern "C"

commit 2cdfa5027a8693ed19f8a94193c471a287158971
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:14 2017 -0700

    Copyright changes

commit 2a4d7a289dec5a8287d9508caacdff2fa1e1624c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:14 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit dcc99f692159012ca146a9dab59a2d2b671d45f8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:14 2017 -0700

    Remove extern "C"

commit 20379cb590d604eeaa51e6c60af07bd671a7c67c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:14 2017 -0700

    Copyright changes

commit 03e61194c29732e96c7b9d82f6c4adc5c034df05
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:13 2017 -0700

    Copyright changes

commit 46bde5bb2157dd58cc8f6e0953e7097526262974
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:13 2017 -0700

    Copyright changes

commit 44b43b144395b583b50c3dda37605b886e700ac9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:12 2017 -0700

    Copyright changes

commit e22ce95e059d9bec1a9904c6cb98c8f0d51a1af9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:12 2017 -0700

    Changes to common header files; not directly applicable to open-vm-tools.

commit 238deba5cfb44f5b314c99ec58812d29043a1ac8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:12 2017 -0700

    Log level change in CAF - Changing default log level to ERROR

commit 5fe94065d513b826c74aa362f9d6de548c33e945
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:12 2017 -0700

    Common header file change; not applicable to open-vm-tools.

commit 1bc9ee62e989da0af468fc8e14046f08e63d289a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:12 2017 -0700

    vm_atomic needs to have an internal extern "C".

commit 289f6ae5a8c6e543d32010a17efc4c7f646d4c2f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:12 2017 -0700

    C++ extern clean up issue

commit c93385a40bba7acf5eee7188da9e93fa590f3018
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:12 2017 -0700

    Remove extern "C"

commit 240fdbc396a364025e2ec1105252b71b99aaf161
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:11 2017 -0700

    Remove unnecessary extern "C"

commit 756b771290c3b1b303252ca42142e8e9874c4b1b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:11 2017 -0700

    Formatting/indentation fixes to lib/file.

commit 1beeea1f0b3467735579d1d2c58585a80afdd52b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:11 2017 -0700

    Formatting/indentation fixes to lib/file.

commit 013c3d530d203baa3ec02ad767d641cd495923a6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:11 2017 -0700

    Revert previous commit.

commit e86169d49c461e3e5ce2fa8de3d03586cff1656b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:11 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit e5b0240bd6036a600603abd6ceb81476756baad8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:11 2017 -0700

    Consistent #ifdef style in err.h

commit c4c8e1819a4de4dd7a269b1d0fe6d27b519fed09
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:11 2017 -0700

    Revert previous change

commit af4b0fdb43083c297d08c2c6a88f3c7c470eed25
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:11 2017 -0700

    strerror is not thread safe
    
    Replace with Err_Errno2String.

commit 783c4a9e62dc83edc5707232e0e2d0dafa89a83c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:11 2017 -0700

    Switch to Err_Errno2String for thread safety
    
    Start cleaning up strerror usage.

commit 64ccb7fc149dc786503d0b0e1eab9d84ed65228f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:11 2017 -0700

    Remove Hostinfo_OSIsSMP

commit adf3be560d65d0d910d4d4b2988aef152a797720
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:10 2017 -0700

    make System_GetTimeMonotonic() really monotonic
    
    Solaris has an issue where times() can return a lower value than it
    returned earlier, making it non-monotonic. This change works
    around this by saving the last returned value and returning that
    if the times() function return a lower value.

commit 3f2da0682aa201132449eb73fda0f0272c09d5e1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:10 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit fbad4c6ddd25e8af9c7bd7c6c9879c03b4542a54
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:10 2017 -0700

    Properly configure xmlsec1 for CentOS
    
    Some distros build xmlsec1 with dynamic crypto, so do things slightly
    differently.
    
    Also work around an issue with the way Redhat & SuSE package xmlsec1.
    They built it with -DXMLSEC_NO_SIZE_T, but that flag isn't properly
    exposed by xmlsec1-config.  This results in a bunch of xmlsec1 data
    structures (anything with an xmlSecSize in it) being different between
    the lib and our code, and it tends not to work when our code references
    fields in the data structure.  This change always sets -DXMLSEC_NO_SIZE_T.

commit 69700e93427aaca77897e66cad3a8ab6ab526a9b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:10 2017 -0700

    Backout asyncSocket change to not exit recv loop early when SSL_Pending is zero
    
    Change being reverted:
    
    After reading some bytes with SSL_Read() and firing any
    callbacks, we would make a call to SSL_Pending() and, if that
    returned zero, we would break out of the read loop and return.
    We would only make a second call to SSL_Read() if Pending()
    returned a non-zero value.
    
    There are several problems with this.
    
    Firstly, having bytes buffered up within SSL is a reason to
    continue performing SSL_read()s, but not having bytes buffered
    is not a reason to stop.
    
    If the socket does not have SSL enabled, for instance,
    Pending() always returned zero, so non-SSL sockets would never
    actually loop here and every read would bounce back through
    Poll.
    
    Even in the case where SSL is enabled, this function returns
    only the number of bytes buffered inside the SSL context and
    provides no information about whether the socket itself has
    bytes available for immediate read.
    
    So, again, if SSL_Pending() is non-zero, we want to keep on
    reading data with SSL_Read(), and if it is zero, we *still*
    want to keep on reading data the socket itself may have more
    data immediately available.

commit 9ab704e9061cccd6eb6fe9a962a0a9c11ba5be27
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:10 2017 -0700

    Use /etc as default dir for pam instead of sysconfdir
    
    sysconfdir evaluates to $(prefix)/etc by default, which evaluates
    to /usr/local/etc by default. This is (almost?) never a correct path
    for pam config files except for FreeBSD, so set the default to /etc,
    with the exception of FreeBSD.

commit 4597af473e063e5ef13484d3a22298746fc3b0c9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:10 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 18fe499f9dac3a4fc0538ee2280fd47cde6df3b4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:10 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 97369f9f83795eecf186ce3e360e06faa53d0da9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:10 2017 -0700

    Additional AsyncSocket API clean-up.
      - Convert void-returning asyncsocket entrypoints to have an integer
        return type, returning ASOCKERR_*/
      - Do not exit recv loop early when SSL_Pending is zero; the socket
        itself may have more data immediately available.
      - Allow a small number of recursives uses of the send callback.
    
    Common header file change; not applicable to open-vm-tools.

commit 89212bfbe833d06db94e642676b6b4e7c35219e2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:10 2017 -0700

    Bump tools version to 10.0.10

commit e6da3bd40f8c83eba18fd8f1f05d9e06a3e56006
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:10 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit c1cd45f716b974925a12e7c59f89eb5bf6731d20
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:09 2017 -0700

    Hgfs Linux Kernel Client: Fix RHEL 7 system backports
    
    RHEL 7.3 introduced some backport changes for the Linux kernel
    which broke some of the assumptions about wait_on_bit function
    arguments.  This fixes the test of wait_on_bit compile which
    accidentally tests the function in kernel 3.17.0 which will
    always fail instead of intentionally failing with the pragma.

commit 4d2fef98fd292552466757c65671c095667580f8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:09 2017 -0700

    Hgfs Linux Kernel Client: fix RHEL 7 system backports
    
    RHEL 7.3 introduced some backport changes for the Linux kernel which broke
    some of the assumptions about wait_on_bit function arguments.

commit 811233a972be67259dacc4c005afabde78739831
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:09 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 4da8e30cc2fdaccd4e2c21eb71345046d0c0e944
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:09 2017 -0700

    Move include of rateconv.h in hostinfoPosix
    
    rateconv.h is only needed for the Mac system timer
    conversion. Move the include.

commit 4faccaf54449ecb7b553bcf6c02a6e046aa43292
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:09 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 26374b47147b1fa4c9c8a5f7ded23a34f407475d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:09 2017 -0700

    Improve network recovery for Linux Virtual Desktop Infrastructure.
    Client needs to react to an unexpected disconnect and reconnect with a saved session id and path.
    
    Common header file change; not applicable to open-vm-tools.

commit cfc624cc948674e1ddc53121194f84f08db1ba89
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:09 2017 -0700

    Hostinfo_SystemTimerNS
    
    On Apple, switch from using floating-point to fixed-point
    for nanosecond time conversions on iOS. (Note: x86 is 1:1
    so never used floating point). Fixed point is easily faster,
    plus uses a 128-bit multiply that avoids overflow. Added
    some comments to point out "interesting" cases that show
    why we do not use Apple's documented method.

commit c0b2e65062e4107c9812b33b7a9df2f7ed177304
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:09 2017 -0700

    Fix localization code
    
    The code that loads a message catalog attempted to handle
    continuation lines.  However, it ended up dropping anything
    it decided wasn't a continuation line.
    
    The end result is that any message catalog that had
    multiple valid entries without any empty lines
    between them would lose valid data.

commit 2f4fda1ef463fca0b990580e4f3fbbb02edc5f15
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:09 2017 -0700

    Changes to common header files; not applicable to open-vm-tools.

commit a6856e53eded0b6dbae606b9713fd2286115baad
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:09 2017 -0700

    Revert the change to add DarwinPre15 to the guest os table.

commit 4d0e744ebb69ef6b4d9d6d4884d1d35bad8b6b1b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:08 2017 -0700

    Hostinfo_SystemTimerNS: Inlining
    
    Now that we require glibc-2.5+, we can
    also require the glibc-2.4 clock_gettime() call
    be implemented. CLOCK_MONOTONIC is required for
    all clock_gettime() implementations (per POSIX),
    so the implementation here just became Really Easy.
    This is intended as a code simplification / standardization;
    there is no expected performance impact.

commit 258e66b6a4e8cade7d3f3a9464958d9063cd286c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:08 2017 -0700

    Add linuxDeploymentUtilities to libDeployPkg

commit 50a89b5ff8e3787f77f1c6122099d2eac89bbfde
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:08 2017 -0700

    Revert previous change.

commit f7d38d24e357f2738aadd0e2fbf68e884d9a288a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:08 2017 -0700

    Hostinfo_SystemTimerNS: Inlining
    
    Now that we require glibc-2.5+, we can
    also require the glibc-2.4 clock_gettime() call
    be implemented. CLOCK_MONOTONIC is required for
    all clock_gettime() implementations (per POSIX),
    so the implementation here just became Really Easy.
    This is intended as a code simplification / standardization;
    there is no expected performance impact.

commit b110d03125ff8d6a558427625196664b9337b07f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:08 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 8e2cca63b4b8ed5d399e647291af6b405c3e188e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:08 2017 -0700

    Hostinfo_SystemTimerNS: Update Tools build files
    
    The tools build files need some light touch-ups to
    make librt.so mandatory (Linux and Solaris only).
    - configure.ac: Linux already required librt, add
      a Solaris requirement
    - vmtoolslib.make: add a Solaris requirement

commit ad9206ea40608d32f07af5548430a57575caf8d4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:08 2017 -0700

    Update glib and pcre for FreeBSD and Solaris
    
    Update glib, pcre, and additional libraries they require
    for FreeBSD and Solaris.
    
    With this change, a release note will be needed to advise
    users to add the following lines to /etc/libmap.conf before
    installing vmtools on FreeBSD 6.x:
    
     	[/usr/local/lib/vmware-tools/]
     	libpthread.so.2 libthr.so.2
     	libpthread.so   libthr.so
    
    The presence of these lines will cause the run-time linker to use
    libthr.so.2 whenever it encounter a dependency on libpthread.so.2
    in an executable whose path starts with /usr/local/lib/vmware-tools.
    
    The reason for the release note is as follows.  FreeBSD provides
    a threads library called libthr.so.2.  In FreeBSD 6.x, this library
    is separate from and incompatible with libpthread.so.2.  In FreeBSD
    7 or later, libpthread.so.2 is a symlink to libthr.so.2.
    
    vmtoolslib is linked against libthr.so.2, while libgthread-2.0.so.0
    and libglib-2.0.so.0 are linked against libpthread.so.2.  On FreeBSD
    7 or later, this works fine since libpthread.so.2 is a symlink to
    libthr.so.2, as noted above.  However, on FreeBSD 6.x, vmtoolsd
    core dumps because libthr.so.2 and libpthread.so.2 are separate
    libraries, hence both are loaded and their incomatibility results
    in a core dump.
    
    Adding the above lines in /etc/libmap.conf will keep libpthread.so.2
    from being loaded, thereby allowing vmtoolsd to run.

commit 43e4a3d6309d9f84332042fdec902ac5c3d6a28e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:08 2017 -0700

    Update the guest OS table for darwinPre15 if the GOS is 10.10 and earlier.

commit d88042ca14d20f10319498b5b249363e1cc4ed9d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:08 2017 -0700

    More AsyncSocket changes.  In AsyncTCPSocketBlockingWork(), do not block
    necessary.  Reverse the order of the read/write and poll/select opterations.
    This reduces latency when the socket is ready for the I/O operation.
    This low latency option is "off" be default.
    
    Changes to common header files; not directly applicable to open-vm-tools.

commit a0e7e23614c69c61e81b6241add014f0df92ef01
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:07 2017 -0700

    Update glib and pcre for Tools for Windows, Linux and ESXi.
    
    This change adds a new glib.mk whose scope is local to the tools build.
    The new version of glib depends upon libpcre, libiconv and libffi.

commit 71142cf3a04cf0adeaec94a3a73de9e5185b4490
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:07 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit c706325151147b62532bc3c437741492c4ecd952
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:07 2017 -0700

    Update VGAuth source for compilation with OpenSSL 1.0.x or 1.1.0
    
    OpenSSL 1.1.0 is about to released.  With that release comes a number
    of changes that include making several types opaque.  Along with this,
    new or renamed setter/getter functions appear.   The API changes and
    the impact on open-source products is discussed at:
    https://wiki.openssl.org/index.php/1.1_API_Changes.  Updated man pages
    are available at: https://www.openssl.org/docs/manmaster/
    
    The impact to  open-vm-tools is that the message digest type MD_CTX
    has become opague.  Local (stack) MD_CTX objects are not supported.
    The required change is to dynamically allocate MD_CTX objects as needed
    using the 1.1.0 API xxx_new() and xxx_free() or the pre-1.1.0 functions
    xxx_create() and xxx_destroy().

commit e24ce91afc3b275933e7e300002c5b8734f81cc7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:07 2017 -0700

    Add string concatenation function to DynBuf
    
    The DynBuf code operates on both strings and non-strings.  To add a
    string at the end of a DynBuf is easy: DynBuf_AppendString() appends
    a copy of the input string, including its NULL-termination.  Sometimes
    strings are repeatedly concatenated, such that a version of this
    function without NULL-termination is needed.
    
    This change implements DynBuf_ConcatString() which explicitly does not
    copy the NULL at the end of a string.

commit c7b05cadcce82aadafcff985c51ae348c906a675
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:07 2017 -0700

    Remove AsyncSocket_ConnectProxySocket() declaration from asyncsocket.h.

commit 95882ca05e584ffa43ecf1edbe5431b0faa431fd
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:07 2017 -0700

    POSIX FileIOErrno2Result should not log when it is called
    
    POSIX FileIOErrno2Result logs when an errno doesn't map well. This can
    cause callers to have unexpected logging. In fact, the Log Facility
    got caught by this. Log write errors generated more logs!
    
    This has, at times, lead to spew in the logs. Logging could occur on
    each I/O failure!
    
    If an error needs to be logged, the caller should check the error
    status and react accordingly. They can use Err_Errno to get the
    native error in a platform independent way.
    
    Remove the logging in FileIOErrno2Result; Add logging for open
    failures that are from "unusual" errors; remove logging from I/O
    errors.

commit 54a8a3c29be94d6cfb155041221c7ead6f21522c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:07 2017 -0700

    lib/file: Explcitly catch EIO in fileIOPosix.c
    
    No need to log as EIO is a known possibility.

commit 89ad718885b0141d3a0a46d34f164cb933830a1f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:07 2017 -0700

    More remove extern "C"

commit f001a9ed146c86a8ef7cafd20b6403343406d166
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:07 2017 -0700

    Change to shared header file unrelated to open-vm-tools

commit a30a9c33ed858c1e201c7e74ca0434273d111dfb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:06 2017 -0700

    VThreadBase: missing typecast on mac
    
    Seems the mac tools compiler is a wee bit picker, and needs
    an implicit typecast instead of implicit. Obvious fix.

commit 96791075ee5594e81551cc78b2e5d0e3e3e09b5e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:06 2017 -0700

    VThreadBase signal counting: remove malloc
    
    This is the easy first half of rewriting VThreadBase to not malloc
    within signal handlers. The second half is still under construction.
    
    The core problem is that malloc() inside a signal handler can
    deadlock; consider especially the case of malloc() detecting
    heap corruption -> SEGV -> signal handler -> malloc() and
    self-deadlocking. Thus, the overall plan is to stop malloc()ing
    and instead use TLS variables ... as the new comment points out,
    we can now count on good TLS behavior since Linux and Windows
    minimum OS versions bumped.
    
    In the signal handler case this is easy: if __thread is available
    we can just use that as a counter. Life is a little more tricky
    without __thread (see: macOS and Android), where we need to use
    pthread_{get,set}specific() calls. Use a constructor/destructor
    to manage the TLS keys, which is a strategy dependent on the
    TLS destructor being NULL. (Specifically, on library unload
    the destructor function can remove the TLS key but cannot fire
    the TLS destructor on all threads, which would leak).
    One small note, the use of an atomic is not needed here because
    only the current thread can set the value and, if interrupted by
    a signal, the stack preserves the correct value.
    
    Two other minor things deserve mention: first, remove the TID
    parameter from VThreadBase_SetIsInSignal(); it was only used for
    self. Second, re-ordered setting is-in-signal and the first
    VThread_CurID() in the signal handler; this means the VThread_CurID()
    implementation can check whether we are in a signal handler, a
    feature that will matter in a future change.
    
    Net result: the signal counting part can now run without any memory
    allocations whatsoever. Memory allocation is thus needed only for
    the thread ID and name. Stay tuned for TID/name in a future change.

commit 8d9d99705dd43679a5da913131345c8bd470a8a9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:06 2017 -0700

    Reorganization of the AsyncSocket API layer into an interface dispatch
    layer and separate disjoint socket implementations.
    
    Common header file change; not applicable to open-vm-tools.

commit c9b9e6a0bd6719f6577b9bc263e9c525b402397b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:06 2017 -0700

    Final cleanup of xmlsec1 work
    
    Do a final cleanup pass

commit de6822facfd0b3a61cdc5982397fd15020ec1c72
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:06 2017 -0700

    Restore AC_VMW_DEFAULT_FLAGS([XERCES])
    
    The command AC_VMW_DEFAULT_FLAGS([XERCES]) was lost with
    a prior change. Restore it.

commit 82503bb34195d02cff666c4774e35b6056858439
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:06 2017 -0700

    Change to shared header file unrelated to open-vm-tools

commit 35d5500e8711708860efe1988fab226c435a89cf
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:06 2017 -0700

    Change to shared header file unrelated to open-vm-tools

commit 61eb3825719ee883c5c4b275993dc21c84f3a8a4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:06 2017 -0700

    link resolution plugins with -ldl

commit 69470031736260c62f09ba1b52a85b800b639399
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:06 2017 -0700

    Minor dead code removal
    
    Hostinfo_GetPCFrequency: function has no callsites. And
    now that Windows Hostinfo_SystemTimerNS is Really Fast(tm),
    amortizing ticks-to-nanosecond conversions doesn't make sense.
    
    Util_TokenHasInteractPriv: has only one callsite, used in
    a log message. Delete.

commit af6cb15dc6f0e4f95b3381848b0b59d7138d0d0a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:06 2017 -0700

    lib/lock: MXUser syndrome bits problem
    
    For UWP use GetTickCount64 (since GetTickCount is gone).
    Unfortunately, the lock library needs to run on Win2K
    which doesn't have GetTickCount64.
    
    An ifdef restores the non-UWP environment.

commit 08cc58799f16f32276b90c0d7862917553dd5edd
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:05 2017 -0700

    Change to shared header file unrelated to open-vm-tools

commit d1ec74708ae1ad1cfb84eada2e6eb70624637c6b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:05 2017 -0700

    Add xmlsec1 to open-vm-tools
    
    Add the new files to open vm tools and add a switch to
    turn it on.  xml-seccurity-c remains the default for
    now.
    
    Also clean up the service Makefile, which was using
    the client lib (which also dragged in stuff it shouldn't have)
    for common code instead of building it in.

commit 03e97029b0e2a84e2179a32dbb5d756ecf47e88f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:05 2017 -0700

    Updating glib and dependent libraries for CAF to latest version
    
    Update glib libiconv, pcre, zlib and libffi.

commit ed2e2348dd6af823f9458c5959c89acf2f13a952
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:05 2017 -0700

    Remove libproc linking and packaging (it's dead since v9.10.5).
    
    procps/libproc dependency was killed in Tools v9.10.5.  Clean
    this up and remove the unnecessary linking and packaging of
    libproc that's no longer needed. All references from Tar Tools,
    OSPs and open-vm-tools are removed.  vm_procps.h was being used
    for libproc only, so get rid of that, too.

commit 124c3e19891fa71123f9ddea9d6053b8503841bd
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:05 2017 -0700

    Make headers C++-friendly
    
    Add `extern "C"` blocks to various header files.

commit 410285953a2afab963cfabb6f389cf515d9f08f4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:05 2017 -0700

    Remove Hostinfo_CPUCounts (hosted)
    
    The Hostinfo_CPUCounts function has an unhappy history
    where not all OSes (especially Mac) make it easy to
    discover the CPU topology.
    
    There is a good reason for this: the CPU topology generally
    does not matter. In fact, it does not matter for us.
    So let's remove this enumeration code and instead report
    a single CPU package with nCores == nThreads == what the
    host OS claims.  (Especially as the host OS does not really
    expose cores versus threads information...). Then rip out
    the underlying functions, all the way down.

commit df26946e952539a2f90fcf983dbd0a4f7d3304ee
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:05 2017 -0700

    Return default value in case of NULL key instead of ASSERTing.
    
    The configKey is NULL for NullProvider, so VMTools_ConfigGetBoolean
    should return default value if any of the input args is NULL.

commit 6daa2753d394391ce9c319581d200ce5f1cc4fea
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:05 2017 -0700

    More C++ goodness
    
    err.h: Includes before C++
    
    Fix this file.

commit c23472eab7d7ec8b24f52d8ecb69c027e0ee4a1b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:05 2017 -0700

    More C++ goodness
    
    C++ after the includes

commit 76f7e0f43e95edb6cffe3dd5294ce2d4a65ff1cf
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:04 2017 -0700

    More C++ goodness

commit da66defc097e7b88cc94a7080e00bc5fb108443f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:04 2017 -0700

    Backout update of glib and dependent libraries for CAF to latest version

commit ba8d985127f1f7c8852fe06e3c7cdb5c6482daac
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:04 2017 -0700

    More C++ goodness
    
    Messed up a file, fix the build.

commit 6db382eb3d5ccc8044a6fcf9f6b8cab217f882b6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:04 2017 -0700

    C++ goodness continues

commit 2549e58a4ac0025100c03232169e57ead8ca57f5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:04 2017 -0700

    More C++ goodness
    
    Add extern "C" to header files.

commit d9f7cd4aae81fef9fbcaf72c1b8c45c1e4ef084d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:04 2017 -0700

    More C++ happiness
    
    Add extern "C" to header files.

commit a8c9491f7a29b6c015b0787ff288c3489efcf10b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:04 2017 -0700

    Update guest_os_tables.h for darwinPre15.iso for Mac OS < 10.11.

commit 447bbf0118b88937728805164ef9313fb7e4dd50
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:04 2017 -0700

    Update bsdfmt.h license
    
    2016 now

commit 4e1edd1a3b60c6aa4c585c788796b15959275eab
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:04 2017 -0700

    Do schema validation with xmlsec1 in vgauth
    
    Add schema validation for xmlsec1 based SAML verification.

commit cfc2ee979176d914c17e7e84be54cbf2cbf48e38
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:04 2017 -0700

    Fix pointer inequality comparison against NULL.
    
    A pointer is being tested for whether it's less than 0.  Check
    for equality with NULL instead.

commit aeff7f0b8d14d5a23fe4037e6dccc4de8c189295
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:03 2017 -0700

    Change to shared header file unrelated to open-vm-tools

commit 2ef6e3dc02e0238184a814d978d733bd2b5a540c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:03 2017 -0700

    Tools 10.1 translations

commit bb446f9e8b7cc88271e6553db0f800eea944b39e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:03 2017 -0700

    Update glib and dependent libraries for CAF to latest version

commit af2a149d77694fc680a6719ec221746e2dd7e7ed
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:03 2017 -0700

    Fixes to get vmnet to build on 4.7 kernel
    
    4.7 kernels removed dev->trans_start, instead there is
    wrapper called netif_trans_update().

commit 4ccfee744d5e4001c5adb8f91860c38433983b34
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:03 2017 -0700

    The lib/AsyncSocket layer on supports SSL_Accept() and the certificate file
    is reloaded every time a connection is accepted by calling SSL_Accept().
    Add support for an SSL_AcceptWithContext to allow cahing of the SSL context
    and avoid loading the certificate file every time.
      modified: lib/asyncsocket/asyncsocket.c, lib/asyncsocket/asyncSocketInt.h
                lib/asyncsocket/asyncSocketInterface.c, lib/include/asyncsocket.h
    
    Common header file change: not applicable to open-vm-tools.

commit d8a9f44d31bf970367f7dc80dc95730b097ab2c0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:03 2017 -0700

    Dynbuf: Improve documentation
    
    InitWithMemory is a better name. Improve the init function descriptions.

commit 19405c3edf186cb2278ce0698480022c837f9775
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:03 2017 -0700

    Thaw/resume guest file system when VMX aborts the operation.
    
    When the operation is aborted by VMX after quiescing the
    guest, we need to thaw/resume the guest.
    
    In response to VMX message "vmbackup.abort", when guest sends
    "vmbackup.eventSet req.aborted 4 Quiesce aborted." message,
    it receives "Unknown command" response because VMX side RPC
    handler for vmbackup event is removed before guest gets a chance
    to respond. That is the behavior without this fix.
    With this fix, in addition to the message above the new message
    "vmbackup.eventSet req.done" added by this fix also receives
    "Unknown command" response. We can fix these by keeping the RPC
    handler for longer, but its not worth it because the operation
    is being aborted anyway and vmbackup code in the guest is able
    to tolerate these errors.

commit aa3e981b9def57c605948bbfbf0df3e28354269a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:03 2017 -0700

    common version: use disable-tools-version for old hosts only
    
    Use disable-tools-version for old hosts only, and add a
    hide-tools-version flag. Set disable-tools-version to "true"
    again for OSPs.

commit 3263360ef1965a230ba800aa3835782845d85c0e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:03 2017 -0700

    DynBuf: Start smaller
    
    DynBuf operations are mostly concerned with strings - and most strings
    are less than 128 bytes long. Shorten the initial allocation.

commit cd84020ca36953893771a208f03826d155905c5b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:03 2017 -0700

    dictionary: Limit line data growth
    
    The dictionary code keeps the raw input line around. Since the length
    of the line is unknown at parsing time, a DynBuf is used to allocate
    the memory for the line.
    
    The DynBuf initial allocation is large - 1K - and this wastes space
    when lines are rarely over 64 bytes long. The fix is to have the
    dictionary code preallocate a 64 byte buffer before allowing appends
    to the DynBuf. This will prevent many time consuming and memory
    fragmenting realloc operations.

commit 5d51154ddc74340652317f3b3ff1537b80375cbf
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:02 2017 -0700

    Split FreeBSD in the GOSTable
    
    Split FreeBSD into freeBSD (old) and freeBSD11 (going forward).
    This is to cover driver differences.

commit f25e6759cf0d274a87d740cd418c49eb306a1fe2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:02 2017 -0700

    Hgfs Server: write op move argument checks security fixes
    
    Complete the argument verifications in the common code adding the
    missing checks for the write request packet size checks and the
    write request data size (separated from the request itself as
    in V4 of the HGFS protocol).  This will now catch any attempts
    from a client to pass a write request containing a data size
    argument for the data to write that is greater than the amount
    of data in the HGFS packet or data buffer passed.

commit 12890cf51047a0d5837a93a6c38d8eaf0adf02ab
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:02 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit bd4f98a472370c8d840d3ba949b0c5656e6b1fd4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:02 2017 -0700

    Changes to shared header file unrelated to open-vm-tools

commit 245bcf456f0376344eb71c0edbbfbba4c2e7e3b3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:02 2017 -0700

    Hgfs Server: write op move argument checks security fixes
    
    Consolidate the argument verifications to the common code as these
    are often duplicated. This will now explicitly perform the Hgfs write
    operation argument verification in the common handler before calling
    the platform specific code to actually perform the write.

commit 19fe2c9f63be291c7ab215e244c93ea179e48cde
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:02 2017 -0700

    Fix some memory leaks in vgauth

commit c00cbf53a1477211b6413bcf561d0f2a8267dc52
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:02 2017 -0700

    Change to shared header file unrelated to open-vm-tools

commit 578cb08c2ebae1a376aad7f6a3e41b9f145314b0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:02 2017 -0700

    Update tools version to 10.0.12 on the frozen tools branch.

commit 70e8dbab91f28238c3c8bd06d12b5370d47497bb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:02 2017 -0700

    Hgfs Server: add write op arg basic validate write op for security fixes
    
    Add the basic write operation argument validation routine to obtain the data
    sizes of the request and data to write for the supported HGFS protocol versions
    (1 through 4). Add a call to it from the main write operation handler.
    
    Note the argument validation checks will be added in the next change and moved
    from the platform specific routines.

commit af27acff59f7ec8193fdad6ca717eac9bb2bd153
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:01 2017 -0700

    Revert previous change.

commit 8f68cd2b71d87c612d8a5aa8b8bee8158d048d13
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:01 2017 -0700

    Changes to shared headers files unrelated to open-vm-tools.

commit c930424d027864df22d5052f31951570a00fb50b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:01 2017 -0700

    Guest DNDCP: Remove unused private variables.
    
    Updating the mac tools to build with clang found some unused private
    variables in the DNDCP classes.

commit 540b899ea0b0c946fca0d303093e35c760e6b4af
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:01 2017 -0700

    Tools RPC: Fix XDR invocation on mac and an uninitialized variable.
    
    Switchng mac tools to clang found these two:
    
    1. Uninitialized variable in rpcin.c: clang's static analyzer seems
    to have had trouble figuring out that it is impossible for execution
    to reach the "if (status == FALSE) {" line without being set.
    To appease it, initialize it to FALSE.
    
    2. xdrproc_t: On many platforms, xdrproc_t is an unprototyped function
    pointer that can take either 2 or 3 arguments. Apple changed their
    implementation to always take 3 arguments and recommend replacing calls
    with 2 arguments to add a 0 3rd argument.

commit b0d2f41dcacd2181b36855fa5b2a2b43def8e216
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:01 2017 -0700

    CAF changes to prevent NamespaceDB frequent polling.

commit f969faf20c307a9da02f2a3ba200ecb138d07b47
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:01 2017 -0700

    The vthreadBase library was not designed to be unloaded and simply leaks
    the TLS keys it creates.  Since plugins statically link it, loading and
    unloading may hit the OS limit.  This fix adds a hook into vthreadBase to
    delete the TLS keys at plugin unload time.

commit 357d2011d6221c5ade35d6b4a71c63192df1ce68
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:01 2017 -0700

    Hgfs Server: write ops clean up for security fixes
    
    Very minor write ops clean up for security fixes which renames
    the arguments and local variables to be more consistent.
    
    This is in preparation for moving some of the common argument
    checks into a common routine and enhancing the checks to verify
    the write data size and buffer.

commit fe067916d63a1aafbf82cdaef756c414dbf9c984
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:01 2017 -0700

    Require rabbitmq >= 0.8 when building with caf enabled
    
    caf requires rabbitmq >= 0.8, so check for this version in the
    configure script.

commit 87c2e132c57114bf20dfe877cd69101f1001060b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:01 2017 -0700

    XP cleanout: remove pre-Vista code.
    
    We now require Vista or later.  The CondVar APIs are
    unconditionally available.

commit b521f51b5f7225017499611a20a3cc640204e606
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:01 2017 -0700

    File rename to prep for new xmlsecurity
    
    Rename the xml-security-c version of saml verification as a step
    towards also supporting xmlsec1.

commit e7ea6167d184015266a33ba47997819bf676a490
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:00 2017 -0700

    Tools RpcIn: fix an assert triggered by a race condition
    
    RpcIn open channel asserts that the current channel is NULL. This was being
    triggered under stress testing.  The guest tools service ran slowly, so
    the VMX timed out and reset the channel. This caused the tools service
    to do a channel check reset and which then called the RpcChannelRestart to
    stop and start the channel again. Unfortunately, this call modified the
    channel global without synchronizing with the other threads sending RPCs.
    DiskWipe plugin was in the middle of a RpcChannel_Send (with the lock
    acquired) when the restart call ran concurrently.
    
    To fix this issue the RpcChannelRestart now acquires the same channel lock
    to around the channel stop and start calls so that all sending threads wait
    or complete first.

commit 393e900846e401dc70aee68dad87f805e924edcc
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:00 2017 -0700

    Revert previous change.
    
    Missed updating the OVT build.

commit fae37aaf9dc1514345a25b18740bfda925e6f76a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:00 2017 -0700

    File rename to prep for new xmlsecurity
    
    Rename the xml-security-c version of saml verification as a step
    towards also supporting xmlsec1.

commit 01217f4b0e858df5f3465240df2896c013491fa0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:00 2017 -0700

    Hgfs Server: more minor clean up of write operations
    
    More clean up in preparation for write operation security fixes.

commit 05dcd02c81bef7a49f15c9c1645bf2bf15e83e3b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:00 2017 -0700

    Update Tools ISO mapping in guest_os_tables.h
    
    Update Tools ISO mapping in guest_os_tables.h for potentially
    old/unsupported Linux distros.
    
    Use frozen ISO linuxPreGlibc25.iso for:
    
     1. "otherlinux" because it usually refers to unidentified old Linux
         distros. We have "other26xlinux" and "other3xlinux" for newer
         versions.
     2. "sles" and "suse" because these refer to unidentified old SuSE.
     3. "redhat" because it refers to unidentified old Red Hat versions.
     4. "turbolinux" because it is not under active development.

commit f23de806de72d3ef992b565c8841c8c789cb2530
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:00 2017 -0700

    Update vm_tools_version.h with tools versions 10.0.8 and 10.0.9

commit 03542fe6cfdb9a7a601792714b048b073356876d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:00 2017 -0700

    Common header file change; not directly applicable to open-vm-tools.

commit ce83118368eb727ef332e436b18ca667f194e5ce
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:00 2017 -0700

    Hgfs Server: minor clean up of request header size
    
    Consistently use the correct function for determining the header size for
    the HGFS packet to be used. This is necessary due to the different protocol
    versions that exist, and originally the request and reply contained different
    protocol headers.

commit cf015ea15ad08bd5863c78b3a2cd270f152ce723
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:00 2017 -0700

    Change "OS X" to "macOS" in the GOSTable.
    
    Apple rebranded, so react accordingly.  Also fix a misspelled message.

commit 77dc61498c64972abccd149dc7e55600dc9a0b61
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:23:00 2017 -0700

    Fix indentation in lib/misc

commit 1be7624511bd7767a2fa6e5788051d494594dc6b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:59 2017 -0700

    TLS 1.2 changes for common-agent

commit 71cb61c333d8813cf7ef22cfb09bb61c095fc328
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:59 2017 -0700

    Common header file change; not applicable to open-vm-tools.

commit 9bdc9393e630f6a7d9cf4ab22a881ea6f7ddcc25
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:59 2017 -0700

    Linux drivers: get_user_pages API changed to get_user_pages_remote.
    
    Linux 4.6.1 introduces a new get_user_pages_remote() which is a
    replacement for when get_user_pages() is called.  Still use 'newer'
    get_user_pages but with less args.

commit cdf0864f5dfa55c535f362bd66c5e00f8725a936
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:59 2017 -0700

    Reapply ICU change.
    
    Atomic_Bool isn't implemented for ARM32, but Atomic_Int is,
    so use that instead.

commit 64f8760c1915e224d3d905cabb76a63f897296dc
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:59 2017 -0700

    Revert previous change.

commit fb66ea0adcb4dceca686cb7cefb7f857ccf6e74b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:59 2017 -0700

    Apply various ICU patches between ICU 4.4.1 and 57.1
    
    Parts of ICU 3.8 and 4.4.1 are included in bora/lib/unicode.
    ICU is now at version 57.1 (which would have been 5.7.1 in
    its old version numbering scheme) and has had some
    security-related patches during that time.
    
    Directly updating the ICU bits in bora/lib/unicode with the
    corresponding bits from ICU 57.1 no longer seems feasible
    because the ICU code has made increasing use of C++
    (including C++11), which is something that we'd like to avoid
    in widely shared libraries like lib/unicode and lib/misc.
    
    Picked out a handful of fixes (particularly security-relevant
    changes) that are applicable to our forked copy:
    
    * r28300: ticket:7783: error checking in U16_GET()
    * r29214: ticket:8238: Implement max subpart policy for UTF7
        toUnicode, don't consume valid bytes after err
    * r30175: ticket:8569: Terminate the UTF-7 byte buffer with
        MINUS when flushing
    * r30326: ticket:8265: Fix race (=> U_FILE_ACCESS_ERROR) when
        loading full set of ICU data
    * r31914: ticket:8235: do not call memcpy()/memmove()/...
        with a NULL/invalid source pointer
    * r31948: ticket:9340: Use bit mask instead of cast to avoid
        buffer overflow
    * r32021: ticket:9340: Fix potential out of bound error in
        ICU4C ISCII converter
    * r32041: ticket:9432: fix value of UDATA_FILE_ACCESS_COUNT
    * r32242: ticket:9481 : handled segmentation fault issue with
        uenum_next
    * r32529: ticket:9601: from-UTF-8 m:n conversion: properly
        revert to pivoting for m:n matching
    * r32574: ticket:9398: avoid use of utf8_countTrailBytes[],
        rewrite/optimize U8_COUNT_TRAIL_BYTES() &
        U8_NEXT_UNSAFE(), test _UNSAFE macros only with
        (mostly) well-formed UTF-8 text
    * r32907: ticket:9687: Propagate the ambiguous alias warning
        when opening converter
    * r37670: ticket:11776 Thread safety fixes in data loading.
    * r37889: ticket:11765: fix utrans_stripRules() source
        overruns from a comment or an escape at the end of
        the source string; make U8_SET_CP_LIMIT() work with
        index after NUL terminator, consistent with
        U16_SET_CP_LIMIT(), although strictly speaking this
        behavior is undefined
    * r38086: ticket:11979: Fix max char size for iso-2022-kr in
        icu4c
    * r38185: ticket:12015: Update the array size to avoid buffer
        overflow
    
    Diffs for the ICU changes (with associated links to their
    tickets) can be found at:
    
      http://bugs.icu-project.org/trac/changeset/REVISION
    
    where REVISION is the corresponding numeric value.
    
    Notes:
    
    * r32907 makes a slight change to ucnv_open's return value
      and isn't strictly necessary, but is included as a matter
      of correctness and because we would eventually need to
      handle the new behavior anyway.  Changed sites that
      checked directly against U_ZERO_ERROR to use
      U_SUCCESS/U_FAILURE instead.
    
    * Included r30326 and r37670 (which both involve race
      conditions when loading ICU data), but we do not execute
      those code paths.

commit 608a7e966c88b37265f062e9b02b30fe65b24b2d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:59 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 58c1585e5aa76dde81e578444bc769caa4cb00bd
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:59 2017 -0700

    Extend AsyncSocket code to handle a "network unreachable" error on a Linux
    connect() system call.
      modified: lib/asyncsocket/asyncSocketInt.h, lib/asyncsocket/asyncWebSocket.c,
                lib/asyncsocket/asyncsocket.c, lib/include/asyncsocket.h,
    
    Changes to common header files; not applicable to open-vm-tools.
    
    Reorder the includes in services/plugins/dndcp/xutils/xutils.cc to build
    with Gtk+ 3.x at a later date.

commit b99cd226533c04d90397815a4c49848212d95424
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:59 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit efd6c9ad4d0ea0198de7107afeb72d2bc8a2b8f2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:59 2017 -0700

    Add support for gtk3
    
    Changes to support building open-vm-tools with gtk3.
    
    #ifdef statements have been added for conditional compiling for GTK2/GTK3.

commit 6dbe90a0c7231c3f48a24d94dc6c410db2109cf8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:58 2017 -0700

    Change to header file unrelated to open-vm-tools.

commit 188c60b0e0d69c76e73a0d1de7d3dbd24a3b2daf
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:58 2017 -0700

    Stop building Linux kernel drivers by default in open-vm-tools.
    
    All drivers have been upstreamed as of Linux kernel version 3.9,
    so inhibit building them starting with kernel version 4.0.
    Users can specify they want kernel modules by invoking configure
    with "--with-kernel-modules".
    
    Note one aspect of AC_WITH_ARGS that is not obvious is that specifying
    --with-kernel-modules will automatically set with_kernel_modules=yes,
    while specifying --without-kernel-modules will set it to no.

commit a5c07080a4e7e38f2520ea8c5bba86d82328cbcf
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:58 2017 -0700

    Hgfs Win Client: fix upgrade of driver by changing the Hgfs install settings
    
    Some upgrades of the vmhgfs driver are requiring an additional
    reboot even after the initial reboot. The Difx APIs replace the
    driver with the new one on reboot, but after the old one is loaded.
    This means that after the reboot everything looks good on the surface
    but the old driver is running and not even on the disk at that point.
    To mitigate this we can change the driver start type and fix missed
    install settings both of which makes the HGFS driver compatible with
    the rest of the Windows redirectors.
    
    Perform to system registry changes to the vmhgfs driver service:
    - set the HGFS driver dependent on the MUP component which it is anyway.
    - set the driver start type to be demand start and not a standard system driver.
    
    This makes that the vmtools system service responsible for starting the
    Shared Folders client driver. This is again more compatible with the
    Windows redirector model.

commit a9f545e1ebb6d5486f0d44a87e9c436156165277
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:58 2017 -0700

    Hgfs Win Client: prevent Windows upgrades breaking HGFS
    
    When Windows 10 performs system upgrades it breaks HGFS by
    removing our registry entry in the network provider list.
    
    When the client driver is loaded, it checks the entry and
    sets it accordingly.

commit d3c08cf36fffaa8b235375b880fa89a6f2440b46
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:58 2017 -0700

    Fix crashes in vgauth SAML verification
    
    The reference checker doesn't sanity check that
    a URI is set before trying to work on it.

commit 8781e18ba29ad01fdf9ebdf4bb46ee0ea08b1f39
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:58 2017 -0700

    Check for a valid shell in pam configuration
    
    When a program is run in a VM using vmrun from the host, the user account
    is not checked for a valid shell. This changes adds this to the pam
    configuration for vmtoolsd.
    
    Note that /sbin/nologin is a valid shell in CentOS and RHEL, but
    not in Ubuntu. Valid shells are those that are listed in /etc/shells.

commit 8d607518c494947102ef30b47afc90ba0c973bec
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:58 2017 -0700

    Change to header file unrelated to open-vm-tools.

commit 460d38a44a56b279e21014fc8550e80c9acd4751
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:58 2017 -0700

    Remove work-around for AMD Rev F Erratum 147.
       modified: vm_atomic.h, lib/misc/hashTable.c, lib/misc/Makefile.am,
                 lib/misc/vtheadBase.c, libvmtools/vmtools.c
       deleted:  lib/misc/atomic.c

commit 379cf86f2b71c0040acf66e763ca416ef1bc8c8a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:58 2017 -0700

    Change to header file unrelated to open-vm-tools.

commit 018e3832fcafe9393f799217ff981759b3df0b03
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:57 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 80a6e3944ba3a75c63b8e4a05fc8941663ab8b3f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:57 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 6d72467feb2416ae8198c6a880d5f993132ab79d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:57 2017 -0700

    Make Vsock RPC code handle the ECONNRESET
    
    VMX might delay releasing a vsock when the client side closes
    the end point first.  This makes a later client vsock connect
    attempt fail with ECONNRESET using the same source port as the
    closed one.  Note that the client binds OK on the reused source
    port, since the client side has released the socket on that port.
    
    Rewrote the connect code as to clarify it. Explicitly separated
    the retry logic.  Added code to return the system errno, and
    added additional information about which socket API call failed.

commit 159ff344d17fb4605aa7d4c5934360719e190f24
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:57 2017 -0700

    Hgfs Fuse Client: fix attribute caching from hardcoded 5 seconds
    
    The default attribute caching of 5 seconds is too long and is not
    cleared by modifications to the file. This leaves users' applications
    receiving stale attribute information for a file which can cause
    applications to crash.
    
    Set the default setting for the cache timeout to 1 so that corresponds
    to the same as the kernel client.
    
    Fix the rename that purges the cache of stale attribute data for the
    target of the rename.

commit 23606612dd1711e21d7683639be2da1f8ea5a2ee
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:57 2017 -0700

    Common header file change; no applicable to open-vm-tools.

commit 3c23abdb53cf3edf8ca07cecfaf927a4dac44aa3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:57 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit e78b0cafb4ca3c3a79ded9a6e4b66f13129e3d0f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:57 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit e36a8fa9478734a06c7a63b086d5476e69e24757
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:57 2017 -0700

    Revert previous change.

commit 04feecbd07b946e4aab0c642f6c9363775bd7f5c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:57 2017 -0700

    Make Vsock RPC code handle the ECONNRESET
    
    VMX might delay releasing a vsock when the client side closes
    the end point first.  This makes a later client vsock connect
    attempt fail with ECONNRESET using the same source port as the
    closed one.  Note that the client binds OK on the reused source
    port, since the client side has released the socket on that port.
    
    Rewrote the connect code as to clarify it. Explicitly separated
    the retry logic.  Added code to return the system errno, and
    added additional information about which socket API call failed.

commit d3b7ba4897934eff9a2e79f783b195a40cd58356
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:56 2017 -0700

    fileIOPosix.c: Add new function FileIO_CreateRetry().
    fileIO.h: Add new function FileIO_CreateRetry().
    config.h: Add new function Config_TriToBool().
    hostinfo.h: Add new function Hostinfo_EnumerateAllProcessPids().
    hostname.c: Allow hostname to be UTF8.
    posixPosix.c: Using __GLIBC__ define to control use of euidaccess().
    vmxnet3_defs.h: Update the coalescing configuration through the guest OS.
                    Bump the Tx Data Desc Max Size to 2048.
    
    The drag-n-drop plugin clipboard updated to allow the clipboard size to be adjusted by the consumer via new CPClipboard_InitWithSize() function.
    
    Common source and header file changes that are not applicable to open-vm-tools.

commit 4ca9fd8b08aec527c83941909015f846bbae634a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:56 2017 -0700

    Dump gErr on regex failures
    
    With pcre moving outside glib, there are new errors, such as pcre
    not being built with UTF-8 support, that can be caught here.

commit df8d0e4561bfd07b4f2a4ee13d14c7cd5de67e76
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:56 2017 -0700

    Fix HGFS mount call to create mount point
    
    For FUSE clients and open-vm-tools installations the package
    might not create the shared folders mount point. The only reliable
    way to ensure that we have one is to create it ourselves.
    This seems okay to do since it is a hardcoded path and has always
    been set to this same path without any regard for configuration by
    users, although that may change in later change sets.
    
    This also ensures if a user has inadvertently deleted the mount
    point after installing tools and before enabling the Shared Folders
    feature the mount will be robust enough to still mount.
    
    Secondly, did some clean up of the mount function to move the check
    for already mounted into a separate function. This will prove useful
    if a umount call is added on a disable of the feature.
    
    Finally, the mount file table check now uses the common mount info
    macros and the system calls are replaced with ProcMgr exec calls.
    The file access checks now use the glib routines as do the mkdir and
    rmdir for mount point creation and deletion.

commit 21ee819ff7b6f83943c4cfedad62939a89d0b4e3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:56 2017 -0700

    Increase the scope of 'opLock' to avoid the race in VmBackupAsyncCallback.
    
    A previous change fixed a race between worker thread and main thread
    VmBackupAsyncCallback that could lead to premature release of
    'currentOp' from 'gBackupState'. If the 'currentOp' was set after
    VmBackupAsyncCallback had queried status of the 'currentOp' but
    VmBackupAsyncCallback was not done with 'status' value check,
    it could release the 'currentOp' prematurely because 'status'
    was initialized to VMBACKUP_STATUS_FINISHED. The fix was to
    initialize the 'status' to VMBACKUP_STATUS_PENDING. The fix
    broke tests that invoke quiescing with 'execScripts = false'
    option and in that case there is no 'currentOp' setup by the
    VmBackupStartScripts() call that leaves VmBackupAsyncCallback
    in its initialized 'status' VMBACKUP_STATUS_PENDING forever.
    This fix reverts the previous fix by restoring the 'status' initial
    value to VMBACKUP_STATUS_FINISHED and increases the scope of the
    lock 'opLock' to address the race condition.
    
    This change also adds some Tools configuration settings to make
    it easy to test HBR scenario.
    
    As reading configuration is common functionality, moved
    the common functions to vmtoolslib.

commit 528d091623208cb6e9780289ae8949de3d1f5704
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:56 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 104a965a37d9347ebf87301093b88e220fedc52d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:56 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit 0d057132ad3494f730ee94b69d66aefaeac6dce7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:56 2017 -0700

    Hgfs Fuse Client: increment version for connection unavailable fix
    
    Increment version for connection unavailable fix from 1.6.3 to 1.6.4

commit 675c07bb089fb4cfd07932563da21b251d12c70b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:56 2017 -0700

    Hgfs Fuse Client: fix for backdoor not available
    
    The client dropped errors for failing to open the backdoor returning FALSE,
    when the HGFS server was not enabled which migrated to a protocol error.
    This could mislead users when mounting the FUSE file system when the
    feature was disabled into thinking there was a different issue when
    actually enabling the feature was required before mounting. It was not
    a protocol mismatch between the client and server.
    
    The main entry point now logs a message for the user if the transport init
    fails and so the mount does not occur.
    i
    The main issue to prevent the mount being created when the feature is disabled
    is addressed by the transport init function now trying to open the
    transport and generate an initial connection. This fails when the HGFS
    server is disabled because the feature is disabled. Hence, there will not
    be a mount made and an error is reported to users.
    
    If a mount is created when the feature is enabled and then later disabled
    via the UI settings, the mount will still exist as there is no umount made
    at that point. This will be addressed in later fixes. However, it should be
    noted that the leftover mount which is now not accessible reports that the
    "Transport endpoint is not connected" instead of the previous error of
    "protocol error".

commit 795be8ba52f52c49c10dd948d79fd401ba524c12
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:56 2017 -0700

    Don't include errno.h in vsockSocketWrapper.h.
    
    A recent change added errno.h to vsockSocketWrapper.h.
    Since errno.h is intended for UNIX compatibility, whereas
    vsockSocketWrapper.h redefines the error values to their
    Windows equivalentsr, it needed to be removed.

commit e16b8bda77ce238dff5b51c228a24d933f39452e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:55 2017 -0700

    Use pkg-config directly instead of $PKG_CONFIG
    
    $PKG_CONFIG isn't set in the configure script, but we do check for
    pkg-config in the path. So use it directly to determine udev
    directory path for udev rules.

commit a8ea36fdc44d110bf8a0257782aa91d6f3555876
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:55 2017 -0700

    vthreadBase.c: Update copyright and cleanup tabs and trailing whitespace.

commit fbb9ff847ec87e6cddc399627ce4c651a7cdbe11
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:55 2017 -0700

    Fix open-vm-tools build on Fedora using gcc 6.
    
    There were two problems:
    
    1. VMW_BIT_MASK in x86cpuid.h generated an error when trying to
       set all 32 bits.  This was due to using 33 bits in an intermediate
       calculation.
    
       The fix is to keep the calculation within 32 bits.
    
    2. static const VMCI_HANDLE was defined in vmci_defs.h, but not used
       in one place that included the header.
    
       The fix is to add -Wno-unused-const-variable to CFLAGS to disable
       the new warning.

commit 23bcb7e2cc001f83886cf61244f56f987cdb2ecc
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:55 2017 -0700

    Change to shared header file unrelated to open-vm-tools.

commit f9446a65854c575d660315d6473a878bbf6f48ed
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:55 2017 -0700

    Common header file change; not applicable to open-vm-tools.

commit 622e55c0101f13c8f8da41fa18b7a25c0a05d61e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:55 2017 -0700

    Allow SAML authn to bypass impersonation if the user is unchanged
    
    vmwsu can't create an impersonation token for SYSTEM since its
    not a 'real' account.  So bypass the impersonation phase since
    toolsd is already running as SYSTEM.

commit 7c68f9f81bf0a438702585fe82861124f1c68c06
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:55 2017 -0700

    Remove an assert and save vSock family reference in vmsvc only.
    
    VMCISock_GetAFValueFd API does not open a vsock device if kernel
    has upstreamed drivers. So, the ASSERT for vsock fd is not valid
    in such cases and has to go. Instead, save the reference only when
    family as well as fd are valid, because there is no need to save
    the reference in case of upstreamed drivers case anyway.
    
    If 'vmusr' holds a reference to vSock address family, it could
    come in the way of upgrade because 'vmusr' keeps running during
    upgrade. To avoid that issue and given that we just need one
    reference, we limit the reference to main service only.
    
    Also fix the VMCISock_GetAFValueFd API to initialize outFd in
    case of upstreamed drivers.

commit bb680f5b3f1f6b079ec214cf214738c99f4716c4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:55 2017 -0700

    Changes to support valgrind with Tools
    
    Allow Tools to be built with valgrind support. With these changes,
    adding "export USE_VALGRIND=1" in Local.mk will build a version of
    Tools that works with valgrind.
    
    Also includes a change to turn off appLoader for vmtoosld
    and toolbox-cmd.

commit 5d1554e30aaa31f18978eedcb06dda1c659c18af
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:55 2017 -0700

    add toolbox-cmd for tools.conf config entries
    
    Add a generic tools.conf set/get mechanism that can
    be used for any config entry.  The first specific use case
    is to enable/disable the allowLocalSystem pref for SRM.

commit 6e07974b38f94cd27aafe8c23a213c47acc51521
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:54 2017 -0700

    Common header file changes; not applicable to open-vm-tools.

commit ec256d66c638dae94a15d9ebcee8f5c0f29472fb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:54 2017 -0700

    Make sure the Windows version of namespacetool logs to stdio
    
    Make sure the Windows version of namespacetool logs to stdio instead
    of logging to debugger.
    
    The Windows version of namespacetool didn't print the warning messages
    under the verbose option.

commit a8e4830a0d27ee0dd528c4b8c310a1c2929e9d30
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:54 2017 -0700

    Rename IsPowerOfTwo() to IsZeroOrPowerOfTwo()
    
    The function accepts 0. Make the behavior explicit in the name.

commit a82237f35a142b025f1a3b7ab3333b325106b5c5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:54 2017 -0700

    vmhgfs-fuse: remove unused label
    
    An unsused label caused an error when building on FreeBSD. It is not
    used, so remove it.

commit fc251c97d74439a81feb6f5cb60f592a4d4b38bb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:54 2017 -0700

    Replace RpcOut_sendOne with RpcChannel_SendOne in vmtoolsd commandline.
    
    "vmtoolsd --cmd=<payload>" uses RpcOut_sendOne which is a backdoor
    only implementation. It should try vSocket before falling back to
    backdoor.

commit d730ed8efc710f9187be5214c89d5db151a60432
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:54 2017 -0700

    Don't auto-retry RpcChannel_Send when error is final.
    
    RpcChannel_Send retries in case of any error. However, retry makes
    sense only when there is a transport error. When there is a failure
    returned from VMware in handling the RPC command, the error is final
    and retrying does not make any sense. We need to avoid retry when
    it is not a transport error. In order to differentiate between
    the two types of errors the internal function signatures required
    changes. As there are not many direct consumers for RpcOut_send, fix
    all of its callers to check rpcStatus along with the return value of
    the function. New API behavior also allows removal of some string
    comparisons on "reply".
    
    There are no other behavioral changes intended in RpcChannel_Send,
    so all the callers of this function remain untouched.

commit 280f7726ff8fc72df9554f411146e02c54842209
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:54 2017 -0700

    open-vm-tools: use $(srcdir) in Makefile.am for udev rule
    
    Building in a separate directory was broken for installing the
    udev rule. We need to use $(srcdir) in Makefile.am, otherwise
    'make install' will fail.

commit d5555e64369cb5a00be7d41da220c29f914d25c6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:54 2017 -0700

    Fix the namespace tool verbose option.
    
    Fix the the namespace tool verbose option to print out the debug
    and warning messages of the vm libs to stdio.
    
    Introduce a new function that console apps can call to log to stdio.

commit ed3f6f7b096dd54f4f0545d360b4f997781de7f0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:54 2017 -0700

    Fix guestproxycerttool to properly handle non-ASCII filenames
    
    Filenames are being passed as UTF-8, but file
    opens (both CreateFile and fopen()) were assuming
    ASCII.  Switch to a conversion & CreateFielW and g_fopen(),
    which handles full UTF-8 filenames.
    
    Also tweak the error logging to dump the error code
    for easier debugging on non-english OSes.

commit 0006b0091758a229469c4e92fda186227c8525fb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:53 2017 -0700

    Fix a namespace tool crash.
    
    The namespace tool core-dumps when running the following command
    vmware-namespace-cmd -V get-value name -k key
    
    This is because glib options parser removed the -V from the argv,
    and passed the ValidateNsCommands() check. However, the later
    RunNamespacecommand shall ASSERT() on the NULL nscmd.

commit 8a5e316cd54edfcc06b00f74bba4b7b30e2de293
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:53 2017 -0700

    Changes to shared header file unrelated to open-vm-tools

commit 0a92586c6ab3cbb18571b0cf99958a97a97198d7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:53 2017 -0700

    Coding standard updates
    
    Fix a few things to conform to the coding standard.

commit f069fff44c6d0b7e210cb13aa7de9b6d1003c17b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:53 2017 -0700

    open-vm-tools: add udev rules to set scsi timeout
    
     To avoid volumes going read-only of offline, a longer timeout
     is needed, see bug #271286. This is already done for tar tools
     and OSPs using udev rules, but not yet for open-vm-tools. This change adds
     a udev rule for open-vm-tools.
    
     A static file is used, and it will be installed for Linux always and only.
     There used to be a different format for udev rules, but that is very old
     (before 2010 at least), and used for RHEL up until RHEL 5 and SLE until
     SLE 10. It is not thought that we need to support these old udev versions for
     open-vm-tools.

commit 09681d7ce54f556fd5929b9c196a625369a4eb5b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:53 2017 -0700

    Make NullProvider race-free to be thread-safe.
    
     NullProvider start function was sending 'prov.snapshotCommit'
     message to VMX which was being done on the worker thread.
     This led to a race condition where VMX state machine advanced
     faster than guest side state machine. Later, when VMX state
     machine sent 'vmbackup.snapshotDone' to vmbackup plugin it
     did not like it because it was not ready for that message.
    
     In order to fix this issue, we need to split the code that
     sends 'prov.snapshotCommit' message into a separate callback
     that gets called by the main thread instead of the worker
     thread. To do that, we needed to create a VmBackupOp for
     NullProvider so that it can be monitored by the top level
     state machine.
    
     While there also fixed a subtle race found by Victor in
     VmBackupAsyncCallback. Basically, it can prematurely release
     an op if the op was set by worker thread between QueryStatus
     and Release calls (i.e. line 483-488). This is possible
     due the initial value of status. Fixed the initial value of
     status to make it impossible.

commit 95a253cdcdad9a3f31cb38d7ede79c25587fd8d3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:53 2017 -0700

    Common header file change that is not relevant to open-vm-tools.

commit 4ef4b195cad27835b8a5fa98fc7e2313e809e812
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:53 2017 -0700

    Common header file change that is not relevant to open-vm-tools.

commit f986bdbaebdb6937f2c26606dcdbd12e73ca1d8a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:53 2017 -0700

    ToolsCore_InitVsockFamily() must tolerate the lack of an RPC channel
    when the backdoor has been disabled.

commit 8a9529e714141ab425b09ea9e0a4bf702f9cae1b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:53 2017 -0700

    Bulk updates to the common-agent (CAF) source.

commit c745e998dd05438e1713e53e7a847e2ab14f44e6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:52 2017 -0700

    Changes to common header file; not applicable to open-vm-tools.

commit a74bd9604cdb98b1f0aa8c88557f14c006daff32
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:52 2017 -0700

    Common header file change that is not relevant to open-vm-tools.

commit 4389d0b1092a59307527b2b83f4daa42e991a797
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:52 2017 -0700

    [Tools GuestInfo] Return proper osname for Centos 6 / 7  (again)
    
     Updated the code to detect Centos 6 and Centos Linux 7 and return
     proper osname acocrdingly.

commit 73124d51a3ef2db737bf9313d93dd206851bec99
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:52 2017 -0700

    [Tools GuestInfo] Return proper osname for Oracle Linux 6 / 7
    
     Updated the code to detect Oracle Linux 6 and Oracle Linux 7 and return
     proper osname acocrdingly.

commit 7ea377da1d85f0d3f691fa8d17d7650117f57351
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:52 2017 -0700

    Common header file change that is not relevant to open-vm-tools.

commit 7b8be4232011660d2fda9964815cfa2fed2f1978
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:52 2017 -0700

    Hold a reference to vSocket address family in vmtoolsd.
    
     On old hosts that do not support secure guestRpc vmtoolsd
     falls back to use backdoor. However, there could be vmci
     and vsocket drivers loaded in the guest that make vSocket
     consumers (e.g. guestLib and namespace-cmd) try vSocket
     all the time before falling back to backdoor. On old Linux
     guests like RHEL 5, 6 (kernels below 3.9 that do not have
     upstreamed vmci and vsocket drivers) this causes log spew
     in guest system logs because of vSocket address family being
     registered and unregistered on each RPC call (RpcChannel_SendOne).
    
     This could be solved in multiple ways involving some
     work from user. In order to solve this problem in a user
     friendly way, we hold a reference to vSocket device in
     vmtoolsd service, so that the reference goes away during
     Tools upgrade.

commit f9ca53c4a687a98d59252da4ef01f7aeca567c6c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:52 2017 -0700

    Check for bad length fields for input byte buffers in dataMap code.

commit 2e8e7ad263ea50e654daf0059bbc9848bc07777d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:52 2017 -0700

    Change to common header file that is not applicable to open-vm-tools.

commit 2d1e452455547c53440376f11beafb5a2353d4ad
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:52 2017 -0700

    Common header file change that is not relevant for open-vm-tools.

commit 25c80a2d761895fa0e5d1ed81b57d3beb0013de4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:51 2017 -0700

    Common header file change that is not relevant for open-vm-tools.

commit 9d8ec66013825637450a45545e43856edef1d31f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:51 2017 -0700

    open-vm-tools: fix build error in Ubuntu 16.04
    
     The -std=c++11 causes an error when used with the GNU C compiler, but it
     is in GTKMM_CPPFLAGS. So this change moves GTKMM_CPPFLAGS from
     libdndcp_la_CPPFLAGS to libdndcp_la_CXXFLAGS in
     services/plugins/dndcp/Makefile.am.
    
     This also fixes building for current Debian sid.

commit 21f3c28eb8313b438eba527d8682facdb38ffbe3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:51 2017 -0700

    Hgfs Linux Client: fix editor prompts for file changes
    
     When using some editors such as gedit to modify files on the HGFS
     shares the editor can become confused thinking that the file has
     been modified remotely and therefore needs to refresh the contents.
     This occurs due to the file's modify and change times being updated
     after the last writes from the editor and the modify/change times
     in the inode not being updated immediately.

commit 540e28c3bc64036544ec6ad4fd699c9e0ac042aa
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:51 2017 -0700

    Fix a couple more Coverity-reported issues in tools.

commit ff25bb230a11fc2ffdfe083c431954431aec8f5b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:51 2017 -0700

    Common header file change associated with adding Misc. debug messages for
    the toolsversion module.  Change is not directly applicable to open-vm-tools.

commit ad5594513039ccef144f50bebef5a92e959336b2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:51 2017 -0700

    Change to common header file that is not relevant to open-vm-tools.

commit 81b7df238e07f9751d5c4c7708ef6798eab0ff91
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:51 2017 -0700

    Changes to common header file that are not relevant to open-vm-tools.

commit 2657d8b086c690c907ee9d081b2d9180d5a00400
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:51 2017 -0700

    Fix additional Coverity issues in tools and hgfs.

commit 92efdf7562187cb1d165b2b91850663c013dedc4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:51 2017 -0700

    CAF does not synchronize correctly with Namespace DB.

commit 0b509208ad839e448f0edd6ccb8432933ca72e01
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:51 2017 -0700

    Detect slow running systems in guestInfo.
    
     - Added a new function in guestInfo. The new function checks the last
       time when the guest info was captured and prints a warning and sends
       a RPC message to the VMX if the elapsed interval was more than the
       expected poll interval.

commit 95729ef369d7ca470ecb725e7174aaddbcfc0ac9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:50 2017 -0700

    Improving CAF build time, especially for open-vm-tools.

commit 47f51db7077ed034ab4b9a39814deb47fc7d36dc
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:49 2017 -0700

    Improving CAF build time, especially for open-vm-tools with additional files.

commit 1224c7aecd5e803ce687f3c7595285e532eeb89f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:49 2017 -0700

    Common header file change that is not relevant to open-vm-tools.

commit ec268d17c45a056493dde0166351a5cff5bc56d3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:49 2017 -0700

    Common header file change that is not relevant to open-vm-tools.

commit 16d2e8adc837c29dded94b2c29c3b176c92f8342
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:49 2017 -0700

    Common header file change that is not relevant to open-vm-tools.

commit dc95efcb7d4bb7d865b7d37f9aaafe6fb8009e59
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:49 2017 -0700

    Tools: Implement resolutionKMS for linux
    
    tools: Enable the use of the PKG_CHECK_MODULES macro for open-vm-tools
    
    Adds a path to the pkg-config utility and sets up the open-vm-tools test
    build environment to be aware of its m4 macros.
    Also sets up a local directory for .pc files and adds the libdrm and libudev
    pc files to that directory (during open-vm-tools configure time) to prepare
    for resolutionKMS testing.
    
    tools: Prepare resolutionSet for resolutionKMS on Linux
    
    - Add a set of utilities for detecting the DRM version, the Xorg driver
    version and to dlopen libudev and libdrm if they are not available at
    build time. The utilities also include opening and closing a DRM file
    descriptor from a given type of device node.
    - Change the check for Xorg driver version in resolutionX11 to use the
    new utility
    - Pass a ToolsAppCtx to the resolutionSet backend for access to the
    configuration database.
    - Finally, detect if there is system and / or configuration support for
    resolutionKMS and in that case back off resolutionSet
    
    - Added some license information to resolutionDL.h
    - Added an include to resolutionDL.h
    - Fixed some ifdefs around HAVE_RESOLUTIONKMS
    - Modified other backends for the new resolutionToolkitInit() interface.
    
    tools: Add the resolutionKMS plugin
    
    What's resolutionKMS
    ResolutionKMS is a plugin that takes over the resolutionSet functionality,
    but as a vmsvc plugin rather than a vmusr plugin. Instead of talking to the
    X server it talks to the Kernel Mode Setting (KMS) functionality of the
    vmwgfx kernel module. This enables the following functionality.
    
    - Resolution / Topology switching at the login screen
    - Resolution / Topology switching when multiple users have launched multiple
    X servers as part of fast user-switching.
    - Resolution / Topology switching for new native compositors that support
    the KMS way of communicating resolution / topology (as preferred mode and
    connector properties) As far as I know, only gnome-shell / Wayland can do the
    topology switching today, since I implemented the missing support for it.
    We need to address this issue also with Mir and other Wayland implementations.
    
    New dependencies.
    The new code requires libudev and libdrm. For open-vm-tools, I've opted to
    require those libraries at configure time. There's no option to build linux
    open-vm-tools without resolutionKMS support, although that should be easy to
    add if needed. For vmware-tools, there is code to enable resolutionKMS iff
    libudev.so.1 and libdrm.so.2 are present at load time and can be dlopened.
    For vmware tools there are no new build dependencies introduced at load time
    AFAIK. (dlopen?)
    
    Enablement
    ResolutionKMS requires vmwgfx 2.10.0+ and xf86-video-vmware 13.2.0+ to
    guarantee that we don't lose functionality compared to old resolutionSet. The
    vmwgfx kernel module has a way to check version at runtime. For the xorg driver
    the situation is different since resolutionKMS is typically launched before
    Xorg. Therefore we fall back to the hackish way previously implemented in
    resolutionX11.c to find the driver file and scan it for version info. Oh well.
    In any case, there is also an option to override this and enable or disable
    resolutionKMS in the tools.conf file. If resolutionKMS is disable either by
    lacking system support or by configuration, the old resolutionSet functionality
    kicks in. Extensive debugging info will be present in the tools daemon logs.

commit a52a972596c8224b9a3c21b5e724b3b7bb1dbda0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:49 2017 -0700

    Common header file change that is not relevant to open-vm-tools.

commit 256d7b2ef23dcb8b5eda287f353a877b2bea17ce
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:49 2017 -0700

    Fix unused function errors thrown by clang 3.4

commit 94d23bfaea56d6a81a09ea821fca8be3b62e50e3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:48 2017 -0700

    Common header file change that is not relevant to open-vm-tools.

commit 4ab6be4b1e100995f32f6b02499f573a64af96a1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:48 2017 -0700

    Common header file change that is not relevant to open-vm-tools.

commit e0d6775f32940f4d0b04eaf7d71c0496567cbb33
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:48 2017 -0700

    Common header file change; not relevant to openb-vm-tools.

commit 9556561f31678cec6c6fd5c77c29a38ae7938768
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:48 2017 -0700

    Fix additional tools issues reported by Coverity.
    
     Fix some issues found by the latest Coverity scan of tools 10.1,
     plus a few related nits.

commit 30af262e97092bb4f53e59e78f9ab251fbd84980
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:48 2017 -0700

    Change to common header file; change is not relevant to open-vm-tools.

commit f07c2501fbc0d5e590b248861abefbad048d7bde
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:48 2017 -0700

    Bulk changes for the common-agent service.

commit 0ecb4e2697efaeb96e864653182371ba137cb504
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:47 2017 -0700

    Common-agent Framework Makefile additions.

commit e6398247d4ba37df3755a18c86585bc7c83d873f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:47 2017 -0700

    Backout previous change to common header file; change is not relevant to
    open-vm-tools.

commit aff5db3088785e5b2f3f472d40fec8562c172d67
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:47 2017 -0700

    Hgfs Fuse Client: increment the client version to 1.6.3

commit 0bacc86a825cd6844edf97c9780b70539e79c649
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:47 2017 -0700

    Hgfs Fuse Client: fix symlinks
    
     Symlinks were not being handled correctly for some cases.
    
     The symlink creation call tried to make the target an absolute path which
     it should not do. Only the source is passed as the absolute path which
     is created and links to the target which can be relative or absolute but
     is dependent on what the user passes.
    
     The readlink was broken and incorrectly creating a target name to pass
     to the FUSE library.
     This was obvious when alternative mount points are used
        e.g. .host:/Users -> /Users
     instead of
        .host:/ /mnt/hgfs
    
     This was discovered when used in the containers environment with docker.
     However, it is a standard option for HGFS client usage in any hosted product.

commit 8468f4d9c6e1aa445e518fe9843bb93582fad614
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:47 2017 -0700

    vmxnet3_defs.h: Common header file changes; not directly relevant to
    open-vm-tools.
     - Fix Rx Ring2 max size
     - Add Tx Data Ring Desc Size config support

commit 071fb8f0322461caeec876cb24a67be94c7916a3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:47 2017 -0700

    syncDriverLinux.c: Revert of "fdCnt" from ssize_t back to size_t.

commit 0408b14f7ba45c4b5e03555e13c2051d9e1c07eb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:47 2017 -0700

    Common header file change; not relevant to open-vm-tools.

commit b9382f4cbb636d9663e878a416b5b9727ab42d6f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:47 2017 -0700

    Correct the freeze and thaw ordering for mount points
    
     There were two issues with the way we were doing quiescing on Linux:
     1. Thaw was following the same order as freeze, actually it should
        follow the reverse order of freeze. Fixed the thaw order.
     2. Freeze was following the order provided by getmntent API which is
        the order in which system created the mount points. This could
        be problematic when a mount point depends on other mount point,
        e.g. loopback mount point. In order to honor the dependency
        among mount points, we need to reverse the order of mount points
        listed by getmntent API.
    
     While reviewing this change it was found that the interface used for
     passing the mount points around was not very clean. It was a ':'
     separated string of mount points. There were multiple problems with it.
     We were converting a list of strings into one string and then tokenizing
     it later. As part of this change, we fix that interface too by replacing
     the string with single-linked list, GSList. Using GSList brings glib
     dependency to lib/syncDriver.

commit a9fee8fc8c7fc7f4062815aa97141b7572c0638e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:47 2017 -0700

    Changes tp common header file; not relevant to open-vm-tools.

commit 66b06a4658db665c902745bfe830ed23d25a9257
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:47 2017 -0700

    Common header file changes; not relevant to open-vm-tools.

commit 421ed81330addabc27288df3e029c42fb679d1dd
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:47 2017 -0700

    Changes to common files.
    - lib/file/fileIO.c: Make Fil3_SwapFilesi() path more robust wrt resource
      contentions.
    - Common header file change; not relevant to open-vm-tools.

commit 02846fb1238894d196ba60540b09631b64027bbf
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:46 2017 -0700

    Change to common header file; not applicable to open-vm-tools.

commit b8937cc84b75be2c53d693448b74853c88f49508
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:46 2017 -0700

    Change to common header file; not applicable to open-vm-tools.

commit ebc26216ee0db2c7d80215ffc0b930a5560f2696
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:46 2017 -0700

    Remove unreferenced functions for common header file; not applicable
    to open-vm-tools.

commit 3f41e75df9c7a3f19f1ed98e35607e8c463dd543
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:46 2017 -0700

    lib/file/file.c: minor cleanup to File_GetSizeEx()
     - Make the code consistent with the rest of lib/file.

commit 6d9a970fe99f6f9deeb4adcb742ee9a16a8a2072
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:46 2017 -0700

    Bulk updates to the common-agent (CAF) code.

commit e5e137c279c3e69a509610b16e57548a04b4b9c0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:46 2017 -0700

    Hgfs Win Client: fix PFD issues part II
     - Header file changes related to PREfast analysis which centers around
       buffers and locks.

commit 98e46fc11a1f396e17de54955714d09d485b0bd3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:46 2017 -0700

    Change to common header file; not applicable to open-vm-tools.

commit 69586aa7734f05532020036bf5d4941466b272d4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:46 2017 -0700

    Update the COPYRIGHT_YEARS macro definition.  Other common header file
    changes that are not applicable to open-vm-tools.

commit 3138663e346e46edbb2dbb3f6d3da6c53f6db5d6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:46 2017 -0700

    lib/string: Str_Strncat boundary check improvement to prevent buffer overflow.

commit f90b4ba957c5882a42e16866c664561f83ed012a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:46 2017 -0700

    Reversal of common header file change; not relevant to open-vm-tools.

commit c0cb8c0fa80e51922e1884c7b96af1ea124df286
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:45 2017 -0700

    Change to common header file; not relevant to open-vm-tools.

commit 5d49218af0bf446a53634326210b7d975fa60e15
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:45 2017 -0700

    Bulk update (merge) of common-agent Communications, Framework,
    InternalProviders, and ManagementAgent source code.

commit 40e2d2aecc77978d9fdcf45222d965b14909e0ab
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:45 2017 -0700

    Fix buffer overflow in Str_Strncat() found by Coverity.

commit a2ebd45dba6f81f18095c4ec4fb37570e16ad889
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:45 2017 -0700

    Common header file change; not relevant to open-vm-tools.

commit 73e51edb60bba741d4596e4050ecca017aa2f428
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:45 2017 -0700

    Reversal of common header file change; not relevant to open-vm-tools.

commit 6728bf7f0a6eeb1fd57259222d54d0fc02bb0af5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:44 2017 -0700

    Update the Copyright Year to 2016 in all files released to open-vm-tools.

commit 73cc2517fd13410fe425d9f311dbe7d99f480a7a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:44 2017 -0700

    Implemented StrUtil_ReplaceAll() function in lib/misc/strutil.c.

commit 54cd36c00ecde5a4695f87cf6685bcdb051503fc
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:44 2017 -0700

    Common header file change; not relevant to open-vm-tools.

commit 08c8209dfb01ff07d82ba1e1cdbe26ead51ba5d9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:44 2017 -0700

    Fix some leaks found by valgrind.
      - leaking the 'data' pref value for a log handler.
      - leaking an rpc message response if the caller doesn't want it.
      - leaking username/password for every guestOp

commit de63075c8db55b9f2c56a33fcb6bdb7022442f4a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:44 2017 -0700

    Updated license file for open-vm-tools 10.0.7 release.

commit ea43b765eae7ecd90c9de235d603ae0a67c233f1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:44 2017 -0700

    Adding CPUID leaves to common header x86cpuid.h.  Change not relevant to
    open-vm-tools.

commit 459de87474e55edbaf41045203dafec281a3a25c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:44 2017 -0700

    Fix setlocale() usage to address valgrind diagnostics.  On Linux, the
    return value points to static memory, so we have to make a a local copy.

commit 36c02b436573532aca9d4122457b6e2166447a09
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:43 2017 -0700

    Update copyright year in two open-vm-tools files.

commit ec39982bf2441c6d018f5b586ecd0db541634738
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:43 2017 -0700

    Update vm_assert.h header file to avoid false positive diagnostics from
    Coverity.  Make Panic_NoSave a NORETURN function.

commit ddf410de23d33737d2ce92673ee0c0e8ad95cc2c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:43 2017 -0700

    Common header file update; not applicable to open-vm-tools.

commit ec88ceddf4df201a75e026ed70acd34a7ffbc9a0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:43 2017 -0700

    lib/hashMap: Remove unused HasMap_Store() and _Retrieve() functions.
    CheckSanity() should only be compiled if VMX86_DEBUG is set to avoid
    an unused function warning from clang 3.4.

commit e566d0b0b46f97368f9337f5edf1683e29d96bd6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:43 2017 -0700

    lib/log: make the default log level accessible - and use it
    
    The default log level is known interally to the Log Facility. It needs
    to be available "everywhere". Do that and deploy it to all places
    that should use it.

commit 1c6c46cbbde90641cf576232aa057c5143eb9bd2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:43 2017 -0700

    Revise dtoa() to use ecvt_r/fcvt_r on Linux/ESX an thus avoid using a
    pthread_mutex_lock.

commit 693447e4cb16520c5e3e30912bb6627f7da5bd12
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:43 2017 -0700

    vmci/vsock driver changes for Windows; not applicale to open-vm-tools.

commit 125541c04a7aeac6e152fb5a622ba9052bfca294
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:43 2017 -0700

    Multiple fixes for common source code.
    
    - File_FullPath() revised to return the canonical path of a file or
      directory that exists or is about to be created as a child of an
      existing directory.
    - Common header file updates; not related to open-vm-tools

commit 82b8208469fe93a6ebd38fa2fc2f01b1c8285ba6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:43 2017 -0700

    Shared header file update; no impact on open-vm-tools.

commit ba4c8e31b7399c973018dfb78c22de83b7a5e2a3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:43 2017 -0700

    Shared header file update; no impact on open-vm-tools.

commit 2e2da21bc35ee3f549fdeb3bfd2d603e1ad4975b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:43 2017 -0700

    The Linux network script has been updated to prefer 'ip' command over the
    'ifconfig' command for gathering network information.

commit 61f75b64bff213d2684a3c605a769a4ac1bb4571
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:43 2017 -0700

    Shared header files update; no impact on open-vm-tools.

commit 287e43342dc28d3f9025473e426ed0546778b653
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:42 2017 -0700

    Shared header files update; no impact on open-vm-tools.

commit 5c08abe5acffa318c13c202c0e460865ab5b0af8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:42 2017 -0700

    Shared header file update; no impact on open-vm-tools.

commit 64ae3e26c53a068239d4cfba6bccce8dc727dc40
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:42 2017 -0700

    Shared header file update; no impact on open-vm-tools.

commit e2586abb3ddd050f994e1cfd8c9409ff22d0a4c4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:42 2017 -0700

    Update vmtools version history for the 10.0.7 update release.

commit 6d79bbad4cc9d240435eef81976c47cd87c73d46
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:42 2017 -0700

    Update vmtools version history for the 10.0.6 update release.

commit ab4f4e18d5113d417b9bf71bc025c13754fa033b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:42 2017 -0700

    Shared header file update; no impact on open-vm-tools.

commit 7fd1a75c6c9bd5a13a4d6edc46bc788b45477b8b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:42 2017 -0700

    Shared header file update; no impact on open-vm-tools.

commit c542715b609f97bc7edf8f0f7cc93432ce38e768
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:42 2017 -0700

    Shared header files update; no impact on open-vm-tools.

commit 918ceee2070d734719522f08316fe51a5fc1dd06
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:42 2017 -0700

    Shared header file update; no impact on open-vm-tools.

commit 8784dbd4a5de1407e1e46bb3027c02cc7f3c3c60
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:42 2017 -0700

    Korean messages for the toolbox-cmd have been updated.

commit 58bb1478d18e9f46e92c65b2336f4c274073e98e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:42 2017 -0700

    Bulk updates to the common-agent (CAF) code.

commit af47b4c8c2a5afc12bb026ba5206a6788977ac16
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:41 2017 -0700

    The Posix_GetAddrInfo and Posix_GetNameInfo wrapper functions are modified to
    convert between UTF-8 and UTF-16 encodings.

commit 1a037dfaf1fba399bd69bf16f3dba0c679c79e03
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:41 2017 -0700

    Updates to CAF accessory files.

commit 55aec4b1557853abac4a66e76a1d70ddf82d9735
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:41 2017 -0700

    The namespacetool links with the vmtools lib which has implemented the
    functions "Debug" and "Panic".  The locale definitions of these functions
    in the namespacetool source has been removed.

commit 5114233485a7d1da81b265515c584dfce21a056d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:41 2017 -0700

    open-vm-tools: Fixes to build with FreeBSD
     - amd64 in host_cpu means 64bit, add that to configure.ac
     - use 'z' for FMTSZ in FreeBSD, just like Linux

commit 94fb4c14aaa3e58047f66ba7a8f075611be1a7df
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:41 2017 -0700

    Update copyright years for CAF Makefiles

commit 62136174788796a89f8c38b74eaf7aeea6b059a8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:41 2017 -0700

    Default shared-secret authentication to unsupported (disabled).

commit 2b654ed9f3285f5e31b55babc0e51b73f72fb501
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:41 2017 -0700

    Make VSS BackupComplete as final steps of the vmbackup process.
    
    VSS process break up to two steps when
    CreateSnapshotEx(WindowsQuiesceSpec) & App-quiescing is applicable:
    1) VSS quiesce and DoSnapshotSet (perform backup and commit snapshot)
    2) VSS SetBackupSucceeded/BackupComplete (VSS notify app BackupCompleted)
    
    Add a new operator to wait for VMX snapshot complete notification.

commit a63f28583c1b2cef40884a5593181f7f439ef066
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:41 2017 -0700

    Common header file update; not needed by open-vm-tools.

commit 5a7dff47d34af440679a4681dced79fa2438a0ca
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:41 2017 -0700

    Some source code clean up in vmcisockets
    
     1. Remove a typedef that didn't def a type (newer compilers warn).
     2. Rename a local that had the same name as a var in a higher scope.
        (note: there is no confusion or lost error case luckily here)

commit 25d7c89552c6761dab6eb182f475e8825a38aa3f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:41 2017 -0700

    Remove wmemchr() from bsd_output_shared.c since it is no longer required.

commit fddbf299e58ed60705188c8b1ea90eaefeb40d57
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:40 2017 -0700

    Updated shared header files, not relevant to open-vm-tools

commit 6c61db33226c0d5a47be3a9a2e91ec736d6213a4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:40 2017 -0700

    GuestRPC vmbackup.h header file update.
    
    A new RPC messages has been added: VMBACKUP_PROTOCOL_SNAPSHOT_COMPLETED

commit 0066453d3d86095b22c5450ee7362b08ad9bfcd6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:40 2017 -0700

    CAF changes to support release in open-vm-tools.

commit 37ca884eaa72248dce6d20bbd960663a8c482d42
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:40 2017 -0700

    Update of the common-agent (CAF) service source from the development team.

commit c7b7fc7386900037169e4c17999f4c63ac9d65b3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:40 2017 -0700

    L10n messages updates for toolbox

commit 5fdc593389e1ad5a593aad36cbddbb646ed98dc6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:40 2017 -0700

    VGAuth cmdline parser improvements
    
    Restore support for '=' between option and value.

commit e64c2a0782218c06c6e8b24d59795e7ba99b466d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:40 2017 -0700

    Use the primary connection remote IP for the secondary UDP connection.

commit 409e01197d45e88ef9b1a1591963b19b44fee479
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:40 2017 -0700

    Improve VGAuth logging
    
    Make the default logging more useful by converting a number of Debug() calls
    into Log() calls.  Request basics and errors are dumped.  Tokens are hidden
    for security concerns and certs are hidden to reduce the noise level.

commit dc23a48e0ea22921099ea8af8693f553a1ade5f1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:39 2017 -0700

    Common source code merge
    
    - Update poll timer callback's to use 64bit integers for delay.
    - Avoid creating substrs if unnecessary in Unicode_CompareRange.
    - Vmxnet3: Add Receive Data Ring Support.
    - Comment cleanup.

commit 3184e983998b9cafbcf8e5f719fccd0200e5900b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:39 2017 -0700

    Fix the CAF upgrade script to handle upgrades from an "old"
    (pre cafenv-appconfig) version of CAF.

commit 80bab95be93b4e26aaaa118086f009528f410bab
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:39 2017 -0700

    Build change; not related to open-vm-tools.

commit 1108b3852688839e7aeb15d25d830929f027e6a1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:39 2017 -0700

    lib/poll: Attempt to use IPv6 sockets first for Windows socket pair
    
    We should always use IPv6 sockets even for loopbacks if IPv6 is supported so
    that we can work properly in IPv6-only environments where IPv4 has been
    disabled.
    
    If the IPv6 socket fails to create then we can fallback to IPv4.

commit 01974d9d73fb20f50ecd7dfc47ffaff672e1c8de
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:39 2017 -0700

    Update the Copyright year to 2016.

commit 71aedd8d535ebeaf29a2ffa780176f8bb72cb87c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:39 2017 -0700

    Add a stolen time interface for guests
    
    This change adds a cheap stolen time interface for guests. Guests must
    use the backdoor port to register a per-VCPU object in memory called the
    "stealclock" with the monitor. From then on, until the clock is
    disabled, the monitor publishes clock values whenever stolen time is
    accumulated. A complete specification of the interface is included in
    this change, as a text document: bora/doc/stealclock.txt.
    
    Pending clock updates are represented by an idempotent monitor action,
    posted whenever stolen time is accumulated. In the current
    implementation, this is whenever we update stolen time on transit from
    host to vmm. In the future, it may an action posted by the vmkernel,
    whenever stolen time is updated.

commit 3ac9ac2858f67652f296013e263c6ea1da9f4887
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:22:39 2017 -0700

    VMkernel build change; not related to open-vm-tools.

commit 07cf66aba6d36407896a519c4f4f229702ed8b0a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Sep 13 16:46:38 2017 -0700

    except common-agent/etc/config from .gitignore

commit 2953dedddaf479d00661c4a0c64e7708492a4a22
Author: Dyno Hongjun Fu <hfu@vmware.com>
Date:   Mon Nov 23 22:00:25 2015 -0800

    add .gitignore

commit ef9ffadbdee99fce285bd0af5a8c9799c0aa8a10
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 15 11:06:34 2017 -0700

    reset buildNumber.h to 10.0.5 version

commit 5a00e4e76c6deb863cfba4adb6aeca4608fafaac
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Sep 13 16:24:53 2017 -0700

    clobber to create a starting point for the development branch

commit 538ea037a1549b6fd4e57529f7448a3fd2aa47af
Author: Dyno Hongjun Fu <hfu@vmware.com>
Date:   Mon Nov 23 22:59:42 2015 -0800

    changelog for 10.0.5

commit b75dbce79523a0145345f97afcdc06bed11dc46f
Author: Dyno Hongjun Fu <hfu@vmware.com>
Date:   Mon Nov 23 22:33:40 2015 -0800

    version bump to 10.0.5

commit ae82fa65627575567ead1b0d30eff1777b567ff1
Author: Dyno Hongjun Fu <hfu@vmware.com>
Date:   Mon Nov 23 22:28:27 2015 -0800

    [Bug 1526360] fix timestamp check

commit b510107055b144bc28c7e03a17176211860df6f8
Author: Dyno Hongjun Fu <hfu@vmware.com>
Date:   Mon Nov 23 22:27:40 2015 -0800

    [Bug 1531545] Add an error handler to X11 resolutionSet

commit adab9c550cd86f759c85294aa53b1870ec58affa
Author: Dyno Hongjun Fu <hfu@vmware.com>
Date:   Mon Nov 23 22:26:38 2015 -0800

    [Bug 1503195] Kill tasklet when unloading vmci module

commit 35bcc69ef81bbae1a21187d1e8e8a572169a5abe
Author: Dyno Hongjun Fu <hfu@vmware.com>
Date:   Mon Nov 23 22:19:34 2015 -0800

    [Bug 1519223] Avoid warning message when logging group is missing.

commit 581f2d0e93a3aacd7bbf252963d2fbd1720bab15
Author: Dyno Hongjun Fu <hfu@vmware.com>
Date:   Mon Nov 23 22:17:59 2015 -0800

    [Bug 1473600] Skip freezing autofs mounts.

commit 8184e9291c7db41781c127d8541cc75ff243902a
Author: Dyno Hongjun Fu <hfu@vmware.com>
Date:   Mon Nov 23 22:17:12 2015 -0800

    [Bug 1507819] Workaround fix to avoid rpc warning messages flooding by changing log level to debug.

commit eb47321942fccebe76344ade5b52d8f95bcbbbbf
Author: Dyno Hongjun Fu <hfu@vmware.com>
Date:   Mon Nov 23 22:10:33 2015 -0800

    [Bug 1526327] make vmhgfs compatible with Linux kernel 4.2

commit 54c10e813bf2a7b60b075d3bfe9204670e1aec4c
Author: Dyno Hongjun Fu <hfu@vmware.com>
Date:   Mon Nov 23 22:01:24 2015 -0800

    remove cache files

commit aa0790cd582e3dcf7c665c6f1dedf11117442ed2
Author: Dyno Hongjun Fu <hfu@vmware.com>
Date:   Mon Nov 23 22:00:25 2015 -0800

    add .gitignore

commit 85a99f4253dddf7e47e873fec4c43c15b7d8c2bc
Author: dsouders <dsouders@vmware.com>
Date:   Tue Sep 1 17:04:28 2015 -0400

    Update ReleaseNotes.md

commit 6994576b2b44d2301daa736b893feb9828b0b816
Author: Douglas Souders <dsouders@vmware.com>
Date:   Tue Sep 1 08:56:05 2015 -0400

    Adding Release Notes

commit ebed1074323950b03d25b31c54741eaa128c3e0c
Author: Douglas Souders <dsouders@vmware.com>
Date:   Fri Aug 28 09:56:56 2015 -0400

    release 10.0.0 from build 3000743

commit 39228f1efb8b4070d1ca2636e4f552c106346f46
Author: Sankar A Tanguturi <sankaraditya@gmail.com>
Date:   Fri Aug 21 18:00:04 2015 -0700

    Update README.md

commit 5fce57c2e30069a2ba14356827743e7f575b5168
Author: Ravindra Kumar <ravindrakumar@vmware.com>
Date:   Fri Aug 21 12:01:29 2015 -0700

    Corrected URL for automake

commit 7bac35f4e8787553f68972feae7966b0236c06ac
Author: Douglas Souders <dsouders@vmware.com>
Date:   Tue Jun 16 17:49:24 2015 -0400

    release 9.10.2 from build 2822639

commit 0696234c3905bf91cfba2cf909dbf92fc30ee6fc
Merge: b23378e aaa2085
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Mar 19 11:11:07 2015 -0700

    Fix README.md
    Merge commit 'aaa20859c29247ca89a68f47c1a7b1a3b15bae09' into stable-9.10.x

commit aaa20859c29247ca89a68f47c1a7b1a3b15bae09
Author: Oliver Kurth <okurth@gmail.com>
Date:   Wed Mar 18 17:25:02 2015 -0700

    Update README.md

commit b23378e336a7b0ecc7a4584c9a5f185b40e1ef5a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Mar 18 15:52:50 2015 -0700

    release 9.10.0 from build 2476743

commit 08d7040ebfe99f74478f7282d9bb98cfcadf4a4a
Author: Oliver Kurth <okurth@gmail.com>
Date:   Wed Mar 18 17:07:24 2015 -0700

    Update README.md

commit 5568d3e1d0bd4b4297111a67e75d820c54a17124
Author: Dyno Hongjun Fu <dyno.fu@gmail.com>
Date:   Tue Jul 1 16:12:29 2014 -0700

    Update README.md

commit 8b89d5b01f0b6d97e306648236869ce10b056293
Author: Dyno Hongjun Fu <dyno.fu@gmail.com>
Date:   Tue Jul 1 16:10:59 2014 -0700

    Update README.md

commit 9188c775bedccd3975c001cf6100124225918d53
Author: Dyno Hongjun Fu <dyno.fu@gmail.com>
Date:   Tue Jul 1 16:08:29 2014 -0700

    Update README.md

commit 86c542caae41b54f297be910c9b92f6f38b32164
Author: Dyno Hongjun Fu <dyno.fu@gmail.com>
Date:   Tue Jul 1 16:04:48 2014 -0700

    Update README.md
    
    try markdown

commit ba9118e19d98c8ded12791869d9d1166631ae985
Author: Dyno Hongjun Fu <dyno.fu@gmail.com>
Date:   Tue Jul 1 15:56:12 2014 -0700

    Create README.md
    
    this is the README file inside open-vm-tools/

commit f815ec597079716da64d51465f2a33c65427053b
Author: VMware, Inc <>
Date:   Sun Sep 22 22:56:07 2013 -0700

    Updating open-vm-tools version for release 2013.09.16-1328054.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 112e1dfdd1884f189363ce5692c991170b0791fb
Author: VMware, Inc <>
Date:   Tue Sep 17 20:43:28 2013 -0700

    AsyncSocket: Update AsyncSocket_GetRemoteIPAddress for IPv6 support.
    
    AsyncSocket_GetRemoteIPAddress offered the return of the IP in integer and
    string formats, none of the callers cared for the integer return so remove it.
    Update name appropriately
    AsyncSocket_GetRemoteIPAddress->AsyncSocket_GetRemoteIPStr.
    AsyncSocket_GetRemoteIPAddress only supported the returning of a IPv4 string,
    utilize Posix_GetNameInfo that uses getnameinfo which is IPv6 compliant.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 76713ae5c4d5f7a4616d3005137c276535d654fa
Author: VMware, Inc <>
Date:   Tue Sep 17 20:43:03 2013 -0700

    AsyncSocket: Removed unused AsyncSocket_BindUDP.
    
    AsyncSocket_BindUDP is unused, and looking at it I am not sure if it ever worked
    as described, since it did not actually bind to the port specified, just a UDP
    listener.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit adead816acb768fb9c4a91942c93f464894902f9
Author: VMware, Inc <>
Date:   Tue Sep 17 20:42:40 2013 -0700

    Changes in shared code that don't affect open-vm-tools functionality.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 06b51461bb1a2e01282d0244ff0f47b8d5ae8bea
Author: VMware, Inc <>
Date:   Tue Sep 17 20:42:24 2013 -0700

    Allow for future use of AF_UNSPEC in AsyncSocket library
    
    Create a socketFamily switch in AsyncSocket_Connect and
    AsyncSocket_ConnectWebSocket for future IPv6 integration.
    
    Allow for future use of AF_UNSPEC when a connection does not care if it is
    AF_INET or AF_INET6. Since AsyncSocket does not fully support AF_INET6 yet and
    our AF_INET6 test bed is not yet completed, hard code all callers to AF_INET.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit b81233bd0375e5358a55b387e638e9f569a0cc53
Author: VMware, Inc <>
Date:   Tue Sep 17 20:42:16 2013 -0700

    Provide a kill-switch for using vsocket in RpcChannel.
    
    Adding "void RpcChannel_SetBackdoorOnly(void)" API to allow to disable vsocket
    if needed.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit c634402c98c2eb419d111797c39e4907aa35a8eb
Author: VMware, Inc <>
Date:   Tue Sep 17 20:42:05 2013 -0700

    Update AsyncSocketResolveAddr to allow AF_UNSPEC and AF_INET6 ai_family.
    
    AsyncSocketResolveAddr currently only accepts searches for AF_INET. Update it to
    search for AF_INET6 or both with AF_UNSPEC. Since we no longer need to return
    sockaddr_in for AsyncSocket_SendTo, only populate sockaddr. Also add a
    convenient IP string generation after resolve so all callers do not need to do
    the same operation tp log the IP string with port number.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 9644250ed9110aa38d5a8f467499b3d9678f7a05
Author: VMware, Inc <>
Date:   Tue Sep 17 20:41:58 2013 -0700

    VMCI/VSOCK: Bump version 9.5 => 9.6 for next release
    
    We shipped 2013 with 9.5, so the next release will have 9.6.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 6d6386468f1189621245bc99d0b4a55b4253a97b
Author: VMware, Inc <>
Date:   Tue Sep 17 20:41:38 2013 -0700

    Remove AsyncSocket_SendTo
    
    Nobody is using it anymore.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit bf72ff33d02e9c1b0d6d2d3ab0a9b13c7a2747a9
Author: VMware, Inc <>
Date:   Tue Sep 17 20:41:16 2013 -0700

    Changes in shared code that don't affect open-vm-tools functionality.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 5eadb43a7d115dfb9e93875b0308d6f88c2c330f
Author: VMware, Inc <>
Date:   Tue Sep 17 20:41:27 2013 -0700

    desktopEvents: Leave libICE rug firmly under libSM.
    
    While the libICE spec's section on error handling suggests applications
    close libICE connections in response to I/O errors, libSM (which
    sits atop libICE) continues to refer to such deceased libICE
    connections, and doing so during shutdown leads to an app crash.
    (libSM should've registered an I/O error handler of its own which would
    run before the application's, but it doesn't.  Oh well.)
    
    To work around this, we'll detach the ICE connection from our
    application event loop but leave its handle alone.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit c9200b341b7612be273c4402a3381e507766e526
Author: VMware, Inc <>
Date:   Tue Sep 17 20:41:07 2013 -0700

    Remove ASSERT_OR_IN_PANIC() from public/vm_assert.h
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit c297a757b88435ca43bfe0dcf71b97c5d8a3e41a
Author: VMware, Inc <>
Date:   Tue Sep 17 20:40:51 2013 -0700

    Get rid of ASSERT_LENGTH.
    
    It was used way back in ancient times in the binary translator
    but today no more uses remain. So let us remove this global
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit b102cb180bc724f3656a7d3a27af954b2ebe7e20
Author: VMware, Inc <>
Date:   Tue Sep 17 20:40:45 2013 -0700

    Changes in shared code that don't affect open-vm-tools functionality.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit c093dcb7a99a32aaf76fad143ff4a276f8d4bc22
Author: VMware, Inc <>
Date:   Tue Sep 17 20:40:38 2013 -0700

    Get rid of ASSERT_ALWAYS_AVAILABLE
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 163a622e1fc4c4a68849a09448ee2aae662713ae
Author: VMware, Inc <>
Date:   Tue Sep 17 20:40:17 2013 -0700

    Fix AsyncSocket reference leak when using IVmdbPoll
    
    A reference is taken when an AsyncSocket callback is registered in
    IVmdbPoll to protect the AsyncSocket from being freed while the callback
    has been scheduled to run.  That reference is released when the callback
    is unregistered if the callback is not going to run, or from the
    callback itself if it is already scheduled.  The current code does not
    correctly handle the case when the callback unregister itself, as it
    needs to explicitly release the reference in that case.  This change
    also adds a Bool to AsyncSocket so we can distinguish between send
    callback that is registered as a timer callback so that we know which
    type of callback to remove, which is necessary to keep the reference
    count correct.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 1b62c3e36a56980733f7aaacb1c6b741f5c8670d
Author: VMware, Inc <>
Date:   Tue Sep 17 20:39:53 2013 -0700

    Report correct OS name for ESXi guests
    
    Prior to this change, vi client would say that the Guest OS was
    "Other (32 bit)" whenever Tools were running in an ESXi guest.
    Now, the Guest OS is reported as "VMware ESXi 5.x."
    
    Note that Tools do not run in ESXi 4.x guests.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit a9635c0923caeef61b51afc5580b51ccb65fd7f5
Author: VMware, Inc <>
Date:   Tue Sep 17 20:39:48 2013 -0700

    Implement VMware Tools for ESXi 6.0 guests.
    
    This change provides limited VMware Tools support for ESXi 6.0
    guests.  The powerOps and guestInfo plugins are supported.
    Only IPv4 addresses are reported, since those are the only
    ones we can get through the vmkuser library.
    
    VMware Tools for ESXi 6.0 are packed as two VIBs on a single
    ISO image.  One VIB contains the glib libraries that are
    missing from the standard ESX distribution, and the other
    VIB contains the tools themselves.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 3a9f2297a82b9c109e894b5f8ea17753e68830ac
Author: VMware, Inc <>
Date:   Tue Sep 17 20:39:34 2013 -0700

    Harden HostinfoOSData against $PATH attacks.
    
    We are doing a popen("lsb_release... ") when attempting to
    determine host details in hostinfoPosix.c. Using popen means that
    $PATH is walked when looking for the lsb_release binary, and that
    may give an attacker the ability to run a malicious version of
    lsb_release.
    
    This change does two things,
    
    a) Hard code the path to lsb_release. I've searched around
       the web and I believe the path is always "/usr/bin/lsb_release"
       so let's not leave this up to chance.
    
    b) Stop running HostinfoGetCmdOutput with elevated privileges. Drop
       to non-root when possible. If someone sneaks in a new call to
       HostinfoGetCmdOutput and doesn't use a full path, then we will
       hopefully avoid a firedrill. I'm only applying this to Linux
       because the Fusion build barfed when I tried to compile with
       without the vmx86_linux.
    
    I think either (a) or (b) would be enough but I'm doing both,
    because each individually is correct. Also note that in the blog
    post by Tavis Ormandy calls out doing (a) as not enough,
       http://blog.cmpxchg8b.com/2013/08/security-debianisms.html
    His example uses a bash feature that allows functions to be
    exported. I haven't been able to get that to work on my Ubuntu
    machine.
    
    To test I'm manually run Linux WS and Fusion and verified that
    the logs look correct.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 3869012deb7658b9aab10ab028d71b32b89a2a85
Author: VMware, Inc <>
Date:   Tue Sep 17 20:39:28 2013 -0700

    Changes in shared code that don't affect open-vm-tools functionality.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit cb790dbad75717d0ffb99bc268ee9ed6214c93ba
Author: VMware, Inc <>
Date:   Tue Sep 17 20:39:21 2013 -0700

    Fix nested logging for VmxLogger with vsocket channel.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 155eb8d6615c947b71167fabe44b2fbca70a1e39
Author: VMware, Inc <>
Date:   Tue Sep 17 20:39:10 2013 -0700

    HGFS: Clean up HGFS server unpack file name V3 arguments
    
    The HGFS server unpack file name argument for V3 packets generates coverity
    warnings as it stands. It is also just plain dubious in its usage using the
    out argument even when not initialized in the failure case.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 63b4fa8d551de8e90101b6de4646d8573f764329
Author: VMware, Inc <>
Date:   Tue Sep 17 20:38:49 2013 -0700

    Internal branch sync. Included in this change:
    
    . Support Linux Quiescing for vSphere Replication
    . changes in shared code that don't affect open-vm-tools functionality
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit ac4e72c01eec5565d3ac8d0c84cb4072d9e3e08e
Author: VMware, Inc <>
Date:   Tue Sep 17 20:38:24 2013 -0700

    Change glib logging in RpcChannel to use Debug/Warning/Panic.
    
    Change glib logging in RpcChannel to use Debug/Warning/Panic so RpcChannel
    logging can be controlled by different logging stubs in different
    applications(rpctool/vgauth/toolsd etc).
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 4335f533c88d45fc05fb31b040d42eb0e3db3274
Author: VMware, Inc <>
Date:   Tue Sep 17 20:37:35 2013 -0700

    Add a new SetDisplayScaling RPC to the list of capabilities.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 5ccfbb3cc3da0f026ed8628dbdb07bc187c3bc16
Author: VMware, Inc <>
Date:   Tue Sep 17 20:36:27 2013 -0700

    Changes in shared code that don't affect open-vm-tools functionality.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 4a527c999422eaba9795b18e89b69fbeefda8583
Author: VMware, Inc <>
Date:   Tue Sep 17 20:36:04 2013 -0700

    HGFS: Make Linux client compile on kernels 3.11
    
    HgfsReaddir has been replaced with HgfsIterate for the newer releases
    of the kernel 3.11 and newer.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 2946894f1783f7a735d2e3d3770853b9b29f95ea
Author: VMware, Inc <>
Date:   Tue Sep 17 20:35:50 2013 -0700

    HGFS: Partial fix for corruption when using different file handles to the same file
    
    File is corrupted while our customer using two threads to read or write a
    file via Linux HGFS client. This is because the read handle interferes with
    the writes by causing a revalidation of the inode's file attributes. These
    were mishandled wrt to flushing out the cached pages. If the new attributes
    were different for modification time or file size then the pages in the cache
    were invalidated. This causes pages of valid data to be thrown away and the
    writes lost. Therefore resulting in a file with gaps of blocks of zero bytes
    where writes were not sent to the HGFS server.
    
    This is fixed by replicating what NFS does in this regard, which is only invalidate
    the cache if the HGFS server returned file size only differs from the cached
    inode value and only then if the new size is greater.
    
    Cleaned up the write begin and end which was initially causing problems due
    to very buggy code. Have now based this on simplicity from fs/libfs.c and
    the simple_write_begin/simple_write_end which shows what the minimal settings
    should do handling writes to pages and partial page writes.
    These can be viewed under you favorite linux source cross-reference website.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 1a3eb34dd0ad5aa3e51d586cf1fcf310c1f4350e
Author: VMware, Inc <>
Date:   Tue Sep 17 20:35:40 2013 -0700

    Fix AssertOnCompileFailed for GCC 4.8 (kernel 3.10+)
    
    GCC 4.8 now includes -Wunused-local-typedefs as part of -Wall.  This
    causes it to spew a gazillion warnings when compiling our modules on
    3.10+ kernels.  Because it's a typedef we can't use the (void) cast
    trick, so we need to use attributes.  This change introduces
    UNUSED_TYPE to vm_basic_types.h and uses it where appropriate to make
    the compiler happy when building our modules.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 1dd5464914032fe986710bddaa2359c70a0e2c82
Author: VMware, Inc <>
Date:   Tue Sep 17 20:35:32 2013 -0700

    Change FileIO_AtomicUpdate to not close files prior to rename on Posix.
    
    Windows rename fails if the target files are open.  Posix does not
    have that restriction.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 23f95ad9ba8896d1b3a2215ceaf336a0d776d449
Author: VMware, Inc <>
Date:   Tue Sep 17 20:35:16 2013 -0700

    VMCI: make guest driver work with virtual IOMMU
    
    Right now we use vmalloc()/alloc_page() for our guest queuepair pages
    (and bitmap page) and then do a virt_to_phys() before passing them down
    to the device.  That's not going to work if DMA remapping is enabled,
    since the IOMMU has no idea about the mappings.  Switch to
    pci_alloc_consistent() instead.  We still allocate each page
    individually, since there's no guarantee that we'll get a contiguous
    block of physical for an entire queuepair (especially since we allow up
    to 128 MiB!).
    
    Also made split between guest and host in the kernelIf struct much
    clearer.  Now it's obvious which fields are which.
    
    Finally, drop the PINNED flag from Linux.  That was only ever used by
    vVol-Filter, and that's been moved over vPageChannel, which doesn't use
    queuepairs but has custom rings.
    
    Once this is in I'll port it to upstream.  I considered doing upstream
    only, but that would mean pre-3.9 guests would be unable to use
    IOMMU support.  We should really freeze the in-house driver after
    this...
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit c6f49a9aa54be295fb2a8537a0924a8c806cbb19
Author: VMware, Inc <>
Date:   Tue Sep 17 20:35:10 2013 -0700

    Internal branch sync. Included in this change:
    
    . turn on vgauth for authn checks
    . changes in shared code that don't affect open-vm-tools functionality
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 1722668cba1cad69bc537ec836f479d1c05e8cc7
Author: VMware, Inc <>
Date:   Tue Sep 17 20:34:44 2013 -0700

    HGFS: Linux client logging improvements
    
    Add more logging for tracing file IO calls.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit c0a9de0c3cc97503bb65a53bb391343232160cc0
Author: VMware, Inc <>
Date:   Tue Sep 17 20:34:33 2013 -0700

    Changes in shared code that don't affect open-vm-tools functionality.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 074d772ec4b0f2afcba169c2b6da3ed5a2baeb2f
Author: VMware, Inc <>
Date:   Tue Sep 17 20:34:28 2013 -0700

    Bump up tools version to 9.6.0 for WS 10 RTM.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit d8fe065a8fb1e13ebb2ed980b8460d2d6c4c2ce9
Author: VMware, Inc <>
Date:   Tue Sep 17 20:34:19 2013 -0700

    HGFS: Clean up and improve Linux client logging
    
    Enhancing existing log statements to be useful, moving open flags utility function
    into the utility file as in the future it should be used by open and create
    entry points.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit c1bebef1add802f897e3fc120afb66833343359e
Author: VMware, Inc <>
Date:   Tue Sep 17 20:34:03 2013 -0700

    HGFS: Improve Linux client logging
    
    Minor improvements to improve the logging of messages during debugging.
    Remove the less than helpful messages that are extremely chatty.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 6b07756ed5974aaed6dec4fc14ae52fe031ae00d
Author: VMware, Inc <>
Date:   Tue Sep 17 20:33:46 2013 -0700

    Fix stringxx to call Unicode_Free() instead of free()
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 61276a6bde5fa8931c9f4ae142611a296b0cf0c0
Author: VMware, Inc <>
Date:   Tue Sep 17 20:33:35 2013 -0700

    Housecleaning: VMIROM is dead
    
    VMI was gone a long time ago. There are a few remnants
    still present.
    - includeCheck has a VMIROM macro that can go, plus all
    locations it was copy-n-pasted into
    - vmcore/public/paravirtualInterface.h was totally unreferenced.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 119645bbb27989ddae45926a8918bc31d9ae34d2
Author: VMware, Inc <>
Date:   Tue Sep 17 20:33:20 2013 -0700

    VIX: add opcode for RemoveAliasByCert
    
    Trying to be tricky and sharing an opcode doesn't work when it comes to
    tools-side disabling. So add an opcode for it and plumb it through.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 1ed1ec7e22d20401b388ebb08e09ac2b74326c45
Author: VMware, Inc <>
Date:   Tue Sep 17 20:33:01 2013 -0700

    Changes in shared code that don't affect open-vm-tools functionality.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 339f41660410a6928c6c657f35b20d8623989fdd
Author: VMware, Inc <>
Date:   Tue Sep 17 20:32:57 2013 -0700

    HGFS: Fix Linux client inode 512B block count
    
    The Linux HGFS client miscalculated the number of 512 byte blocks to set
    in the inode for the file size. It was incorrectly using the HGFS
    hardcoded block size instead of 512, which was 1024. This causes the
    block count to be half the correct number and so du on a file reports
    the incorrect size.  fstat also retrieves this block count in the stat
    structure so it is likely more applications will break.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit edffc5fad3c601e1ee3e391532fbc623f8b19519
Author: VMware, Inc <>
Date:   Tue Sep 17 20:32:52 2013 -0700

    Change GuestLIB SDK to use new RpcChannel API.
    
    Change GuestLIB SDK to use new RpcChannel API.
    1) Change RpcOut_* calls to RpcChanneel_* calls.
    2) guestlib SDK now has extra dependency on GLIB and vmtoolslib as
    secure guestRPC brings a lot new dependencies (rpcin, asyncsocket, ssl,
    datamap, hashmap etc).
    3) ship new glib and vmtoolslib for linux and windows packages.
    4) merge logging functions (Debug(), Warning()) in vmtools and guestlib
    into one to avoid having same function names defined in two libs.
    5) update build in open vm tools.
    6) app monitor needs to do similar thing, which will be handled by HA
    team.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit e55039cb8452777c2024ce3a13cd3439f36fd554
Author: VMware, Inc <>
Date:   Tue Sep 17 20:32:40 2013 -0700

    HGFS: Fix Linux client symlinks
    
    The kernel buffer holding the symlink name was being freed incorrectly
    when it was used by the VFS layer. This resulted in corruption and
    invalid names being used when trying to lookup the symlink's target.
    
    The HgfsFollowlink should not be calling vfs_follow_link but calling
    nd_set_link to save the link target name that HGFS allocated.  To deal
    with the release of the name, HgfsPutlink has now been added which the
    VFS layer will call as needed and this function retrieves the name from
    the name structure using nd_get_link and releases the buffer. Then for
    completeness calls nd_set_link with NULL to clear it from the name
    structure.  The VFS layer internally calls vfs_follow_link after the
    HgfsFollowlink call passing the link target name from the name object
    that HGFS stored. Hence, why HGFS should not call it directly.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 0d5581ae35aaca0a1e645d8ffccaae77c0e39d4a
Author: VMware, Inc <>
Date:   Tue Sep 17 20:32:28 2013 -0700

    Changes in shared code that don't affect open-vm-tools functionality.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 81536c78e78200c58825b65cb5d188704b70c15f
Author: VMware, Inc <>
Date:   Tue Sep 17 20:32:18 2013 -0700

    HGFS: Fix a Linux client memory corruption
    
    When doing partial page writes the Linux HGFS client would trash the
    initial part of the page leading up to the start of the write and also
    trash the remaining part of the page after the written segment of the
    page.
    
    This trashing of the initial part of the page was incorrect and
    overwrites earlier partial page writes to that page.  This was also
    incorrect as the arguments for the offsets into the page were
    miscalculated.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit a4f7f191d0cb1d260f1b13e2545340109be4631d
Author: VMware, Inc <>
Date:   Tue Sep 17 20:32:13 2013 -0700

    Add 4 new guestRPC commands for namespace manager.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 79b0afe51c9fe9002ad1613ad8eb1437ef5eafd0
Author: VMware, Inc <>
Date:   Tue Sep 17 20:32:06 2013 -0700

    Internal branch sync. Included in this change:
    
    . Fix FileIO_CloseAndUnlink() to handle unlink failures.
    . Add Debuan 7,1 to the list of known OSes
    . changes in shared code that don't affect open-vm-tools functionality
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 159e1ec4d24ca2e3b41f13c5f0976a1ecd1fb8b8
Author: VMware, Inc <>
Date:   Tue Sep 17 20:31:40 2013 -0700

    Changes in shared code that don't affect open-vm-tools functionality.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 518fab531f95c6a31f15f3fb7ae8a43d0eab4064
Author: VMware, Inc <>
Date:   Tue Sep 17 20:31:31 2013 -0700

    Fix parsing logic in guestInfo to parse vlan configured NICs
    
    The regular expression used to parse routes /proc/net/route and
    /proc/net/ipv6_route fail when the device names contain "." eg: eth0.80
    which is how the interface names appear when we have VLANs configured.
    This fix modifies the regex to handle this case by parsing until a
    whitespace character is encountered.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit b086090409081a4efdad46f6fba27df1b94f916a
Author: VMware, Inc <>
Date:   Tue Sep 17 20:31:22 2013 -0700

    Changes in shared code that don't affect open-vm-tools functionality.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit e6117c29424490908f1abbbe135cbdaef66258af
Author: VMware, Inc <>
Date:   Tue Sep 17 20:31:10 2013 -0700

    HGFS: Improve the Linux kernel client logging
    
    Add more logging to make tracking requests and their respective arguments
    to aid debugging.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit a302d14e247c3acd0ce83fa5455f9e759730778c
Author: VMware, Inc <>
Date:   Tue Sep 17 20:30:58 2013 -0700

    Use g_debug instead of g_warning in RpcChannel_Error
    
    With esx5.1GA Tools, when there are more two Terminal Sessions
    connect to a Windows VM, each TS sould have one vmtoolsd running
    but actually only max two vmtoolsd run.  The Windowds Application
    Event log fills up with the warning messages of
    	"[vmusr:vmusr] Error in the RPC receive loop: RpcIn: Unable to send."
    repeatly until close some TS' to have max two TS connected. Some
    customers had vmtoolsd crashed but some didn't.  This message is from
    RpcChannel_Error.  After replace g_warning() by g_debug(), the problem
    is resolved.  This is a workaround for esx5.1x.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 566b7aa41af9f0c40b2c53f8a19f1e718c8bb3d5
Author: VMware, Inc <>
Date:   Tue Sep 17 20:30:52 2013 -0700

    Re-enable vsocket guestrpc in tools.
    
    1) Fix some assertion for reconnect.
    2) Call VMCISock_GetAFValueFd so we do not hold vsock usage all the time.
    2) Cut off the dependency of SIGUSR1 with dndcp plugin.
    3) Change function name vmware_unblock_vmware_user to send_vmware_user_sigusr1.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit c1a77415dc90d322b8ffddd93c2f820bfab76a09
Author: VMware, Inc <>
Date:   Tue Sep 17 20:30:43 2013 -0700

    Avoid logging non-fatal messages without logging system initialization.
    
    Logs that come before logging system intialization spam the
    console output. Therefore, we make the logging a no-op for
    non-fatal messages until logging system has been initialized.
    Usually, we initialize the logging system when process starts up,
    so we will swallow only those non-fatal log messages that are
    generated during very early stages of process initialization.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 1c9c43caa766bfd6222ee994e9d97f0fefeeedf9
Author: VMware, Inc <>
Date:   Tue Sep 17 20:30:26 2013 -0700

    Changes in shared code that don't affect open-vm-tools functionality.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 88c5964db6aaf5437872c1f553b27c07453dd12f
Author: VMware, Inc <>
Date:   Tue Sep 17 20:30:00 2013 -0700

    HGFS: clean up of server Send packet part II
    
    Now remove the two unused reply and reply size arguments
    that are in the HgfsPacket object from the server internal send
    function.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit cdfb73d3f965ceb791a4ba18d044ad90f29bf645
Author: VMware, Inc <>
Date:   Tue Sep 17 20:29:52 2013 -0700

    Fix lspci command in vm-support.
    
    Change
      runcmd "lspci -t -v -nn -F /tmp/lspci1.$$.txt" "/tmp/lspci2.$$.txt"
    to
      runcmd "lspci -t -v -nn -F ${OUTPUT_DIR}/tmp/lspci1.$$.txt" "/tmp/lspci2.$$.txt"
    because previous command:
      runcmd "lspci -M -vvv -nn -xxxx" "/tmp/lspci1.$$.txt"
    would remove /tmp/lspci1.$$.txt in the last step.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 8e8095e66632b9a29c89add36ec469d00a8ba6bf
Author: VMware, Inc <>
Date:   Tue Sep 17 20:29:44 2013 -0700

    HGFS: Clean up server send packet callback
    
    While cleaning up the usage of the HGFS packet abstraction it meant that
    the arguments to the HGFS server packet send callback could be cleaned up.
    The arguments for the packet buffer and size are now unused as this too
    arguments are extracted from the HGFS packet object.
    Therefore, remove the unused arguments from the send callback.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit f51b4f5725fa0df44c200e1c33e17d28c07ea7e5
Author: VMware, Inc <>
Date:   Tue Sep 17 20:29:34 2013 -0700

    nternal branch sync. Included in this change:
    
    . Tools,DND,X11: Constrain detection window to desktop work area
    . dndcpx11: Adjust style to match Hosted UI guidelines
    . changes in shared code that don't affect open-vm-tools functionality
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 1e7a9a273f62a53d0c9046499cf24b421aa2528b
Author: VMware, Inc <>
Date:   Tue Sep 17 20:29:02 2013 -0700

    Bump up the tools version to 9.4.0 for RTM.
    
    Its time to bump up the tools version from 9.3.3 to 9.4.0
    for RTM. Added new macros and new version for tools in
    bora/public/vm_tools_version.h file.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 05f41deaeb8e129915cb501b6a1ce18b46f1c902
Author: VMware, Inc <>
Date:   Tue Sep 17 20:28:39 2013 -0700

    Changes in shared code that don't affect open-vm-tools functionality.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit d7debe58f9ebeffc21193c56286ca36266d05142
Author: VMware, Inc <>
Date:   Tue Sep 17 20:28:22 2013 -0700

    Internal branch sync. Included in this change:
    
    . Untangle Util_Backtrace and friends so they don't pull in lib/file
    . changes in shared code that don't affect open-vm-tools functionality
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 9f3ea592f1651fc43c715bf2c74499bf63b47ab7
Author: VMware, Inc <>
Date:   Tue Sep 17 20:27:51 2013 -0700

    HGFS: Server packet abstraction part XI
    
    Deal with the broken reply packet part of the abstraction.
    
    Fix the get reply packet function call to separate out the reply data
    size passed in and the reply packet buffer size which is returned.
    
    Add the reply data size field in the HgfsPacket object so that the reply
    data size and reply buffer size can be separated out and not overloaded.
    This allows the transport channel send routines to extract the reply
    details from the packet object and not need the buffer and size
    arguments. The send function channel callback API will be cleaned up in
    a separate change.
    
    The get reply function for the packet now sets the meta packet data size
    too when it is used for the reply packet. This is used by the VMCI
    channel which now only maps and copies the correct amount of reply data
    into the guest VM shared memory.
    
    The reply packet size is randomly overwritten from the total packet size
    available for the reply to hold the amount of written data in the reply.
    This however, does not have any effect, since, the reply data size is
    passed to the send function which then knows how much data to send, and
    for VMCI, the meta part of the packet is used to transfer data to the
    guest shared memory so the reply part is essentially unused. This is now
    deleted.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 8fcfef8b4b65a34d9d24686ee9d378b724d56744
Author: VMware, Inc <>
Date:   Tue Sep 17 20:27:44 2013 -0700

    MPN to MPN 64 conversion for Hosted.
    
    This change is supporting a 64bit MPN for hosted products.
    
    Assumptions taken:
    
    1. Kindly note that currently we do not have systems supporting 64bit
    memory. So hosted vmmon 64 bit MPN is a container to store whatever
    monitor passes to it.  The underlying assumption is that the higher
    32bits will be zero.
    
    2. Physmem tracker still does page walk using 32 bit values and we have
    put checks to make sure that MPN64 is just a container with actually 32
    bit values. This was a design decision taken after talking to kevinc and
    jpool.
    
    3. The CrossPage code is still 32 bit and I typecast MPN64 to accept 32
    bit values for the crosspage code.
    
    4. Vmkernel already has another definition of MPN64 and I have retained
    their definition for vmkernel specific code.
    
    typedef uint8 * MPN64;
    typedef uint64 MPN64;
    
    5. Additional changes were required in bora-vmsoft vmballoon module
    which earlier used MPN and called functions expecting MPN64 as an input.
    I have however *NOT* changed the PageHandle code of Vmballoon.  I have
    typecasted to MPN64 where common MacOS page handling functions which
    require MPN64 are used.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 946a1fed90796096501f5650ca0344f2223d8140
Author: VMware, Inc <>
Date:   Tue Sep 17 20:27:32 2013 -0700

    Disable vsocket connection temporarily to work around a bug.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 66f441a5673d90fc18c084afeb02a8e8e703a555
Author: VMware, Inc <>
Date:   Tue Sep 17 20:27:19 2013 -0700

    Pass RPCI channel info to guestrpc command hanlders.
    
    Since now we have secure guestRpc, some commands like namespace manager
    needs to handle vsocket/backdoor connections differently.  main changes
    are in guest_rpc.c, guest_rpc.h, and namespaceMgr.c. Changes in other
    files just function sinature changes.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 659dde93cfc12789309b42278892667e75914ca4
Author: VMware, Inc <>
Date:   Tue Sep 17 20:27:07 2013 -0700

    Tools/DnD X11: Logging improvements and cosmetic touchups.
    
    ===== Logging =====
    
    A large chunk of the Tools DND code included function call tracing via
    log entries at the debug level.  However, it had some problems, such as
    generating a lot of noise in all buildtypes.  (Remember that Tools only
    has 3-4 log levels: debug, info, warning, and error.) There was also a
    problem with inconsistency w/r/t logging when a function went out of
    scope.
    
    To address this, I whipped up a dummy tracing object and shove it in
    bora-vmsoft/lib/public.  By including tracer.hh, one just inserts
    TRACE_CALL(); at the beginning of a function to log entry/exit.
    Additionally, it works only in developer builds; it's a ifdef'd out
    everywhere else.
    
    Another thing I did was centralize logging of GuestCopyPasteMgr's
    session ID and state updates.  We now long old/new values upon update.
    
    More of the DND code has been fixed to log to the dndcp GLib log domain,
    making it easier for folks to isolate dndcp logs.  (This explains the
    switch from Debug to g_debug.)
    
    ===== Readability ====
    
    There was a list of some 10+ sigc signals that, due to indentation and
    such, was kinda hard to read & easily skim.  I replaced this with a
    macro which reduces each signal hookup to one line.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 3ef9ccaea708f123f020fe592cb3883ad54034ab
Author: VMware, Inc <>
Date:   Tue Sep 17 20:26:35 2013 -0700

    Fix send retry on vsocket channel.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit cbfdc1a390497f46bc15d1bff0dd91f9775a3780
Author: VMware, Inc <>
Date:   Tue Sep 17 20:26:30 2013 -0700

    Changes in shared code that don't affect open-vm-tools functionality.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 26c693664f4424ce0cf090b9c85df210c8e47467
Author: VMware, Inc <>
Date:   Tue Sep 17 20:26:17 2013 -0700

    Switch utf::string from g_utf8_validate to Unicode_IsBufferValid.
    
    In the version of glib we currently use g_utf8_validate rejects strings
    containing the non-characters U+FFFE and U+FFFF. This was marked as a
    bug and resolved (see https://bugzilla.gnome.org/show_bug.cgi?id=694669)
    but until that is released we need a workaround. Our internal UTF-8
    validation routine accepts these characters as valid so use that
    instead.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit eb245cb3633d0f4078ea61c8f8ece54bacc4d855
Author: VMware, Inc <>
Date:   Tue Sep 17 20:26:09 2013 -0700

    HGFS: Clean up of server packet send
    
    Make packet the send function local to the only file where it is used.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 3d814b1c8ea9b6c5249c064e47326f37026ff2d6
Author: VMware, Inc <>
Date:   Tue Sep 17 20:25:21 2013 -0700

    Fix VMHSUtilFileMove and clarify comments of File_Replace
    
    VMHSUtilFileMove has been broken since 2008 and no one has noticed,
    so I would be happy to remove the entire mv command from VMHS if
    no one would miss it.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 48a12d8ff6d89e2e06f094cdf0c34e29fe338cbc
Author: VMware, Inc <>
Date:   Tue Sep 17 20:25:16 2013 -0700

    Changes in shared code that don't affect open-vm-tools functionality.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 811ceb8315512c3146c9f30b926e86538f7734d3
Author: VMware, Inc <>
Date:   Tue Sep 17 20:25:06 2013 -0700

    Change the lspci parameters to avoid crash dangerous and offer more readable information.
    
    Currently our WS `vm-support` runs:
        lspci -H1 -M
        lspci -H1 -M -vn
    The -H parameter is dangerous. In better case it will crash your server,
    in worse case it will corrupt your data.
    So change them to:
        runcmd "lspci -M -vvv -nn -xxxx" "/tmp/lspci1.$$.txt"
        runcmd "lspci -t -v -nn -F /tmp/lspci1.$$.txt" "/tmp/lspci2.$$.txt"
        runcmd "lspci -vvv -nn" "/tmp/lspci3.$$.txt"
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit c2676c087a208e8bca090c741ef34d6ff1a8cc6b
Author: VMware, Inc <>
Date:   Tue Sep 17 20:24:59 2013 -0700

    Replace some RpcOut_* API using new RpcChannel API.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 0bc8730194cd723c32010053a93a580eb336e54c
Author: VMware, Inc <>
Date:   Tue Sep 17 20:24:08 2013 -0700

    HGFS: Server packet abstraction part IX
    
    Adding in the new fields to indicate the size of the valid data, not the
    size of the buffer. Previously, the two were combined which meant that
    the buffer size was ultimately used instead making the data copies very
    inefficient.
    
    Another  transitional change to get this stuff moved over to handle the
    total pack size and valid data sizes separately. Currently, VMCI has to
    use the total packet sizes only and so maps in 16 pages and copies all
    the data back and forth because it can't tell how much is actually
    valid.  When I switch the VMCI transport header to support V2 it will
    have the correct data size and packet ID - asynchronous will then work
    too.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 54baff91bb4ee3f1d4bd31e23b1f79ed513a9c81
Author: VMware, Inc <>
Date:   Tue Sep 17 20:23:19 2013 -0700

    Changes in shared code that don't affect open-vm-tools functionality.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 7f20a2f72a0a2314a448fc38a6d76623d0744ce7
Author: VMware, Inc <>
Date:   Tue Sep 17 20:22:43 2013 -0700

    Linux kernel modules: remove pre 2.6 support from makefiles
    
    Since pre 2.6.9 support was moved off to legacy branch we do not need
    it here.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit fd70a7c37fa26eedfa6760606ead6c4bc43a56f6
Author: VMware, Inc <>
Date:   Tue Sep 17 20:22:25 2013 -0700

    Changed a warning log message to debug message.
    
    If a tools service is running inside a non-VMware environment,
    we should not be filling the system logs with our warning messages.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 2b1a8355548e3d82ad1f3a311dad1c3c8f731c4a
Author: VMware, Inc <>
Date:   Tue Sep 17 20:22:09 2013 -0700

    Mac OS Tools: Make system-wide services launchd-compliant
    
    Since day 1, the way we have started the tools services has been: at
    boot, launchd executed the process "services.sh --start", which:
    1) Loaded kexts.
    2) Started the long-lived vmsvc as a daemon.
    3) Exited.
    
    According to http://developer.apple.com/library/mac/#documentation/MacOSX/Conceptual/BPSystemStartup/Chapters/CreatingLaunchdJobs.html ,
    launchd sends it a SIGTERM. See "SIGTERM".
    
    This change fixes the above two issues, by turning things upside down:
    since vmsvc is already a long-lived process, let's:
    o Have launchd start vmsvc directly, without daemonizing it, just like
    launchd already does with the vmusr process.
    o Modify vmsvc so that the first thing it does is load the kexts.
    
    I kept the "services.sh --stop" interface (I just re-implemented it
    differently), because it is useful to testers, but more importantly
    because it is called from two places:
    The tools preinstall package script (possibly in a tools package older
    than this change).
    The tools uninstallation script.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 4111a70f4527aca6442162e0481cd39abeaa3efe
Author: VMware, Inc <>
Date:   Tue Sep 17 20:21:40 2013 -0700

    Changes in shared code that don't affect open-vm-tools functionality.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit d6873aa9d43c6b807057fcd165f2a8547b5ed5a2
Author: VMware, Inc <>
Date:   Tue Sep 17 20:21:32 2013 -0700

    Ignore SIGPIPE for tools.
    
    Otherwise tools exits upon socket write error.  Found this in guest
    rabbitmq proxy testing.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 6f8769f85cf842590867c6ca021cc7d148a59962
Author: VMware, Inc <>
Date:   Tue Sep 17 20:20:35 2013 -0700

    Reactivate guestRpc polling reduction code on the guest side.
    
    Reactivate guestRpc polling reduction code on the guest side. The code
    was disabled completely due to an issue that has been fixed.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 52cac5493686e9f6da1bc9f67c13e2f656af83a3
Author: VMware, Inc <>
Date:   Tue Sep 17 20:21:26 2013 -0700

    Fix a segfault in RpcChannel_SendOutRaw.
    
    Fix a segfault due to null pointer reference in debug code.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 38756b5b32ca5c8c3b1a17bfc2216c59c6bcf7dc
Author: VMware, Inc <>
Date:   Tue Sep 17 20:20:27 2013 -0700

    Use __thread on Linux (and ESX) in vthreadBase.c.
    
    This change makes use of __thread on Linux for storing the vthread
    base pointer and the thread ID.  We still also store the value with
    pthreads_setspecific so that we have consistent behavior on thread
    destruction (using the pthreads destructor).  But this allows the
    VThread_CurID path to skip loading the pthread key, skip checking if
    the key is initialized, and skip the call into pthread_getspecific.
    
    (With VThread_CurID taking its own fast path, it's not clear there's
    much benefit at all from optimizing the path for the base pointer, but
    I did so for consistency's sake.)
    
    I tried using my USB bandwidth test to measure the performance impact
    of this on a Linux host.  Unfortunately I found the test to be much
    more noisy under Linux.  The results claimed 1.6% faster overall, but
    I have almost no faith in that number.
    
    Still, having inspected the new code and looked at the contents of
    pthread_getspecific, I think it's safe to claim that this should be
    better overall even if its difficult to quantify how much.  And though
    it makes the code slightly more crufty, such ugliness is confined to
    two functions.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit e996a35e60280a8dd73bb78f9a9ddde06fec7b77
Author: VMware, Inc <>
Date:   Tue Sep 17 20:20:14 2013 -0700

    Internal branch sync. Included in this change:
    
    . dnd plugin: various cleanups
    . asyncsocket: Fix for race conditions with sync operations on a 2nd thread
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit c7fbb99626b9ee8e20cc8e12691805d013826fbd
Author: VMware, Inc <>
Date:   Tue Sep 17 20:20:02 2013 -0700

    Remove some whitespace from x86cpuid.h.
    
    Sometimes when we make preprocessor tables we have to blow past 80
    columns.  But in x86cpuid.h we had a table with plenty of internal
    whitespace which was 81 columns long.  No reason to have to suffer
    with that.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit bb80b3337a94be4668be732967ca453ca1b97359
Author: VMware, Inc <>
Date:   Tue Sep 17 20:19:54 2013 -0700

    HGFS: Server packet abstraction part IX
    
    The HGFS server sets the packet's ID field as the HGFS protocol request
    ID.  This should not occur and it overloads that the packet ID which
    should be private to the transport channel which has nothing to do with
    the HGFS request ID.  The HGFS request ID has it's own field in the HGFS
    header used by the request and reply.
    
    Remove the HGFS server modifying the packet ID.  This is currently safe,
    as the clients do not receive any asynchronous replies from any HGFS
    server where the packet ID in the reply is used.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 4f860433a9a51fd978f51ed6c9fa1db167909419
Author: VMware, Inc <>
Date:   Tue Sep 17 20:19:48 2013 -0700

    VMCI: Remove VM2VM
    
    We're never going to ship it, so let's yank it out.  This isn't a
    straight backout for the following reasons:
    
    o Some of the files have diverged so far that backout fails.
    o Petr added some nice log messages in his original change that we
    want to retain.
    
    So this was mostly manual.  I did do a side-by-side with the pre-VM2VM
    version and it looks good.
    
    Note that our 128-bit QP tag code will re-appear in vm_atomic.h at
    some point.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit ed57ff3cc7d3725cd6ef6ba482608108faa587c6
Author: VMware, Inc <>
Date:   Tue Sep 17 20:19:40 2013 -0700

    Tools: prepare for gcc upgrade
    
    Had a few spare cycles, so tried compiling Tools with gcc-4.4.3.
    This change fixes all compilation errors. (It does NOT do the
    compiler upgrade, hence the minimal testing.)
    
    All changes are mechanical / should be correct at compile-time.
    
    appUtilFileTypes.h: hash_map was never a standard, use the
    standardized (std::tr1) unordered_map. Which removes ifdefs too.
    most other files: character strings are "const" in C++.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 7f89ef424c41687763e8a976337fea1a43ed299b
Author: VMware, Inc <>
Date:   Tue Sep 17 20:19:34 2013 -0700

    Add Clamped_UAdd64
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 0910f4ac428e00cad83893f6fbe68e928666466e
Author: VMware, Inc <>
Date:   Tue Sep 17 20:19:27 2013 -0700

    Flip the kill-switch on VM2VM VMCI
    
    VM2VM VMCI made a reappearance in 5.5 because vHadoop was planning to
    use it, but it was eventually rejected.  We left the code in so as not
    to disturb stability, and simply disabled it in the UI.  But let's
    make doubly sure by flipping the kill-switch, so that our customers
    don't accidentally enable it and then complain about it being removed
    from 5.1, coming back in 5.5 and then disappearing again.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 3aea23905d5c28cc4e68011fe2e47f1354c66a4e
Author: VMware, Inc <>
Date:   Tue Sep 17 20:19:21 2013 -0700

    Bump up tools version to 9.7.0.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 036172f0cb580ca370a94324f6a465bcb71f2076
Author: VMware, Inc <>
Date:   Tue Sep 17 20:19:13 2013 -0700

    Fix a spurious warning.
    
    /dbc/pa-dbc1121/rrugina/rr-vmcore-dbc0/bora/public/vm_basic_defs.h:315:5:
    warning: "VMKERNEL" is not defined
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 7e6615de5c2f12ff5b1bb7b6ac47c50312fd1d15
Author: VMware, Inc <>
Date:   Tue Sep 17 20:19:06 2013 -0700

    HGFS: Clean up server packet abstraction part VIII
    
    Simply make the pointer checks more consistent.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 0add24c598aa8c863917eda4da97c14f10380671
Author: VMware, Inc <>
Date:   Tue Sep 17 20:19:00 2013 -0700

    HGFS: Clean up server packet abstraction part VI
    
    This cleans up some of the inflexibility and inconsistencies in the use
    of the mappings of the packet buffers for the meta data (Hgfs header and
    commmand arguments) and the data component.
    
    This splits out hanlding the iov mappings into two smaller utility
    functions (map and unmap) since the code is replicated in multiple
    places.
    
    The copy from and too an allocated buffer into and from an iov array is
    split out from the map and unmap functionality and also a second routine
    is created to copy from the iov array to a buffer which was previously
    missing.
    
    To achieve this I have also added a mapped iov count for the meta and
    data iov components of the HgfsPacket object. This helps track the state
    of when mappings are available and not. Previously, this was coded by
    assumption of what the GetBuf call did.
    
    In follow up changes the data will have a total buffer size and a data
    size for each of the meta and data components. This will allow for
    optimal movement of data between buffer and iov array.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit fb4b3833080ba2ebd1dbafc8334f0cb10e181197
Author: VMware, Inc <>
Date:   Tue Sep 17 20:18:47 2013 -0700

    Avoid a memory dereference when getting the current thread ID.
    
    As part of some recent benchmarking and ensuing discussions a couple
    of overheads in VThread_CurID have been identified.
    
    (1) VThread_CurID ultimately gets a pointer to a per thread
    structure that contains various bits of state including the
    thread ID.  After getting that pointer it must read the thread
    ID out of memory.  This could be avoided if the thread local
    value we stored was the thread ID itself.
    
    (2) Before calling into the host's API for thread local storage,
    vthreadBase.c must get the host key, check if it is initialized
    and initialize it if necessary.  Then once it gets the thread
    local value from the host API it must check if that has been
    initialized.  These checks could be avoided if we forced clients
    to initialize the thread before calling functions like
    VThread_CurID.
    
    (3) On some (all?) Linux pthread implementations pthread_getspecific
    itself can be heavyweight.  Both Windows and Linux offer
    alternatives to make thread local storage cheaper.  (OS X on the
    other hand provides a very fast implementation of
    pthread_getspecific: pretty much one instruction plus the
    function call overhead.)
    
    The first two overheads came up in my profiling of USB workloads on OS
    X while Kevin raised the third issue in the following discussions.
    
    This change attempts to eliminate the first overhead, but to do so in
    a way that helps set up the code for attacking the remaining two.  In
    particular it introduces a second thread local variable to store the
    thread ID.  For the time I left the thread ID in the other structure
    as well and verify that they stay in sync.  We could get rid of it,
    but it's low cost and I suspect (though I have no proof) that it could
    be useful in debugging.
    
    As part of this I've rearranged some of the initialization code both
    for the TLS keys as well as for initializing the TLS data.  This is
    useful because I wanted both pieces of state to get set together (and
    mutated together -- yes our threads change IDs during their life).
    And, with respect to the pthread keys, it's important to make sure the
    base key gets allocated before the thread ID key.  This ensures it
    gets destroyed first which allows us to keep an ASSERT to make sure
    that the two thread IDs stay in sync.
    
    This does run into one wrinkle because of the lazy thread
    initialization.  The default value for uninitialized state is NULL
    which, inconveniently, is a valid vthread ID.  So instead of actually
    storing the thread ID, we store the thread ID incremented by one.
    This means the default/uninitialized value will show up as -1.  We can
    avoid this after addressing (2) from above, but in the meantime
    trading a memory read for an ALU operation is still a nice win.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 447758846b1a1caa09c2aa0dad5757897ad79bc0
Author: VMware, Inc <>
Date:   Tue Sep 17 20:18:23 2013 -0700

    Internal branch sync. Included in this change:
    
    . lib/file - add File_MakeSafeTempDir()
    . changes in shared code that don't affect open-vm-tools functionality
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 0758f4374dedac711fd674ec6f0c4ebc346cdb60
Author: VMware, Inc <>
Date:   Tue Sep 17 20:17:55 2013 -0700

    Internationalize disk shrink progress string
    
    Disk shrink is a long running operation with progress reporting. The
    "progress" string is visible to users and therefore needs to be
    internationalized.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit d0acf1b782efc1477ae216979a6984531f13ce52
Author: VMware, Inc <>
Date:   Tue Sep 17 20:17:44 2013 -0700

    Changes in shared code that don't affect open-vm-tools functionality.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit ffb568be68fae5f318b09fdf4b60da84a180f20e
Author: VMware, Inc <>
Date:   Tue Sep 17 20:17:19 2013 -0700

    HGFS: Clean up server packet abstraction part VII
    
    Consolidate the HgfsPacket bool fields into a flags field.
    Make the names of the bool fields more accurate too in some cases.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 7230cb3017b18946be3e056d47a3a5e3293b8f09
Author: VMware, Inc <>
Date:   Tue Sep 17 20:17:02 2013 -0700

    HGFS: Clean up server transport session usage
    
    The transport session is only ever used in the common HGFS server code.
    The scope should be constrained to that file and beyond that treated as
    an opaque type.
    
    Make some of the transport session functions static to the common HGFS
    server file and remove the declarations from the common header file.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 227a637742a06ce2155ed14a60d2d31ce772bc90
Author: VMware, Inc <>
Date:   Tue Sep 17 20:16:56 2013 -0700

    Remove fake pthreads
    
    A while ago, we decided to always compile with pthreads; optimizing for
    single-threaded programs no longer makes sense.
    
    Which means vthreadBase.c can get cleaned up.  (Notice that this
    implements the "best thing to do" comment on lines 195-6).
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 039bc01a6547c7306ac9c62c8f62ecd055443e9d
Author: VMware, Inc <>
Date:   Tue Sep 17 20:16:49 2013 -0700

    HGFS: Clean up server packet abstraction part V
    
    Clean up the packet utility routines to only pass the arguments that are
    required. This means we only need to use the HGFS server channel
    callbacks and not the whole HGFS server transport session object.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit df7a9a235364cd9c2f28c72ef1c54f857d0894b9
Author: VMware, Inc <>
Date:   Tue Sep 17 20:16:10 2013 -0700

    HGFS: Fix build on Linux 3.10-rc1
    
    The kernel changes broke the asynchronous read and write HGFS
    client code which picks out the dentry from within the kiocb struct.
    Include the header file directly now for newer kernel versions.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 8e5da80487fa58c637bfe01426383164754283db
Author: VMware, Inc <>
Date:   Tue Sep 17 20:15:46 2013 -0700

    Changes in shared code that don't affect open-vm-tools functionality.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit b7ef7d7bc15c8c9a5336f77f96ac4d28dc4c2f68
Author: VMware, Inc <>
Date:   Tue Sep 17 20:15:38 2013 -0700

    HGFS: Make server use of const more consistent
    
    In particular we see const void * and void const * intermixed and so
    now make the server code consisten in its use and stick with the
    const void * format.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit e8c800081d0339e10641e216e78ad9b47e4d5afa
Author: VMware, Inc <>
Date:   Tue Sep 17 20:15:31 2013 -0700

    HGFS: Clean up server packet abstraction part IV
    
    Complete some tidy up of the input params created from the HgfsPacket.
    This can be contained to only the HgfsServer code and not required to be
    exposed beyond that. So this removes the one usage from the parameter
    pack and unpack code which was in the unpack write request.
    
    As I was modifying up the HGFS server write request I correct a couple of
    const char * to const void * for the write data.
    
    I removed a HSPU_PutPacket declaration as the function did not exist.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 61bd632f8cac230d9fb06bda67ebd0bfa33b13ff
Author: VMware, Inc <>
Date:   Tue Sep 17 20:15:12 2013 -0700

    HGFS: Fix server check for minimum sizes of session requests
    
    The HGFS server check for the minimum protocol request sizes for create
    and destroy session was incorrect. The full request including the reserved
    fields must be sent by the clients. Currently they all do that, including any
    shipping versions.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 5dc550ca73d22d7d3bca6a095c2193b0f98184bd
Author: VMware, Inc <>
Date:   Tue Sep 17 20:15:05 2013 -0700

    HGFS: Clean up server packet abstraction part III
    
    Now the HGFS server packet abstraction has moved from an invalid
    const char * pointer for the input parameters set from the HgfsPacket
    abstraction we make the pack functions correct too.
    This fixes the packet header which can be of two different types to be
    a const void * now and not the incorrect const char *.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 202788ac7df7a74b4f243dd3a6856b0547f7167d
Author: VMware, Inc <>
Date:   Tue Sep 17 20:14:59 2013 -0700

    HGFS: Clean up HGFS server packet abstraction part II
    
    Clean up the input params object which reuses the packet abstraction
    field names which are generic because they are opaque outside of the HGFS
    server. Since the input params are wholly contained within the HGFS server
    and have specific meaning in the HGFS server context, we give the fields
    the HGFS meaningful names.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 147847abf45b67bc20483d1a8a83bff3f039bcfa
Author: VMware, Inc <>
Date:   Tue Sep 17 20:14:46 2013 -0700

    HGFS: Clean up server packet abstraction part I
    
    The HGFS packet object passed between the transport channel and the HGFS
    server is in need of some clean up so that it can be made much more efficient.
    This just closes out some unnecessary public functions and makes them static.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 65d11e664ca3e3905f2afe102efa52a6122753d4
Author: VMware, Inc <>
Date:   Tue Sep 17 20:14:19 2013 -0700

    HGFS: Fix the server to close sessions being invalidated
    
    When the HGFS server running in the tools is left with any sessions
    open due to the clients not terminating them cleanly they will be marked
    inactive. The HGFS server callback to invalidate them will periodically
    be called and after a brief period will terminate those sessions.
    These sessions are not closed first, thus triggering the assert in the
    session exit function which checks the session's state.
    
    Fix is to close the inactive sessions being terminated in the HGFS
    server invalidate callback.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 0c899a265608805ce9962f85e3eb8636ec135b9c
Author: VMware, Inc <>
Date:   Tue Sep 17 20:14:08 2013 -0700

    Internal branch sync. Included in this change:
    
    . Solaris vmxnet3: log over-fragmented condition only when retry fails
    . changes in shared code that don't affect open-vm-tools functionality
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 4d268b0fff1d7075fc3e17a5c34d194e1809a5da
Author: VMware, Inc <>
Date:   Tue Sep 17 20:13:54 2013 -0700

    Replace BackdoorChannel_New with RpcChannel_New.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit f05250e1c8fe0fe64c5497507fa7a7790f41b496
Author: VMware, Inc <>
Date:   Tue Sep 17 20:13:42 2013 -0700

    Fix for not starting RpcIn during fallback on backdoor channel.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 6068b80208fe0e7b11bd506524cea5e2d73022cb
Author: VMware, Inc <>
Date:   Tue Sep 17 20:13:35 2013 -0700

    Bump up the tools version to 9.3.3 for RC 1.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit e6b0b955c2e4e6fc6a53bd1cb32f74bb70ab582c
Author: VMware, Inc <>
Date:   Tue Sep 17 20:13:28 2013 -0700

    HGFS: Fix Linux client to work with Perforce versioning
    
    The problem is that perforce client uses rename operation upon a temp
    file which has read-only attributes. The operation then fails with
    permission denied.
    
    The fix removes the read only attribute and retries the rename operation
    again as per the delete operation. This occurs on Windows HGFS servers
    as the target of the rename operation to be replaced has the read only
    attribute set. The prevents a rename even if they want to overwrite the
    target if it exists. So removing the read only flag is required.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit b34fff0c862b0ba8c6f93fc96a335d3a8e243f9c
Author: VMware, Inc <>
Date:   Tue Sep 17 20:13:16 2013 -0700

    Internal branch sync. Included in this change:
    
    . Scrub sensitive data in VIX before freeing it
    . Fix memory leak in VMCISock_GetAFValueFd()
    . changes in shared code that don't affect open-vm-tools functionality
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 35453dc666791c5fa87dbcc442839f0491e31d17
Author: VMware, Inc <>
Date:   Tue Sep 17 20:13:02 2013 -0700

    Secure GuestRPC channels
    
    Use VMCI/Vsocket instead of backdoor for GuestRPC RPCI channels.  For
    privileged channels, the guest side can bind port to less than 1024, VMX
    can then verify the binding and enforce privileged commands can only be
    ran by privileged users.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 653df5dffb2ea5f9249dcb097a75f707bb578415
Author: VMware, Inc <>
Date:   Tue Sep 17 20:12:44 2013 -0700

    Changes in shared code that don't affect open-vm-tools functionality.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 737ced1b4fab413f56ac4aa1532191de87a552d8
Author: VMware, Inc <>
Date:   Tue Sep 17 20:12:08 2013 -0700

    Internal branch sync. Included in this change:
    
    . Properly handle timezone in TimeUtil_SecondsSinceEpoch()
    . changes in shared code that don't affect open-vm-tools functionality
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 1e9f5c94d0bcc807ac552b19bd5c9a60d96f301a
Author: VMware, Inc <>
Date:   Tue Sep 17 20:11:56 2013 -0700

    Changes in shared code that don't affect open-vm-tools functionality.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 4f174540292f0f158543cc0b315cdcaee72e875c
Author: VMware, Inc <>
Date:   Tue Sep 17 20:11:40 2013 -0700

    Plumb in a new VIX error code
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 065f236104ab12a89cd4b2e73597aeba203e0e0b
Author: VMware, Inc <>
Date:   Tue Sep 17 20:11:25 2013 -0700

    HGFS: Clean up the VMCI transport request and reply headers part I
    
    This is the first part of cleaning up the HGFS VMCI transport request and
    reply headers. This deals with the reply header only which is almost identical
    to the client request VMCI header but not quite - frustratingly.
    It really is not ideal to use a reply header that is different from
    the request header and has fields that require corresponding information from
    the request header which are missing. Consequently, the request header is
    going to be ramped up to a version 2 which includes all the information for both
    request and reply and be extensible.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 8df8396102ebfdcd71cffaa2d05bee4f286f86f3
Author: VMware, Inc <>
Date:   Tue Sep 17 20:11:08 2013 -0700

    VMCI/VSOCK: Cleanup some files
    
    Remove extra whitespace, replace tabs with spaces, fix indentation.
    Also updated the copyright for any file that I touched.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit c6b8484ee1dd7b53846b5cad4f0d7575b6501517
Author: VMware, Inc <>
Date:   Tue Sep 17 20:10:58 2013 -0700

    Add compiler barriers to Atomic_MFence
    
    The MFENCE instruction ensures that all loads and stores that
    preceed it are "globally visible" before any load or store that
    follow it.  However, we don't have a compiler barrier in
    Atomic_MFence and so the compiler can move code and defeat this.
    
    While this bug has probably been around for quite a while, it
    only came up recently now that the AtomicEpilogue() is compiled
    out.  That contains a compiler memory barrier, and while it's
    not technically sufficient (need barrier before the MFENCE too),
    it was apparently enough to discourage the code motion in
    practice.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit a29d9d534464b563bedda7b16c1c4863c15ccf00
Author: VMware, Inc <>
Date:   Tue Sep 17 20:10:54 2013 -0700

    HGFS: Fix notification cleanup session tear down
    
    Previously, when a transport session was disconnected any notifications
    for the HGFS session were then removed if notification module was enabled.
    
    However, this is grossly inadequate, as an HGFS session can come and go driven by
    a client's protocol requests. The notifications are per HGFS session which is
    completely independent from the transport session. The only reason the transport
    session comes into play is whether it has the transport characteristics to support
    the bidirectional nature of the notification feature.
    When an HGFS session is destroyed whether it is from a tranport connection
    session disconnect or a destroy HGFS session protocol request any folder
    the outstanding notifications for the session should be removed.
    Since that currently does not happen, e.g. when an HGFS session is destroyed via the
    protocol requests from a client and goes on to create a new one, during
    a Windows VM reboot, then when host updates do occur on an HGFS share the
    notifications will be generated that hold pointers to invalid sessions.
    This causes the VMX to crash.
    
    The fix is simply to move the notification teardown for a session is at the session
    teardown function, from the transport session disconnect.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 6a8d296cc68cf6687f9cb8084669aa585ec8da0a
Author: VMware, Inc <>
Date:   Tue Sep 17 20:10:12 2013 -0700

    Internal branch sync. Included in this change:
    
    . File locking: tolerate another race in FileUnlockIntrinsic
    . Add util function for getting the epoch from a TimeUtil_Date
    . Add LRO defines for VMXNET3
    . changes in shared code that don't affect open-vm-tools functionality
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 203ba46d6469894f2e92af3eb2c4edc03f01be09
Author: VMware, Inc <>
Date:   Tue Sep 17 20:09:38 2013 -0700

    Changes in shared code that don't affect open-vm-tools functionality.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit 6a1997ee3179db62f8998f847291cfbaf19bf7c3
Author: VMware, Inc <>
Date:   Tue Sep 17 20:09:31 2013 -0700

    HGFS: Fix Posix server from blocking on pipes
    
    The HGFS protocol function to get attributes of a file or folder does
    a Posix open without the O_NONBLOCK flag. This can cause the open to block
    if there isn't anyone on the other end of the pipe.
    
    Fix is to use the same flags we use for the protocol open to ensure the
    correct basic flags are used. Also, if the share is not allowed to follow
    symlinks we get this flag set correctly too now.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit ef2a0f5a022dac45b0e70007a23bce9b0b2a1741
Author: VMware, Inc <>
Date:   Tue Sep 17 20:09:08 2013 -0700

    HGFS: Improve VMCI transport headers part I
    
    Begin to consolidate the client to server and server to client VMCI transport
    headers to be just one common header for both.
    Currently, there are two one for each direction and they are almost
    identical. Also the header for the client to the server does not
    have all information that is required for asynchronous packet sending
    and replies. Hence the motivation for improving this.
    
    The packet headers are poorly defined as they do not have any reserved
    fields for extending the current version and they are inconsistent with
    the packet types with each direction.
    
    This initial change pulls out the version and packet type into a header
    node that will be common to the version one and newer versions of the
    transport header.
    
    This involves modifying the server and client sides. The version 1 transport
    header will remain binary compatible with this change, it just moves the
    first two fields into a common substructure.
    
    Broke out the transport header to return the information from multiple
    versions of the header.
    Moved the validate datagram function call to the main receive message callback.
    Removed the transport header check from this function too, as it is not
    useful to have it there. It will be done by each of the specific header version
    handling routines.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>

commit ee7f312e45adeec460f83b3de1ec0c44f88f6e82
Author: VMware, Inc <>
Date:   Wed Apr 17 14:42:21 2013 -0700

    Updating open-vm-tools version for release 2013.04.16-1098359.
    
    Signed-off-by: Dmitry Torokhov <dtor@vmware.com>
2013.04.16  Dmitry Torokhov  <dtor@vmware.com>
	This release tag contains commits up to the following id:
	867ea989d5e6889abcac77b4c7dae7db2651df58


2012.12.26  Dmitry Torokhov  <dtor@vmware.com>
	This release tag contains commits up to the following id:
	530ef7f26ed041ab1b6655f2cdc79f3af97fc50b


2012.10.14  Dmitry Torokhov  <dtor@vmware.com>
	This release tag contains commits up to the following id:
	d85408321c66c927bffdb05106a26581244edd4a

2012.05.21  Dmitry Torokhov  <dtor@vmware.com>
	This release tag contains commits up to the following id:
	482332b8d4282df09838df5ea4c58df9cdb4faf3


2012.03.13  Dmitry Torokhov  <dtor@vmware.com>
	This release tag contains commits up to the following id:
	0114aabd54bf2db4556563b7149c4fbbdec3d87b


2011.12.20  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	dfca5cf9d1c2335c5d001deedd9266c84956b508


2011.11.20  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	6c197b8e5eccf32bfee0e2452d8926968182aada


2011.10.26  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	6271fde90248a4fd49e38aa61498db9e1dbf37c3


2011.09.23  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	05baddbed1c5e47e9789a44d30bb217d7184232a


2011.08.21  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	2b3d76ba776f55d06fb5b62499b189ebd6bc1c75


2011.07.19  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	5bed6f1369ca6e9c2c7fbaf4205d86e50f219c5f


2011.06.27  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	166bbe1d28da4dab763b9568f163c8dca99ced9c


2011.05.27  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	3793ddc9c9b5facf376a2625d4c2252aa9bd3daa


2011.04.25  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	3112c27981074deb53e86e30e1c168d55e42220c


2011.03.28  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	ec43520f5f3a50f5a980a73d22ae231380f97555


2011.02.23  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	96cf4718ac0aff1743e50a2165599306ba442fe1


2011.01.24  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	60c470337c8932a6d9564130dcaf06c7a1a3df53


2010.12.19  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	5aef2b20a519788613350752575bcba0ac71df79


2010.11.17  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	11c0273ed4269f6f7a92f82f6c822df7da4c8720


2010.10.18  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	2162c5d770cdac3b0e275907a1a5d22ece8ce23c


2010.09.19  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	c92a8bfbb406a906bcd2fb9ef6801f92c5b64d1f


2010.08.24  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	94e63742d734b41638d37580602de4232da5ece6


2010.07.25  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	b15cffc7961b97129d0b77643db42b4d4d8e3da7


2010.06.16  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	ec87703fccdd0f954a118640c0b097e383994391


2010.04.25  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	6fafd672e006208c1e479b297e19618170ff19bd


2010.03.20  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	7cdbb623125729b41bf54068568dfbcc2dd58733


2010.02.23  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	8baa8588d5fd4cf64efb17164cb70c86c758d0c6


2010.01.19  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	8ee82a5774ae7badeb98ecf4dc629c7e9aac7077


2009.12.16  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	0d28106da5684dc31ea52ebb5a2dc6a0af5c1d61


2009.11.16  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	6f4cdd0f38be020d722f2393c0b78d7cd13f04d2


2009.10.15  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	d2f1b83daab1d7882fd651ad1cc77c729bbd9760


2009.09.18  Marcelo Vanzin  <mvanzin@vmware.com>
	This release tag contains commits up to the following id:
	8bb94fbfbdf65b53b87279cf81529756dba7a2ca

	Other changes not captured in the git logs:

	* Resync with internal dev branch (2009.08.24)

	* hgfsmounter/hgfsmounter.c: allow hgfs users to set ttl to 0 at mount time.

	* lib/guestApp/guestApp.c, lib/include/conf.h, lib/include/netutil.h,
	  lib/include/procMgr.h, lib/include/system.h, lib/vixTools/vixTools.c,
	  lib/vmCheck/vmcheck.c: remove (now unused) Netware checks.

	* lib/message/*, modules/freebsd/vmhgfs/Makefile,
	  modules/linux/vmhgfs/Makefile.*, modules/solaris/vmhgfs/Makefile: remove
	  unused message transport abstraction. The rpcChannel library is now used to
	  do RPC abstraction.

	* modules/*/vmmemctl/*: refactor of the vmmemctl module as part of adding
	  support for Mac OS guests.

	* modules/linux/pvscsi/pvscsi.c: don't clobber RESERVATION_CONFLICT sdstat
	  up from linux pvscsi driver.

	* modules/linux/shared/*: VMCI changes unrelated to the guest driver.

	* modules/linux/vmhgfs/fsutil.c, modules/linux/vmhgfs/inode.c: fix the case
	  where two directories refer to the same inode.

	* scripts/linux/*: support older versions of NetworkManager.

2009-08-24	Marcelo Vanzin	 <mvanzin@vmware.com>
	* Resync with internal trunk (2009.08.19)

	* configure.ac: remove support for Linux kernels < 2.6.9.

	* lib/include/vmtools.h, libvmtools/vmtoolsLog.c, doc/api/services/util.txt:
	  add new log handled that allows appending to existing log files, and fix
	  an issue where old log files would be "rotated" whenever the config file
	  was reloaded.

	* lib/appUtil/appUtilX11.c, lib/ghIntegration/ghIntegrationX11.c,
	  lib/include/appUtil.h: fix compilation issues on FreeBSD when unity
	  was enabled.

	* lib/dnd/dndLinux.c, lib/include/vmblock_user.h, tests/testVmblock/*: add
	  vmblock tests and, as part of the change, do some refactoring of vmblock
	  related functions.

	* lib/guestInfo/guestInfo.c, lib/include/wiper.h, lib/wiper/*,
	  toolbox/toolboxcmd-shrink.c, toolbox/toolboxShrink.c: refactor the wiper
	  structures so that they behave the same on Win32 and other platforms, and
	  also reuse data structures already in use by other parts of the code. This
	  fixes an "use after free" issue that toolbox-cmd had on Win32.

	* lib/guestInfo/guestInfo.c, lib/guestInfo/guestInfoInt.h,
	  lib/guestInfo/guestInfoPosix.c, lib/guestRpc/nicinfo.x,
	  lib/include/guestInfo.h, lib/include/netutil.h, lib/include/slashProc.h,
	  lib/netutil/netUtilLinux.c, lib/slashProc/*,
	  services/plugins/guestInfo/guestInfoServer.c: add support for sending more
	  network-related information to the host, such as routing tables and name
	  servers.

	* lib/hgfsBd/hgfsBd.c: don't log RPC errors when HGFS is disabled.

	* lib/hgfsHelper/*, lib/include/hgfsHelper.h, lib/vixTools/vixTools.c: new
	  library with functions to query information about HGFS; expose some HGFS
	  properties through VIX.

	* lib/hgfsServer/*, lib/hgfsServerPolicyGuest/hgfsServerPolicyGuest.c,
	  lib/include/hgfsServerPolicy.h: fix checking of whether an object belongs
	  to a particular share; this was causing issues with invalid information
	  being returned in certain cases.

	* lib/hgfsServer/*, lib/include/hgfsProto.h: changes to support new VIX API
	  calls (mostly affecting Win32 only).

	* lib/include/guestCaps.h, lib/include/unityCommon.h: add boilerplate for new
	  RPCs for setting windows as sticky / non-sticky (not yet implemented).

	* lib/include/hgfsProto.h: new definitions for the next version of the HGFS
	  protocol.

	* lib/include/xdrutil.h: make XDRUTIL_ARRAYAPPEND() more type-safe when using
	  GCC.

	* lib/misc/codesetOld.c: fix some issues with UTF16 -> UTF8 conversion.

	* lib/rpcChannel/rpcChannel.c, libvmtools/signalSource.c,
	  libvmtools/vmtools.c, libvmtools/vmtoolsConfig.c: g_assert -> ASSERT.

	* lib/unityWindowTracker/unityWindowTracker.c: fix issue with z-ordering of
	  modal dialogs.

	* libvmtools/vmtoolsConfig.c: fix some old config translation issues.

	* modules/freebsd/shared/*, modules/freebsd/vmblock/*: make vmblock work on
	  FreeBSD 8.

	* modules/freebsd/vmmemctl/*, modules/linux/vmmemctl/*,
	  modules/solaris/vmmemctl/*, : refactoring and code changes to support the
	  driver on Mac OS X.

	* modules/linux/vmblock/*, modules/linux/vmci/*, modules/linux/vsock/linux/*:
	  remove compatibility code for older kernels.

	* modules/linux/vmhgfs/*: fix memory leak in HgfsAccessInt().

	* modules/linux/vmxnet3/*: fix kunmap usage in vmxnet3_shm, and reset the
	  shared pages when the char device is closed.

	* modules/linux/vsock/linux/af_vsock.{c,h}, modules/linux/vsock/linux/util.c:
	  add vsock protocol negotiation for notifyOn ops. This allows the driver to
	  negotiate with the remove end which version of the notification protocol to
	  use.

	* modules/linux/vsock/linux/notify.c, modules/linux/vsock/linux/notify.h,
	  modules/linux/vsock/linux/notifyQState.c,
	  modules/linux/vsock/linux/vsockPacket.h: add pktOn protocol. This new
	  protocol improves performance by detecting changes in the queue state
	  instead of sending WAITING_READ and WAITING_WRITE packets.

	* services/plugins/hgfsServer/hgfsPlugin.c,
	  services/plugins/resolutionSet/resolutionSet.c,
	  services/vmtoolsd/mainLoop.c, services/vmtoolsd/pluginMgr.c,
	  services/vmtoolsd/toolsRpc.c: load plugins even when an RPC channel cannot
	  be instantiated (i.e., when running outside of a virtual machine); this
	  allows plugins to perform actions (at load time) also when running outside
	  virtual machines (e.g., to undo some configuration done when the OS was run
	  in a VM).

	* services/vmtoolsd/mainLoop.c, services/vmtoolsd/mainPosix.c,
	  services/vmtoolsd/toolsCoreInt.h: handle SIGHUP differently; instead of
	  stopping the service, just re-load the config data. This should make it
	  easier to integrate the tools service with other tools such as logrotate.

	* toolbox/toolbox-cmd.c, toolbox/toolboxcmd-stat.c: remove memory info query,
	  which didn't really return useful information.

	* vmware-user/copyPasteUI.cpp: if the clipboard/primary with most recent
	  timestamp has no data on it, try the other before giving up during
	  copy/paste.

2009-07-22	Marcelo Vanzin	 <mvanzin@vmware.com>
	* Resync with internal trunk (2009.07.17)

	* configure.ac: fix detection of "dot" and its usage in the doxygen config
	  file.

	* configure.ac, libguestlib/Makefile.am, libguestlib/vmguestlib.pc.in:
	  install vmguestlib headers and add new pkgconfig script.

	* lib/dndGuest/dnd.{cc,hh}, lib/include/dndBase.h, vmware-user/dndUI.{cpp,h}:
	  fix an issue where the DnD code would prevent drops to other windows in
	  Unity mode, instead of just intercepting drops to the desktop.

	* lib/dndGuest/dnd.{cc,hh}, lib/dndGuest/dndRpc.hh, lib/dndGuest/dndRpcV3.cc,
	  lib/include/dndBase.h, vmware-user/dndUI.{cpp,h}: fix an issue where the
	  host Unity code would cause an undesired drop event.

	* lib/dndGuest/dnd.{cc,hh}, lib/dndGuest/dndRpc.hh, lib/dndGuest/dndRpcV3.cc,
	  lib/include/dndBase.h: cleanup mouse simulation code, and fix an issue
	  where a drag would be canceled if the contents were dragged out of a guest
	  and then back in.

	* lib/dndGuest/dndRpcV3.cc, vmware-user/copyPasteDnDWrapper.cpp,
	  vmware-user/dndUI.cpp, vmware-user/dndUI.h, vmware-user/dragDetWnd.cpp,
	  vmware-user/dragDetWnd.h: several DnD fixes; make the DnD code behave
	  more like other GTK applications (based on analysing the flow of signals
	  on a test widget), and get rid of one of the detection windows, merging
	  both the Unity and non-Unity windows. Also, some code refactoring.

	* lib/ghIntegration/*, lib/guestRpc/*, lib/include/guestCaps.h,
	  lib/include/unityCommon.h: add stubs for a few new GHI functions (setting
	  window focus, tray icon updates and enhanced app info) - currently only
	  implemented on Win32.

	* lib/ghIntegration/ghIntegrationX11.c: examine WM_CLASS when determining
	  which DE Tools are running in. The previous code was failing to show a
	  few entries set as "OnlyShowIn=xxx" because checking WM_NAME wasn't enough
	  to properly detect the desktop environment in certain cases.

	* lib/guestApp/guestAppPosixX11.c: use gconftool-2 to detect the user's
	  browser, since gnome-open fails to open "file://" URLs which contain query
	  strings. Also, use "kde-open" when running under KDE.

	* lib/guestInfo/guestInfo.c, lib/include/wiper.h, lib/wiper/wiperPosix.c:
	  allow shrinking LVM partitions.

	* lib/include/appUtil.h: partial refactoring of icon retrieval code.

	* lib/include/dbllnklst.h, lib/misc/dbllnklst.c: inline linked list
	  functions.

	* lib/include/guest_os.h, lib/misc/hostinfoPosix.c: add a couple of
	  distros to the known distro list.

	* lib/include/netutil.h, lib/netUtil/netUtilLinux.c: add Linux interface
	  name, index lookup routines.

	* lib/include/system.h, lib/system/systemLinux.c,
	  services/plugins/timeSync/timeSync.c: fixes a few bugs in the backwards
	  time sync code, mostly due to unit mismatches.

	* lib/include/unityWindowTracker.h, lib/unity/unity.c,
	  lib/unity/unityPlatform.h, lib/unity/unityPlatformX11Window.c,
	  lib/unityWindowTracker/unityWindowTracker.c: expose two new properties in
	  the window tracker to save an RPC to retrieve those properties.

	* lib/include/vmtoolsApp.h, services/vmtoolsd/mainLoop.c,
	  services/vmtoolsd/pluginMgr.c, services/vmtoolsd/toolsCoreInt.h: add
	  support for "application providers", which allow plugins to add support to
	  new kinds of application frameworks through vmtoolsd.

	* lib/unity/unityPlatformX11.c: only enable GIO channels when Unity is
	  actually active.

	* lib/unity/*: cleanup old GTK1 code.

	* libvmtools/vmtoolsConfig.c: don't complain if config file is empty.

	* modules/linux/dkms.conf, modules/linux/dkms.sh: fix dkms.conf, and provide
	  a script to create a dkms tree from open-vm-tools.

	* modules/linux/shared/vmci_queue_pair.h, modules/linux/vmci/vmciKernelIf.c:
	  remove two (now) unneeded functions.

	* modules/linux/vmhgfs/*: code cleanups, properly initialize the list head,
	  and allow receives to timeout so that hibernation works.

	* modules/linux/vmxnet/vmxnet.c, modules/linux/vmxnet3/vmxnet3_drv.c: fix
	  drivers for kernels 2.6.29+.

	* modules/linux/vmxnet3/*: add shared memory support for faster communication
	  between user space and the device backend; this doesn't affect the regular
	  driver functionality, but is used by some VMware code not part of Tools.

	* modules/linux/vsock/*: fix an issue where it was possible for users to send
	  VMCI datagrams directly to the hypervisor.

	* scripts/common/vmware-user.desktop: work around a bug in KDE where desktop
	  files with "NoDisplay" fail to autostart.

	* scripts/freebsd/suspend-vm-default: use netif to bring down interfaces,
	  since dhclient doesn't understand "-r" in the default install.

	* services/plugins/vmbackup/*: add some new code used by enhancements being
	  done in the Win32 version of the plugin.

	* services/vmtoolsd/mainPosix.c: fix running in background when executing
	  vmtoolsd while relying on PATH.

	* services/vmtoolsd/Makefile.am: point to the correct plugin install
	  directory.

	* toolbox/*: better command line handling in the CLI utility, plus some code
	  cleanup.

	* vmware-user/copyPaste.c, vmware-user/copyPasteDnDWrapper.cpp,
	  vmware-user/copyPasteDnDWrapper.h, vmware-user/dnd.c: properly unregister
	  RPCs to avoid multiple registrations (and the ensuing ASSERT) in certain
	  cases.

	* vmware-user/copyPasteUI.{cpp,h}: change way data is retrieved from the
	  clipboard, using the gtk+ clipboard wait APIs (which turn out to be more
	  reliable than the previous approach).

2009-06-18	Marcelo Vanzin	 <mvanzin@vmware.com>
	* Resync with internal trunk (2009.06.15)

	* docs/api/Makefile.am: replace all variables in the doxygen conf file with
	  the correct values.

	* lib/appUtil/appUtilX11.c: try alternate file extensions during icon search.
	  Sometimes a package lists its icon as icon-foo.png, but the package didn't
	  include icon-foo.png.	 Instead, it included icon-foo.xpm.	 Ex: Ubuntu
	  8.04's hwtest.

	* lib/guestApp/guestAppPosixX11.c: change detection of the default browser so
	  that the new help system works; the help files are not yet available in
	  open-vm-tools.

	* lib/hgfs/*, lib/include/cpName.h, lib/include/cpNameLite.h,
	  lib/include/hgfsUtil.h: avoid compiling certain parts of the source in
	  kernel modules.

	* lib/hgfsServer/*: return correct error when files / directories don't
	  exist.

	* lib/include/hgfsChannel.h, modules/linux/vmhgfs/*: added support for vsock
	  channel for HGFS.

	* lib/include/util.h, lib/misc/utilMem.c: un-inline a bunch of functions to
	  reduce the size of binaries.

	* lib/include/vm_tools_version.h: bumped Tools version.

	* lib/resolution/resolutionX11.c: fix for issue where the host would send
	  a "topology set" command with a top-left corner that was not (0, 0) and
	  cause the screen to be reconfigured in the wrong way.

	* lib/unity/unityPlatformX11Window.c: check for errors in calls to
	  XQueryTree.

	* lib/wiper/wiperPosix.c: check return of fgets() to avoid compiler warnings.

	* libvmtools/vmtools.c: fix initialization of wiper library on Win32.

	* modules/Makefile.am: install vsock header file on Linux.

	* modules/freebsd/vmhgfs/*, modules/linux/vmci/*, modules/linux/vsock/*:
	  changes related to 64-bit Mac drivers, don't affect either the FreeBSD
	  or Linux drivers.

	* modules/linux/vmhgfs/hgfs.h: removed duplicate file.

	* modules/linux/vmhgfs/fsutil.c, modules/linux/vmhgfs/inode.c,
	  modules/linux/vmhgfs/module.h: fix issue where two files would get the
	  same inode number in some situations.

	* modules/linux/vmxnet/vmxnet.c: re-probe vmxnet2 device features on resume
	  from hibernate, to cover the case where a VM is resumed on a platform with
	  a different version of the device backend (bug #2209565).

	* scripts/resume-vm-default, scripts/suspend-vm-default: use NetworkManager
	  to handle networking where it is available.

	* services/plugins/hgfsServer/Makefile.am, services/plugins/vix/Makefile.am:
	  fix installation of vmusr plugins that are shared with vmsvc.

	* services/plugins/timeSync/timeSync.c: fix backwards time sync.

	* services/vmtoolsd/cmdLine.c, toolbox/toolbox-cmd.c: print build number as
	  part of "-v" output.

	* toolbox/toolboxcmd-shrink.c: correctly ignore unsupported partitions when
	  shrinking.

	* toolbox/toolbox-gtk.c: changes for the new help system, not yet available
	  for open-vm-tools.

	* toolbox/toolboxInt.{c,h}, toolbox/toolboxScripts.c: some code refactoring.

	* vmware-user/Makefile.am: fix linking when compiling without gtkmm.

2009-05-22	Marcelo Vanzin	 <mvanzin@vmware.com>
	* Resync with internal trunk (2009.05.18)

	* configure.ac, m4/vmtools.m4: check for PAM and enable PAM support when
	  available.

	* configure.ac, services/plugins/*/Makefile.am, tests/*/Makefile.am: avoid
	  the "-rpath" hack to create plugins, using plugin_LTLIBRARIES instead (and
	  manually fixing things when necessary). Thanks to Dominique Leuenberger for
	  the suggestion (and sample patch).

	* docs/api/Makefile.am: fix doc target directories.

	* configure.ac, lib/Makefile.am, lib/deployPkg/*, lib/include/deployPkg.h:
	  remove the deployPkg code, which depends on some VMware code that is not
	  yet open source.

	* lib/backdoor/*, lib/hgfs/*, lib/hgfsBd/*, lib/include/*,
	  lib/include/compat/*, lib/message/*, lib/misc/dbllnklst.c,
	  lib/rpcOut/rpcout.c: as part of sharing code between user-level code and
	  kernel modules, some files have been tagged with more than one license.

	* lib/dndGuest/*, lib/include/dndBase.h, lib/include/dndMsg.h,
	  lib/include/unity*, lib/unity/unityPlatformX11.c: implement mouse movement
	  from within the guest; this avoids a dependency on "unofficial" mouse APIs
	  in the VMware host code, making DnD more reliable, and makes a few things
	  (such as cancelling an ongoing DnD operation) easier.

	* lib/file/filePosix.c: make File_FullPath()'s behavior consistent when the
	  input path starts with a '/'.

	* lib/ghIntegration/ghIntegration.c: send more info about the "start menu"
	  contents to the host (only usable for Windows guests).

	* lib/ghIntegration/ghIntegrationX11.c: prettify the category names of menu
	  items. This is a temporary solution before actually reading this
	  information from .desktop files.

	* lib/guestApp/guestApp.c, libguestlib/vmGuestLib.c, lib/include/guestApp.h,
	  toolbox/toolbox-gtk.c, vmware-user/foreignVM*, vmware-user/vmware-user.cpp,
	  configure.ac, lib/Makefile.am, lib/include/socketMgr.h, lib/socketMgr.*:
	  remove code related to "foreign VM" support, which was never really used.

	* lib/guestInfo/guestInfo.c, lib/include/wiper.h, lib/wiper/wiperPosix.c:
	  properly report disk info for LVM volumes.

	* lib/hgfsServer/hgfsDirNotify*, lib/hgfsServer/hgfsServer.c: add support
	  for directory / file monitoring. It's currently only implemented on
	  Mac OS X.

	* lib/hgfsServer/hgfsServer*: fix issue where it was possible to
	  create a file on a read-only share on Windows hosts.

	* lib/hgfsServer/hgfsServer*, lib/hgfsServerManagerGuest/*,
	  lib/include/hgfs*.h, services/plugins/hgfsServer/hgfsPlugin.c,
	  services/plugins/vix/foundryToolsDaemon.c: some refactoring caused by the
	  work to make HGFS support pluggable transports.

	* lib/include/procMgr.h, lib/procMgr/procMgrPosix.c:
	  remove ProcMgr_GetAsyncStatus().

	* lib/include/vmsupport.h, scripts/vm-support, xferlogs/xferlogs.c,
	  services/plugins/guestInfo/guestInfoServer.c: new feature to automatically
	  collect support data from the guest from the VMware UI.

	* lib/panicDefault/*, lib/user/*: change file names to avoid clash with
	  another file (Mac OS linker doesn't really like that).

	* lib/rpcChannel/rpcChannel.c: try to reinitialize the outbound channel on
	  failure.

	* lib/vixTools/vixTools.c, lib/include/vixCommands.h,
	  lib/include/vixOpenSource.h: add backend for new VIX API call to list the
	  guest's filesystems.

	* libvmtools/vmtoolsLog.c: lazily open the log file, instead of opening it
	  during configuration of the log system. This way two processes can use the
	  same conf file and not overwrite each other's log files (assuming the conf
	  data is sane).

	* modules/Makefile.am, modules/linux/vmci/Makefile.kernel,
	  modules/linux/vsock/Makefile.kernel: don't store VMCI module symbols in
	  /tmp during build; this avoids a possible symlink attack that could cause
	  data to be overwritten when building open-vm-tools.

	* modules/*/*, vmblock-fuse/*: remove a lot of duplicated files by either
	  moving them to a shared location or reusing files that were already
	  available elsewhere.

	* modules/freebsd/vmblock/subr.c, modules/freebsd/vmblock/vmblock_k.h,
	  modules/freebsd/vmblock/vnoops.c: fix a possible kernel crash caused by
	  trying to read / write to the mount point (something vmware-user does to
	  detect whether it's using fuse or non-fuse vmblock).

	* modules/linux/pvscsi/*: adds support for a generic msg framework that is
	  currently used to deliver hot-plug/unplug notifications; get rid of a few
	  divisions; fix a bug where pvscsi_probe could return 0 (aka success) if
	  a call to kmalloc() failed; remove a few unused fields.

	* modules/linux/shared/vmci*: mostly changes related to the host VMCI drivers
	  (removed user-level queue-pair daemon, added support for trusted VMCI
	  endpoints) to keep binary compatibility between the host and guest VMCI
	  drivers.

	* modules/linux/hgfs/inode.c: check host's access rights when checking file
	  permissions, so that permissions are correctly checked when the guest's
	  user id is different from the host's user id.

	* modules/linux/bdhandler.*, modules/linux/filesystem.c; modules/linux/tcp.*,
	  modules/linux/transport.*,: postpone opening the channels so that module
	  can load successfully even if shared folders are disabled on the host;
	  fix a synchronization problem between recv and close/open; allow
	  hibernation to work by timing out the recv thread; correctly handle
	  failures in recv, including injecting a dummy error to the pending
	  requests when the recv thread exits; move the recv code to the channel's
	  implementation so that it can be simpler.

	* modules/linux/vmxnet3/vmxnet3.c, modules/linux/shared/compat_pci.h: fix
	  Wake-On-LAN for 2.6.27 and newer Linux guests.

	* modules/linux/vsock/linux/*: changes to support trusted VMCI host apps;
	  pull out notification and stats logging code into their own files.

	* modules/solaris/vmhgfs/vnode.c: do not substitute errors returned by
	  uiomove() calls with EIO, propagate returned error code (which is EFAULT)
	  up the stack.

	* services/vmtoolsd/Makefile.am, scripts/common/linux/pam.d/vmtoolsd-x64,
	  scripts/common/linux/pam.d/64/vmtoolsd: install the 64-bit PAM config
	  file with the correct name.

	* services/plugins/powerOps/powerOps.c: fix running default scripts by
	  making sure the path to the script is absolute.

	* services/vmtoolsd/Makefile.am, services/vmtoolsd/pluginMgr.c: use info
	  from the configure step to define the plugin path; this avoids requiring
	  a symlink to be placed in /etc/vmware-tools for vmtoolsd to be able to
	  find the plugins.

	* services/vmtoolsd/toolsRpc.c: send the build information to the host so
	  it's logged in the VM's logs.

	* toolbox/toolbox-cmd.c, toolbox/toolboxcmd-*, toolbox/toolboxCmdInt.h:
	  make string comparison case-insensitive on Win32.

	* toolbox/toolboxcmd-shrink.c: properly finish the shrinking process by
	  sending the "disk.shrink" RPC to the host.

	* toolbox/toolboxScripts.c: fix showing default settings for power ops
	  scripts (should show default script enabled, not script disabled).

	* vmblock-fuse/Makefile.am: fix compilation on FreeBSD.

	* vmware-user/copyPasteUI.cpp: disallow copy-paste text of size greater than
	  4MB, instead of truncating the data.

	* vmware-user/dndUI.*, lib/dndGuest/dnd.cc, lib/include/dndBase.h: remove
	  drag timeout callback (which was not needed), and add new signal to
	  indicate that a GH DnD was cancelled.

	* vmware-user/Makefile.am: remove C++ link hack (not needed now since
	  vmware-user has C++ code already).

2009-04-23	Marcelo Vanzin	 <mvanzin@vmware.com>
	* Resync with internal trunk (2009.04.17)

	* configure.ac, Makefile.am, docs/*: build API docs for vmtools; the
	  documentation files are provided under a BSD-style license.

	* configure.ac, Makefile.am, guestd/*, lib/Makefile.am, lib/guestInfo/*,
	  lib/include/vmbackup_def.h, lib/include/vmBackup.h, lib/vmBackupLib/*,
	  libvmtools/Makefile.am, services/plugins/vmbackup/vmbackup_def.h: remove
	  guestd from open-vm-tools, and clean up code in other places that was only
	  there because of guestd.

	* configure.ac, modules/solaris/vmblock/*, modules/solaris/vmmemctl/*: add
	  Solaris vmblock and vmmemctl driver sources. The vmmemctl module also
	  includes a user-level daemon (vmmemctld.c).

	* lib/conf/conf.c, lib/include/conf.h, libvmtools/vmtoolsConfig.c: remove
	  unused config options.

	* lib/deployPkg/toolsDeployPkg.h: code refactoring.

	* lib/dnd/dndClipboard.c: if size of clipboard exceeds the maximum backdoor
	  packet size, only keep text data (dropping the RTF data).

	* lib/dnd/dndLinux.c, lib/include/dnd.h, lib/include/vmblock.h,
	  vmware-user/copyPaste.c, vmware-user/dnd.c, vmware-user/vmware-user.cpp,
	  vmware-user/vmwareuserint.h, vmware-user-suid-wrapper/main.c: detect
	  whether plain vmblock or vmblock-fuse is being used, allowing the same
	  executable to be used with either.

	* lib/dndGuest/*, vmware-user/copyPaseDnDWrapper.{cpp,h},
	  vmware-user/dndUI.{cpp,h}, vmware-user/dragDetWnd.{cpp,h}:
	  vmware-user/vmware-user.cpp: more DnD V3 protocol work.

	* lib/ghIntegration/*, lib/include/guestCaps.h, lib/include/unityCommon.h:
	  work related to mapping Outlook folders over HGFS and exposing the Windows
	  Recycle Bin to the host (doesn't really affect open-vm-tools).

	* lib/ghIntegration/ghIntegrationX11.c: restore the native environment when
	  launching external applications. This doesn't really affect open-vm-tools.

	* lib/guestRpc/*, vmware-user/copyPasteUI.{cpp,h}: implement RTF and file
	  contents copy & paste.

	* lib/include/circList.h, lib/include/vm_basic_math.h,
	  lib/include/vm_device_version.h, modules/linux/*, modules/Makefile.am:
	  changes to share files between the user space code and the kernel code,
	  instead of duplicating the same source files in different places.

	* lib/include/rpcChannel.h, lib/rpcChannel/*, tests/testDebug/testDebug.c,
	  test/vmrpcdbg/debugChannel.c: some code cleanup, and fix crash when dealing
	  with multiple reset messages.

	* lib/include/system.h, lib/system/systemLinux.c,
	  services/vmtoolsd/mainPosix.c: remove System_Daemon() (replaced with
	  Hostinfo_Daemonize()).

	* lib/include/unityCommon.h, lib/unity/*: ressurrect UNITY_RPC_WINDOW_SHOW
	  and UNITY_RPC_WINDOW_HIDE RPCs.

	* lib/procMgr/procMgrPosix.c: fix ProcMgr_IsProcessRunning().

	* lib/system/systemLinux.c: fix shutdown / reboot commands on Solaris; fix
	  rebuilding of native environment from variables set by VMware scripts (this
	  last one doesn't really affect open-vm-tools).

	* lib/unicode/unicodeSimpleTypes.c: speed up UnicodeIANALookup, and fix case
	  where C++ constructors could call UnicodeIANALookup before Unicode_Init()
	  was called by lazily creating the internal cache.

	* libguestlib/*: link libguestlib against libvmtools. This avoids having
	  two definitions of certain symbols (like Debug()) when an application
	  links to both libraries.

	* modules/linux/vmblock/linux/control.c: only set directory entry owner when
	  needed.

	* modules/linux/vmhgfs/bdhandler.{c,h}, modules/linux/vmhgfs/dir.c,
	  modules/linux/vmhgfs/file.c, modules/linux/vmhgfs/filesystem.c,
	  modules/linux/vmhgfs/fsutil.c, modules/linux/vmhgfs/inode.c,
	  modules/linux/vmhgfs/module.{c,h}, modules/linux/vmhgfs/page.c,
	  modules/linux/vmhgfs/request.{c,h}, modules/linux/vmhgfs/super.c,
	  modules/linux/vmhgfs/tcp.{c,h}, modules/linux/vmhgfs/transport.{c,h}:
	  cleanup use of atomic variables in HGFS; add a transport abstraction layer,
	  and add an initial version of a socket-based transport (not yet stable and
	  not yet supported by any released VMware product).

	* modules/linux/vmxnet3/vmxnet3.c: fix build on kernel 2.6.29.

	* modules/linux/vsock/af_vsock.c: export more functions to other kernel
	  modules; some changes to statistics gathering code.

	* modules/solaris/vmhgfs/filesystem.c: make module loadable on Solaris 9.

	* modules/solaris/vmhgfs/vnode.c: unify mapping of HGFS to Solaris error
	  codes.

	* scripts/*: restart network before running user scripts in resume scripts.

	* services/plugin/powerOps/powerOps.c: fix running default power scripts.

	* services/vmtoolsd/pluginMgr.c: better error logging.

	* toolbox/toolbox-cmd.c: fix help string.

	* vmblock-fuse/block.c: fix vmblock-fuse compilation on FreeBSD.

2009-03-18	Marcelo Vanzin	 <mvanzin@vmware.com>
	* Resync with internal trunk (2009.03.13)

	* configure.ac: check for FreeBSD kernel tree when building modules; warn
	  about which version of make to use when building kernel modules on FreeBSD
	  and Solaris; add compiler defines for identifying Solaris 9 and 11.

	* configure.ac, modules/Makefile.am: handle SYSDIR on FreeBSD.

	* guestd/main.c, modules/solaris/vmhgfs/Makefile: remove HGFS-related that
	  is now obsolete with the recent changes to the HGFS module on Solaris.

	* guestd/toolsDaemon.c: default to the configuration dir when the power
	  script path is not absolute.

	* guestd/toolsDaemon.c, lib/include/guestInfo.h, lib/netUtil/netUtilLinux.c:
	  handle case when all network interfaces have been disabled and send an
	  "unknown" IP address to the host.

	* guestd/toolsDaemon.c, services/vmtoolsd/toolsRpc.c: always send
	  TOOLS_VERSION_UNMANAGED from an open-vm-tools build, so there's no need for
	  a config file option anymore.

	* hgfsclient/*: make it link to libvmtools to avoid code duplication.

	* lib/appUtil/appUtil.c: update list of "skippable" apps when figuring out
	  an application's path.

	* lib/auth/authPosix.c, scripts/linux/pam.d/*, guestd/Makefile.am,
	  services/vmtoolsd/Makefile.am : change the name of the PAM application to
	  "vmtoolsd" to reflect the new service name.

	* lib/dnd/dndFileContentsUtil.h, lib/dnd/dndInt.h, lib/dndGuest/*.hh, and
	  corresponding files in lib/include: relocate private headers.

	* lib/ghIntegration/ghIntegration.c, lib/ghIntegration/ghIntegrationInt.h,
	  lib/ghIntegration/ghIntegrationX11.c, lib/include/unityCommon.h: glue code
	  for Outlook mirrored folder, which does not affect open-vm-tools.

	* lib/guestRpc/guestlibV3.x, lib/include/vmGuestLib.h,
	  libguestlib/vmGuestLib.c: add new guestlib counters.

	* lib/include/conf.h, toolbox/toolbox-gtk.c: remove the need for the
	  "helpdir" config option; this doesn't really affect open-vm-tools since the
	  help files are not yet included.

	* lib/include/guest_os.h, lib/misc/hostinfoPosix.c: more guest OS names; fix
	  name used to identify Solaris to match what VMware's host code expects.

	* lib/include/guestStats.h: documentation changes.

	* lib/include/hostinfo.h, lib/user/hostinfoPosix.c: add a new function that
	  behaves like daemon(3), but is more Mac OS-friendly.

	* lib/include/toolsLogger.h, lib/Makefile.am, lib/toolsLogger/*: removed
	  library, which is not used anymore.

	* lib/include/vm_basic_types.h, lib/misc/timeutil.c: fixes to compile under
	  (Open) Solaris 11.

	* lib/include/vmtoolsApp.h, services/plugins/vmbackup/stateMachine.c,
	  services/vmtoolsd/mainLoop.c, services/vmtoolsd/mainPosix.c,
	  services/vmtoolsd/serviceObj.c, services/vmtoolsd/toolsCoreInt.h: add new
	  signal handler to gather debugging information from a running vmtoolsd
	  instance.

	* lib/misc/posixPosix.c: fix off-by-one error.

	* lib/unity/unity.c, lib/unity/unityPlatform.h, lib/unity/unityPlatformX11.c,
	  lib/unity/unityPlatformX11Settings.c: always send Unity updates using RPCI;
	  this avoids a possible race between replying to an incoming RPC and sending
	  an Unity update from a different thread; also, API documentation updates.

	* lib/unity/unityPlatformX11.c: verify the DnD detection window was
	  initialized before actually using it.

	* lib/unity/unityPlatformX11Settings.c, lib/unity/unityPlatformX11Window.c:
	  reset _NET_WM_DESKTOP as necessary before exiting Unity; this could cause
	  guest taskbars to disappear when in Unity mode.

	* lib/unity/unityPlatformX11.c, lib/unity/unityPlatformX11Window.c,
	  lib/unity/unityX11.h: examine WM_CLIENT_LEADER when gathering application
	  information; certain applications use this property to define the window
	  where the WM_COMMAND property should be.

	* lib/vixTools/vixTools.c: do not follow symlinks when deleting files in the
	  guest using the VIX API.

	* libvmtools/vmtools.c, libvmtools/vmtoolsLog.c: allow the logging subsystem
	  to be re-configured, and clean up the logging data when unloading the
	  library; allow ${USER} and ${PID} to be used in log file paths.

	* modules/freebsd/vmblock/subr.c, modules/freebsd/vmblock/vnops.c: fix kernel
	  panic on FreeBSD 7.

	* modules/linux/*/Makefile: remove GCC version check.

	* modules/linux/*/compat_wait.h: fix COMPAT_DEFINE_WAIT for "vanilla" 2.4
	  kernels.

	* modules/linux/vmhgfs/Makefile.normal: fix build of HGFS module on 2.4
	  kernels.

	* modules/linux/vmxnet/*, modules/linux/vmxnet3/*: avoid using compat
	  functions when they're not needed; add compatibility functions for
	  newer Linux kernels.

	* modules/linux/vsock/linux/af_vsock.c: fix two races; one when the socket
	  state changed between calls to VSockVmciRecvStreamCB and
	  VSockVmciRecvPktWork, and another when trying to read from the socket after
	  a RST arrived after the socket got a detach notification.

	* modules/solaris/vmxnet3/*: add Solaris vmxnet3 driver.

	* rpctool/*: add "rpctool", a simple, stand-alone tool to send RPC commands
	  to the host software.

	* services/plugins/guestInfo/guestInfoServer.c: don't cache configuration
	  data.

	* services/plugins/guestInfo/perfMonLinux.c: fix problem with overwriting
	  flags after GuestInfoMonitorReadMeminfo() was called. (Same as fix to
	  lib/guestInfo on previous release.)

	* services/plugins/powerOps/powerOps.c: handle power ops-related options
	  sent from the host.

	* services/vmtoolsd/mainLoop.c: handle re-loading the configuration file.

	* services/vmtoolsd/mainPosix.c: exec after forking on Mac OS, since
	  CoreFoundation classes don't work after a fork.

	* services/vmtoolsd/pluginMgr.c: allow both 32 and 64 bit plugins to be
	  installed on Solaris by loading them from the appropriate directory;
	  add library loading code that is not really needed (nor used) in
	  open-vm-tools.

	* services/vmtoolsd/toolsRpc.c: send another "capability" the host expects
	  from Tools.

	* toolbox/toolbox-gtk.c: add F1 shortcut to invoke help.

	* toolbox/toolboxScripts.c: fix issue with freeing data that should not be
	  freed.

	* vmware-user/*: implement the new DnD protocol (V3).


2009-02-18	Marcelo Vanzin	 <mvanzin@vmware.com>
	* Resync with internal trunk (2009.02.13)

	* configure.ac, m4/vmtools.m4: clean up a lot of the library detection code.

	* configure.ac: remove support for gtk+ 1.2 (code already depended on it in
	  any case); enforce need for glib 2.6.0 or later due to new code being
	  added; add detection for gtkmm; check for C++ compiler when it's needed;
	  reorder the include path to avoid clashing with system headers in some
	  situations.

	* guestd/foundryToolsDaemon.*, vmware-user/foundryToolsDaemon.*,
	  guestd/Makefile.am, vmware-user/Makefile.am: moved shared source files to
	  a new place to avoid duplication.

	* hgfsmounter/hgfsmounter.c: add support for Solaris.

	* lib/appUtil/appUtilX11.c: fix loading of icons when the name has a period.

	* lib/dnd/dndClipboard.c, lib/dnd/dndInt.h, lib/dnd/dndMsg.c,
	  lib/dnd/Makefile.am, lib/dndGuest/*, lib/include/copyPasteBase.h,
	  lib/include/copyPaste.hh, lib/include/copyPasteRpc.hh,
	  lib/include/copyPasteRpcV3.hh, lib/include/dndBase.h,
	  lib/include/dndClipboard.h, lib/include/dndFileContentsUtil.h,
	  lib/include/dndFileList.hh, lib/include/dnd.h, lib/include/dnd.hh,
	  lib/include/dndInt.h, lib/include/dndMsg.h, lib/include/dndRpc.hh,
	  lib/include/dndRpcV3.hh, lib/include/dndTransportGuestRpc.hh,
	  lib/include/dndTransport.hh, lib/include/libExport.hh,
	  vmware-user/copyPaste.cpp, vmware-user/copyPasteUI.{cpp,h},
	  vmware-user/copyPasteV3.h, vmware-user/copyPasteWrapper.{cpp,h},
	  vmware-user/dnd.cpp, vmware-user/Makefile.am,
	  vmware-user/vmware-user.{c,cpp}, vmware-user/vmwareuserInt.h,
	  vmware-user/stringxx/string.{cc,hh}, vmware-user/stringxx/ubstr_t.hh: add
	  support for new version of the DnD protocol.

	* lib/guestInfo/guestInfoPerfMonLinux.c: fix problem with overwriting flags
	  after GuestInfoMonitorReadMeminfo() was called.

	* lib/guestRpc/guestlibV3.x, lib/include/vmGuestLib.h,
	  libguestlib/vmGuestLib.c: add new host stats.

	* lib/guestRpc/Makefile.am: fix a few compatibility issues with non-GNU
	  versions of make.

	* lib/hgfsServer/hgfsServer.c, lib/hgfsServer/hgfsServerInt.h,
	  lib/hgfsServer/hgfsServerLinux.c, */hgfsProto.h,
	  modules/freebsd/vmhgfs/vnops.c, modules/freebsd/vmhgfs/vnopscommon.{c,h}:
	  don't trust the local VFS layer, check the HGFS server to see if an
	  operation would succeed.

	* lib/include/rpcChannel.h, lib/rpcChannel/*: add new Guest RPC channel
	  abstraction library used by the new "core services" code.

	* lib/include/vmrpcdbg.h, tests/*: add test code from the "core services"
	  project.

	* lib/include/vmtoolsApp.h, lib/include/vmtoolsd_version.h,
	  services/vmtoolsd/*: add "vmtoolsd", the new service "shell" used in the
	  "core services" project.

	* lib/unity/unityPlatformX11Window.c: don't send initial "region" updates for
	  shaped windows. This works around an issue where resizing a shaped window
	  would not work as expected in Unity mode.

	* lib/wiper/wiperPosix.c: fix major number detection for disks on newer Linux
	  kernels.

	* libvmtools/Makefile.am: link more libraries needed by vmtoolsd and the new
	  plugins.

	* modules/linux/pvscsi/pvscsi.c, modules/linux/pvscsi/pvscsi_version.h: use
	  PCI-specific memory allocation functions and update driver version.

	* modules/linux/vmci/vmciKernelIf.c: disable queue pair support in the host
	  version of the driver on older Linux kernels. This doesn't affect the
	  guest driver.

	* modules/linux/vmci/vmci_queue_pair.h: implement MSG_PEEK support on
	  Linux driver.

	* modules/linux/vmhgfs/bdhandler.c, modules/linux/vmhgfs/compat_sched.h,
	  modules/linux/vmmemctl/os.c: fix issue with HGFS module interfering with
	  suspend / hibernation on newer Linux kernels (bug #2523263).

	* modules/linux/vmhgfs/compat_cred.h, modules/linux/vmhgfs/file.c,
	  modules/linux/vmhgfs/filesystem.c, modules/linux/vmhgfs/inode.c: changes
	  for compatibility with newer Linux kernels, where it's not possible to
	  change fsuid/capabilities directly anymore.

	* modules/linux/vmhgfs/compat_pagemap.h, modules/linux/vmhgfs/page.c:
	  fix warning, and compatibility changes for newer Linux kernels
	  (2.6.28.1 and newer; bug #2530616).

	* modules/linux/vmhgfs/inode.c: fix creation of symlinks (bug #2531303).

	* modules/linux/vmxnet/vmxnet.c: use PCI-specific memory allocation
	  functions.

	* modules/linux/vmxnet/vmxnet.c, modules/linux/vmxnet3/vmxnet3.c: add option
	  to disable LRO.

	* modules/linux/vsock/af_inet.{c,h}, modules/linux/vsock/util.{c,h}: add
	  MSG_PEEK support; remove ifdefs that were disabling support for queue
	  pairs on the host kernel module; fix compilation with certain versions
	  of gcc (bug #2531283).

	* modules/solaris/vmhgfs/*: move backdoor handling code to the HGFS driver;
	  this makes the user-level code to handle the driver (currently in
	  vmware-guestd) obsolete.

	* modules/solaris/vmxnet/*: add vmxnet driver for Solaris, under the CDDL.

	* services/plugins/*: add all currently available "core services" plugins.
	  The current set of plugins provide the functionality available in
	  vmware-guestd; there are a few plugins that replace functionality from
	  vmware-user, but not all features are ported yet (and vmtoolsd - with
	  vmware-user plugins - and vmware-user cannot run at the same time).

	* toolbox/toolboxAbout.c: fix the copyright character.

	* toolbox/toolbox-cmd.c: reword a few messages, fix typos.

	* toolbox/toolboxCmdInt.h, toolbox/toolboxcmd-record.c,
	  toolbox/toolbox-gtk.c, toolbox/toolboxRecord.c: remove the "record"
	  functionality from tools (due to internal request).

	* toolbox/toolboxInt.c, toolbox/toolboxScripts.c, toolbox/toolbox-scripts.c:
	  changes to use the new config file format used by the "core services" code.

	* */Makefile.am: make sure 'rm' and 'mv' are being used instead of $(RM) and
	  $(MV) (which are not defined by automake; bug #2492040).

2009-01-21	Marcelo Vanzin	 <mvanzin@vmware.com>
	* Resync with internal trunk (2009.01.19)

	* configure.ac: detect the presence of FUSE libraries.

	* configure.ac, Makefile.am: compile kernel modules for Solaris, and
	  vmblock-fuse module if FUSE is available.

	* lib/ghIntegration/ghIntegrationX11.c: retrieved localized application
	  names.

	* lib/guestInfo/guestInfo.c, lib/guestInfo/guestInfoPosix.c,
	  lib/include/hostinfo.h, lib/misc/hostinfo_misc.c, lib/misc/hostinfoPosic.c,
	  lib/vixTools/vixTools.c: refactoring to move code shared with other VMware
	  products to a common library.

	* lib/guestRpc/guestlibV3.x, lib/guestRpc/Makefile.am,
	  lib/include/vmGuestLib.h, libguestlib/*: add new iteration of the
	  "guestlib" protocol. This is a more extensible solution than the current
	  protocol, and should make it easier to add new information when needed.

	* lib/include/dynarray.h, lib/include/dynbuf.h, lib/misc/dynarray.c,
	  lib/misc/dynbuf.c: make some DynArray/DynBuf functions inline for speed.

	* lib/include/unityCommon.h: more documentation about the Unity protocol.

	* lib/unity/unityPlatformX11.c: fix Unity<->guest desktop ID mappings.

	* libvmtools/vmtoolsLog.c: change the way log domains are configured; now
	  sub-domains inherit the default handler for the app if no handler is
	  specified.

	* modules/freebsd/vmhgfs/state.c, modules/freebsd/vmhgfs/state.h,
	  modules/freebsd/vmhgfs/vnopscommon.{c,h}: implement support for mmap on
	  the Mac OS driver, which allows running executables from an HGFS
	  share. The FreeBSD module still does not support this functionality.

	* modules/freebsd/vmhgfs/transport.{c,h}: refactoring for sharing structure
	  definitions.

	* modules/linux/pvscsi/pvscsi.c, modules/linux/vmblock/linux/module.c,
	  modules/linux/vmci/vmci_drv.c, modules/linux/hgfs/module.c,
	  modules/linux/vmmemctl/os.c, modules/linux/vmsync/sync.c,
	  modules/linux/vmxnet/vmxnet.c, modules/linux/vmxnet3/vmxnet3.c: add support
	  for Novell's proprietary module info tag ("supported").

	* modules/linux/vmci/vmciKernelIf.c: add support for VMCI queue pairs on
	  the host. This does not affect the driver when it runs inside virtual
	  machines.

	* modules/linux/vmci/*.h, modules/linux/vsock/*.h: some changes in the common
	  code to support Mac OS X, and also queue pairs on the Solaris VMCI module.

	* modules/linux/vsock/af_vsock.{c,h}: add functions for registering with
	  the vsock driver from within the kernel.

	* modules/linux/*/Makefile: add $(LINUXINCLUDE) to the compiler flags; this
	  allows compiling the modules against recent kernels which removed that
	  from $(KBUILD_CPPFLAGS).

	* modules/Makefile.am: add support for compiling Solaris kernel modules.

	* modules/solaris/vmhgfs/*: initial release of the Solaris HGFS driver in
	  open-vm-tools. Driver is licensed under the CDDL 1.0.

	* vmblock-fuse/*: add the user-level implementation of the vmblock driver,
	  which is build on top of FUSE, to open-vm-tools. vmware-user hasn't yet
	  been modified to use this version of vmblock.

	* vmware-user/copyPaseV3.h: new header introduced during development of the
	  next version of copy paste / DnD for X11 platforms.


2008-11-23  Marcelo Vanzin  <mvanzin@vmware.com>
	* Resync with internal trunk (2008.12.19)

	* configure.ac, */Makefile.am: standardize on using libtool archives for
	  the libraries. This also means several makefiles were removed, since
	  there's no need to build two archives of the same library anymore.

	* configure.ac: add logic to detect glib 2.6; this is the minimum version
	  required by the "Core Services" project. Currently it's an optional
	  dependency.

	* configure.ac: disable Unity when user specifies --disable-multimon.

	* configure.ac: actually build the pvscsi modules if the detected kernel
	  version supports it.

	* configure.ac, Makefile.am, lib/guestInfo/Makefile.am,
	  lib/stubs/Makefile.am, libvmtools/*, lib/include/vmtools.h: add the
	  "vmtools" shared library used in the "Core Services" project. The library
	  is a collection of a lot of other libraries used by most VMware Tools
	  programs, and adds some functionality on top of glib that is used in the
	  "Core Services" project. Currently no other components from that project
	  are available as part of open-vm-tools.

	* lib/deployPkg/deployPkgLog.h, lib/deployPkg/toolsDeployPkg.h: moved private
	  headers out of the public header directory.

	* lib/guestRpc/Makefile.am, modules/Makefile.am: fix the makefiles so that
	  it's possible to build open-vm-tools from a directory different from the
	  source dir.

	* lib/hgfsServer/hgfsServer.c: changes to support aliases on Mac OS hosts.

	* lib/hgfsServer/hgfsServerLinux.c: changes to map Windows attributes to
	  Mac OS FileInfo.

	* lib/include/circList.h: removed unused file.

	* lib/include/unityCommon.h, lib/unity/unity.c: changes to add documentation
	  to various application RPCs used in Tools.

	* lib/misc/posixPosix.c, toolbox/toolboxScripts.c: fix include path for
	  syslimits.h on FreeBSD.

	* lib/unity/unityPlatformX11.c: better detection of the guest's work area
	  boundaries; fixes a problem when dragging a Window in Unity mode with
	  the host's task bar on the left/right of screen would result in weird
	  behavior.

	* lib/unity/unityPlatformX11Settings.c, lib/unity/unityPlatformX11Window.c,
	  lib/unity/unityX11.h: preserve the _NET_WM_DESKTOP setting when hiding
	  windows; this fixes a problem where hiding a panel and later restoring it
	  would result in the wrong _NET_WM_DESKTOP property being set for the panel,
	  causing it to only display on the first virtual desktop.

	* modules/linux/vmci/*: minor changes related to internal development of the
	  Mac OS drivers.

	* modules/linux/vmhgfs/page.c: fix HGFS driver for kernel 2.6.28.

	* modules/linux/vsock/linux/af_vsock.c: added code to gather some performance
	  statistics for the driver.

	* toolbox/toolbox-gtk.c: a few fixes to the help functionality.

	* vmware-user/vmware-user.c, vmware-user-suid-wrapper/main.c: change the
	  "blockFd" argument to have an extra dash so it follows the convention of
	  common command line parsing libraries.

	* Other bug fixes and changes in shared code that don't affect open-vm-tools.

2008-11-18  Marcelo Vanzin  <mvanzin@vmware.com>
	* Resync with internal trunk (2008.11.14)

	* lib/include/vm_version.h: Bumped TOOLS_VERSION.

	* guestd/toolsDaemon.c, lib/include/vm_app.h: changes related to host-side
	  configuration of power operations.

	* hgfsclient/hgfsclient.c, lib/dnd/dndCommon.c, lib/dnd/dndLinux.c,
	  lib/hgfs/*, lib/hgfsServer/*, lib/include/cpName.h, lib/include/dnd.h,
	  lib/include/hgfsEscape.h, lib/include/staticEscape.h, modules/*/vmhgfs/*,
	  vmware-user/dnd.c: refactor the HGFS character escaping code; escape
	  invalid characters when the sender allows characters in the file name that
	  the receiver does not allow.

   * lib/hgfsServer/hgfsServerLinux.c: return proper error code when the
     remote path points to a non-existent directory.

	* lib/deployPkg/deployPkg.c, lib/deployPkg/deployPkgLog.c,
	  lib/include/deployPkg.h, lib/include/rpcin.h, lib/rpcin/rpcin.c:
     refactoring for the Tools Core Services project.

	* lib/dnd/dndCommon.c: don't ASSERT if the staging directory is not
	  actually a directory.

	* lib/dynxdr/xdrutil.c, lib/include/xdrutil.h: more XDR-related utility
	  functions.

	* lib/file/file.c, lib/file/fileLockPrimitive.c, lib/include/vm_basic_defs.h:
	  replace use of strtok with strtok_r.

	* lib/guestApp/guestApp.c, lib/include/guestApp.h: more utility functions.

	* lib/guestApp/guestApp.c, lib/include/backdoor_def.h, vmware-user/pointer.c:
	  add the ability to detect whether the mouse hardware can be used in
     absolute mode, which allows for auto grab / auto ungrab to work.

	* lib/guestInfo/guestInfo.c, lib/guestInfo/guestInfoPosix.c,
     lib/guestRpc/nicinfo.x: provide the prefix length of an IPv6 address in a
     separate field of the NicInfo struct.

	* lib/guestInfo/guestInfoPerfMonLinux.c: reduce log spew.

	* lib/guestInfo/guestInfoServer.c, lib/include/guestInfo.h: changes related
	  to how the VMware code in the host handles Tools version information.

	* lib/include/unityCommon.h: changes related to documenting the Unity API.

	* lib/include/unity.h, lib/unity/*: remove a few unused RPCs, add a new
	  function used to notify the host of the status of Unity.

	* modules/freebsd/vmhgfs/state.c, modules/vmhgfs/freebsd/vnops.c,
     modules/vmhgfs/freebsd/vnopscommon.*: support symlinks on FreeBSD and
     Mac OS.

   * modules/freebsd/vmhgfs/worker.c: fix mutex not being unlocked in some
     error paths.

	* modules/linux/dkms.conf: add rudimentary dkms support.

	* modules/linux/pvscsi/*: add a driver for VMware's paravirtualized SCSI
	  device.

	* modules/linux/*/Makefile, modules/linux/vmci/Makefile.kernel,
	  modules/linux/vsock/Makefile.kernel: add support for exporing symbols,
	  needed for dependent modules to load if a kernel >= 2.6.26 is compiled
	  with CONFIG_MODVERSIONS. Make the vsock module reference the vmci module's
	  symbols.

	* modules/vmmemctl/freebsd/os.c: add sysctl to get driver status. Information
	  can be retrieved with "sysctl vm.vmmemctl".

   * modules/linux/vmci/vmci_defs.h, modules/linux/vmci/vmci_call_defs.h,
     modules/linux/vsock/vmciHostKernelAPI.h: changes related to VMCI work
     on VMware ESX.

	* modules/linux/vsock/linux/*: improve performance of some applications by
	  improving the poll behavior and sending less packets when waiting
	  for a response.

   * modules/linux/vmsnc/sync.c: fix panic on kernels < 2.6.20.

	* modules/linux/vmxnet3/vmxnet3.c, modules/linux/vmxnet3/vmxnet3_int.h,
     modules/linux/vmxnet3/vmxnet3_version.h: inherit net device features to
     avoid having the kernel setting the PSH flag on every TCP packet (among
     other issues).

	* modules/*/*/*: Reflected changes from elsewhere.

	* scripts/common/vmware-user.desktop: add missing "Type" information; fixes
	  auto-start of vmware-user on Ubuntu 8.10.

	* toolbox/*: fix a GTK+ warning caused when trying to unref a dialog
	  instance from a signal callback.

	* vmware-user/copyPaste.c: work around an issue when OpenOffice's "cut"
	  command is used; it sets the timestamp of both the clipboard and the
	  primary selection, but only puts data in the clipboard.

	* Other files: minor refactorings, and changes unrelated to open-vm-tools.

2008-10-13  Adar Dembo  <adar@vmware.com>
	* Resync with internal trunk (2008.10.09)

	* configure.ac, modules/Makefile.am: Added a command-line option to
	skip privileged operations during make install (requested by Dennis
	Leroy). Integrated new vmxnet3 kernel module.

	* configure.ac, lib/guestInfo/Makefile.am,
	lib/guestInfo/guestInfoPerfMonLinux.c, lib/include/vm_procps.h:
	Removed open-vm-tools dependency on libproc-dev by providing some procps
	bits and pieces in our own vm_procps.h (Sourceforge bug 1960947).

	* hgfsmounter/Makefile.am: Removed chown calls. Only call chmod
	if we're running as root (requested by Dennis Leroy).

	* */foreignVMToolsDaemon.c, */foundryToolsDaemon.[ch],
	lib/guestInfo/guestInfo.c, lib/guestInfo/guestInfoServer.c,
	lib/include/guestInfoServer.h, lib/include/vixTools.h,
	lib/rpcin/rpcin.c, lib/vixTools/vixTools.c, vmware-user/copyPaste.c,
	vmware-user/vmware-user.c: More refactoring from the Tools core
	services project.

	* */foundryToolsDaemon.c: Changed HGFS mounting behavior such that the
	global HGFS share is mounted at /mnt/hgfs instead of relying on
	"mount -a".

	* guestd/toolsDaemon.[ch], lib/include/backdoor_def.h,
	lib/include/system.h, lib/include/vm_app.h, lib/system/systemLinux.c:
	Added backwards time synchronization functionality. Moved Tools scripts
	checking from VMX to guestd.

	* hgfsmounter/hgfsmounter.c: Added handling for multiple "-o" flags on
	the command line.

	* lib/dynxdr/dynxdr.c: Fixed x_putint32 behavior on 64-bit Solaris.

	* lib/file/*, lib/include/codeset.h, lib/include/file.h,
	lib/include/fileIO.h, lib/include/hostinfo.h,
	lib/include/loglevel_user.h, lib/include/productState.h,
	lib/include/timeutil.h, lib/include/unicodeTypes.h,
	lib/include/vixCommands.h, lib/include/vix.h,
	lib/include/vm_basic_asm.h, lib/include/vm_basic_types.h,
	lib/include/vm_legal.h, lib/include/vm_product.h,
	lib/include/win32util.h, lib/include/x86cpuid.h, lib/misc/codeset.c,
	lib/misc/codesetOld.[ch], lib/misc/posixPosix.c, lib/misc/timeutil.c,
	lib/region/region.c, lib/string/bsd_vsnprintf.c, lib/unicode/*,
	lib/user/hostinfoPosix.c, modules/freebsd/vmhgfs/sha1.c,
	modules/*/*/vm_device_version.h, modules/linux/*/vmci_iocontrols.h,
	modules/linux/*/vmci_version.h, modules/linux/vmhgfs/hgfsEscape.h:
	Changes from work unrelated to open-vm-tools on internal trunk.

	* lib/ghIntegration/ghIntegrationX11.c: Fixed some bugs in menu-spec and
	desktop-entry-spec support in Linux guests.

	* lib/guestApp/guestApp.c, lib/include/guestApp.h,
	lib/include/statelogger_backdoor_def.h, toolbox/Makefile.am,
	toolbox/toolbox-cmd.c, toolbox/toolbox-gtk.c, toolbox/toolboxCmdInt.h,
	toolbox/toolboxGtkInt.h, toolbox/toolboxInt.h, toolbox/toolboxRecord.c,
	toolbox/toolboxcmd-record.c: Patches from Yiwen Zhang to add basic
	record/replay controls to the gtk and command-line toolbox apps.

	* lib/guestInfo/guestInfoPosix.c: Fixed a bug where we assumed the
	primary interface's addresses were all IPv4 addresses.

	* lib/guestInfo/guestInfoServer.c: Fixed a memory leak.

	* lib/guestRpc/Makefile.am, lib/guestRpc/unityActive.x,
	lib/include/guestCaps.h, lib/include/unityCommon.h, lib/unity/unity.c,
	vmware-user/Makefile.am: Added new unityActive xdr protocol, used for
	tracking whether Unity is enabled or not.

	* lib/hgfsServer/hgfsServer.c, lib/hgfsServer/hgfsServerLinux.c,
	lib/hgfsServerPolicyGuest/hgfsServerPolicyGuest.c,
	lib/include/hgfsProto.h: Fixed bug where we were invalidating HGFS
	handles on the share of entire drive ("/"). Added optional symlink
	following behavior to HGFS server. Fixed a UTF-8 validation issue.
	Added volume ID field to attribute fields.

	* lib/include/vm_tools_version.h: Bumped internal Tools backdoor
	version.

	* lib/include/vm_version.h: Bumped TOOLS_VERSION.

	* lib/procMgr/progMgrPosix.c: Fixed impersonation behavior so that
	uids are passed to setresuid instead of gids. Added alternate way to
	list processes in situations where a process lacks a command line.

	* lib/region/region.c: Reforked xorg miregion.c and apply open-vm-tools
	specific patches.

	* lib/unity/*, lib/unityWindowTracker/unityWindowTracker.c: Fixed an
	overflow that lead to a panic when a window title exceeded 1024 bytes.
	Fixed some initialization assumptions when using virtual desktops.

	* lib/unity/unityPlatformX11Window.c: Fixed an issue with restacking
	windows above non-existent windows. Other minor fixes.

	* modules/*/*/*: Reflected changes from elsewhere.

	* modules/linux/*/Makefile.kernel: Changed clean target to remove
	Module.markers and modules.order.

	* modules/linux/vsock/include/compat_sock.h,
	modules/linux/vsock/*: Fixed several issues in vsock.

2008-09-03  Adar Dembo  <adar@vmware.com>
	* Resync with internal trunk (2008.08.29)

	* Makefile.am, aclocal.m4, m4/*: Moved macros to 'm4' subdir.

	* compile, config.guess, config.sub, config/*, depcomp, install-sh,
	ltmain.sh, missing: Moved auxiliary build tools to 'config' subdir.

	* configure.ac: Moved macros and auxiliary build tools into separate
	subdirectories. Added command line option to force the use of gtk1 over
	gtk2. Cosmetic fixes. Reworked libicu detection. Switched over to
	libtool-2.2. Added library check for new gdk symbol. Added library
	check for libnotify. Reworked use of macros from AC_PATH_XTRA and
	some X11 library checks.

	* */foundryToolsDaemon.c, toolbox/toolbox-cmd.c, guestd/main.c,
	lib/guestInfo/guestInfoPerfMonLinux.c, lib/guestInfo/guestInfoPosix.c,
	lib/misc/posixPosix.c, lib/panic/panic.c, lib/system/systemLinux.c,
	modules/linux/vsock/linux/util.c, xferlogs/xferlogs.c: Added checks for
	return codes of certain functions and passed %s to formatted string
	functions where appropriate (needed to compile on Ubuntu Intrepid).

	* lib/appUtil/appUtilX11.c: Fixed command line skipping logic and added
	more icon paths. Removed unnecessary chdir(2) canonicalization logic.

	* lib/deployPkg/runDeployPkgPosix.c, lib/file/fileIO.c,
	lib/file/fileIOPosix.c, lib/file/fileLockPrimitive.c,
	lib/file/filePosix.c, lib/hgfsServer/hgfsServerLinux.c,
	lib/include/bsdfmt.h, lib/include/file.h, lib/include/fileIO.h,
	lib/include/iovector.h, lib/include/msgfmt.h, lib/include/str.h,
	lib/include/vm_basic_defs.h, lib/include/vm_basic_types.h,
	lib/misc/hostname.c, lib/misc/idLinux.c, lib/misc/posixPosix.c,
	lib/SLPv2Parser/*.c, lib/wiper/wiperPosix.c, toolbox/toolboxScripts.c:
	Added FreeBSD compatibility glue.

	* guestd/toolsDaemon.c, lib/file/file.c,
	lib/foundryMsg/foundryPropertyListCommon.c, lib/image/imageUtilPng.c,
	lib/include/appUtil.h, lib/include/backdoor_def.h, lib/include/conf.h,
	lib/include/cpuid_info.h, lib/include/guest_os.h,
	lib/include/hostinfo.h, lib/include/imageUtil.h,
	lib/include/imageUtilTypes.h, lib/include/log.h,
	lib/include/loglevel_user.h, lib/include/netutil.h,
	lib/include/posix.h, lib/include/timeutil.h, lib/include/util.h,
	lib/include/uuid.h, lib/include/vix.h, lib/include/vixOpenSource.h,
	lib/include/vm_atomic.h, lib/include/vm_legal.h,
	lib/include/vm_version.h, lib/include/x86cpuid.h,
	lib/misc/codesetOld.c, lib/misc/timeutil.c, lib/string/bsd_vsnprintf.c,
	lib/user/util.c, lib/user/utilPosix.c, lib/vixTools/vixTools.c,
	modules/linux/*/vmci_kernel_if.h, modules/linux/vmxnet/compat_timer.h,
	toolbox/toolboxCmdInt.h, toolbox/toolboxcmd-*.c:
	Changes from work unrelated to open-vm-tools on internal trunk.

	* lib/ghIntegration/ghIntegration.c,
	lib/guestRpc/ghiGetBinaryHandlers.x: Don't send oversized messages.
	Increased maximum number of binary handlers.

	* lib/ghIntegration/ghIntegrationX11.c, lib/guestApp/guestAppPosix.c,
	lib/include/guestApp.h, lib/include/system.h, lib/system/systemLinux.c,
	toolbox/toolbox-gtk.c: Improved "run program" functionality by
	restoring program environment and stripping any VMware wrapper script
	changes to LD_LIBRARY_PATH.

	* lib/guestApp/guestAppPosixX11.c: Now using glib to open URLs instead
	of system(3). Improved gnome and kde session detection.

	* lib/guestApp/Makefile.am: This library needed GTK_CPPFLAGS too.

	* lib/guestInfo/guestInfoInt.h, lib/guestInfo/guestInfoPosix.c,
	lib/guestInfo/guestInfoServer.c: Added logic to optionally convert
	subnet mask to an ASCII string.

	* lib/guestRpc/Makefile.am: Cleaned up generated xdr headers better.

	* lib/hgfsServer/hgfsServer.c, lib/hgfsServer/hgfsServerInt.h,
	lib/hgfsServer/hgfsServerLinux.c: Fixed	problems when packing V3
	replies.

	* lib/hgfsServer/hgfsServerLinux.c: Fixed UTF-8 normal form D/C
	conversions on the root directory.

	* lib/include/dndGuest.h: Changed preprocessor usage to allow gtk1 to
	access UnityDnD.

	* lib/include/dnd.h, vmware-user/copyPaste.c: Code motion.

	* lib/include/guestCaps.h: Resort the capabilities table.

	* lib/include/rpcin.h, lib/rpcIn/rpcin.c, : Beginnings of the Tools
	core services. This is a full-fledged refactoring of the Tools
	userlevel apps to a "service" vs. "plugin" programming model.

	* lib/include/vmblock.h, modules/*/vmblock/block.c,
	modules/*/vmblock/stubs.c, modules/*/vmblock/stubs.h: Changes needed
	to support the fuse-based implementation of vmblock (coming soon).

	* lib/include/vm_tools_version.h: Some Tools version bumps.
	
	* modules/*/*/*: Reflected changes from elsewhere.

	* modules/*/*/compat/compat_stdarg.h: Added compatibility wrappers for
	stdarg features.

	* modules/freebsd/vmhgfs/debug.*: Cosmetic fixes.

	* modules/freebsd/vmhgfs/*: Make driver compliant with HGFSv3.

	* modules/*/vmmemctl/vmballoon.c: Allow module to yield the processor
	when allocating many pages.

	* modules/linux/*/autoconf/cachector1.c,
	modules/linux/*/include/compat_sched.h,
	modules/linux/*/include/compat_semaphore.h,
	modules/linux/*/include/compat_slab.h,
	modules/linux/vmblock/linux/filesystem.c,
	modules/linux/*/Makefile.kernel,
	modules/linux/vmhgfs/bdhandler.c, modules/linux/vmhgfs/filesystem.c,
	modules/linux/vmhgfs/module.h, modules/linux/vmhgfs/request.c,
	modules/linux/vmsync/sync.c, modules/linux/vsock/linux/af_vsock.c: Fix
	modules for 2.6.27 kernels.

	* modules/linux/*/Makefile: Fixed DRIVER target.

	* modules/linux/vmci/vmci_drv.c: Moved interrupt registration to be
	after driver initialization.

	* modules/linux/vsock/linux/af_vsock.c,
	modules/linux/vsock/linux/af_vsock.c: Added optimized flow control
	protocol.

	* toolbox/toolboxScripts.c, toolbox/toolboxShrink.c: Cosmetic fixes.

	* vmware-user/copyPaste.c, vmware-user/dnd.c: Fixed edge case behavior
	with file copy paste and DnD.

	* vmware-user/modconfig.c, vmware-user/notify.c,
	vmware-user/vmware-user.c, vmware-user/vmwareuserInt.h: Added stubbed
	modconfig module out-of-date notification framework. Not useful for
	open-vm-tools, hence the stubs.

2008-08-08  Adar Dembo  <adar@vmware.com>
	* Resync with internal trunk (2008.07.24)

	* configure.ac, */Makefile.am: Landed support for command line Toolbox,
	Unity, vsock, and vmci. Refactored and reformatted a few things.
	Improved portability by using $(SED) and AC_PROG_SED instead of "sed",
	$(MKDIR_P) and AC_PROG_MKDIR_P instead of "mkdir -p", $(LN_S) and
	AC_PROG_LN_S instead of "ln -s". Changed icu feature detection and
	linking to rely on C++ linker instead of C linker. Fixed module
	compilation checks on FreeBSD. Fixed $(DESTDIR) handling (patch by Mike
	Auty). Refactored lib/strUtil into lib/misc. Changed hgfsmounter
	install hook to symlink mount.vmhgfs. Renamed libghIntegrationStub to
	libGhIntegrationStub. Fixed compilation of lib/guestApp when using
	--without-x (reported by Martin Preishuber). Renamed libunityStub to
	libUnityStub. Fix build on FreeBSD by using ":=" instead of "=" when
	exporting module directories. The vmware-user desktop link now executes
	vmware-user-suid-wrapper. Properly install vmware-user-suid-wrapper.

	* */foundryToolsDaemon.c, lib/vixTools/vixTools.c: Use a larger result
	packet when handling impersonated HGFS requests (since HGFSv3 uses
	larger packets).

	* guestd/main.c: Moved foreign VM check.

	* guestd/toolsDaemon.*: Added plumbing for HGFS usability library
	calls.

	* hgfsmounter/hgfsmounter.c: Added support for passing options to
	the MacOS HGFS driver.

	* lib/appUtil/*, lib/include/appUtil.h: New library for Unity support.

	* lib/auth/authPosix.c: Don't try using PAM from the Tools.
	
	* lib/dnd/dndCommon.c, lib/dnd/dndLinux.c, lib/file/file.c,
	lib/file/fileIOPosix.c, lib/file/filePosix.c, lib/include/dnd.h,
	lib/include/loglevel_user.h, lib/include/panic.h, lib/include/posix.h,
	lib/include/strutil.h, lib/unicode/unicodeBase.h,
	lib/include/unicodeOperations.h, lib/include/vix.h,
	lib/include/vm_app.h, lib/include/vm_assert.h,
	lib/include/vm_product.h, lib/include/x86cpuid.h, lib/misc/codeset.c,
	lib/misc/hashTable.c, lib/misc/strutil.c, lib/misc/timeutil.c,
	lib/panic/panic.c, lib/string/bsd_vsnprintf.c, lib/strUtil/*,
	lib/unicode/unicodeCommon.c, lib/unicode/unicodeSimpleBase.c,
	lib/unicode/unicodeStatic.c, lib/user/hostinfoPosix.c,
	lib/user/util.c, lib/user/utilPosix.c: Changes from work unrelated to
	open-vm-tools on the internal trunk.

	* lib/backdoor/backdoorInt.h, lib/deployPkg/runDeployPkgInt.h,
	lib/dnd/dndInt.h, lib/file/fileInt.h, lib/guestInfo/guestInfoInt.h,
	lib/hgfs/cpNameInt.h, lib/hgfsServer/hgfsServerInt.h,
	lib/impersonate/impersonateInt.h, lib/include/backdoorInt.h,
	lib/include/bsd_output_int.h, lib/include/cpNameInt.h,
	lib/include/dndInt.h, lib/include/fileInt.h,
	lib/include/guestInfoInt.h, lib/hgfsServer/hgfsServerInt.h,
	lib/include/impersonateInt.h, lib/include/runDeployPkgInt.h,
	lib/include/toolsLoggerInt.h, lib/include/unicodeInt.h,
	lib/string/bsd_output_int.h, lib/toolsLogger/toolsLoggerInt.h,
	lib/unicode/unicodeInt.h: Moved some internal header files out of
	the general include directory and into the appropriate libraries.

	* lib/ghIntegration/*: New library for Unity support.

	* lib/guestApp/guestAppPosixX11.c: Reset the value of LD_LIBRARY_PATH
	before running the web browser.

	* lib/guestInfo/guestInfoPosix.c, lib/include/guest_os.h: Fixed a typo
	in Mandriva guest detection. Added Asianux.

	* lib/guestInfo/guestInfoServer.c: Fixed behavior for sending nicInfo
	updates to the host (patch by Jason Lunz).

	* lib/guestRpc/ghi*.*: New xdr protocol for Unity support.

	* lib/guestRpc/nicinfo.x: Correctly applied LGPL to file.

	* lib/hgfs/cpNameLinux.c: Allow building for versions of Solaris newer
	than 10.

	* lib/hgfsServer/hgfsServer.c,
	lib/hgfsServerPolicyGuest/hgfsServerPolicyGuest.c,
	lib/include/hgfsServerPolicy.h: Provide an override setting for
	disabling case conversion during file lookups.

	* lib/hgfsServer/hgfsServerLinux.c: Only perform case insensitive
	file lookups if a case sensitive lookup fails.

	* lib/image/imageUtilPng.c, lib/include/imageUtil.h,
	lib/include/imageUtilTypes.h: New library for
	Unity support.

	* lib/include/conf.h, toolbox/toolbox-gtk.c: Robustified the help page
	discovery mechanism.

	* lib/include/dndGuest.h: Allow inclusion of header into source files
	without GTK2 support.

	* lib/unity/*, lib/include/guestCaps.h, lib/include/unityCommon.h: New
	library for Unity support.

	* lib/include/hgfsUtil.h: Fixed a precedence issue in a macro.

	* lib/raster/*, lib/include/rasterConv.h: New library for Unity support.

	* lib/region/*, lib/include/region.h: New library for Unity support.

	* lib/include/system.h: Added new OS type for WinXP 64-bit, reformatted
	enums.

	* lib/unityWindowTracker/*, lib/include/unityWindowTracker.h: New
	library for Unity support.

	* lib/include/vm_version.h: Bumped TOOLS_VERSION.

	* lib/wiper/wiperPosix.c: Replaced BSD_VERSION with __FreeBSD_version.

	* modules/*/*/*: Reflected changes from elsewhere.

	* modules/freebsd/vmhgfs/*: Reflected changes from MacOS HGFS work, and
	fixed file permissions so that they're not all owned by root.

	* modules/linux/vmblock/linux/dentry.c: Changed d_revalidate to
	properly invalidate negative dentries.

	* modules/linux/vmci/*: Landed the Virtual Machine Communication
	Interface guest module.

	* modules/linux/vmmemctl/os.c: Fixed vmmemctl to build on 2.6.26
	(reported by Pavol Rusnak).

	* modules/linux/vmsync/sync.c: Fixed vmsync to build on 2.6.26
	(reported by Pavol Rusnak).

	* modules/linux/vsock/*: Landed the VMCI sockets interface module.

	* modules/linux/vmxnet/vmxnet.c, modules/linux/vmxnet/vmxnet2_def.h,
	modules/linux/vmxnet/vmxnetInt.h: Increased rx ring size for enhanced
	vmxnet2.

	* toolbox/*: Refactored pieces of GTK Toolbox and landed the command
	line Toolbox. Fixed mnemonic collisions in the GTK Toolbox.

	* vmware-user/copyPaste.c: Fixed several bugs with file copy paste
	behavior.

	* vmware-user/notify.c, vmware-user/vmware-user.c,
	vmware-user/vmwareuserInt.h: Added stubs for notification framework.

	* vmware-user/pointer.c: Reverted fix for bug with clipboard retry
	behavior.

	* vmware-user/vmware-user.c: Fixed build with gtk 1.2 (reported by
	Stephen Duncan). Added signal handlers for SIGUSR1/SIGUSR2 used by
	VMware Tools installer to reload vmware-user cleanly during a Tools
	upgrader. Reload vmware-user on a fatal X I/O error. Don't panic if
	run outside of a VM. Don't leave Unity mode on a Tools reset.
	
2008-07-01  Adar Dembo  <adar@vmware.com>
	* Resync with internal trunk (2008.06.30)

	* configure.ac, lib/guestApp/*, toolbox/Makefile.am,
	vmware-user/Makefile.am: Split lib/guestApp into two libraries, one
	with X11 functionality, and one without. Improved detection of
	gnome-open.

	* guestd/*, lib/netUtil/netUtilLinux.c: guestd now compiles for MacOS
	guests.
	
	* guestd/main.c, lib/include/system.h, lib/system/systemLinux.c:
	Refactored GuestdWritePidfile into System_Daemon.

	* guestd/toolsDaemon.c: Fixed a backwards time synchronization issue.
	Thanks to Eric Castan for reporting the bug.

	* lib/conf/conf.c, lib/include/conf.h: Removed obsolete configuration
	keys and values.

	* lib/file/*, lib/dict/*, lib/foundryMsg/*, lib/include/backdoor_def.h,
	lib/include/codeset.h, lib/include/config.h,
	lib/include/file_extensions.h, lib/include/fileInt.h,
	lib/include/loglevel_user.h, lib/include/msg.h, lib/include/msgid.h,
	lib/include/posix.h, lib/include/preference.h, lib/include/unity.h,
	lib/include/vixCommands.h, lib/include/vix.h,
	lib/include/vmbackup_def.h, lib/include/vmBackup.h,
	lib/include/vm_basic_defs.h, lib/include/vm_basic_types.h,
	lib/include/vm_product.h, lib/include/win32util.h,
	lib/include/x86cpuid.h, lib/misc/codeset.c, lib/misc/codesetOld.c,
	lib/misc/codesetOld.h, lib/misc/posixPosix.c, lib/strUtil/strutil.c,
	lib/user/hostinfoPosix.c, lib/user/util.c,
	lib/vmBackupLib/stateMachine.c, modules/*/vmxnet/net.h: Changes from
	work unrelated to open-vm-tools on the internal trunk.

	* lib/guestRpc/Makefile.am: Added comment about misuse of CFLAGS.

	* lib/hgfsServer/hgfsServer.c: Corrected pointer arithmetic so that
	new node and search allocation works consistently in 64-bit apps.

	* lib/hgfsServer/hgfsServerLinux.c, lib/include/hgfsProto.h: Added
	HGFS_ATTR_HIDDEN_FORCED and set it when returning hidden files.
	
	* lib/hgfsServer/*, lib/hgfsServerPolicy/hgfsServerPolicyGuest.c,
	lib/include/hgfsServerInt.h, lib/include/hgfsServerPolicy.h:
	Refactored and cleaned up some code.

	* lib/include/resolution.h, lib/resolution/*,
	vmware-user/vmware-user.c: Refactored some functions.

	* lib/include/vm_legal.h: Added another patent to the patent string.

	* lib/include/vm_tools_version.h: Added a pair of Tools version macros.

	* lib/include/vm_version.h: Bumped Tools product version.

	* lib/Makefile.am: Included a fix for compilation --without-x. Thanks to
	Mark Foster for reporting the issue.

	* lib/misc/Makefile.am, lib/misc/shared/Makefile.am: Realphabetized
	some sources and added missing source files.

	* lib/misc/posixWin32.c: Removed unneeded file from tree.

	* lib/procMgr/procMgrPosix.c: Made safe for -fPIC and for MacOS.

	* modules/*/*/*: Reflected changes from elsewhere.

	* modules/freebsd/vmhgfs/*: Added some code to handle codeset
	conversions between UTF-8 precomposed and decomposed strings.

	* modules/linux/vmhgfs/*: Refactored string escaping/unescaping code.

	* toolbox/*: Added mnemonics for some buttons.

	* vmware-user/pointer.c: Fixed bug in clipboard retry behavior.

	* vmware-user/vmware-user.c: Added handlers for SIGUSR1 and SIGUSR2
	to facilitate smooth vmware-user upgrades with respect to the vmblock
	kernel module.
	
2008-06-20  Elliot Lee  <elliot@vmware.com>

	* Resync with internal trunk (2008.06.13)

	* FreeBSD 7/8 fixes from Martin Blapp.

	* Fix getpwnam_r etc. on FreeBSD & Solaris.

	* configure.ac: Add --without-kernel-modules,
	--with-linux-release, and --with-linuxdir (gissa).

	* configure.ac, lib/guestRpc/*, lib/guestInfo/guestInfo.c,
	lib/guestInfo/guestInfoServer.c, lib/dynxdr/*,
	{vmware-user,guestd}/foreignVMToolsNetworking.c, guestd/Makefile.am,
	{vmware-user,guestd}/foundryToolsDaemon.c, lib/include/dynxdr.h,
	lib/include/guestInfo.h, lib/include/vmxrpc.h,
	lib/include/xdrutil.h, lib/Makefile.am, lib/netUtil/*,
	lib/vixTools/Makefile.am: Add support for XDR encoding of RPC
	values, including the NicInfoV2 structure.

	* guestd/stub.c, hgfsclient/Makefile.am, hgfsclient/stub.c,
	hgfsclient/stub-user-util.c, hgfsmounter/Makefile.am,
	hgfsmounter/stub.c, lib/stubs/*, libguestlib/Makefile.am,
	libguestlib/stubs.c, toolbox/Makefile.am, toolbox/stub.c,
	vmware-user/stub.c: Centralize stubs.

	* lib/guestInfo/guestInfoPerfMonLinux.c: Convert ioInRate and
	ioOutRate to be in terms of KB instead of pages.

	* lib/hgfsBd/hgfsBd.c, lib/hgfsServer/hgfsServer.c,
	lib/hgfsServer/hgfsServerLinux.c: Large packet support, and
	additional case-insensitivity fixes.

	* lib/include/hgfsBd.h, lib/include/hgfs.h,
	lib/include/hgfsProto.h: Add HGFS error code.
	
	* lib/hgfs/hgfsUtil.c, lib/guestInfo/Makefile.am,
	lib/guestInfo/guestInfoPosix.c, lib/guestApp/guestApp.c,
	lib/foundryMsg/foundryMsg.c, lib/file/fileLockPrimitive.c,
	lib/file/fileIOPosix.c, lib/file/fileLockPosix.c,
	guestd/toolsDaemon.c, guestd/debugStdio.c, guestd/main.c,
	lib/hgfsServerManagerGuest/hgfsServerManagerGuest.c,
	lib/include/codeset.h, lib/include/cpuid_info.h,
	lib/include/dnd.h, lib/include/file_extensions.h,
	lib/include/fileInt.h, lib/include/ghIntegration.h,
	lib/include/guestApp.h, lib/include/guestStats.h,
	lib/include/hgfsServerInt.h, lib/include/hgfsUtil.h,
	lib/include/hostinfo.h, lib/include/loglevel_user.h,
	lib/include/netutil.h, lib/include/panic.h, lib/include/posix.h,
	lib/include/unicode*.h, lib/include/util.h, lib/include/vix.h,
	lib/include/vixTools.h, lib/include/vm_app.h,
	lib/include/vm_basic_defs.h, lib/include/vm_product.h,
	lib/include/vm_tools_version.h, lib/include/vm_version.h,
	lib/include/x86cpuid.h, lib/misc/codeset.c, lib/misc/codesetOld.c,
	lib/misc/codesetOld.h, lib/misc/hashTable.c, lib/misc/hostname.c,
	lib/misc/timeutil.c, lib/panic/panic.c, lib/string/str.c,
	lib/sync/syncMutex.c, lib/system/systemLinux.c, lib/unicode/*.c,
	lib/unityStub/*, lib/user/hostinfo.c, lib/user/hostinfoPosix.c,
	lib/vixTools/*, modules/linux/vmxnet/*, toolbox/debugStdio.c,
	vmware-user/debugStdio.c, vmware-user/dnd.c, vmware-user/main.c:
	Bug fixes.

	* modules/linux/vmxnet/*: Remove unused BPF code. Add ethtool
	callbacks to get & set driver settings.

	* lib/user/util.c: Add function for getting backtraces.

	* lib/resolution/*, vmware-user/*, lib/Makefile.am, configure.ac:
	Move resolution-changing code into separate library.

	* guestd/main.c, lib/include/tools.h: Allow disabling tools
	version reporting to the host, via config file.

	* lib/rpcIn/*, lib/include/rpcin.h, guestd/toolsDaemon.c,
	toolbox/toolbox-gtk.c: Updated RPC API

	* lib/include/dndGuest.h: Helper API for DnD code

	* modules/freebsd/vmhgfs/*, modules/freebsd/vmmemctl/*,
	modules/freebsd/vmblock/*, modules/linux/vmhgfs/*,
	modules/linux/vmmemctl/*: Reflect changes from main source tree.

	* vmware-user/copyPaste.c: Copy/paste cleanup.

	* vmware-user/vmware-user.c: Updated locking code to use X11
	display instead of lockfiles.

2008-06-03  Adar Dembo  <adar@vmware.com>
	* Resync with internal trunk (2008.05.28).

	* configure.ac, Makefile.am, */Makefile.am: Added rudimentary
	`make install` support. Fixes Sourceforge bug 1839981.

	* configure.ac, Makefile.am, vmware-user-suid-wrapper/*: Added
	vmware-user-suid-wrapper to help autostart vmware-user. Added some
	informational tags to AC_DEFINE macros.

	* */debugStdio.c: Fixed a format string vulnerability
	in Debug. Allocate fd on the stack in DebugToFile.

	* lib/auth/authPosix.c, lib/dnd/dndCommon.c, lib/dnd/dndLinux.c
	lib/impersonate/impersonate.c: Add inclusion of vmware.h and refactor
	some include statements.

	* lib/file/file.c, lib/include/file.h: Added File_UnlinkNoFollow
	function.

	* lib/file/fileIO.c, lib/file/fileLockPrimitive.c,
	lib/include/fileIO.h: Added error case for ENAMETOOLONG to FileIO_Lock.
	Constified 'buf' in FileIO_Pwrite.

	* lib/file/fileIOPosix.c: Removed coalescing and decoalescing code.
	Consolidated some Unicode calls.

	* lib/file/filePosix.c: Reworked some error handling logic.

	* lib/foundryMsg/foundryMsg.c: Refactored buffer encoding and decoding
	logic into a single pair of functions.

	* lib/foundryMsg/foundryThreads.c, lib/include/foundryThreads.h
	lib/include/util.h, lib/misc/util_misc.c: Changed generic thread type
	from uintptr_t to Util_ThreadID.

	* lib/hgfsServer/*, lib/hgfs/hgfsProto.h, modules/linux/vmhgfs/*:
	Additional HGFSv3 fixes and refactoring.

	* lib/include/dbllnklst.h, lib/misc/dbllnklst.c: Constified argument to
	DblLnkLst_IsLinked.

	* lib/include/dnd.h: Added support for DnD of RTF.

	* lib/include/fileInt.h: Removed prototype of FileLockFileSize.

	* lib/include/hashTable.h, lib/misc/hashTable.c: Cosmetic changes.
	Added HashTable_ReplaceIfEqual.

	* lib/include/loglevel_user.h: Added hpet loglevel.

	* lib/include/msg.h: Removed prototype of MsgSetPostStderrBlock.

	* lib/include/posix.h: Removed certain includeCheck allowances.

	* lib/include/productState.h: Added VDM client product.

	* lib/include/unicode*, lib/unicode/*: Ongoing i18n work.

	* lib/include/vixCommands.h: Added command to set snapshot information.

	* lib/include/vix.h: Added more errors and a new flag.

	* lib/include/vixOpenSource.h: Reworked asserts and added VIX_ASSERT.

	* lib/include/vm_app.h: Added Tools tray app.

	* lib/include/vm_product.h: Reworked VMRC product definitions and added
	VDM client product definitions.

	* lib/include/vm_tools_version.h: Added WS65 Tools version.

	* lib/include/vm_version.h: Bumped Tools version. Added logic for VMRC
	product.

	* lib/include/x86cpuid.h: Modified a flag and trimmed an unneeded macro.

	* lib/misc/codesetOld.c: Implement UTF-16 codest conversion to UTF-8
	for CURRENT_IS_UTF8.

	* lib/misc/dynbuf.c: Modified dynbuf growing behavior.

	* lib/misc/posixDlopen.c, lib/misc/posixInt.h, lib/misc/posixPosix.h:
	Refactored codeset conversion code into PosixConvertToCurrent.

	* lib/misc/posixWin32.c: Added some path checks.

	* lib/misc/timeutil.c: Win32-wrappified TimeUtil_GetTimeFormat.

	* lib/misc/vmstdio.c: Reduce virtual memory usage and add '\r' as a line
	ending in StdIO_ReadNextLine.

	* lib/rpcout/rpcout.c: Added comments.

	* lib/str/str.c: Cosmetic changes.

	* lib/vixTools/vixTools.c: Added unlink(2) logic to avoid deleting
	symlink targets. Cosmetic changes.

	* modules/*/*/*: Reflect changes from elsewhere in the source tree.

	* modules/linux/vmhgfs/super.c: Fix vmhgfs to properly report the
	available space on the host (Sourceforge bug 1924246).

	* vmware-user/vmware-user.c: Add advisory locking code to help maintain
	only one vmware-user instance per X session.

	* xferlogs/xferlogs.c: Fix a formatted string vulnerability.

2008-05-12  Elliot Lee  <elliot@vmware.com>

	* Resync with internal trunk (2008.05.08).

	* configure.ac, **/Makefile.am: Use CPPFLAGS instead of
	CFLAGS to eliminate warning about proc/sysinfo.h.

	* guestd/foreignVMToolsNetworking.c,
	vmware-user/foreignVMToolsNetworking.c
	lib/hgfsServer/hgfsServerLinux.c, lib/include/hgfsServerInt.h,
	modules/linux/vmhgfs/bdhandler.c, modules/linux/vmhgfs/dir.c,
	modules/linux/vmhgfs/file.c, modules/linux/vmhgfs/filesystem.h,
	modules/linux/vmhgfs/fsutil.h, modules/linux/vmhgfs/inode.c,
	modules/linux/vmhgfs/link.c, modules/linux/vmhgfs/module.h,
	modules/linux/vmhgfs/page.c, modules/linux/vmhgfs/request.c,
	modules/linux/vmhgfs/request.h: Whitespace cleanups.

	* guestd/main.c: Removed "blessed app" code for starting
	vmware-user. Hooray!

	* lib/deployPkg/deployPkg.c: Remove unneeded Utf8 conversion for
	Windows.

	* lib/file/filePosix.c: Use new Posix_RealPath implementation.

	* lib/guestApp/guestApp.c, lib/include/guestApp.h: Remove/cleanup
	UTF-8 related RPC functions.

	* lib/guestInfo/guestInfoPerfMonLinux.c,
	lib/guestInfo/guestInfoPosix.c, lib/include/guestInfo.h,
	lib/include/guestInfoInt.h, lib/include/guestStats.h: Rename
	structures to GuestMemInfo, GuestNicInfo, and GuestDiskInfo.

	* lib/guestInfo/guestInfoServer.c, lib/include/guest_msg_def.h: As
	above, and also GUESTMSG_MAX_IN_SIZE moved to guest_msg_def.h, and
	misc locking updates. Also add GuestInfoServer_Main(), and cleanup
	whitespace.

	* lib/hgfsServer/hgfsServer.c: Cleanup UTF-8 handling.

	* lib/include/codeset.h: Update defines that indicate whether the
	current platform is using UTF-8.

	* lib/include/dnd.h: Add prototypes for a couple of string
	conversion functions.

	* lib/include/file_extensions.h: Add OVF and Archived OVF file extensions.

	* lib/include/file.h: C++ guard thingies. Update a couple of
	function prototypes to work on file descriptors instead of
	filenames.

	* lib/include/hashTable.h, lib/include/guest_os.h,
	lib/include/loglevel_defs.h, lib/include/stats_user_defs.h,
	lib/include/stats_user_setup.h, lib/include/str.h,
	lib/include/unicodeTypes.h, lib/include/util.h: Allow inclusion in
	kernel modules...

	* lib/include/loglevel_user.h: As above, and add a couple of
	loglevel variables.

	* lib/include/util.h, lib/misc/util_misc.c: Allow inclusion in
	kernel modules as above, and add some utility functions on Windows
	for manipulating canonical paths.

	* lib/include/hgfsProto.h, lib/include/hgfsUtil.h: Move
	request/reply payload macros to hgfsProto.h.

	* lib/include/hgfsServerPolicy.h: Add ShareList management
	prototypes and structure members.

	* lib/include/msg.h: Add function prototypes for creating and
	posting lists of messages.

	* lib/include/system.h: Add types & functions related to desktop
	switch monitoring on Windows.

	* lib/include/unicodeOperations.h: Add/update inline unicode operations.

	* lib/include/vixCommands.h: Add VIX requests and events.

	* lib/include/vmbackup_def.h, lib/vmBackupLib/stateMachine.c: Move
	backup status enum to public header.

	* lib/include/vm_basic_asm_x86_64.h: Div643232 now also works on MSC.

	* lib/include/vm_basic_defs.h: Add debug output macros for Windows drivers.

	* lib/include/vm_basic_types.h: Update the FMTPD macro, add
	SCANF_DECL macro for arg checking on scanf-like functions.

	* lib/include/x86cpuid.h: Defines for AMD L2/L3 cache separately, and CPUID for Nehalem.

	* lib/misc/codesetOld.c: Bug fixes and general unicode handling updates. 

	* lib/system/systemLinux.c: Use Posix_Getenv/Posix_Setenv impls.

	* lib/vixTools/vixTools.c, lib/vmBackupLib/scriptOps.c: Bug fixes.

	* modules/freebsd/*, modules/linux/*: Updates to correspond to
	updates of files in main tree.

	* modules/freebsd/vmhgfs/hgfs_kernel.h: Bug fixes.

	* modules/freebsd/vmxnet/vm_device_version: Add
	SCSI_IDE_HOSTED_CHANNEL define, update SCSI_MAX_CHANNELS.

	* modules/freebsd/vmxnet/vmnet.def: Add capabilities for IPv6
	checksumming and TSO, and large packet TSO.

	* lib/include/vmblock.h, modules/linux/vmblock/linux/control.c,
	modules/linux/vmblock/linux/vmblockInt.h: Use a macro to better
	abstract the vmblock mount point & device.

	* vmware-user/vmware-user.c: Add SIGPIPE to the list of signals
	that vmware-user handles.
	
2008-05-02  Adar Dembo  <adar@vmware.com>

	* Resync with internal trunk (2008.04.19).

	* configure.ac, guestd/Makefile.am, hgfsclient/Makefile.am,
	lib/misc/*/Makefile.am, lib/string/*/Makefile.am, toolbox/Makefile.am,
	vmware-user/Makefile.am, xferlogs/Makefile.am: Added libicu support for
	codeset conversions. This includes some makefile logic as well as
	autoconf arguments for controlling libicu behavior at compile-time.

	* */foreignVMToolsNetworking.c, lib/vixTools/vixTools.c: Unicode fixes.

	* */foundryToolsDaemon.c, lib/foundryMsg/vixTranslateErrOpenSource.c,
	lib/panic/panic.c, lib/printer/printer.c: Added calls to Win32 Unicode
	wrappers.

	* guestd/main.c: Cleaned up guestInfo server when guestd shuts down.

	* guestd/toolsDaemon.c, vmware-user/resolution.c: Disabled multi-mon
	advertisement for Win2k.

	* lib/auth/authPosix.c, lib/dnd/dndLinux.c, lib/file/*,
	lib/impersonate/impersonatePosix.c, lib/include/mntinfo.h,
	lib/sync/syncWaitQPosix.c, lib/user/hostinfoPosix.c, lib/user/util.c,
	lib/user/utilPosix.c, lib/wiper/wiperPosix.c: Added calls to POSIX
	Unicode wrappers. 

	* lib/file/*: Replaced calls to string functions with calls to
	the "safe" family of string functions.

	* lib/dict/dictll.c, lib/include/dictll.h: Detect and tolerate UTF-8
	dictionary files that contain the UTF-8 BOM.

	* lib/err/*, lib/include/err.h, lib/include/msgfmt.h,
	lib/include/msg.h: Added support for localization of error strings.

	* lib/foundryMsg/foundryThreads.c, lib/include/foundryThreads.h,
	lib/misc/util_misc.c: Added opaque type for threads/process IDs.

	* lib/guestInfo/guestInfoServer.c: Removed separate thread context.

	* lib/hgfsServer/*, lib/include/hgfs*.h: Additional HGFSv3 cleanup.

	* lib/hgfsServer/hgfsServerLinux.c: Added calls to POSIX Unicode
	wrappers. Fixed some alias detection code for MacOS.

	* lib/include/backdoor_def.h: Added backdoor call for debugging events.

	* lib/include/bsdfmt.h, lib/string/bsd_vsnprintf.c,
	lib/string/bsd_vsnprintfw.c: Replaced BSDFmt_WCSonv with
	BSDFmt_WChartoUTF8.

	* lib/include/codeset.h, lib/include/codesetOld.h, lib/misc/codeset.c,
	lib/misc/codesetOld.c, lib/string/convertutf.h: Implemented
	libicu-backed codeset layer. When building without libicu, fallback on
	codesetOld.

	* lib/include/guestApp.h: Added wide versions of dictionary functions.

	* lib/include/loglevel_user.h: Added two new loglevels.

	* lib/include/posix.h, lib/misc/posixPosix.c: Added new POSIX wrappers.

	* lib/include/str.h: Clarified the use of some functions.

	* lib/include/syncMutex.h, lib/include/syncWaitQ.h: Removed unneeded
	macros.

	* lib/include/unicode*.h, lib/unicode/*: Ongoing Unicode work.

	* lib/include/util.h: Added Util_FreeStringList, removed Util_FreeList.

	* lib/include/uuid.h: Added new UUID creation scheme.

	* lib/include/vix*.h: Tweaked some VIX commands, errors, and properties.

	* lib/include/vmBackup.h, lib/vmBackupLib/scriptOps.c,
	lib/vmBackupLib/stateMachine.c: Moved disabled targets logic from
	library to Windows VSS provider.

	* lib/include/vm_basic_asm_x86*.h: Allow emitted FX functions to
	modify main memory as a side effect.

	* lib/include/vm_tools_version.h: Bump Tools version.

	* lib/include/vm_version.h: Added several product versions.

	* modules/linux/vmhgfs/*: Additional cleanup for HGFSv3. Use new kthread
	wrapper when possible. Bump module version.

	* modules/linux/vmmemctl/*: Use new kthread wrapper when possible.
	Remove dead delayed work code. Bump module version.

	* modules/linux/*/compat_kthread.c: Added kthread wrapper implementation
	for modules that use kernel threads.

	* modules/*/*/*: Reflect header file changes from elsewhere in the
	source code tree.

	* vmware-user/copyPaste.c, vmware-user/pointer.c,
	vmware-user/vmwareuserInt.h: Stop wastefully polling for pointer
	updates if the VMX is new enough.

	* xferlogs/xferlogs.c: Fixed a warning in the call to fwrite.
	(Thanks to Denis Leroy for reporting this bug.)
	
	
2008-04-14  Elliot Lee  <elliot@vmware.com>

	* Resync with internal trunk (2008.04.01).

	* Fixed legal header on all LGPL-licensed files.

	* vmware-user/resolution.c: Normalize the display topology that
	comes in from the host, and report 'global_offset' capability.

	* toolbox/Makefile.am, vmware-user/Makefile.am,
	lib/misc/Makefile.am, lib/misc/atomic.c, lib/Makefile.am,
	lib/atomic/*, hgfsclient/Makefile.am: Move libAtomic stuff into libmisc

	* vmware-user/foundryToolsDaemon.c, lib/vixTools/vixTools.c,
	lib/include/hgfsServerInt.h, guestd/toolsDaemon.c,
	guestd/foundryToolsDaemon.c: Remove WIN9XCOMPAT, and some
	SOCKET_MGR code.

	* vmware-user/copyPaste.c: Copy/paste fixes for cross-platform
	operation.

	* modules/linux/vmxnet/vmnet_def.h: Add SG_SPAN_PAGES capability.

	* modules/linux/vmxnet/vm_device_version.h: Update some device limits.

	* modules/linux/*/compat_sched.h: Add TASK_COMM_LEN define.

	* modules/linux/*/compat_kernel.h,
	modules/linux/*/kernelStubsLinux.c: Add vsnprintf define.

	* modules/linux/*/x86cpuid.h: Add new CPUs.

	* modules/linux/vmhgfs/vmhgfs_version.h: Bump HGFS version.

	* modules/linux/*/vm_basic_asm_x86.h,
	modules/linux/*/vm_basic_asm_x86_64.h,
	lib/include/vm_basic_asm_x86.h, lib/include/vm_basic_asm_x86_64.h:
	Formatting fixes, and change asm directives used.

	* modules/linux/vmhgfs/module.h,
	modules/linux/vmhgfs/filesystem.c,
	modules/linux/vmhgfs/bdhandler.c,
	modules/linux/*/compat_kthread.h: compat_kthread fixes.

	* modules/freebsd/vmxnet/net_compat.h,
	modules/freebsd/vmxnet/if_vxn.c: Updates for FreeBSD 7.0.
	(Thanks to Martin Blapp for contributing to these changes.)

	* lib/misc/util_misc.c, lib/include/loglevel_user.h,
	lib/user/hostinfoPosix.c, lib/misc/hostname.c: Bugfix.

	* lib/unityStub/unityStub.c, lib/include/unity.h: Add stub and enums
	related to DnD support.

	* lib/unicode/unicodeSimpleTypes.c,
	lib/unicode/unicodeSimpleTransforms.c,
	lib/unicode/unicodeSimpleBase.c, lib/unicode/unicodeCommon.c,
	lib/include/unicodeTypes.h,
	lib/include/unicodeTransforms.h,
	lib/include/unicodeBase.h, lib/include/unicodeCommon.h: Add
	additional Unicode-related functions.

	* lib/sync/syncMutex.c, lib/include/syncMutex.h: Add TryLock method.

	* lib/strUtil/strutil.c: Add int64-related functions.

	* lib/string/str.c: Compile fix

	* lib/string/bsd_output_shared.c: Better handling of floating
	point on Windows.

	* lib/include/progMgr.h, lib/procMgr/procMgrPosix.c: Clarify that
	the strings are in UTF-8, do conversion as needed.

	* lib/include/posix.h, lib/misc/posixPosix.c,
	lib/misc/posixWin32.c, lib/file/filePosix.c: Add new Posix_
	function implementations, and unicodify existing ones.

	* lib/misc/hashTable.c, lib/include/hashTable.h: Add lock-less hash
	table functions.

	* lib/misc/util_misc.c, lib/include/w32util.h: Add a couple of
	Win32 utility functions.

	* lib/include/vm_version.h: Add WS5 config version.

	* lib/include/vm_atomic.h: Add typecasts to atomic operations to
	make compilers stop complaining, and expand the AtomicUseFence option.

	* lib/include/vm_app.h: Add a couple of HGFS-related options.

	* lib/include/vix.h: Update a few errors and other macros.

	* lib/include/vixCommands.h, lib/foundry/foundryMsg.c: Change a
	bunch of structure members from int32 to uint32, and add a parsing
	function.

	* lib/include/msgfmt.h, lib/include/msg.h: Additional
	message-handling prototypes.

	* lib/include/guestInfoInt.h, lib/include/guestInfo.h,
	lib/guestInfo/Makefile.am, lib/guestInfo/guestInfoServer.c,
	lib/guestInfo/guestInfoPosix.c,
	lib/guestInfo/guestInfoPerfMonLinux.c: Add IPv6 support, and the
	ability to read mem stats on Linux.

	* lib/include/fileIO.h, lib/file/fileIOPosix.c: Add MacOS function
	related to Time Machine.

	* lib/guestApp/guestApp.c: Use Posix_ variants of functions.

	* lib/ghIntegrationStub/ghIntegrationStub.c: Add GHI capabilities
	stubs.

	* lib/dnd/dndCommon.c, lib/file/file.c: Use new Unicode_Format()
	function, bugfix.

	* guestd/main.c: Fix a security bug.

	* configure.ac: Allow calling libdnet 'dumbnet' for Debian
	systems. Detect libprocps.

2008-03-19  Adar Dembo  <adar@vmware.com>

	* Resync with internal trunk (2008.03.13).

	* vm_version.h: Updated Tools version.

	* configure.ac: Added dynamic dnet detection and --without-dnet flag.

	* guestd/debugStdio.c, lib/include/system.h, lib/system/systemLinux.c:
	Modified debugging to file behavior to prepend debug strings with human
	readable timestamps.

	* guestd/main.c, guestd/toolsDaemon.c, lib/conf/conf.c,
	lib/guestApp/guestApp.c, lib/include/guestApp.h: Internationalized
	GuestApp_GetInstallPath and GuestApp_GetconfPath.

	* lib/auth/authPosix.c, lib/dnd/dndLinux.c, lib/file/*,
	lib/impersonate/impersonatePosix.c, lib/include/fileInt.h,
	lib/include/posix.h, lib/misc/posix*.c: Refactored, extended, and made
	use of the set of POSIX internationalization-safe function wrappers.

	* lib/dnd/dndCommon.c, lib/include/dnd.h, lib/include/dndInt.h,
	vmware-user/copyPaste.c, vmware-user/dnd.c: Replaced some duplicated
	UTF-8 formatting code with calls to lib/unicode.

	* lib/guestInfo/guestInfoPosix.c: Replaced the old syscall-based
	implementation of nicinfo with a simpler implementation that uses dnet.

	* lib/guestInfo/guestInfoServer.c, lib/include/guestInfo.h,
	lib/include/guestInfoInt.h: Added Win32 implementation of
	meminfo. POSIX implementation to follow.

	* lib/hgfsServer/hgfsServerLinux.c: Replaced a direct readlink(3) call
	with a call to the POSIX wrapper for readlink(3). Relax an overeager
	ASSERT in symlink checking when using the special empty share.

	* lib/include/codeset.h, lib/string/bsd_vsnprintf.c, lib/string/str.c,
	lib/unicode/unicodeSimpleOperations.c, lib/unicode/unicodeSimpleUTF16.h:
	Refactored ICU routines from unicodeSimpleUtf16.h to codeset.h, which
	is now licensed under the ICU license (BSD variant).

	* lib/include/file.h, lib/file/file.c: Added function File_StripSlashes.

	* lib/include/hgfsProto.h: Removed an A acute from a comment to allow
	the file to be built on Windows systems where the default language isn't
	English.

	* lib/include/hostinfo.h, lib/include/util.h, lib/user/hostinfoPosix.c,
	lib/user/util.c, lib/user/utilPosix.c: More conversions to
	lib/unicode. Added Util_ZeroFreeStringW function for Windows in util.h.

	* lib/include/msg.h: Removed obsolete NO_MSGFMT macro.

	* lib/include/unicodeBase.h, lib/unicode/unicodeCommon.c,
	lib/unicode/unicodeSimpleBase.c: Added some more encoding functions.

	* lib/include/vixCommands.h, lib/include/vixOpenSource.h: Added another
	user credential type, some command flags, some command layouts, some
	error codes, some properties, and tweaked existing commands.

	* lib/include/vixTools.h: Added VixToolsUserIsMemberOfAdministratorGroup
	function.

	* lib/include/vm_assert.h, lib/include/vm_basic_defs.h: Move IMPLIES to
	vm_basic_defs.h. Removed some vprobes definitions.

	* lib/include/vmBackup.h, lib/vmBackupLib/scriptOps.c,
	lib/vmBackupLib/stateMachine.c: Added infrastructure to disable
	quiescing targets from a config file.

	* lib/include/vm_basic_asm.h: Changed __GET_CPUID2 handling for Windows.

	* lib/include/vm_produt.h: Added VDM product.

	* lib/include/vm_tools_version.h: Bumped internal Tools version.

	* lib/include/win32util.h, lib/misc/hostname.c, lib/misc/util_misc:
	Refactored functions to separate set of Win32 wrappers (next to the
	POSIX wrappers mentioned earlier).

	* lib/misc/codeset.c: Made CodeSetGetCurrentCodeSet non-static.

	* lib/misc/*/Makefile.am: Added POSIX wrappers to build system.

	* lib/strUtil/strutil.c: Fixed bug in StrUtil_EndsWith function.

	* lib/include/unicodeTypes.h, lib/unicode/unicodeSimpleTypes.c: Removed
	ISO-8859-11 encoding. Added cross-reference of IANA character set
	names, windows code pages, and ICU encodings.

	* lib/vixTools/vixTools.c: Impersonation tweaks.

	* modules/*/*/*: Reflect header file changes from elsewhere in the
	source code tree.

2008-03-11  Adar Dembo  <adar@vmware.com>

	* vm_version.h: Updated Tools version.

	* modules/vmblock/linux/*: Make vmblock build under 2.6.25-rc2.
	The dentry and mount objects have been moved out of struct
	nameidata and into the new struct path. Also, path_release() is
	now path_put().

	* modules/vmsync/linux/*: Make vmsync build under 2.6.25-rc2.
	The same changes were needed here as in vmblock above.

2008-03-10  Adar Dembo  <adar@vmware.com>

	* vm_version.h: Updated Tools version.

	* modules/vmhgfs/linux/*: Make vmhgfs build under 2.6.25-rc1.
	The iget() function has been removed and filesystems are now
	expected to implement it themselves using iget_locked().

2008-02-27  Elliot Lee  <elliot@vmware.com>

	* configure.ac, guestd/Makefile.am, toolbox/Makefile.am,
	vmware-user/Makefile.am: Allow passing custom LDFLAGS in to
	build process (patch by Mike Auty).

	* Resync with internal trunk (2008.02.27).

	* guestd/foundryToolsDaemon.c, lib/vixTools/vixTools.c,
	vmware-user/foundryToolsDaemon.c: Win9x compat changes.

	* guestd/toolsDaemon.c: Style fixes.

	* hgfsmounter/hgfsmounter.c: Bug fixes.

	* lib/dnd/dndLinux.c, lib/dnd/dndCommon.c: Move some code to the
	platform-independant file, some DnDv3 support.

	* lib/include/dnd.h, lib/include/dndInt.h: DnDv3 support.

	* lib/file/file.c, lib/file/fileIO.c, lib/file/fileIOPosix.c,
	lib/file/fileLockPrimitive.c, lib/file/filePosix.c,
	lib/include/file_extensions.h, lib/include/fileInt.h,
	lib/include/fileIO.h: Move functions around, Unicode fixes, misc
	fixes.

	* lib/foundryMsg/foundryPropertyListCommon.c: Error handling fixes.

	* lib/hgfsServer/*.c, lib/include/hgfs*.h,
	modules/freebsd/vmhgfs/*, modules/linux/vmhgfs/*: HGFS v3 support,
	updates to improve code re-use between the FreeBSD and MacOS X
	ports, and updates to make the Linux port build on 2.6.25-rc1 (but
	not rc2, yet).

	* lib/include/auth.h, lib/include/codeset.h,
	lib/include/hostinfo.h, lib/include/str.h, lib/include/unicode*.h,
	lib/include/vm_basic_types.h, lib/misc/hostname.c,
	lib/unicode/*.c, lib/user/hostinfoPosix.c: Unicode fixes.

	* lib/include/backdoor_def.h: Add a new command for use by the
	BIOS in checking the GuestOS against Darwin.

	* lib/include/dynarray.h, lib/misc/dynarray.c,
	lib/misc/Makefile.am, lib/misc/shared/Makefile.am: Add Dynarray
	implementation.

	* lib/include/bsdfmt.h, lib/include/bsd_output_int.h,
	lib/string/bsd_output_shared.c, lib/string/bs_vsnprintf.c,
	lib/string/bsd_vsnwprintf.c, lib/string/str.c: Rework built-in
	printf implementation, esp. for Unicode fixes.

	* lib/include/ghIntegration.h: Shuffle types around.

	* lib/include/loglevel_user.h, lib/include/unity.h,
	lib/syncDriver/syncDriverPosix.c, lib/user/util.c,
	toolbox/toolbox-gtk.c: Misc fixes.

	* lib/include/vmBackup.h, lib/vmBackupLib/scriptOps.c,
	lib/vmBackupLib/stateMachine.c, lib/vmBackupLib/vmBackupInt.h:
	Rework scripts for freeze & thaw operations.

	* lib/include/vm_product.h, lib/include/vm_version.h: Add new
	product defs (VMRC).

	* lib/include/vm_tools_version.h: Add ESX 3.5U1 product.

	* lib/include/vixCommands.h, lib/include/vix.h: Add new VIX
	commands and error code.

	* lib/include/win32util.h: Add misc Win32 utilities.

	* modules/*/*/*: Reflect header file changes from elsewhere in the
	source code tree.

2008-02-13  Adar Dembo  <adar@vmware.com>

	* Resync with internal trunk (2008.02.12).

	* configure.ac, lib/unityStub/*, lib/ghIntegrationStub/*,
	lib/Makefile.am, vmware-user/Makefile.am, vmware-user/vmware-user.c:
	Added lib/unityStub and lib/ghIntegrationStub. Unity and guest-host
	integration features for X11 guests are on the way.

	* configure.ac, guestd/Makefile.am, lib/fileUtf8/*,
	lib/vixTools/vixTools.c, vmare-user/Makefile.am: lib/file is now fully
	internationalized. Removed unneeded lib/fileUtf8.

	* foundryToolsDaemon.c: Fixed a leak of the sync driver handle.

	* guestd/toolsDaemon.c: Send guestd's "config directory" to the VMX for
	publishing.

	* hgfsmounter/hgfsmounter.c: Port to MacOS.

	* lib/dnd/*, lib/err/err.c, lib/file/*, lib/include/dnd*,
	lib/include/file*, lib/include/unicode*, lib/include/util.h,
	lib/unicode/*, lib/user/utilPosix.c: More Unicodification.

	* lib/file/file.c, lib/include/file.h: Added File_EnsureDirectory.

	* lib/foundryMsg/foundryMsg.c, lib/guestInfo/guestInfoServer.c,
	lib/misc/codeset.c, lib/misc/vmstdio.c,
	lib/SLPv2Parser/SLPv2MsgAssembler.c, lib/user/util.c: Removed some
	unneeded casts.

	* lib/foundryMsg/foundryThreads.c, lib/include/foundryThreads.h: Added
	FoundryThreads_Free.

	* lib/guestInfo/*, lib/include/guest_os.h, lib/include/guestInfo.h:
	Refactored GetSystemBitness. Removed osNames.h.

	* lib/hgfsServer/hgfsServerLinux.c: Modified MacOS alias resolution code
	so as not to mount volumes. Made HGFS query volume code more resilient
	to failures.

	* lib/include/backdoor_def.h: Added commands for VAssert.

	* lib/include/escape.h, lib/misc/escape.c: Escape_Do is no longer
	declared inline.

	* lib/include/hashTable.h, lib/misc/hashTable.c, lib/misc/Makefile.am,
	lib/misc/shared/Makefile.am: Renamed from hash.[ch].

	* lib/include/iovector.h, lib/include/vm_basic_types.h: Added
	SectorType definition.

	* lib/include/loglevel_user.h: Added additional log levels.

	* lib/include/msgfmt.h: Modified for use in VMKERNEL. Added
	MsgFmt_GetArgswithBuf.

	* lib/include/msg.h: Added Msg_AppendVob for ESX.

	* lib/include/stats_user*: Modified some preprocessing steps. Added
	SETUP_WANT_GETVAL to retrieve named stat counter values.

	* lib/include/str.h: Modified behavior Str_* family of functions for
	Windows.

	* lib/include/strutil.h, lib/strUtil/strutil.c: Removed Split, Grep,
	GrepFd, and GrepFree. Added EndsWith and DecimalStrToUint.

	* lib/include/syncWaitQ.h, lib/sync/*: Modified SyncWaitQ_Add and
	SyncWaitQ_Remove to use PollDevHandle fd types instead of int fd types.

	* lib/include/timeutil.h, lib/misc/timeutil.c: Added
	TimeUtil_GetLocalWindowsTimeZoneIndex and some helper functions.

	* lib/include/util.h, lib/user/utilPosix.c: Added Util_BumpNoFds.

	* lib/include/vixCommands.h: Added commands for device hotplug and
	remote debugging.

	* lib/include/vix.h, lib/include/vixOpenSource.h: Added some new errors
	and properties. Added more VM manipulation functions.

	* lib/include/vm_atomic.h: Comment cleanup and added VMKERNEL-specific
	calls for fencing.

	* lib/include/vm_basic_asm_x86_64.h: Added inline routines to save and
	restore ES1.

	* lib/include/vm_basic_types.h: Added some types and cleaned up a bit.

	* lib/include/vm_legal.h: Updated COPYRIGHT_YEARS.

	* lib/include/vm_product.h: Added hostd service name.

	* lib/include/x86cpuid.h: Cleaned up the file and added some definitions
	for Penryn processors.

	* lib/misc/codeset.c: Added new UTF-16 --> UTF-8 conversion routine.

	* lib/misc/util_misc.c, lib/user/util.c: Moved Util_GetCurrentThreadId
	and friends to util_misc.c.

	* lib/procMgr/procMgrPosix.c: Cleaned up some code and reworked
	asynchronous process execution so as to properly track the grandchild's
	pid instead of the child's pid.

	* lib/string/bsd*: Reorganized BSD formatter.

	* lib/string/str.c: Updated unit tests. Added some Windows corner case
	behavior for Str_Vsnwprintf.

	* lib/strUtil/strutil.c: Fixed some corner cases in existing functions
	that call strtoul.

	* lib/vixTools/vixTools.c: Changed signature of VixToolsImpersonateUser.
	Changed error code handling in a few places.

	* modules/freebsd/vmhgfs/*: Refactored a lot of code so that it can be
	safely reused within the MacOS vmhgfs module.

	* modules/*/*/kernelStubs*: Removed dead System_Uptime function.

	* modules/linux/*/compat_wait.h: Reworked VMW_HAVE_EPOLL macro. Added
	waitqueue helper macros for older kernels.

	* modules/linux/vmhgfs/file.c, modules/linux/vmhgfs/fsutil.*,
	modules/linux/vmhgfs/inode.c: Added HgfsSetUidGid function and used it
	to preserve uid/gid after creating a directory.

	* modules/linux/vmhgfs/vmhgfs_version.h: Bumped driver version.

	* modules/linux/vmsync/compat_workqueue.h: Basic implementation of
	work queues and delayed work queues (using taskqueues and timers) for
	older kernels.

	* modules/linux/vmsync/sync.c: Modified internal state to use new
	compatible work queue implementation.

	* modules/linux/vmxnet/compat_ioport.h,
	modules/linux/vmxnet/compat_netdevice.h,
	modules/linux/vmxnet/compat_pci.h,
	modules/linux/vmxnet/compat_skbuff.h,
	modules/linux/vmxnet/vmxnetInt.h: Added and refactored
	compatibility macros for use in vmxnet3 and vmci sockets modules.

	* modules/linux/vmxnet/vmxnet.c: Hide some kernel functions behind
	compatibility macros.

2008-01-23  Adar Dembo  <adar@vmware.com>

	* Resync with internal trunk (2008.01.08).

	* configure.ac, guestd/Makefile.am, hgfsclient/Makefile.am,
	lib/Makefile.am, toolbox/Makefile.am, vmware-user/Makefile.am:
	integrated lib/unicode for internationalizing strings.

	* guestd/main.c: Stopped using pgrep for finding existing instances
	of guestd. Removed ancient bandwidth test code.

	* guestd/toolsDaemon.c: Moved initial send of the guest's uptime from
	when guestd sends its version to when guestd registers its
	capabilities.

	* lib/file/*, lib/include/file*.h : Massive overhaul of lib/file to
	integrate the new unicode strings that are i18n-safe. Quite a bit of
	cleanup and refactoring as well.

	* lib/file/file.c: Addition of File_PrependToPath function.

	* lib/file/fileIOPosix.c: Addition of FileIO_SetExcludedFromTimeMachine
	and FileIO_PrivilegedPosixOpen functions.

	* lib/fileUTF8/fileUTF8Linux.c, lib/include/fileUTF8.h: Removal of some
	casts and addition of FileUTF8_GetSize function.

	* lib/foundryMsg/foundryMsg.c, lib/misc/vmstdio.c,
	lib/SLPv2Parser/SLPv2MsgAssembler.c: Addition of some casts.

	* lib/foundryMsg/foundryPropertyListCommon.c: Robustified some error
	cases.

	* lib/foundryMsg/vixTranslateErrOpenSource.c,
	lib/include/vixOpenSource.h: Added VIX_E_OUT_OF_MEMORY error code.
	Added Vix_TranslateCOMError function. ADded VIX_DEBUG macro.

	* lib/guestInfo/guestInfoServer.c, lib/include/guestInfo.h: Added some
	casts and refactored some functions. Also fixed a crash that hinders
	backwards compatibility.

	* lib/hgfs/cpNameUtil.c, lib/hgfs/cpNameUtilLinux.c,
	lib/hgfsBd/hgfsBd.c, lib/include/cpName.h, lib/include/cpNameLite.h,
	lib/include/escBitvector.h, lib/include/hgfsUtil.h,
	lib/message/messageBackdoor.c, lib/message/message.c,
	lib/message/messageStub.c, lib/rpcout/rpcout.c,
	modules/freebsd/vmhgfs/kernelStubs.h: Made safe for inclusion in MacOS
	kernel module code.

	* lib/include/backdoor.h: Refactored some type definitions.

	* lib/include/bsd_output_int.h, lib/include/safetime.h,
	lib/string/bsd_output_shared.c: Made safe for Win64 builds.

	* lib/include/dynbuf.h: Added DynBuf_AppendString function.

	* lib/include/err.h: Assorted cleanup.

	* lib/include/escape.h, lib/misc/escape.c: Converted Escape_Do to be
	inline. Some cleanup.

	* lib/include/guest_os.h: Assorted cleanup.

	* lib/include/hash.h, lib/misc/hash.c, lib/misc/Makefile.am,
	lib/misc/shared/Makefile.am: Added basic hash table implementation.

	* lib/include/hostinfo.h, lib/user/hostinfoPosix.c: Refactored and
	added several timekeeping functions.

	* lib/include/localconfig.h, lib/include/util_shared.h: Modified
	statements for include check.

	* lib/include/log.h: Changed the value of some macros when debugging.

	* lib/include/loglevel_defs.h: Refactoed some code, added macros for
	use in the VMM.

	* lib/include/loglevel_user.h: Added loglevels for some new components.

	* lib/include/msgfmt.h: Added new functions.

	* lib/include/msg.h: Added new Msg_LocalizeList function.

	* lib/include/netutil.h: Modified prototypes for two Windows-only
	functions.

	* lib/include/preference.h: Added new Preference_GetInt64 and
	Preference_SetFromString functions.

	* lib/include/strutil.h, lib/strUtil/strutil.c: Cleaned up and added
	some new functions.

	* lib/include/su.h: Cleanup.

	* lib/include/syncMutex.h, lib/sync/syncMutex.c: Added NetWare
	implementation of some synchronization primitives.

	* lib/include/unicode*, lib/unicode/*: New library for handling
	Unicode-aware strings.

	* lib/include/util.h, lib/user/util.c: Assorted refactoring and
	addition of some new functions, one related to backtracing.

	* lib/include/vixCommands.h: New commands for vprobes, replay, message
	dialogs, and others, plus cleanup of some existing commands.

	* lib/include/vm_assert.h: Added IMPLIES macro.

	* lib/include/vm_atomic.h, lib/include/vm_basic_asm.h: Refactored for
	safe Win64 builds.

	* lib/include/vm_basic_defs.h: Added compatibility code for __va_copy.

	* lib/include/vm_basic_types.h: Added FMTH for printing the value of
	handles. Set a new #pragma to ignore size_t truncation warnings on
	Windows. Added several other macros, as well as a ssize_t definition
	for some versions of BSD.

	* lib/include/vm_legal.h: Added more patents to the patent string.

	* lib/include/vm_product.h: Added new macros for some products.

	* lib/include/vm_tools_version.h: Added macros for certain older Tools
	versions and for PRODUCT_BUILD_NUMBER refactoring.

	* lib/include/vm_version.h: Tweaked some product expiration dates and
	versions. Refactored many uses of BUILD_NUMBER to PRODUCT_BUILD_NUMBER.

	* lib/include/x86cpuid.h: Tweaked definition of RDTSCP flag. Refactored
	BIT_MASK macro to VMW_BIT_MASK.

	* lib/misc/base64.c: Modified calling contract for Base64_EasyEncode.

	* lib/misc/codeset.c: Tweaked casts and preprocessor conditioning.

	* lib/misc/idLinux.c: Added IdAuthCreateWithFork and reworked several
	other functions to work around a bug in Apple's detection of GUI
	processes.

	* lib/misc/util_misc.c: Moved W32Util_GetLongPathName and
	W32UTil_LookupSidForAccount elsewhere.

	* lib/rpcin/rpcin.c: Addition of a ping GuestRPC callback.

	* lib/string/str.c: Removed a comment.

	* lib/sync/syncWaitQPosix.c: Added code to disable a workaround for a
	MacOS bug when appropriate (it was fixed in Leopard).

	* lib/vixTools/vixTools.c: Refactored some code, added code to modify
	the guest's networking configuration, added some casts, and added
	code to prevent renaming a file to itself.

	* modules/freebsd/*/Makefile, modules/linux/*/Makefile.normal: Set a
	make variable so the module file will be build in the parent directory.
	Removed some unused rules.

	* modules/freebsd/vmhgfs/kernelStubsBSD.c,
	modules/linux/vmhgfs/kernelStubsLinux.c: Removed unused function.

	* modules/linux/*/include/driver-config.h: Added check to prevent
	uintptr_t from being declared twice.

	* modules/linux/vmblock/linux/filesystem.c,
	modules/linux/vmblock/Makefile.kernel: Added check for newer kernels
	where the slab allocator's constructor function expects three
	arguments. Makes it work with 2.6.25-rc1 (but not rc2, yet).

	* modules/linux/vmblock/linux/vmblock_version.h: Bumped module version.

	* modules/linux/vmhgfs/filesystem.c, modules/linux/vmhgfs/inode.c,
	modules/linux/vmhgfs/module.h, modules/linux/vmhgfs/page.c: Added
	support for writeback caching in conformant kernels.

	* modules/linux/vmhgfs/vmhgfs_version.h: Bumped module version.

	* modules/linux/vmxnet/vmxnetInt.h: Renamed a type and removed the
	inclusion of unnecessary headers. Pruned said headers from codebase.

2007-11-15  Elliot Lee  <elliot@vmware.com>

	* Bandsaw release (2007.11.15).

	* configure.ac: Handle building modules for multiple OS's. Improve
	X detection to allow building --without-x. Improve Gtk+
	detection. Detect libdnet on Solaris. Detect which -Wwarning flags
	the compiler can handle.

	* vmware-user/foreignVMToolsNetworking.c, lib/vixTools/vixTools.c,
	guestd/foreignVMToolsNetworking.c, lib/include/netutil.h,
	lib/include/guestInfo.h, lib/netUtil/netUtilLinux.c,
	lib/include/guestInfoInt.h, lib/guestInfo/guestInfoPosix.c,
	lib/guestInfo/guestInfoServer.c: Move to new NicInfo structures.

	* vmware-user/foundryToolsDaemon.c, guestd/foundryToolsDaemon.c:
	Make sure requestMsg is not NULL before looking inside it.

	* guestd/main.c: Cleanup of HGFS pserver and mounting code. Check
	for some type of signal when sending an RPC.

	* guestd/toolsDaemon.c, vmware-user/resolution.c: Have the guest
	tell the host whether screen resolution changes should be sent,
	instead of having the host guess it based on the OS type set in
	the .vmx file.  Better timeout checking to avoid problems when
	host & guest time diverge.

	* hgfsmounter/hgfsmounter.c: FreeBSD support. Fixes to compile on
	old systems.

	* lib/backdoor/backdoor.c: Tweak for FreeBSD kernel modules.

	* lib/include/mntinfo.h, lib/dnd/dndLinux.c,
	lib/wiper/wiperPosix.c, lib/syncDriver/syncDriverPosix.c: Fixes to
	compile on new systems w/gcc 4.2.

	* lib/err/err.c, lib/err/errPosix.c, lib/err/Makefile.am: Move
	Err_Errno2String function into POSIX-specific source file.

	* lib/file/fileIOPosix.c: Handle EDQUOT if applicable. Fixes to
	compile on new systems where SYS__llseek may not be
	available. Better reporting of errors, by translating errno into
	FILEIO_* error codes.

	* lib/file/fileLockPosix.c: Fixes to compile on old systems. Add a
	bunch of functions to the FileLock* API.

	* lib/file/fileLockPrimitive.c, lib/include/fileInt.h: Bunch of
	file locking cleanups and bug fixes.

	* lib/file/filePosix.c: Bunch of MacOS-related fixes. Add
	File_GetTimes(), FilePosixGetParent(), FilePosixGetBlockDevice(),
	etc.

	* lib/fileUtf8/fileUTF8Linux.c: Add FileUTF8_GetTimes() function.

	* lib/foundry/foundryMsg.c, lib/include/vixCommands.h: Add
	VIX_USER_CREDENTIAL_HOST_CONFIG_HASHED_SECRET credential type, and
	a bunch of VIX commands relating to record-replay.

	* lib/foundryMsg/vixTranslateErrOpenSource.c: Translate a couple
	more error codes.

	* lib/guestInfo/guestInfoPosix.c, lib/guestInfo/Makefile.am: Use
	libdnet on Solaris to retrieve networking info.

	* lib/hgfs/cpNameUtil.c, lib/hgfs/cpNameUtilInt.h,
	lib/hgfs/cpNameUtilLinux.c: Couple more CPName <-> UTF8 conversion
	routines. Some MacOS changes as well.

	* lib/hgfs/hgfsUtil.c, lib/include/hgfs.h,
	modules/linux/vmhgfs/fsutil.c: Handle ENAMETOOLONG.

	* lib/hgfs/staticEscape.c, lib/hgfs/hgfsBd.c: Handle FreeBSD as
	well.

	* lib/hgfsServer/hgfsServer.c: Tie in the cpNameUtil UTF8 changes
	on MacOS.

	* lib/hgfsServer/hgfsServerLinux.c: Make the getdents() wrapper
	work on a wider range of Linux systems. Add "alias" resolution on
	MacOS, and tie in the cpNameUtil UTF8 changes on MacOS.

	* lib/hgfsServer/hgfsServerPolicyGuest.c: Handle FreeBSD.

	* lib/include/backdoor_def.h: Add BDOOR_CMD_LAZYTIMEREMULATION and
	BDOOR_CMD_BIOSBBS.

	* lib/include/str.h, lib/include/bsd_output.h,
	lib/include/bsd_output_int.h: include compat_stdarg.h, change
	vsnwprintf prototype, add HAVE_BSD_WPRINTF define, other compat
	fixups.

	* lib/include/cpNameUtil.h, lib/include/codeset.h,
	lib/misc/codeset.c: Changes to correspond to cpNameUtil UTF8
	changes.

	* lib/include/compat/compat_stdarg.h: New header for doing stdarg
	easily across platforms.

	* lib/include/cpName.h: FreeBSD fixes.

	* lib/include/dnd.h: Add Dnd_SetClipboard and Dnd_GetFileList().

	* lib/include/escBitvector.h: FreeBSD fixes.

	* lib/include/file.h, lib/include/fileUTF8.h: Add new MacOS
	routines and File_GetTimes/FileUTF8_GetTimes.

	* lib/include/hgfsProto.h: Explanation of the whole cpNameUtil and
	codeset UTF8 changes and how they tie in with HGFS.

	* lib/include/hgfsUtil.h: Random compatibility changes.

	* lib/include/loglevel_user.h: Add a few LOGLEVEL_VAR definitions.

	* lib/include/msg.h: s/USE_MSGFMT/NO_MSGFMT/

	* lib/include/osNames.h: Add Windows 2003 Datacenter Edition, and
	user-visible 64bit suffix macro.

	* lib/misc/random.c, lib/include/random.h: Add Random_Quick() and
	Random_QuickSeed() routines.

	* lib/misc/idLinux.c, lib/include/su.h: Add Id_AuthGetLocal() and
	Id_GetAuthExternal() routines, and compat fixes.

	* lib/misc/timeutil.c, lib/include/timeutil.h: Add
	TimeUtil_UnixTimeToNtTime() routine.

	* lib/include/util.h: Add a couple of MacOS routines.

	* lib/include/vmBackup.h, lib/vmBackupLib/stateMachine.c: add a
	couple of structure elements for Windows backup fixes.

	* lib/include/vm_basic_asm.h: fixes for reading TSC on 64-bit
	platforms.

	* lib/include/vm_basic_defs.h: Add other va_copy macros.

	* lib/include/vm_basic_types.h: Fixes for compiling on a wide
	range of systems.

	* lib/include/vm_legal.h: Change the PATENTS_STRING

	* lib/include/vm_product.h: Add "License Infrastructure" product.

	* lib/include/vm_tools_version.h: Change tools versions listed for
	various upcoming product releases.

	* lib/include/vm_version.h: Update the versions.

	* lib/include/x86cpuid.h: Define more CPU flags & fields, add new
	CPU models. Fixes for fully writable TSC detection.

	* lib/message/message.c, lib/message/messageBackdoor.c: Fixes for
	FreeBSD.

	* lib/misc/util_misc.c: Handle MacOS.

	* lib/rpcIn/rpcin.c: Fail a badly-formed RPC instead of
	ASSERT()'ing into oblivion.

	* lib/string/bsd_vsnprintf.c: Various fixes to synchronize with
	bsd_vsnwprintf.c.

	* lib/string/Makefile.am, lib/string/shared/Makefile.am,
	lib/string/str.c lib/string/bsd_vsnwprintf.c: New file to
	implement vsnwprintf() for compat purposes.

	* lib/vixTools/vixTools.c: New FileUTF8 routines.

	* Makefile.am, modules/Makefile.am: --without-x fixes, add
	xferlogs, move kernel module building into separate Makefile.am

	* modules/freebsd/*: Add FreeBSD kernel modules (vmblock, vmhgfs,
	vmmemctl, vmxnet).

	* modules/linux/*/include/compat_*.h,
	modules/linux/*/autoconf/cachector.c,
	modules/linux/*/autoconf/cachecreate.c,
	modules/linux/*/backdoor.c, modules/linux/vmhgfs/filesystem.c,
	modules/linux/vmhgfs/hgfsBd.c, lib/procMgr/procMgrPosix.c,
	lib/rpcOut/rpcout.c, lib/user/util.c, lib/vmCheck/vmcheck.c,
	libguestlib/Makefile.am, lib/deployPkg/runDeployPkgPosix.c,
	lib/include/vm_atomic.h: Compat fixes.

	* modules/linux/*/kernelStubs.h: Update for FreeBSD.

	* modules/linux/*/include/*.h, modules/linux/*/backdoor_def.h,
	modules/linux/*/cpName.h, modules/linux/*/hgfs.h,
	modules/linux/*/hgfsProto.h, modules/linux/*/hgfsUtil.[ch],
	modules/linux/*/kernelStubsLinux.c,
	modules/linux/*/messageBackdoor.c, modules/linux/*/message.c,
	modules/linux/*/rpcout.c, modules/linux/*/rpcin.c,
	modules/linux/*/staticEscape.c, modules/linux/*/vm_basic_asm.h,
	modules/linux/*/vm_basic_defs.h, modules/linux/*/vm_basic_types.h,
	modules/linux/*/x86cpuid.h, modules/linux/*/compat_*.h: Pull in
	updated files from main source tree.

	* modules/linux/*/Makefile.kernel: Remove CC_WARNINGS/CC_OPTS
	gunk.

	* modules/linux/*/README, modules/linux/*/Makefile.normal: Build
	foo.o driver by default on systems with VM_KBUILD=no.

	* modules/linux/vmhgfs/vmhgfs_version.h: Updated VMHGFS driver
	version.

	* modules/linux/vmmemctl/os.[ch],
	modules/linux/vmmemctl/vmballoon.c: Implement and use os_yield()
	to deprioritize the Balloon_Deallocate operation.

	* modules/linux/vmsync/*: New sync driver to make VM snapshots
	consistent.

	* modules/linux/vmxnet/bpf_meta.h: New file.

	* modules/linux/vmxnet/net_dist.h: Update NET_MAX_IMPL_PKT_OVHD
	value.

	* modules/linux/vmxnet/vm_device_version.h: Mention VMXNET3

	* modules/linux/vmxnet/vmkapi_status.h: Updated VMK_ERR codes.

	* modules/linux/vmxnet/vmkapi_types.h: Add VMK_CONST64(U) macros.

	* modules/linux/vmxnet/vmxnet2_def.h,
	modules/linux/vmxnet/vmnet_def.h,
	modules/linux/vmxnet/vmxnet_def.h,
	modules/linux/vmxnet/vmxnetInt.h, modules/linux/vmxnet/vmxnet.c:
	Add (optional) BPF support.

	* modules/linux/vmxnet/vmxnetInt.h, modules/linux/vmxnet/vmxnet.c:
	Add vmxnet_link_check to propagate device link status to netdev.

	* common/vm-support: New script to gather support info from a VM.

	* scripts/*/*-default: New poweron/poweroff/suspend/resume scripts
	for a VM. Add support for dropping user-provided scripts into a
	subdirectory.

	* toolbox/toolboxAbout.c: Eliminate warnings about unused
	variables.

	* toolbox/toolboxShrink.c: Update wording of message.

	* toolbox/copyPaste.c: Try cutting & pasting UTF8 text if we can.

	* xferlogs/*: New log transfer utility.

2007-10-26  Elliot Lee  <elliot@vmware.com>

	* Initial import of 2007.09.04-56574 code ("Axe" release).

	* Import 2007.10.08 snapshot, which includes patches to fix the
	--without-x flag, and compilation with gcc 4.2.
