commit 94abb05ae948eae31091a5bdcdd5d78e5e0192d1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Oct 2 17:48:35 2019 -0700

    Fix leaks in ListAliases and ListMappedAliases.

    The 'record' for each alias was being leaked.

commit 87589da5255d84efad0c50446246b2788eeab582
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 20 13:11:24 2019 -0700

    release notes for 11.0.0

commit 3c03fd5446ddd23979380fd2518f1f5c7c116dbd
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 20 11:08:35 2019 -0700

    update copyright header for lib/include/vmware/guestrpc/tclodefs.h

commit 99145edb39cc1e08b0848ea464fd17dca2ef2541
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Sep 20 11:07:16 2019 -0700

    update build number for release

commit 570ec94ccfc5bcf2a55d891ae8af2a24bb4e9caf
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Aug 29 17:14:39 2019 -0700

    Due to a quirk the way patches were generated, the 'coomon-agent' directory was not removed as intended, but just contained empty files

commit ae791f849d0e49d968a3ba068d6f421de936754d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Aug 23 13:33:55 2019 -0700

    tools.conf example: add vss.disableAppQuiescing

commit 867f9cf4fd9903e1e10e4d7f70fef3b7fdb2a5d3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 5 11:22:01 2019 -0700

    Enable the guest OS disk mapping feature as default.
    
    Enabling the OS disk mapping feature in VMware Tools 11.0.0 for
    Windows and Linux guests.

commit 782b42a5248cd01d37f0002aa7e30df4cc787129
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 5 11:22:01 2019 -0700

    Fix broken command: vmtoolsd --cmd info-get | info-set

commit d4922cad5f627b1dd3315f59ed8a5ce2f4767e83
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 5 11:22:01 2019 -0700

    [OVT] Update copyright year to 2019.
    
    A new version of VMware Tools 11.0.0 will be released in 2019.  All
    applicable files need to stamped with 2019 copyright year.

commit 5cb75e0a93b9531875e9e29515a0ea912ca3aca7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 5 11:22:00 2019 -0700

    Avoid freezing mount points for same device.
    
    Loopback device setup could cause a cyclic dependency
    between 2 mount points. In order to break the cycle,
    avoid freezing the mount points to the same device.
    
    This change also skips some system mount points for 'tmpfs'
    and 'cgroup' etc as those share the same device/FS name.
    This is fine because we can't quiese those mount points
    anyway (system mount points don't support quiescing).

commit 385dc97f645ccaa4a0550b53949715394a009fb6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 5 11:21:59 2019 -0700

    Add RpcChannel_SendOneRawPriv()
    
    Send privileged guest RPC "guestStore.connect" with it after the
    vmsvc RPC channel falls back to backdoor.

commit e385c90808d527bce41259796badba094ad62a77
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 5 11:21:59 2019 -0700

    Add an example configuration tools.conf file for tools
    
    This adds an example tools.conf file. Settings are shown in the
    file with default values, but commented out with documentation.

commit decb8769e31e88f23b16b7a6ff3a1545a6259abe
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 5 11:21:59 2019 -0700

    [TOOLS] Fix dnd text from Linux guest
    
    Gtk::Widget::drag_dest_find_target() returns different values from GDK_NONE
    on Gtk2 and Gtk3.
    
    On Gtk2, it returns an empty string. It matches the existing code.
    On Gtk3, it returns "NONE". The current logic breaks.
    
    To overcome this issue, use Gdk::AtomString::to_cpp_type(GDK_NONE) to
    replace the current empty string. This works on both Gtk2 and Gtk3.

commit 8d299b17ba81d47f7f561479a688ab1843f904c8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 5 11:21:59 2019 -0700

    Fix gcc 9.1 build error in vmblocktest.c
    
    GCC 9.1 in Ubuntu eoan (19.10) failed to build open-vm-tools:
    error: '__builtin_strncpy' specified bound 4096 equals destination
    size [-Werror=stringop-truncation]

commit e8d08518353295527e635f666c0d3146dcc698cb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Sat Jul 20 17:10:07 2019 -0700

    version 11.0.0

commit 82ef6f896c99212c9366e3e52d7767e86d9677c3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Sat Jul 20 17:03:42 2019 -0700

    Fix the memory leak in procMgr library.
    
    In a specific code path, procCmdAbsPath attribute is ovewritten
    with the new memory. This leads to a memory leak for the previously
    allocated memory.

commit 003ed9e082dd10c67aa022514ad0c662c7e1a6a4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Sat Jul 20 17:03:42 2019 -0700

    GuestInfo: fix memory leak in GuestInfoGetPrimaryIP()
    
    "ipstr" was not free'ed when it was not being used.

commit 3d60252dc25705841c4afb49e766be2bd7815acd
Author: Oliver Kurth <okurth@vmware.com>
Date:   Sat Jul 20 17:03:42 2019 -0700

    Avoid emitting a trailing comma in the GuestInfoSendDiskInfoV1 JSON RPC
    
    Although currently accepted by the JSON library that we are using
    in VMX, that superfluous comma is strictly invalid according to the
    JSON standard - ECMA-404.

commit f65edaec32d2e1c7c14d69f4f2af669805cfd4b4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Sat Jul 20 17:03:42 2019 -0700

    [Tools/dndcp] Fix two coverity issues reported by a customer.

commit 74fe39c2abac9da4d45188eec8b389be421f7c8f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Sat Jul 20 17:03:42 2019 -0700

    Add the SLEDGEHAMMER code name to the 11.0.0 release version defines.

commit 0c6ad5edceca60dc05eb9f3b1ee6ac42dc0455ef
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jul 3 14:28:56 2019 -0700

    Fix a Coverity issue reported in vgauth/serviceImpl/verify.c

commit 47c8f75e4516552615c070c6920633f7e8e572a0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jul 3 14:28:56 2019 -0700

    Fix process command name for special linux processes.
    
    While listing down the processes in a linux guest, the existing
    procMgr library reads /proc/<PID>/cmdline file and parses the
    content.  While reading this, an assumption is made that there is
    a null terminating character at the end of the file content.
    This holds true for most of the processes.  But for few special processes,
    the cmdline file doesn't have the terminating null character.
    
    Proper content from cmdline file:
    
    /usr/lib/systemd/systemd\0--switched-root\0--system\0--deserialize\021\0
    /usr/sbin/vmtoolsd\0
    sshd: root@pts/2\0\0\0
    
    Example cmdline file where NUL terminator is missing:
    
    avahi-daemon: running [linux.local]
    avahi-daemon: chroot helper

commit 2660d40ca4f5beca0ba3a4c68a66f8c7dcf77a67
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jul 3 14:28:56 2019 -0700

    Fix the command name for few linux processes.
    
    ProcMgr library publishes the 'command name' attribute for
    each process while listing down all the processes.  For doing this,
    the commandline is first parsed from /proc/<PID>/cmdline file
    and the part starting from the right-most '/' is considered as the
    command name.  This is OK only if we have an absolute path for the
    command binary.  Other wise, this may result in incorrect results.
    
    For example:
    sshd: root@pts/1
    gdm-session-worker [pam/gdm-autologin]
    
    Fixed the code to ignore the parsing if we do not have an absolute
    path.
    
    Note: There are two ways how the command name is retrieved for each
    process.
    
    1. /proc/<PID>/cmdline is parsed.
    
    If (1) fails for some reason, then
    
    2. /proc/<PID>/status is parsed.
    
    There is no issue with (2). This changeset fixes the parsing issue only
    with (1) approach mentioned above.

commit 7aaf580b14f44a994100ede098e0ced5d60ba484
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jul 3 14:28:56 2019 -0700

    Add support for NVMe disks; IDE and SATA disk devices in 3.x Linux kernels
    
    Support has been added for virtual disks attached to an NVMe
    controller.  The device "label" will provide the "nvme<n>" for the
    controller.  The disk unit is provided in the device "nsid" file.
    An earlier implementation (Linux 2.6 kernels) provided the unit
    number as the final digit group in the device node name.
    
    The Linux 3.x kernel has some differences in the layout of IDE and
    SATA disk devices in the sysfs filesystem.  The differences from the
    sysfs in a 2.6 Linux kernel are:
     - The IDE "class" file and SATA "class" and "label" files are in a
       different directory.
     - IDE controller and SATA device nodes begin with "ata" where "host"
       was used in earlier kernel sysfs filesystems.
    
    GuestInfoGetDevClass() has been modfied to check in two possible
    locations for the "class" file.   The directory located will also
    contain the "label" file for SCSI, SAS, and SATA disk devices.
    
    GuestInfoGetIdeSataDev() has been modified to search for either
    ata<n> or host<n> directories in the sysfs tree for the disk device.

commit 193a5f93d6678b2ebfec1cf365a84bfd8533650d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jul 3 14:26:55 2019 -0700

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

commit 2657373a9321ad4090af75d84beac00836170e27
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jul 3 14:26:55 2019 -0700

    Truncate oversize partition names
    
    Truncate disk partition names if they are too large, rather than just
    skipping all the disk information for the guest. Closes
    https://github.com/vmware/open-vm-tools/issues/346 .

commit 6b8ffb7199159ab3a306646bc572f6a83a8ce7f6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jul 3 14:26:55 2019 -0700

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

commit fe04b4263ae90af524fe51e124e206df737e974b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jul 3 14:26:55 2019 -0700

    Suppress possible NULL pointer deref in a debug message.

commit 130334ca6f1cf6d696b0fe36d54b83f1f7d7bc2e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jul 3 14:26:55 2019 -0700

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

commit ace8b9e3c13a0b320835d36f569d2c7e5c6513a7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jul 3 14:26:55 2019 -0700

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

commit eda7db540bb048ac406e6624786c300cb17968c2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jul 3 14:26:55 2019 -0700

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

commit 7b17b7265ad31f2ed3dc6d6d28c5a4caf4c12e5c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jul 3 14:26:55 2019 -0700

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

commit 59d4eda2fc89e43ac092d82866c42c9692ebca68
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jul 3 14:26:54 2019 -0700

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

commit 8fe237da4894488e9cb0fccdec1f0d8180998a24
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jul 3 14:26:54 2019 -0700

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

commit e266c0bb1879792f24b29d38af9f9f833475f228
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jul 3 14:26:54 2019 -0700

    Changes to common source files not directly applicable to open-vm-tools.
    
    Reduce malloc/free overheads in the VMX for HGFS over VMCI

commit 9c30be3448c743e51718480543142bf833ea553a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 17 11:41:38 2019 -0700

    copyPasteCompatX11.c code generating unnecessary Coverity warning
    
    This patch aims to fix an issue found by Coverity Scan.
    
    This issue is a False Positive, the outBuf is only freed in specific
    scenario, so there is no 'BAD FREE'.  But it's better to reconstruct the
    related code to clear the SCA error.

commit a72b4c2513b8faf4e5b08b085583a43b1b6149a1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 17 11:41:38 2019 -0700

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

commit 680c9d4a412a099efde6382a0a4e5f300bc4fc4e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 17 11:41:38 2019 -0700

    linuxDeployment.c: Suppress the telinit error if the first telinit commands
                       has made VM reboot.
    
    The code executes '/sbin/telinit 6' repeatedly to reboot VM.  VM will be
    rebooting if the telinit command executed successfully(exitcode==0).
    Observed the repeated telinit command might get error(exitcode==1) on some
    GOSes, ex: Ubuntu18.04, RHEL7.4/7.5 and Fedora 29.
    Observed no such error on older GOSes, ex: Ubuntu14.04, RHEL6.6
    
    The error telinit log is confusing, actually it does NOT mean customization
    failed.
    
    This change does NOT log telinit error, and returns deployPkg status to
    make sure the log is consistent with customization result when the first
    'telinit 6' succeeded but one of the following 'telinit 6' command failed.
    
    The following actions are unchanged with or without this change:
    1. log telinit error, stop loop and exit 127 if the first 'telinit 6' fails.
    2. repeatedly execute 'telinit 6' if previous one executed successfully
       (exitcode==0).

commit 37d8b16e2cc1a21919cb6974c2a87071a345e232
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 17 11:41:37 2019 -0700

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

commit 8c87c985179a7a152c9a36aa83edd2b02fc7894d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 17 11:41:37 2019 -0700

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

commit 9e1d3be7c075e8ca4c7ff07b8dadeab8a14953b3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 17 11:41:37 2019 -0700

    HgfsServer: Fix coverity issue - uninitialized variable "requestId"
    
    Fix coverity uninitialized variable "requestId" by zeroing it
    in HgfsServerGetRequest before passing to the request packet
    HgfsUnpackPacketParams extraction function which will use it
    in a log message.
    
    Also moved an assert useful for testing protocol changes which was
    incorrect in its placement.

commit d2213fb32a1357305e72cbd6856f5e5ea9e151da
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 17 11:41:37 2019 -0700

    Changes to common header files not applicable to open-vm-tools.
    
    Remove checks for GCC 4.1 in xsave, xrstor, etc. instructions

commit 83dbe8ed5bf6f9e770e22c670c5617bc93e48e55
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 17 11:41:37 2019 -0700

    Determine Linux OS disk devices associated with mounted filesystems.
    
    For each filesystem for which disk guestInfo is currently collected,
    determine the virtual hardware device being used.   This is currently
    represented as <cntrl class><cntrl #>:<device #>, eg. scsi0:0,
    scsi1:0, ide0:0 or sata1:4 and matches the virtual device label seen
    in VMX.
    
    A Linux logical volume based filesystem can reside on multiple disks.
    In order to handle LVMs, the disk devices for each filesystem are
    maintained as a variable array of disk device names.
    For Linux guests, disk device names are passed as a json array.

commit 9bfd01b26e7d22aa847d6282e9b814b05a41e80e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 17 11:41:37 2019 -0700

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

commit f456a5938662175b914ffcb53c6284835476268f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 17 11:41:37 2019 -0700

    Fix 'Using uninitialized value' issue reported by Coverity.
    
    * In a error code path, 'exitCode' variable is used without
      any initialization.  This issue was reported by the Coverity.
      Fixed it by initializing the 'exitCode' to -1.
    
    * While fixing this, moved the variables to the if block where
      they are acutally used.

commit 2b3de798522314545b00297f1ece86b223dbeb6f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 17 11:41:36 2019 -0700

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

commit 7cf4c83d4a0b580209184bb4d5ac6c26cd5734f4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 17 11:41:36 2019 -0700

    Fix leak in error path reported by Coverity.

commit 1b32002d84c1dbb6dbe34586c04b84d26224c5ee
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 17 11:41:36 2019 -0700

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

commit 5260daab25ee9afdd5267531516b45f5006d57d1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 17 11:41:36 2019 -0700

    Improvements for ProcMgr library.
    
    * This changeset fixes various issues related to ProcMgr library.
    
    == Retrieve the absolute path of the image for each process ==
    * When listing down the processes, it is useful to retrieve the
      absolute path of the process binary.
    
    === For Linux ===:
    * In /proc filesystem, /proc/{PID}/exe is a symlink to the binary
      and we can make use of it to figure out the absolute path.
    
    * If /proc/{PID}/exe is not a valid symlink, then the 'cmdline'
      is parsed and aboslute path is calculated accordingly.
    
    * Note: This changeset tries its best to figure out the absolute path.
      If it can't, then the attribute is set to NULL.
    
    == Misc issues fixed. ==
    === Linux ===
    * Fixed a memory leak with 'procCmdName' while looping through the
      /proc/ directory entries.
    
    * Fixed another memory leak with cmdLineTemp and cmdStatTemp variables
      while listing down the processes in linux guests.
    
    * In few cases, /proc/{PID}/cmdline file contains multiple NUL
      characters at the end.  In that case, the existing code converts them
      into 'whitespaces'. Fixed the code to chop of all the trailing
      whitespaces in the command line.

commit ffdf5a69fa3654dc3a16bf9951171290f48561b8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 17 11:41:35 2019 -0700

    Skip loading/unloading user profile for VMXI_HGFS_SEND_PACKET_COMMAND.
    
    This command is used repeatedly to transfer file to/from the guest.

commit e858e40d2beb08880e62ccac3f9dcf3661f3e093
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 17 11:41:35 2019 -0700

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

commit 653248aaff38309a1660f84a347b7eff70e64701
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 17 11:41:35 2019 -0700

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

commit 2ca144aceda2bae479f3b67eb0d60e4ef7e439dc
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 17 11:41:35 2019 -0700

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

commit 3583ad84072c618064dfea742faa763b5f8207f0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 17 11:41:35 2019 -0700

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

commit 4e06bc447106be090fefdb6ea057482152390d73
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 17 11:41:33 2019 -0700

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

commit be8b98cda2d3149966b73d91cc76e77bf19d8228
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 3 13:39:45 2019 -0700

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

commit 61c51b4e4ac091f066e5e0efa22cc39d00b05d6d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 3 13:39:45 2019 -0700

    Fix memory leak in SNEBuildHash function.
    
    In a specific code path, if a key already exists in the hashtable,
    the memory allocated for 'value' variable is not being freed.  This
    leads to a memory leak.  Fixed.

commit 0d5e8c618131e3899f3c30c91722e1df4e1162e9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 3 13:39:44 2019 -0700

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

commit f37292f0a8524783888d55f57fa30bb828e2408b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 3 13:39:44 2019 -0700

    Crash during File_WalkDirectoryNext
    
    In the rewrite of File_WalkDirectoryNext, a bug was introduced in the
    invalid Unicode path. Invalid Unicode occurs very rarely... and the
    bug finally turned up. Fix this... the bug is rather obvious.

commit 1749604dc3481d0cc670e97945b915821c1039d3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 3 13:39:44 2019 -0700

    Fix asianux identification.
    
    Add asianux to distroArray and change how asianux releases 7 and 8
    are identified.
    
    This came in as a pull request on github for open-vm-tools:
    https://github.com/vmware/open-vm-tools/pull/325 .  Apparently
    the OS identification in /etc/asianux-release changed with Asianux
    7, and as a result tools does not identify it correctly.

commit 19969734d2a64e52cccf8f04669b55ad13f9c61c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 3 13:39:44 2019 -0700

    Fallback to /proc/mounts.
    
    Use /proc/mounts on systems where /etc/mtab may not be there.
    This change is targeted for guestInfo reporting at the moment.

commit f78a6801a8ec0f549fc3aa3817215f91cf6607af
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 3 13:39:44 2019 -0700

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

commit e3f8ffec4a1de47cb62e4d8b2ba175a03da13246
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 3 13:39:44 2019 -0700

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

commit 70596395cf892d07321ddd9ee8f947c06973e565
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 3 13:39:44 2019 -0700

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

commit a652f6e7c2c14310e2f6f030660b73e48aeeba80
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 3 13:39:44 2019 -0700

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

commit c209a5619fa74f6b76171420c57fd65303331a0f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 3 13:39:44 2019 -0700

    Update to common source code; does not affect open-vm-tools.
    
    Allow an asyncWebSocket to connect through an existing socket descriptor
    
    Because Windows does not allow unprivileged processes to specify
    DSCP (formerly ToS) values on TCP traffic, in order to support
    DSCP for Blast WebSockets we must obtain a preconfigured socket
    descriptor from a privileged process and then build the WebSocket
    connection over that socket.
    
    This changeset extends the asyncWebSocket API by adding a Connect
    function that can accept and use an existing socket descriptor in
    addition to the usual collection of WebSocket Connect parameters.
    
    Because the asyncWebSocket is built over an asyncTCPSocket, this
    change ripples down into the asyncTCPSocket API which also gets a
    new Connect variant with a socket descriptor parameter.
    
    To avoid duplicating existing logic, the old Connect variants
    are modified to do their work by invoking the new API with
    a distinguished socket descriptor value of -1.        This value
    indicates that no existing socket descriptor is provided and
    that a new socket should be created and used for the connection.
    
    In this changeset, passing in an existing socket is supported
    only on the Windows platform.  The feature is not required on
    other platforms, where unprivileged processes are permitted to
    define DSCP values for their connections.  Attempting to create
    a connection over an existing socket on other platforms will
    result in a Connect failure.

commit 20e8a3d4213019202241d766ba3c7c660c4b74c2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 3 13:39:44 2019 -0700

    Round out Log functions to all levels
    
    Logs would be measurably more useful for debugging if the available
    levels were used correctly and consistently. As a step towards
    encouraging such use, define Log_Warning() and Log_Info() as synonyms
    for Warning() and Log() (which, for historical reasons, are not
    declared in log.h). Also remove all the conflicting private definitions.

commit e45c4e3da624187d83f25681cf25b67ae059b6ed
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 3 13:39:44 2019 -0700

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

commit 94ffa684475ea998347b4c6e25626d099eb8315c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 3 13:39:44 2019 -0700

    Linux DeployPkg configurable timeout.
    
    Update to descriptive comments for function DeployPkg_SetProcessTimeout().

commit 4bd043870ec94332aa8b3794449a2144847cad33
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Jun 3 13:39:44 2019 -0700

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

commit 46cb6aa361cc8b1d287e3b9b77bf86819b4b1fc5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed May 22 13:09:37 2019 -0700

    Fix [RH Covscan] Coverity reported memory leaks in toolboxcmd-stat.c.

commit d0f0af3e62d065492b29791556c39c27eb97c751
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed May 22 13:09:37 2019 -0700

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

commit 873db0841a17a530cabe6b6e6e473647da685c17
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed May 22 13:09:37 2019 -0700

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

commit 403dc83d2040d386b2c6c04756b289f277657e41
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed May 22 13:09:37 2019 -0700

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

commit af0a4979c7bcaba6a913e686609f99c1245db384
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed May 22 13:09:37 2019 -0700

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

commit 7c1e69708bc3bbdbf9dc66b039ab40f9767b29c1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed May 22 13:09:37 2019 -0700

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

commit da3efa69411c5fe8897e6295927dc4b8eacaff04
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed May 22 13:09:36 2019 -0700

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

commit 8017efa7e941561274088d27e32883f6c1965abf
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed May 22 13:09:36 2019 -0700

    Pick up filesystem (fsType) name for Linux disks.
    
    Building upon the OS Volume Disk Mapping changes added for Windows
    guests, pick up and propogate the filesystem type for Linux disks.
    Move fsType related code and declaration out of the _WIN32 specific
    source code.
    
    Diskwiper code (for Linux) modified to pass along filesystem type
    obtained from the MNTINFO structure from the non-Windows guest.
    Also passing along the mount point for device-based mapping to be done
    in the guestInfo plugin.

commit 82d42ead6fc14eed2bc1670352f5fb8f62413230
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed May 22 13:09:35 2019 -0700

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

commit 744fe0bec43f7e242f1353c767c613180512000d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed May 8 15:27:20 2019 -0700

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

commit 5b0e339cde98dce03ec5046c04ded329f61dc5ef
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed May 8 15:27:20 2019 -0700

    Fix the 'procCmdName' attribute of process information.
    
    * When listing down the processes, /proc/{PID}/cmdline file is read
    and parsed to figure out the command name.  While doing this parsing,
    the terminating NUL character is not parsed.  Due to this, if any
    process doesn't have any command line arguments, the 'command name' is
    retrieved as NULL.
    
    Note: This issue doesn't happen if the cmdLine has any arguments.
    
    Ex:
    /usr/bin/vmtoolsd -> 'cmdName' is retrieved as NULL
    /usr/bin/vmtoolsd -n vmusr -> 'cmdName' is retrieved properly as 'vmtoolsd'
    
    * Fixed the code to include the trailing NUL character also while parsing.

commit 7b096ae277428efd8f550c1bbb35e98bb0cdf565
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed May 8 15:27:20 2019 -0700

    Hgfs fuse Client: fix max name length setting for statvfs
    
    Detected internally with Fedora 29 and reported in
       https://github.com/vmware/open-vm-tools/issues/337,
    the statvfs structure must provide a valid max name length field.  Setting
    to NAME_MAX.  This allows the GUI Files application to create new folders
    and rename existing ones correctly.

commit 9876844113a4f6b538f131d61b61c994264f7caf
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed May 8 15:27:19 2019 -0700

    Plumb through filesystemType
    
    Implement the filesystemType property in the vim.vm.guestInfo.DiskInfo.

commit 79c7f28781fc38eb2e2ec691c907822dd1259bc4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed May 8 15:27:19 2019 -0700

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

commit 000856aea0bd78c581888c3e3771cf79c6fdb7e9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed May 8 15:27:19 2019 -0700

    Fix copy/paste on Ubuntu 19.04 guest
    
    Ubuntu 19.04 chooses Nautilus 3.32 as the default file browser.  From
    3.30, Nautilus checks mime type when pasting files from the clipboard,
    and the target type is also changed to UTF8_STRING instead of
    x-special/gnome-copied-files.  To support Ubuntu 19.04, apply this
    change into our guest code.

commit 7bbb1521360bd140a56d1fbf6a9663d297277901
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed May 8 15:27:19 2019 -0700

    Add a comment in vmci_sockets.h about why a file handle is "leaked"
    
    Let's add a comment in vmci_sockets.h explaining why we intentionally "leak"
    a file handle in VMCISock_GetAFValueFd.
    
    fd is intentionally left open when outFd is NULL. Closing it
    will break applications running on Linux without a fixed AF for
    vSockets. In such cases, the fd will be closed during cleanup when
    the application exits.

commit a5823224051da0318facf10e0732baa9f55334fc
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed May 8 15:27:19 2019 -0700

    Fix a trivial Coverity-reported memory leak.
    
    If AuthLoadPAM doesn't find all the needed symbols from the pam
    library, then dlclose the library, as is already done for
    the same-named funtion in bora/lib/auth/authPosix.c.

commit 47766e511be85410f5afc0bf8b0f05776fb66ece
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed May 8 15:27:19 2019 -0700

    Record Tools version 10.3.11 as Hot Patch for PR 2328829

commit 801df14f0e2b32aea17771bbd33d65140ff2361c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed May 8 15:27:19 2019 -0700

    Fix Coverity-reported double memory free errors.
    
    Similar double memory free errors were reported in each of two
    functions, VixToolsListAuthAliases and VixToolsListMappedAliases.
    The fixes for each function are similar: be consistent in using
    tmpBuf2 (renamed tmpBuf) as the pointer to the overall buffer being
    computed and tmpBuf (renamed nextBuf) as the "next" version of the
    buffer.  Specifically, in the computation of recordBuf following exit
    from the for loop, use the variable formerly known as tmpBuf2 rather
    than the one formerly known as tmpBuf.
    
    The variables were renamed in an attempt to distinguish more clearly
    between them and how they are used.  Also, with these changes in
    place, it's evident that there's no need to free nextBuf in the abort
    case and as a result its scope can be limited.

commit 2031724154177a3f5ce28d3c608709c7ad6153dc
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed May 8 15:27:19 2019 -0700

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

commit 8634350c330318eaf8f333c49f405e20b71ca813
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed May 8 15:27:19 2019 -0700

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

commit 2bbd56da4314856dfc1a8fed2db5b55cd9ef8860
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed May 8 15:27:18 2019 -0700

    Fixes for few leaks and improved error handling.
    
    Fix a memory leak detected by coverity scan. It is not critical,
    but it is real in an error case when there is no end mark. While
    fixing it, also enhanced code to handle different error cases
    properly because we would want valid content to be decoded even
    when there are invalid marks in the log file. Invalid log marks
    are possible when vmware.log gets rotated in the middle of guest
    logging.
    
    While verifying the fix using valgrind, found a couple of more
    leaks in panic and warning stubs. Addressed those as well.

commit 544cf1363c78d1d8c75e57d560b3650b5f667c64
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed May 8 15:27:18 2019 -0700

    Fix a trivial Coverity-reported memory leak in vgauth/cli/main.c.
    
    Call Pref_Shutdown to close the PrefHandle.

commit 4a2c4645a363c705e66cdb81847f579d8ff30e04
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Apr 30 13:24:25 2019 -0700

    Add garbage collection for vix process handles.
    
    This closely follows the model used for hgfs session cleanup.

commit ea2ee4789fd0db5451752ea98af55a3c6b47f1d2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Apr 30 13:24:25 2019 -0700

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

commit 4ee0255f2f7a32a76095de8c02a869e78f7ec765
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Apr 30 13:24:25 2019 -0700

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

commit 9e6e3afa5b5c3dc11c7aa79454ca4c8184c87bdf
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Apr 30 13:24:25 2019 -0700

    Fix a memory leak in the unicode library.
    
    Ensure that allocated strings are freed before returning a failure.
    
    The ASSERTs have never been known to fire; a warning in a obj
    build will help with debugging. The warning should "never" happen.

commit d1de801b4b490aeecd982f19274e46485f156f79
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Apr 30 13:24:25 2019 -0700

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

commit b2a6fdafed0bef27a77d549e4ffbed9a09b9f0bd
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Apr 30 13:24:25 2019 -0700

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

commit a63fe3472895c9394ee8c3f2d0d2a496c3ccab6f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Apr 30 13:24:25 2019 -0700

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

commit 9bec96154c23462f2c6f80dd660f41bba38d4614
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Apr 30 13:24:25 2019 -0700

    Provide a shutdown function for users of the unicode library to free memory
    allocated by Unicode_Init().
    
    Most applications using the unicode library do not free related memory
    since they are about to terminate.  A Unicode_Shutdown() function is
    provided which will explicitly free the memory allocated by Unicode_Init().

commit 5614d61a2b8353cd48095210afbcc89f66228ae7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Apr 30 13:24:25 2019 -0700

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

commit 4ae954db584b7e3287a97f44d0eeb96d09ba2c68
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Apr 30 13:24:25 2019 -0700

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

commit 35570e72d3833b73db653c89c84223c959856467
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Apr 30 13:24:25 2019 -0700

    Changes to common source files not directly applicable to open-vm-tools.
    
    Added the function Random_FastStream64() to provide a 64-bit random number
    if needed.

commit e89c751f0045f163c468c49b71db70478581c85c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Apr 30 13:24:25 2019 -0700

    vm_basic_defs.h: include stddef.h
    
    The stddef.h header has existed since C89. It includes interesting
    things like an offsetof definition, and a definition of NULL.
    
    Let's stop re-inventing this long-standardized header. Except
    in vmkernel, where bogus __FreeBSD__ values break gcc's <stddef.h>.
    (Detail: vmkernel networking likes to define __FreeBSD__ to empty
    or 1, whereas ABI requires "FreeBSD major version".
    
    This change is deliberately minimal as touching headers included
    everywhere is inherently fragile. Further cleanups (like removing
    vmw_offsetof) can be done in follow-up changes.
    
    The stddef.h header is a 'freestanding' header, which means it's
    part of the language and not a "system" header. It is thus safe
    to include (modulo vmkernel-networking problem above).

commit 642d7a61db13969f9fb654ad1cc0d879bf680612
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Apr 30 13:24:25 2019 -0700

    Fix Coverity reported issues in i18n.c code - VMTools & VGAuth
    
    bora-vmsoft/apps/vmtoolsbib/i18n.c: MsgLoadCatalog()
    - Coverity reported memory leak when an error is encountered parsing a
      line from a message catalog.
    - Second memory leak on error missed.
    
    bora-vmsoft/vgauth/common/i18n.c: MsgLoadCatalog()
    - Coverity reported some dead code.
    - Missed reporting memory leak when error is encountered parsing a
      line from a message catalog.

commit 0f7b4b275aaf20bebf8d4739cf283fade05c3dcb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Apr 30 13:24:25 2019 -0700

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

commit 9e0ccaa3bf2805674fd882362427aa2d3376a3a8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Apr 30 13:24:24 2019 -0700

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

commit 3cf1df758ba64cb6aebe81bf3a430ad536221c19
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Apr 30 13:24:24 2019 -0700

    Toolsd uses log.text RPC only when the useLogTextRpc is set to TRUE.
    
    This allows the tools installer to start use the log.text RPC without
    worrying about that toolsd has not completed the work of scrubbing its logs
    for security and privacy issues.

commit 1b755d3e619ed40d8750532f10af5a1df6de6cda
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Apr 30 13:24:24 2019 -0700

    Fix memory leak in SNEBuildHash function.
    
    In a specific code path of the SNEBuildHash function, when the
    environment variable is of the format VMWARE_*=[0|1], the value
    is not freed.  Fixed the memory leak.

commit 0957e9c46476f8eab435576e7094b125e102f6ce
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Apr 30 13:24:24 2019 -0700

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

commit bbefe8051a56b3cf834bf71c8f55fdfd88802b9d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 15 11:33:00 2019 -0700

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

commit a0b825b2251bf9d30fb29d5deb1d269ec361428c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 15 11:33:00 2019 -0700

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

commit abd87bf17c9869900dad292a458b871de90c4c7d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 15 11:33:00 2019 -0700

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

commit 85bc2e71dd7a855d3c533965859c1756deecc314
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 15 11:33:00 2019 -0700

    Fix minor leak in FileRotateByRenumber - Coverity scan

commit 82169f198925c9aa27bd04fd665eac67396adbe7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 15 11:33:00 2019 -0700

    Fix a leak if VGAuth setup fails.  Coverity issue

commit 555f28c7d07161a5bcd0a90fe46869bc6be4ba21
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 15 11:33:00 2019 -0700

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

commit b9993b990ea7dc077c6e625137802492245fb31b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 15 11:33:00 2019 -0700

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

commit ca4be3d1bcb1d184eafb2c576dd7a127a95628fc
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 15 11:33:00 2019 -0700

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

commit e6d24a37cdcd88624f66ad86f161e8576e7c6ec0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 15 11:32:59 2019 -0700

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

commit da8c476be54bcd94c6b4f15a013dd02419b4ec29
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 15 11:32:59 2019 -0700

    Changes to common source files not directly applicable to open-vm-tools.
    
    Add an error code to a debug message.

commit 8eba31ddbf50a194acdd3eb30935a1fb3895bd50
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 15 11:32:59 2019 -0700

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

commit b4a0d4c8137cdfbee073b456c71b731fa21e6ead
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 15 11:32:59 2019 -0700

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

commit e53f942615313e5d209f49d9c4da4227671c38d8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 15 11:32:59 2019 -0700

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

commit c0ec4f8294ec6428ee2a7f7284b37f79f4661bf3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 15 11:32:59 2019 -0700

    Add a DynBuf_InitWithString() function to the dynamic buffer routines.

commit 2dc55af11451712b05a0c85a9c2ba1e5619b4841
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 15 11:32:59 2019 -0700

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

commit f35313969af9bd2815709930f054171d7ebbcbc9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 15 11:32:58 2019 -0700

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

commit c864f9e015a25864b952210796458e77c1f5726f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 15 11:32:58 2019 -0700

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

commit 6de2df2c43c412c048f666277eaa48d8bb0c0321
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Apr 10 14:14:57 2019 -0700

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

commit 306f0f7b507486795c0d726288ceb7145dcf3c00
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Apr 10 14:14:57 2019 -0700

    Common header file change no applicable to open-vm-tools.

commit 6219e245c5e42479f4aef36ab8ee49db3c368f83
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Apr 10 14:14:57 2019 -0700

    Remove use of "-Wno-address-of-packed-member" option for OVT builds on FBSD
    
    With the HGFS source code refactor to avoid taking the address of a
    packed structure memberuse of "-Wno-address-of-packed-member"
    is no longer needed to build OVT on FBSD 11.x and FBSD 12.x.

commit 8b2bbbd8c2b647592a2f444a678fe93552fb0d22
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Apr 10 14:14:56 2019 -0700

    Add a 64 bit pseudo random number generator
    
    This change adds a 64 bit pseudo random number generator to the public
    library by calling the existing 32 bit Random_Fast function twice.
    Since the period of Random_Fast is 2^64, this should be sufficient.

commit 5f9bd0c6a39a266854fad680d2251c024c309425
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Apr 10 14:14:56 2019 -0700

    Remove some "always TRUE" comparisons reported by clang 6.0 on FBSD.
    
    A recent refactoring of HGFS fuse code to avoid taking the address of
    a field in a packed structure introduced a comparision of an array
    address != NULL which will always evaluate to "true".  Removing the
    unnecessary "if" statements.

commit 67b66d0ff13324413deac6c522bd382ee450125e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Apr 10 14:14:56 2019 -0700

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

commit 86bf8de08dbb28e8902411b8a9bc0e64f972f74d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Apr 10 14:14:56 2019 -0700

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

commit 3bc7907533c45544fcfb24906a0e4b7de61718e7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Apr 10 14:14:55 2019 -0700

    Changes to common header files not applilcable to open-vm-tools.

commit 6576ad0d7b28bd1ddab2fce8a0f34695aa57a774
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Apr 10 14:14:55 2019 -0700

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

commit 8c69b930a826aad87c692d516fd77d1a4cbed0fb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Apr 10 14:14:55 2019 -0700

    DnD Phase II] - Avoid potential memory overflow.
    
    In the case when dragging a format whose size is exactly the same as the
    size threshold and plain text is provided, the plain text can't be added.
    Current logic does not handle this case.  Instead it will result in a
    large unsigned number (0-1 = 0xffff_ffff) of bytes to be allocated to
    store plain text which causes memory overflow.
    
    Just return in the case that no more size left to add plain text or the
    plain text is empty.

commit 685aa3d0879aabde450ba0d6c79d256d6abaf3f5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Apr 10 14:14:55 2019 -0700

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

commit 71b41229ffe1f31711b35145ee1ab0bfbb763295
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Apr 10 14:14:54 2019 -0700

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

commit f2eb555cf6e9f8c779daf1dc9c2f7aff383d105a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Apr 10 14:14:54 2019 -0700

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

commit 8046af84ee4aa1d271af4c1d2379fb3d88dba3ac
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Apr 10 14:14:54 2019 -0700

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

commit cf05c47b06af90a7bb7c5d561fb425ba2ebc0b47
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Apr 10 14:14:54 2019 -0700

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

commit 5a6ee8f90b90f42d24de1561ee94855c576933f3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Apr 10 14:14:53 2019 -0700

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

commit d759ae5ecfcc6f1069decdb2511ec32bf12a1663
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Apr 10 14:14:53 2019 -0700

    Asyncsocket in low latency send mode may write into freed memory
    
    Blast service encounters access violation exception during scale tests
    in AsyncTCPSocketSend() at bora\lib\asyncsocket\asyncsocket.c.
    
    Root cause is asock refcount is not incremented before the inline
    invocation of AsyncTCPSocketSendCallback() in the low latency send
    mode and asock is accessed right after this invocation to decrement
    inLowLatencySendCb counter. AsyncTCPSocketSendCallback() on error
    would invoke error handler which in turn could close the asock
    leading to freeing of asock.
    
    Issue wouldn't happen if AsyncWebSocket impl guarded all of its
    transport->send(transport) calls with AsyncSocketAddRef(transport)
    and AsyncSocketRelease(transport) but isn't the case currently.
    
    Fix is to add and release asock reference around the inline
    invocation of AsyncTCPSocketSendCallback().

commit 325e244951790d7a848281fdb0236b0f6ee26996
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Apr 10 14:14:53 2019 -0700

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

commit b90344ea3696506c7d2a8022c340b6aafb6f6a91
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Apr 10 14:14:52 2019 -0700

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

commit 13f457aa737d8bca27f09862cf2a45df8f4a425b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Apr 10 14:14:52 2019 -0700

    InitiateFileTransferToGuest fails when uploading file to root directory
    
    File upload to '/' on Linux fails the directory exists check.
    This is caused by the file dirname being an empty string when parsed from
    the guest file path name per the documented behavior of File_GetPathName.
    
    The caller of File_GetPathName needs to handle the expected empty dirname
    string when dealing with file path in the root ('/') filesystem on Linux.
    
    Proposed fix is to replace the dirname string with the root path ('/') when:
    A. dirname obtained from File_GetPathName call is an empty string AND
    B. the original file path name starts with the path separator ('/') on
       Linux (or *nix like) GOSes
    
    This allows for the directory checks to inspect the root folder before
    proceeding with the file transfer.

commit 022121ce185662c05b3e1bf7166500f4f0f72bb2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Apr 10 14:14:51 2019 -0700

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

commit 3de5e45099ae309b59f371e1d71c88c80815f92d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Apr 10 14:14:51 2019 -0700

    Backing out the previous change to vixTools.c
    
    As the code committed was not the one reviewed but another version of the
    fix under exploration, reverting the previous change.

commit e38e881a04cdf1684913c0e65596f4965e8d0c32
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Apr 10 14:14:51 2019 -0700

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

commit f682261e7997aa440523af63369e4b99e4823af7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Apr 10 14:14:49 2019 -0700

    InitiateFileTransferToGuest fails when uploading file to root directory
    
    File upload to '/' on Linux fails the directory exists check.
    This is caused by the file dirname being an empty string when parsed from the guest file path name per the documented behavior of File_GetPathName.
    
    The caller of File_GetPathName needs to handle the expected empty dirname string when dealing with file path in the root ('/') filesystem on Linux.
    
    Proposed fix is to replace the dirname string with the root path ('/') when:
    A. dirname obtained from File_GetPathName call is an empty string AND
    B. the original file path name starts with the path separator ('/') on Linux (or *nix like) GOSes
    
    This allows for the directory checks to inspect the root folder before proceedeing with the file transfer.

commit fcb7bb71a30f740b2d4bcfb8ae82733d044e6c00
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Mar 28 12:43:00 2019 -0700

    Make building without ICU the default for Linux.

commit bd84c8a35c7aedb2638bba087bc1756cfb9ccf9d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Mar 28 12:43:00 2019 -0700

    Query disks for UUID
    
    As part of identifying a guest disk so it can be associated with a vmdk,
    query its serial number, which is the same as the vmdk's ddb.uuid

commit 076e7e10f24b53fcbd7b21d95ee4763f5f527e45
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Mar 28 12:43:00 2019 -0700

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

commit b9939819756514c7ebe71059e0323cde8bb44c68
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Mar 28 12:43:00 2019 -0700

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

commit 59a7e9e1c5e8e6883740ec43371cbe7076ee6bc0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Mar 28 12:43:00 2019 -0700

    Bug fix for DnD performance tuning for Mac and Windows clients; not
    directly applicable to open-vm-tools.

commit 176aa26ae63050e7d10c8413230c566069cb06d9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Mar 28 12:43:00 2019 -0700

    Common source file changes not applicable to open-vm-tools.
    
    Security fix for dll load paths in Tools and vgauth.

commit f2e134e40bd7fab478f4f1545db8f09b39e2d3dc
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Mar 28 12:43:00 2019 -0700

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

commit c65bb4057bbd8d4b96f8b1bedfc273669357cfd8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Mar 28 12:43:00 2019 -0700

    GOS Table: Add Linux 5.x
    
    Linux 5.x is here!  Add it to our supported guests list.

commit 9f05b0bca42039eb6de0f16441d3a6edc4093264
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Mar 28 12:43:00 2019 -0700

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

commit d28bb53aeeb425502de7a90175482c5abf16b8ee
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Mar 28 12:43:00 2019 -0700

    Remove the /etc/security directory from the guest vm-support bundle.
    
    This directory contains sensitive guest side data that we should not
    expose to the host side.
    
    Although running the vm-support requires the root privilege in the guest,
    the guest admin might not be aware of the ramification of running the script.
    Therefore, better be cautious.
    
    No file from the /etc/security has been needed in the past.  If any file is
    needed in the future, that need will be evaluated case-by-case at that time.

commit b87bf1b5a1fb93f348d311086c335c0e14e44469
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Mar 28 12:43:00 2019 -0700

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

commit c760135f46eaf246612bc8632374966ed79ce9b2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Mar 28 12:43:00 2019 -0700

    DnD performance tuning for Mac and Windows clients; not directly applicable
    to open-vm-tools.

commit 477bc19fac47a71369bf5872c8ff9b366d51ca1a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Mar 28 12:42:59 2019 -0700

    Fix a memory leak in vmbackup.
    
    Note: vm_free() is called here because GuestApp_GetConfPath() is calling
    Util_SafeStrdup() to allocate the memory.  Both GuestApp_GetConfPath and
    vm_free are implemented inside libvmtools.so.

commit 8f1e76f97989009fa44cbbfc1ac48e3e0083b9e7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Mar 28 12:42:59 2019 -0700

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

commit d93219282ff7e89e3f581bf757dfd807c7568452
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Mar 28 12:42:59 2019 -0700

    Fix memory leak in GetFormattedCommandLine() function (linuxDeployment.c)
    
    1. There are malloc() calls happening in a loop; this function returns
       NULL when one of malloc fails.  If a malloc call fails in the loop,
       all memory allocated in previous iterations should be freed before
       the return NULL.
    2. Clear allocated resources before return NULL in this file.
    3. Add NULL check following malloc calls in this file.
    4. Encapsulate %s in () only if %s is strerror(errno), otherwise encapsulate
       %s in single quotes.
    5. End with \n in sLog.

commit 85f0733565333335aac4c45851013e8e0901a9f5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 27 14:39:58 2019 -0800

    Remove dead code in vmtoolsConfig.c
    
    There is a lot code in vmtoolsConfig.c that handles the 'tools upgrades'
    from legacy tools versions.
    
    But as per
    https://docs.vmware.com/en/VMware-Tools/10.1/rn/vmware-tools-1010-release-notes.html#installupgrade,
    legacy tools versions (prior to 9.4.x) must be first upgraded to 10.1.0 before
    upgrading to the latest tools versions. Hence, removed all the code which is
    no longer applicable for the 'latest tools version'.

commit 449b8d4aa6ca1fbd34ac1f5aa5324c141075ab0a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 27 14:39:58 2019 -0800

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

commit 23dec2833bc0961b7623672deb9971f4ae0ec385
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 27 14:39:58 2019 -0800

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

commit fa94fcf10c3fd0fe8a327cb27de72830ce615257
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 27 14:39:58 2019 -0800

    Log guest OP results to guest side only.

commit aaa29bf9e9a59a25b009949bc688166615e983ae
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 27 14:39:57 2019 -0800

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

commit c88df96c3c8aab080bb79ad8ece5b558cf49bbe1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 27 14:39:57 2019 -0800

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

commit 89dcc97adf9ed58ed3f2f89ca354ee55353e8317
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 27 14:39:57 2019 -0800

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

commit f23e764d01136eaf3aba5c91da2db334b4c9cb1a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 27 14:39:57 2019 -0800

    Tools Vix Plugin: minor cleanup remove unnecessary undefs
    
    A minor cleanup remove unnecessary undefs and fixing a misspelling in
    a function header. The function header somehow got removed from the
    previous clean up so here it is again anyway, with the addition of the
    spelling correction.

commit 13e4fd7c5be25fcf2a4243c2ca32cdf0fec44496
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 27 14:39:57 2019 -0800

    Linux DeployPkg should provide a configurable timeout for the spanning
    customization process.
    
    Change the upper limit of the timeout value in tools.conf to 3600 instead
    of MAX_UINT16.  Revise the log message displayed when an invalid value
    is configured in tools.conf.

commit 6b6a4c8d2262036fec01d894819b8ac8c764e05b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 27 14:39:57 2019 -0800

    Remove some redundant code in lib/poll/poll.c detected by cppcheck.

commit bd4bd92bab5339dc29ad042295e218b68c35f974
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 27 14:39:56 2019 -0800

    Tools Vix Plugin: remove unused hgfs rpc channel
    
    This change removes the unused VIX_BACKDOORCOMMAND_SEND_HGFS_PACKET
    rpc handler from the Vix plugin.

commit df108dbfeb08dcf1c9ac0b6dd0026048c6c007a8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 27 14:39:56 2019 -0800

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

commit 3cd64dd8b345194c277dfbfe7361db115294a40c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 27 14:39:56 2019 -0800

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

commit 1875839fe260d7093e8170ef079b6c6875a1c99d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 27 14:39:56 2019 -0800

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

commit 705dea9434a9e2b4db2163e6cf9bdd5451f4e4d6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 27 14:39:55 2019 -0800

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

commit 0230f00147774547cd72e62a805db511234bbf8e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 27 14:39:55 2019 -0800

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

commit 1703710a2706527748ec7be6767c14f2fcf63fc2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 27 14:39:55 2019 -0800

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

commit c68172ef7f2d4f116078e2aba82986a8cab0b16e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 27 14:39:55 2019 -0800

    GCC 9 caught several misaligned accesses and a format overflow.
    
    GCC 9 generated several instances of "Werror=address-of-packed-member"
    in HGFS Fuse support code and hgfsmounter. There is also one instance of
    "Werror=format-overflow" generated in util_misc.c.
    
    According to stackoverflow discussion -
    https://stackoverflow.com/questions/8568432/is-gccs-attribute-packed-pragma-pack-unsafe,
    x86 hardware handles misaligned access and does not exhibit any real
    issues. However, GCC 9 generates misaligned access warning
    ("Werror=address-of-packed-member) for all architectures. In case of
    open-vm-tools build we treat warnings as errors and also we want code
    to be as portable as possible in general unless there is a reason not
    to do so.

commit 577bc573f875ad5fe0e932cc58f2d607c422ea92
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 27 14:39:54 2019 -0800

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

commit 17a318fbde8df0b7aaa222acf944d319397fa42c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 27 14:39:54 2019 -0800

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

commit 9a013addd657dda0d6671b7ea64c4a0793f57d18
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:33 2019 -0800

    Bump up the SYSIMAGE_VERSION to be same as the VMTools version.

commit 34e9b02de740562802680ab43b8dfd3e741b0658
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:33 2019 -0800

    Hgfs Server Manager Tools: fix a memory leak
    
    The Hgfs server manager interface assumes that it is called only once
    for each application that uses it.  However, in the tools services there
    are multiple clients.  Hence, the initialization is done multiple times
    and causes the previous initializations which allocate resources to be
    overwritten and lost.  Thus memory is being leaked.
    
    Initialize the policy shares once on the first register and cleanup
    the policy shares on final unregister by introducing a reference count.
    
    The channel is already reference counted and initializes the channel once.
    However it is necessary to call the channel init on each register
    and exit on each unregister as it saves a channel reference in the data manager
    object passed to it by the caller for subsequent retrieval.
    
    Add an additional log to the policy init and cleanup calls for tracking purposes.

commit 19609ecdf97dbdbfa116eb3129689850fbf3e528
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:33 2019 -0800

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

commit 05fb961e2c5fcb0e3be0353171f3f2b5d945d0dd
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:33 2019 -0800

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

commit 393476a4ccab5dbf1afe1ac5ced9f71be0d25cff
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:33 2019 -0800

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

commit 4746cfffa7f4334438f4f0b219033b33d079f970
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:33 2019 -0800

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

commit 68b2d39547222badd73cdbc6eecdec57e8e5e45e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:33 2019 -0800

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

commit 188df13c0a30c4612c074b7c805926f9a35120d0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:33 2019 -0800

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

commit 7b88dd52f7d3f70664282f9546230f40dbabc694
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:33 2019 -0800

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

commit 91c3366719fad3546d705ccb8000fef12ab8e284
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:33 2019 -0800

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

commit 41d328a9b1119f6078948fdb619d66940eae2a9b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:32 2019 -0800

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

commit c9863b19f32c20a6ca38cdb6244ef48e5f51dcc2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:32 2019 -0800

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

commit fdcd728a0b9c21f6017f7a4aef55553a88a6f9ee
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:32 2019 -0800

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

commit 46ce56518e018c98d5f2c2dfcbda6df039cb548f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:32 2019 -0800

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

commit 35eae094a31571d806ffdb82c479a425a865bfda
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:32 2019 -0800

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

commit 43ba436554ee51d8d7e40a7e86618bd634292356
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:32 2019 -0800

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

commit a62dd61cc798cf311fa23449534eb22470997ee7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:32 2019 -0800

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

commit 9877ed7ad678fa77028c6f4c8a285c82d7fbcb9e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:32 2019 -0800

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

commit 364684e1ce5fba483682f91c7fc27ee0fdcc2a93
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:32 2019 -0800

    Fix the missing IP aliases in the guest info.
    
    IP aliases were missing in the guest info when libdnet is not used.
    
    Previously tried to use the MAC address as the key to identify the IP aliases
    on Linux.  However, that didn't work for vlan devices which share the same
    MAC as the parent NIC.  The previous attempt was backed out.
    
    Ideally, need to find a way to map the label name to the NIC name, but
    have not been able to find a simple solution for this.  There might be a
    netlink based solution but it is way too costly to do.
    
    After more investigation, found out that a valid IP alias name must start
    with the original NIC name followed by a colon.  Even though the ip addr allows
    any string as the start of the NIC name, configuration file requires the colon.
    In addition, ifconfig would error out when the name is not of the standard:
      ens192wwwww: error fetching interface information: Device not found
    
    Therefore, a correctly configured system should use eth0:1, ens192:2 etc.
    
    A lookup of libdnet source revealed the same assumption in the libdnet code.
    
    /* Get addresses for this interface. */
    for (ifr = intf->ifc.ifc_req; ifr < lifr && (ap + 1) < lap;
    ifr = NEXTIFR(ifr)) {
    /* XXX - Linux, Solaris ifaliases */
    if ((p = strchr(ifr->ifr_name, ':')) != NULL)
    *p = '\0';
    
    Therefore, doing just the same.  Look for the colon, then trim it, and then
    compare it with the NIC name.

commit 47943dec30e3b98259c1dc0d48fb4f669fb02e99
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:32 2019 -0800

    Update copyright year to 2019 for OVT 10.3.10 files.

commit 0c18ef48a57aeb73c7ac970336c3a7c199744de1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:32 2019 -0800

    Back out the previous change to bump up the SYSIMAGE_VERSION to be the same
    with VMTools version.

commit 8ae36f730d8a7460e5cc139019c8b583abf9677a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:32 2019 -0800

    Back out the previous change to fix the missing IP aliases in the guest info.

commit b2976af2553c758cfd871b4d9b7593a92c867e9d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:32 2019 -0800

    Bump up the SYSIMAGE_VERSION to be the same with VMTools version.

commit e9512d13665b8d7f9bed2712b0a92a4ebc03f785
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:32 2019 -0800

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

commit 7f5a754e197ff4f1159f3d8c793de1fc8d3a19de
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:32 2019 -0800

    GuestOS: Improve the guest OS identification code
    
    Now that we often have an explicit, unambiguous version string for
    a distro, use it. In the rare case we don't have one, search the
    distro string for a digit and use that. If we can't find anything,
    note this and let the code fall into the default appropriate to the
    distro.
    
    With this change, we stop using strings and so are no longer confused
    by things like "7.5". For a few of the distros, we now no longer care
    about the upper bound, we can report what we find. Anything above what
    the release supports will be fixed by the GuestMapper.

commit 50a8517abc36af4963c9c29b1127b7652829e410
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:32 2019 -0800

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

commit b6d001fd7b45c5b9414c5642503ad91a5ab279c8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:32 2019 -0800

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

commit dd38338c0bfe8a4778a29a53819e3b5aac683381
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:32 2019 -0800

    Fix the missing IP aliases in the guest info.
    
    IP aliases were missing in the guest info when the libdnet is not used.
    ESX does not seem to support IP aliases, so the ESX code path is kept logically
    the same as before.
    
    On Linux, for each IP entry, get the label name, and use ioctl to get its MAC.
    Use the MAC to match the current device MAC.
    
    The getifaddrs() call ensures that the ifa_name is not NULL, so there is no
    need to check for NULL pointers.

commit e689b1996788de4e8b9e3dd896a593dad4ca4520
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:31 2019 -0800

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

commit bda2908d861cbfae99119340d22c09aae99df51e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:31 2019 -0800

    Include vmware/tools/log.h to define g_info.
    
    A recent change added a call to g_info from syncManifest.c.  This
    in turn is causing open-vm-tools builds to fail because g_info is
    not available on SLES 12sp1.
    
    To fix the problem, include vmware/tools/log.h in syncManifest.c.
    log.h defines g_info as a macro.

commit eb1b69ce8a677025cde23c5913719c5103c6a186
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:31 2019 -0800

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

commit cf60bf56b021452e7a92c42a767156b2a64e1ac0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:31 2019 -0800

    Back out the previous change to remove support for building with
    xml-security-c and xerces-c.

commit a9db8091cbc5286086ccddf7b78560f05fe90fb6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:31 2019 -0800

    Remove support for building with xml-security-c and xerces-c
    
    Remove support for building VMTools with xml-security-c.  Since
    xml-security-c is the only requirement for xerces-c, xerces-c
    is dropped as well.
    
    There is also some cleanup of the handling of some configure
    options related to vgauth, ssl, xmlsec1, and xml2.

commit 3a023fad437c1ee576c4e9802f94f208243a9bb8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:31 2019 -0800

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

commit 8a60e9573885f1ef339cf1bfc19cfb7bc1912122
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:31 2019 -0800

    Always send VMBACKUP_EVENT_GENERIC_MANIFEST during quiesced snapshots.
    
    vSphere 6.7 added a host-side interface that allows VMTools to send
    a "generic" backup manifest during a quiesced snapshot on Linux guests.
    VMTools 10.2.0 or later tries to notify the host of the backup manifest
    file through a vmbackup event message VMBACKUP_EVENT_GENERIC_MANIFEST.
    If the host is unable to field the message, then VMTools logs the
    failure and then continues with the quiesced snapshot in the older
    fashion, without the backup manifest.
    
    An earlier change attempted to reduce the amount of logging done when
    running on older hosts that don't support VMBACKUP_EVENT_GENERIC_MANIFEST
    by detecting when sending VMBACKUP_EVENT_GENERIC_MANIFEST fails and
    not sending the message again for subsequent quiesced snapshots.
    However, subsequent stress testing has uncovered problems with this
    approach when running on newer hosts; specifically, errors may sometimes
    be encountered on newer hosts when sending VMBACKUP_EVENT_GENERIC_MANIFEST.
    Therefore this change backs out that earlier change.
    
    Note that the need to solve the problem that that earlier change was
    intended to solve has been reduced because support for
    VMBACKUP_EVENT_GENERIC_MANIFEST has been backported to vSphere 6.5
    P03, which is available, and vSphere 6.0 P08, which is scheduled for
    release later this year.  ESXi 5.5 is out of general support.
    
    This change also addresses an issue that surfaced when testing on a
    host without support for VMBACKUP_EVENT_GENERIC_MANIFEST.
    If VMTools fails to send VMBACKUP_EVENT_GENERIC_MANIFEST, the quiesced
    snapshot operation will be aborted rather than continuing as it should.
    To address this, create a new function, VmBackup_SendEventNoAbort,
    which does not abort the quiesced snapshot on failure, and call that
    function rather than VmBackup_SendEvent when sending
    VMBACKUP_EVENT_GENERIC_MANIFEST.

commit 1b7769909f3269f681e530acc413201c8d6facf0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:31 2019 -0800

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

commit 480dd20016ed0517b31b78735d50ee3630790e07
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:31 2019 -0800

    Add disk UUID to GuestDiskInfo
    
    Add UUID/Serial number to the GuestDiskInfo.

commit 119c9df55c2265460fc7eb6fad5d87226435e276
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:31 2019 -0800

    Linux DeployPkg should provide a configurable timeout for the spanning
    customization process.  Right now it is hard-coded to 100 seconds.
    
    Sources to provide "timeout" value:
    1. Clients such as vCenter and SRM can pack timeout value in cab header
       via API func "DeployPkg_SetProcessTimeout(uint16 timeout)".  this timeout
       value will be implemented during the package deployment process.
    2. Package deployment engines:
      - tools deployPkg plugin:
        Add "process-timeout" in tools.conf.  The tools deployPkg plugin will use
        that value to control the time period of the package deployment.
      - linuxDeployPkg:
        Add "-t <timeout>" as optional argument in linuxDeployPkg
        Usage: ./linuxDeployPkg -d <cabfile> -t <timeout> --skip-reboot
    3. Default value in deployPkg is 100s.  If both the client and package
       deployment engines don't provid this value, then the default value of
       100s will be used.
    4. The "timeout" value from clients will overwrite the value from the
       deployment engines when both of them provid this value.

commit fde5e1e4fade4bc3672a94cbae7b20d063057540
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:31 2019 -0800

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

commit ee25e6a05996b9beda0c07361d44d4e30fdbe3f2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:31 2019 -0800

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

commit 4caacb6a4fba771d2d416505ec3c3014fac3cb82
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:31 2019 -0800

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

commit c8fa72b1b3e3f0ecf725faf77cc747d804dc0ae1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:31 2019 -0800

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

commit 7d4ddf5c1a1160720f89f1a7f79fdb2f98b9b49b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:30 2019 -0800

    Common header file change not applicable to open-vm-toold.

commit 799401f69d0ee47d475b201254a2fa65bdfe7b81
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:30 2019 -0800

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

commit 69dc92cfb5397399385e7fa67bab3ef685d51c3e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:30 2019 -0800

    Use the LSB and os-release data to find the best guest identification
    
    Historically, we have the LSB to describe a Linux distro.  More
    recently, the os-release standard was added.  Change our guest
    identification code to attempt to use both data - when available - and
    make a value judgement as to which is better.

commit 7c4d548c5f6dfc3a0d24e11bf53c834487df9067
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:30 2019 -0800

    Send diskInfo as a json document.  Modernize diskInfo RPC.

commit 6143662e1b1e89671c4b4812bdbed76d12cff14e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:30 2019 -0800

    [Part 2] GuestLib support for 64bit memory shares.
    
    MEMSCHED_SHARES_MAX is currently set to MAX_PPN and will not fit in
    32-bit soon. 'memshares' property which is currently available in GuestSDK
    is an unsigned 32bit value.  Starting from ESX 7.0, this value is available
    only if it can be fit in an unsigned 32-bit data type.
    
    'memShares64' is the new unsigned 64-bit property added in GuestSDK for the
    memory shares.
    
    Added necessary APIs to retrieve the memshares64 value.  The new API
    VMGuestLib_GetMemShares64 will first try to retrieve the memShares64 property.
    If the underlying host is an older one, then the API will return the memShares
    property.
    
    Updated the vmGuestLibTest code to retrieve and print the new memShares64 value.

commit b1f9a9656e20d4e6f1cb74bc07b75d936346d96a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:30 2019 -0800

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

commit e639a33061a85ec70aded35429b9d634de17ac74
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:30 2019 -0800

    Update seamless window's copyright year as 1998-2019
    
    1. Changing the COPYRIGHT_YEARS in vm_legal.h to 1998-2019
    2. COPYRIGHT_YEARS is used by UTF8_COPYRIGHT_STRING_BASE and
       UTF16_COPYRIGHT_STRING for win32 UTF-16 version.

commit 5260d3b532c436d2b3be825876359f9c6682578d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:30 2019 -0800

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

commit bf62073f69e496a83529e6acf3b33300a50ad991
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:30 2019 -0800

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

commit 8c2911145026ddc7bd1fdfab97e1af3fefab5dae
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:30 2019 -0800

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

commit 070ef6fd44b6a0095ec51faebf2e0c5c0151efb7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:30 2019 -0800

    [Part 1] GuestLib support for 64bit memory shares.
    
    MEMSCHED_SHARES_MAX is currently set to MAX_PPN and will not fit in 32-bit soon.
    
    Changed the datatype of 'memshares' property to uint64 for the future support.
    
    'memshares' is exposed in GuestLib as unsigned 32-bit value.
    Modified the ESX code to set this property only if the vaulue can be fit in
    a uint32 type. Else, the value is not set and 'valid' bit set is set to FALSE.
    
    Added a new property "memShares64" (as uint64) in GuestLib for the new
    64-bit memory shares.
    
    This CLN implements only the necessary changes on ESX side.

commit f14ba86d12e158c2ad1bac2d41082054d2154127
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:30 2019 -0800

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

commit c9cf0614fdb1dd9bbea572f37c1543d8852c7f37
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:30 2019 -0800

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

commit ba975b71a38b96f19f06ed2dc6dd37acd421e99e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:30 2019 -0800

    [Asyncsocket] Avoid ASSERT failure when removing recv callback if fd has POLL_FLAG_ACCEPT_INVALID_FDS flag set.

commit ec4e32afe179db8cf514177b08d9ab69696a2450
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 19 12:51:29 2019 -0800

    Security issue with the intermediate staging directory used for DnD and CnP
    
    Problem:
    /tmp/VMwareDnD is a staging directory used for DnD and CnP.  It should be
    a regular directory, but malicious code or user may create the /tmp/VMwareDnD
     as a symbolic link which points to the home directory of the current desktop
    user before the staging directory is created.  Later when the desktop user
    initiates a DnD or CnP operation, the permission of that user's home directory
    will be changed allowing the malicious user full access to the desktop user's
    home directory.
    
    Solution:
    Do not set the permission of the staging directory if that directory already
    exists and has the wrong permission.  The permission of the directory will
    be 1777 if it is created by VMTools.  If that is not the case, the directory
    has been created or modified by malicious code or user; just cancel the host
    to guest DnD or CnP operation.

commit 1a39495618c1573c0fb16dd15368d0f2e606372c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jan 16 14:53:06 2019 -0800

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

commit 4b9d0560bbeb50a395ffcfa7f1114d0c0246f207
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jan 16 14:53:06 2019 -0800

    Add WarningToHost() and WarningToGuest() functions
    
    This change is needed to address the privacy and security changes that
    are required so that vmware library warnings can be forwarded to the
    host side selectively.
    
    For instance, if a warning message is sent to VMX, the user name must be
    stripped from the message.

commit f16f911678e8075ba8422de3f2b70de9a7859974
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jan 16 14:53:05 2019 -0800

    Fix CONSTANT_EXPRESSION_RESULT in TimeUtil_StringToDate().
    
    Red Hat ran coverity scan on open-vm-tools and found an occurrence
    of CONSTANT_EXPRESSION_RESULT in TimeUtil_StringToDate().

commit 96da61e5aba3f97907477734b0a830a1338cd48b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jan 16 14:53:05 2019 -0800

    [10.3.10] Update copyright year to 2019.
    
    Update the copyright year to 2019 for ALL open-vm-tools destined files
    modified since the release of 10.3.5.

commit 3f5711d996598a625252cdcc77404fbb09cbb3d0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jan 16 14:53:05 2019 -0800

    Bail out of vmtoolsd early when there are RPC errors.
    
    VMX state machine could give up quiescing operation for various
    reasons when vmtoolsd is busy performing necessary state transitions.
    Once VMX gives up quiescing operation, there is no point in
    vmtoolsd continuing with it. vmtoolsd should also give up the
    operation asap. The vmtoolsd process can detect VMX state machine
    change when it gets errors sending VMBACKUP_PROTOCOL_EVENT_SET RPC.
    
    RPC errors are only used as a trigger to abort the operation.
    We ignore the RPC errors that might occur after aborting the
    operation.

commit f2d053bb4b7fca870ed3e4aacc26fdd92907d008
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jan 16 14:53:05 2019 -0800

    Don't send a backup manifest when aborting a Linux quiesced snapshot.
    
    When taking a Linux quiesced snapshot, communication failures between
    VMX and VMTools may result in VMTools sending a genericManifest event
    message after the quiesced snapshot operation has been aborted.  If
    this happens, VMX will send an error back to VMTools, which in turn
    causes VMTools not to send genericManifest messages on subsequent
    quiesced snapshots even if the host supports such messages.
    
    One aspect of the implementation that gives rise to this behavior is
    the use of the sync provider's snapshotDone function to undo a
    quiescing operation.  Specifically, if VMTools aborts a quiesced
    snapshot when the file system is quiesced, the quiescing must be
    undone.  Currently, this is handled by calling the sync provider's
    snapshotDone function.  This is the same function that is called to
    complete the quiescing snapshot protocol when it is successful.  In
    some respects this makes sense, since in either case snapshotDone
    unquiesces the file system.  However, architecturally and conceptually,
    it seems useful to distinguish between the action to be taken in the
    successful case versus the aborting case.  It's also useful to do so
    in practice, because the successful case sends the genericManifest
    event to notify the host there is a backup manifest file, while the
    aborting case should not do that.
    
    To address the issue, add an "undo" function for the Linux sync
    provider.  The undo function is called instead of snapshotDone as
    part of aborting a quiesced snapshot in which the file system is
    quiesced at the time of the abort.

commit d2386efc9b8d66e44b87d21db71fb1fc39cf00f1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jan 16 14:53:04 2019 -0800

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

commit 7c7371304783928cbd8fafeae682de46a1e64b4f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jan 16 14:53:04 2019 -0800

    Common source file change not applilcable to open-vm-tools.

commit 0ab701192d0f5cdbb38525b1cd507bc56962651d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jan 16 14:53:04 2019 -0800

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

commit 5e957b0af978d7ba5106c1ae6a4e98e39cedd01c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jan 16 14:53:04 2019 -0800

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

commit 6af2b0bb4ba3d77d94cf61643803282198c7c68e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jan 16 14:53:04 2019 -0800

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

commit eed75f0ab178cceeabb761661cecaf636b595bdb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jan 16 14:53:04 2019 -0800

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

commit 87d1ca65dc4f0d0fa53a2fb5e1411c104aaa84d3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jan 16 14:53:04 2019 -0800

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

commit 51dd95f05655e6d6c84aa0622cb48aeaf2880180
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jan 16 14:53:04 2019 -0800

    Record VMware Tools version 10.3.7 used for a patch.

commit 01d4d19cc0f638ef119fb0b23801c66acd634920
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jan 16 14:53:04 2019 -0800

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

commit e57c49e1a8504620acc87d5d64304d76c5cab804
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jan 16 14:53:04 2019 -0800

    Modernize diskInfo RPC
    
    Rewrite diskInfo RPC to allow it to be backwards and forwards compatible.
    step 1 -- re-org existing code.

commit 94ba58e23bda8f2cc74041c3c9cd2e8365a1b431
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jan 16 14:53:04 2019 -0800

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

commit c2a852b98c01b61b0a73be2aaa77ca334e44e902
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jan 16 14:53:04 2019 -0800

    Special-case profile loading for StartProgram
    
    Keep the user's profile loaded for the life of the
    program, to avoid races where its unloaded too quickly.

commit 68e81d11ead52350a6be0ab383a65d2b11884345
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jan 16 14:53:03 2019 -0800

    Switch some stringxx headers to use angle brackets instead of double quotes

commit ff766a3e0dae726cf1d171a150633d9e995f2c08
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jan 16 14:53:03 2019 -0800

    Code clean-up - bora-vmsoft/lib/procMgr/procMgrPosix.c
    
    Recent discussions about setting "errno" to ENOENT when either
    getpwuid_r() or getpwnam_r() return 0 (success) if there is no passwd
    entry for the user have vacillated.
    
    Since none of the current callers of the routines in procMgrPosix.c
    query the contents of "errno", the current consensus is to simply log
    a warning message along with reason for the failure.

commit b2e0ca7c6a8a9fd7ad33cbc950f63c14ab205718
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jan 16 14:53:03 2019 -0800

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

commit 9aef5870bc7dc439bfa422662403369dfdd7f1d3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jan 16 14:53:03 2019 -0800

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

commit e74e440279d402c5d81a1b6f75e0760d91c4eb88
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jan 16 14:53:03 2019 -0800

    Changes to common header files not directly appilcable to open-vm-tools.

commit f8817830c0c41c6e5f7acf77555f9b1be2677b08
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jan 16 14:53:03 2019 -0800

    Style: Fix parameter alignment.

commit 4b3f4bc4878aa9eec15d29e8a5a177186a07292c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Jan 16 14:53:02 2019 -0800

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

commit e5f79d1591677fd83173203e552e5a495109137f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 14:12:19 2018 -0800

    Updates to the DeployPkg guest customization source code.

commit 401cf6d23667a66cd8f5ed5b5d6644305cb9180c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:48 2018 -0800

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

commit 78c8c4c2e83a6d24e0302e55f21912d7ebee9a2e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:48 2018 -0800

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

commit 6c3d03d6ef32edffa882ce1816f344f4e1db4d8a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:48 2018 -0800

    Header file guestcust-events.h moved to a new location.

commit dafeb935f81a7c10946f359b0753de2ea74befda
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:48 2018 -0800

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

commit 6009a6c1d3c7e72880541b0e4ca2a39e09e6d4e3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:48 2018 -0800

    General code clean-up.
    
    bora/lib/misc/posixPosix.c:
    Treat local variables "len" consistently as "size_t" type in
    Posix_Getmntent_r()
    
    bora-vmsoft/apps/toolbox-cmd/toolboxcmd-shrink.c:
    Improve readability of error handling logic in ShrinkDoWipeAndShrink()
    and remove another line of dead code.

commit a2ecb98683ee8edabddd47cfdd4bf37eb043cc17
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:48 2018 -0800

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

commit 767aaab78492854f178ebc7b16f0bf34b71c832b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:48 2018 -0800

    Record VMware Tools version 10.3.10 as TOOLS_VERSION_JACKHAMMER_UPDATE2

commit 3b40e2629e84abf2c3176264142fae54ac4431f0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:48 2018 -0800

    Back out previous change to plugins/vix/vixTools.c.
    
    Too many subtle issues to trust this one without more testing.

commit 601b399538796cc1692c65f30686140c20b0ba33
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:48 2018 -0800

    Cleanup -Wno-incompatible-pointer-types-discards-qualifiers
    
    Details
    
    Both gcc and clang (on Mac) warn for pointer-incompatible
    assignments.  It appears that gcc's -Wwarn-strings isn't working
    properly, because it produces no warnings for the following
    assignment:
    
    char *potentialSegV = ".rodata-based string";
    
    However, clang does.
    
    This change addresses three problems in bora/lib that produce build
    failures when -Wincompatible-pointer-types-discards-qualifiers is
    enabled when using clang (one wonders how many other such potential
    problems exist?)
    
    o bsd_vsnprintf.c
    
    The 'cp' pointer is assigned the address of a constant string.
    Since there are writes through 'cp', the quickest solution is to
    declare a local, non-const, array variable that holds the string
    "(null)".
    
    o unicodeSimpleTypes.c
    
    This change, the easiest of the three, marks the 'char *' field as
    'const'.

commit 07877933b3b2890f1111d07c92cff54e839ff8c6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:48 2018 -0800

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

commit 8b5f6fa802d60aa8bb1855843b395c3851363cce
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:47 2018 -0800

    Backout previous change to vm_basic_asm.h; not applicable to open-vm-tools.

commit d8e831e22912d7f2a285c16af1824dafc072cd3a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:47 2018 -0800

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

commit 05209f64dcc5eb253b18b3969582749039a835c5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:47 2018 -0800

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

commit 3fef292a16fd27c83e3dd690e3a2a3bc5e74f2b1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:47 2018 -0800

    Revert previous change to vmci_sockets.h.

commit f91f7355619ad0ed7afcbe0b7161be3680b88688
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:47 2018 -0800

    Fix NULL pointer dereference and remove three lines of dead code.
    
    QbitLogic has run [Code]Ai on the open-vm-tools source code and
    and notified VMware of a potential NULL pointer reference and four
    pieces of dead code.
    
    See https://github.com/vmware/open-vm-tools/pull/247
    
    bora-vmsoft/services/vmtoolsd/pluginMgr.c
    The proposed fix conditionally emitted a log message.  That fix has
    been reworked to consistently emit a log message with conditional
    content.
    
    bora/lib/misc/posixPosix.c
    bora-vmsoft/apps/toolbox-cmd/toolboxcmd-shrink.c
    Remove one line of dead code from each source file.
    
    bora-vmsoft/lib/procMgr/procMgrPosix.c:
    Suggested dead code fix actually pointed to a bug where errno
    was not getting updated as intended.
    
    bora-vmsoft/services/plugins/guestInfo/perfMonLinux.c:
    Suggested dead code is no longer dead; change not applicable.

commit bbcb8a46876352e120d22ee07bae26be29ec27c3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:47 2018 -0800

    Remove erroneous defines of __FreeBSD__ & __VMKTCPIP__ from vmci_sockets.h

commit 56d568396910f2af7408517b75b0a6e387bf69ef
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:47 2018 -0800

    Add VMware Tools version 10.3.6 to vm_tools_version.h

commit e843a034b7ea9e32959512d39ca1d046968c575e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:47 2018 -0800

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

commit f32fde16f226a67b42fe095aea33bf7b5e8040c0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:47 2018 -0800

    special case profile loading for StartProgram
    
    For StartProgram, we need to be sure there's no race in the profile
    unloading.  So keep it open through the life of the started program.
    
    See related vgauth change.

commit 150483202fdd5b3c447e4547bee00d18b918bb31
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:47 2018 -0800

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

commit 1997a49deaed475d44ef4eece6c592e51115a8b0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:47 2018 -0800

    Fix the issue that Deploypkg log files of linux should not be world readable.

commit f16590d1b721112f7841283ed03912c3837f120d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:47 2018 -0800

    lib/file: Memory leak in File_ListDirectory when directory is empty
    
    If the directory is empty, calloc of zero still succeeds and a memory
    leak results.

commit 1a685809609906464f90f2a2a2e2c5299bb8cb4e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:47 2018 -0800

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

commit e03c5b88c6e42a3bf395ad647544ae113e83779c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:46 2018 -0800

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

commit 74561dc19faf9a44fffc0676c27c16176b35d3af
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:46 2018 -0800

    lib/file: Improve File_ListDirectory and File_WalkDirectory*
    
    The File_WalkDirectory implementation has an initial latency (before
    file names are available) that is unnecessary.  Using the unicode
    library, when not necessary, adds a huge amount of memory usage and
    wastes CPU time.
    
    These routines duplicate quite a bit of code.
    
    Rewrite File_ListDirectory to use File_WalkDirectory*.
    
    Rewrite File_WalkDirectory*:
     - Return files as they are discovered, not after the entire directory
       contents are parsed. If one decides to stop early, they don't have
       to pay the price for the entire directory contents.
     - Preserve the protection from duplicate file names.  While Windows
       locks a directory during a content tranverse, POSIXen does nott. Code
       is here in the lib/file for quite some time so that the numerous
       callers do not have to handle dealing with dups.
     - Avoid using the unicode library on platforms where we can, this avoid
       most of the eggregious memory usage.
     - Don't use Dynbuf... Handling things directly is more efficient.

commit e3b171c6d86ba73b3bd14a10b368bd765f327603
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:46 2018 -0800

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

commit e8494c194dc620ca455f0a6dd723160310283cc1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:46 2018 -0800

    Bump tools version to 11.0.0.
    
    The next VMWare Tools product release is to be version 11.0.0.
    Switching the version of tools from the current development version 10.4.0
    to 11.0.0.

commit a7c141fc5278146b86c71502f60767962b752af7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:46 2018 -0800

    Remove GLib 2.32 deprecated APIs from tools
    
    Replace the GThread, GCond and GMutex APIs deprecated in GLib version
    2.32 in the VMware Tools source.

commit 2afa9fb568001dbd1ec24537aab365630c312cb4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:46 2018 -0800

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

commit e389813c0e87937d6e5f6cc8ebe8ee55688741df
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:46 2018 -0800

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

commit c4987e08c68f870e563bfa73ce8dd98854221011
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:45 2018 -0800

    Disable sending toolsd debug log level messages to host
    
    After the security and privacy reviews of the toolsd logging,
    the debug level messages to host have been turned off.

commit e8e8d6c3cb672ba561bcacd16dd3d17eca08d8c9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:45 2018 -0800

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

commit 34c8274bddfe54b750449d27d5a8cde597e6b85b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:45 2018 -0800

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

commit 49eb56393323c9344d10313d104bf20630813578
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:45 2018 -0800

    Remove grabbitmqproxy and certtool from tar installer, OSPs and open-vm-tools.

commit 6297504ef9e139c68b65afe299136d041d690eeb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:45 2018 -0800

    Common header file change, not directly applicable to open-vm-tools.
    
    Add a new GOS definition for darwin19_64 (macOS 10.15) in HWV >= 17

commit 008fb2caba5b0bf9684274e23539c57825ce9f53
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Dec 18 13:19:44 2018 -0800

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

commit e5f3527f43a847401a3715792eb73f56a759e895
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 9 14:59:39 2018 -0800

    Adding the libappmonitor source to the open-vm-tools distribution.
    
    In response to customer requests that the libappmonitor library from
    the VMwares Guest SDK be opensourced, the libappmonitor code has been
    bundled in open-vm-tools.

commit 9813b969a36a658bcc09459b2e2e757f4a9f1959
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 9 14:59:39 2018 -0800

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

commit bcc387216f018dffca63b78dece11e52b6648414
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 9 14:59:39 2018 -0800

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

commit 12cfe6d2f3b060d108f641347514b6df63efc99b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 9 13:22:25 2018 -0800

    Provide a distroName, when available, when the lsb_release cmd fails.
    
    The default, in Linux, is "Linux". If a distoName was present in the
    lsb release description file, it should be used.

commit 8c4732f401add7666f5d01705e6bcca4a7a3581b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 9 13:22:25 2018 -0800

    Common header file change not applicable to open-vn-tools.

commit 99d647e66015019af5ef2acc8369dfaaa59e26ef
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 9 13:22:25 2018 -0800

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

commit ce5e473e61d488a0f9cc79a4896562ab5e6f4409
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 9 13:22:25 2018 -0800

    Remove Common Agent Framework (CAF) from Tools - Linux Changes
    
    The CAF files have been removed from VMWare Tools and the open-vm-tools
    source.

commit 17495d9489caf922a1c5452f2c3f4eb0a1408aba
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 9 13:22:24 2018 -0800

    Enhance the vm-support-lx script to capture guest customization related logs
    for the guest.

commit f76ab6ac8adc5b8c28aa0979006dda3119cc04ab
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 9 13:22:24 2018 -0800

    Security concern: Certificates contain identifying information
    
    Do not log the contents of certificates which contain identifying
    information such as e-mail addresses.

commit 71905e9b86cc70a08d43fdab2419c51df8a540f0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:27 2018 -0700

    Add "#include <string.h>" to services/vmtoolsd/toolsHangDetector.c.

commit 7cdfdb0a97af51bf84f0e424b595fab98afd6f17
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:26 2018 -0700

    Common header file change.
    
    Remove macro definitions of MAX_OS_NAME_LEN and MAX_OS_FULLNAME_LEN
    from lib/misc/hostinfoInt.h

commit cb5601064604433688f10dacd3ca12a34e629cdb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:26 2018 -0700

    Hide static function declaration for Linux from FreeBSD and Solaris OVT
    
    A recent change introduced a new static function
    HgfsInvalidateParentsChildren() in bora-vmsoft/hgfs/fuse/cache.c. That
    function is defined and called only in Linux builds.
    
    The static function declaration should not be visible on FreeBSD OVT
    builds.

commit cd003f2b1ce879121f519b664ae19749889e36f2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:26 2018 -0700

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

commit a83d4dac90630dc6ed144c8d6e3cb9db449b981c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:26 2018 -0700

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

commit d02c872af34c59031be957ce4a6f5d0574589726
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:25 2018 -0700

    GuestMapper: Detailed data fixes
    
    The guestInfo detailed data for Photon was being reported incorrectly,
    sometimes adding trailing whitespace when not needed.
    
    The problem was how the release file was processed. It was being
    processed (open/read/code/close) multiple times, and wasn't separating
    each of the fields as it should. Fixed this.
    
    Adding logging of what is sent by the guest; how things are mapped.

commit a1917eaa8c088363cb4470b929081f6036f3edcc
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:25 2018 -0700

    Update the tools side code to send VMX the health status event.

commit 98e292df69d5a1d21998d99e5f571e22ed42785f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:25 2018 -0700

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

commit 31aaa5cd048bbc6eeb4221df3f92b30c320b132d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:25 2018 -0700

    VIGOR and RPCI definitions for the tools hang detector events.
    
    Define an array of ToolsHealthEvent to record the last N tools hang
    events. By keeping a list of historical events since the power on,
    we help ourselves trouble shooting guest/toolsd issues.
    
    Use the first array element for the latest event. This simplifies
    implementation as the DynArray can be easily capped by setting the
    array count. This requires us to add a PushFront function to add
    new element to the front of the DynArray.
    
    Added the RPCI handler for the tools hang detector RPCI messages.
    
    Added feature switch Tools_Update_Health.

commit f424de6e55bf08833de86b2b62a3797351b3c3d4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:24 2018 -0700

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

commit 8a46de645e3d94af7d15af7f09e2c3bf495962ab
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:24 2018 -0700

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

commit 35a3635b0b5d1478bf21ed114b28b2df64108481
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:24 2018 -0700

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

commit 63627bd400ed1054a092b8147181504ebf70d089
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:23 2018 -0700

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

commit 8f93db57cbcda3822f1a867da962507da393391e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:23 2018 -0700

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

commit ed4d390b0002b057e649f51b210102ce794c38cf
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:23 2018 -0700

    Add more logs for clipboard delay rendering

commit 23b37dcaf75cfcccb5b372100a6c82f9f7eade21
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:23 2018 -0700

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

commit 55e6cb43d4a67b7e5ab2385f8decdaa4e0a1ad5f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:22 2018 -0700

    Backout immediately previous change; not applicable to open-vm-tools.

commit f78c2d1f1ec6e287aaa41f4ac100df3fb3087915
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:22 2018 -0700

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

commit ef9c5b40c1ce79130f52642793c7a187ca9a198c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:22 2018 -0700

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

commit 73731849187ee088680ba66c9cd61871ececa06d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:21 2018 -0700

    Replace function File_Rename() call with File_Move()in dndCommon.c

commit 3acf72392134a6c413bb17925b64b05ac1a44b28
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:21 2018 -0700

    Common source file changes not directly applicable to open-vm-tools.
    
    Re-apply the DnD changes previously backed out.
    
    On Windows, the CDR tmp files under folder "VMwareDnD" will be kept
    permanently in some cases after drag & drop.i

commit 1a20b0f77ef4320355b61d84153b6cfc4d3db775
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:21 2018 -0700

    Fork sha1/md5 for kernel/user usage
    
    Kernel specific sha1/md5 routines have been removed from lib/misc/sha1.c.

commit 512afce3d5f147fad4bc3fec57e93a862033ffdf
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:21 2018 -0700

    Backout the previous changes to DnD temp file clean up..

commit a9e178eaf036b09d12263db2118c4171b154cb69
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:20 2018 -0700

    Common source file changes not directly applicable to open-vm-tools.
    
    On Windows, the CDR tmp files under folder "VMwareDnD" will be kept
    permanently in some cases after drag & drop.
    
    Root cause: The existing strategy is to delete the folder before next reboot
    of the machine, which is implemented through writing Windows HKLM registry.
    However, for the non-administrator user, that user has no permission to
    write the registry which in turn results in the temp files not being removed.
    
    Solution: The temp files will be removed when the user disconnect the remote
    desktop/app. The details are:
     1. Client will remove the temp folder when remote desktop/app is disconnected
        (rmks exits). Server will remove the temp folder when mksvchServer plugin
        gets "Not Ready" notification which means mksvchanServer is disconnected
        from the  mksvchanClient.
     2. Use prefix "Horizon_xxxx(pid)-" to distinguish if the temp folder is
        being used by DnD or not. For Client, the pid is the rmks process id,
        for Server, the pid is Clipboard pid.

commit aa479bbdba6338d7988f5db9145b63d8796a926d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:20 2018 -0700

    Issue: Sometimes, there is a message "The system cannot find the file
           specified" popped up when drag and drop over multiple remote apps.
    
    Root cause:
    When drag over multiple remote apps, multiple pairs of dragEnter and
    dragLeave messages are sending. The DnD state or the dropSource/dataObject
    are messed up when handling the 2nd DragEnter with the 1st DragLeave at
    the same time.
    
    Solution:
    Besides fixing this issue, fixed several other issues also to enhance the
    handling for multiple pairs of messages in the same time:
     1. In DnDController layer, avoid to reset the DnD state when handling the
        message responded from agent for previous sessions.
     2. In agent, only set the DnD state to be Ready when the previous
        DoDragDrop is really cancelled by OLE.
     3. In agent, only response to the button event when the drop is notified.
     4. In agent, add a 2s timeout checking for cancelling process to avoid
        conflicting with another DnDThread to create dropSrouce.
     5. In agent, add a 2s timeout checking for dragBegin process to avoid
        conflicting with previous dragBegin processing.
     6. Add virtual prefix to the method "GetData".

commit e7dd1a81bc1ffac2518746291e1cacf4d80dbe85
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:20 2018 -0700

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

commit 0a0cdca3727a11333ccd08a2548aa23086dd1dce
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:19 2018 -0700

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

commit 32239c47c0add190765a0e71fd80c5abfedfdb14
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:19 2018 -0700

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

commit 72d665451b838c275794e73d37aebf130833c950
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:19 2018 -0700

    Tools hang detector now handles slow guest.
    
    Tools hang detector can check its own past running history and figure
    out whether itself is running slow due to a resource contention inside
    the guest.
    
    Tools hang detector shall report a different event to the VMX if the
    main thread is not checking in and the tools hang detector itself is
    not running frequently enough indicating the guest is running slow due
    to a possible resource contention.

commit 387121656a29e9643cc2624133669a72c77deda5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:18 2018 -0700

    More logging improvements
    
    vSECR doesn't want usernames going to the VMX, so remove them.
    
    Dump cert details when xmlsec fails to add the cert to its keystore.
    This can occur when the cert chain in the token has a bad cert,
    or one that isn't signed by the root cert in the token's chain.
    This can occur if a user has mis-configured an SSO server.

commit f17721b0815a153e8a1d9b95492792c07594309d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:18 2018 -0700

    Solaris: Synchronize between vmxnet3_tx and vmxnet3
    
    Vmxnet3 driver on Solaris is not properly synchronized
    between vmxnet3_tx and vmxnet3_stop. When the driver
    receives a stop event from the device, it doesn't
    synchronize with the TX function invoked from the
    networking stack before it releases the TXQ resources.
    Thus, when the TX function vmxnet3_tx() is executed,
    and a stop event/interrupt comes in, the TXQ may
    suddenly disappear while vmxnet3_tx is still accessing
    the descriptors, thus the guest OS crashes.

commit 68f58daeceebe0d879fcbeca1d21e845bd1289e8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:18 2018 -0700

    Hgfs FUSE Client: fix attribute caching of folders
    
    When a directory is invalidated from the cache due to any change such as
    a rename then any cached children of that parent folder should be
    invalidated also.  Otherwise the cache holds stale information leading
    to incorrect behavior and failing applications.

commit ee49a8158e9648feb05e934ad3b0f23ac1c5fca3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:17 2018 -0700

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

commit b0fcac5dd34133a6a4baa926b4a99a7a02599268
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:17 2018 -0700

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

commit ab63640f3946e00810c7a6b32d2efd2325a1bf1b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:17 2018 -0700

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

commit 14e84dd6d11311947e31cb4852f1c8e976290239
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Nov 2 15:28:16 2018 -0700

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

commit 03ec43287b1bf2dd8ad0a2c10a272ba317cf3fc3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:45:00 2018 -0700

    Clear DnDPluginResetTimer on receiving SIGUSR1.
    
    DnDPluginResetTimer callback handler DnDPluginResetSent() accesses
    the RPC channel managed by the main loop. However, mainloop destroys
    this channel on receiving SIGUSR1. So, we need to destroy this timer
    as well when SIGUSR1 is received.
    
    There are at least 2 ways to do it:
    1. Add Linux specific code in vmCopyPasteDnDWrapper.cpp and any other
    places where we need to do similar cleanup.
    2. Have main loop generate a signal and do the necessary cleanup as
    handling that signal.
    
    In order to keep the code clean and also let other places/future
    changes leverage the same solution, approach #2 is used here to
    define and generate a new signal TOOLS_CORE_SIG_NO_RPC. Also,
    implement a handler for the same in the test plugin (for testing)
    and dndcp for this bug.
    
    While there also fixed the log domain for few files that are supposed
    to logging under "dndcp" domain.

commit b6a8e6973701ebe3d6e55be6862bfa11873431c4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:45:00 2018 -0700

    Fix memory leak in deployPkg.c
    
    In function DeployPkg_TcloDeploy, pkgName is not freed if deployPkg failed
    to submit to the thread pool.

commit d32b2f1f77af1246d50fd9003e15515ad0ba250a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:59 2018 -0700

    Develop log APIs to fix security holes in the tools log messages.
    
    Security artifacts such as command args on the host should not be logged
    in the VMX log files on the host.  This change creates APIs so that
    different log messages can be used for host and guest.
    
    Refactored the log plumbing to minimize code duplication when calling
    the different implementation of logging to the vmx and logging in guest.
    
    Fixed one instance of security issue in vmbackup, to show how to use
    the new APIs.

commit b122127e50b2f7cdebad5aa79c75f67f6ffa4ead
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:59 2018 -0700

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

commit 0ff45146c987d734ad5cc224fc0f6f24f422f9a0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:59 2018 -0700

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

commit e0c0431824dce19770d91143fb9b7176b2f9b77f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:59 2018 -0700

    Clear channel restart timer when RPC channel is destroyed.
    
    Vmusr main loop destroys the RPC channel when it receives SIGUSR1.
    However, it may have left the restart timer around that would end
    up accessing the destroyed channel structure. So, we destroy the
    timer along with the RPC channel to be safe.

commit afa563c3d035f2227eaae22fea9f89b9f27ad9c2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:59 2018 -0700

    Tools Windows Drivers: split header for reporting versions
    
    The rpcvmx.h header file has been split to allow some tools drivers to
    report their versions to the VMX while limiting the number of RPC APIs that are exposed to the drivers like VMCI and Csock.

commit a6862863ab6bb8e466518c5587e7dd7aca4944fb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:59 2018 -0700

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

commit 30a576e296250f377fc490ac6d1b37f215f798ad
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:59 2018 -0700

    include log.h to workaround missing g_info() in glib
    
    Older versions of glib (< 2.40) do not have g_info(). There
    is a workaround in vmware/tools/log.h, but it wasn't included in
    toolsHangDetector.c.

commit 7560aab8a6be1be166d0e37c08f46ba0196d0a16
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:59 2018 -0700

    Add some sanity checks in vgauth/common/certverify.c
    
    Add some sanity checks in cert chain verify callback.

commit 7925e1f7b4b0de43b27ea85324cb31f80a744941
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:59 2018 -0700

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

commit 6e8833563045101a8fb7d91fc33cbe980588bebf
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:59 2018 -0700

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

commit 3e25c7c614a72ec380b6b22473b35712a0b05b26
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:58 2018 -0700

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

commit 4aeaba06a0e5fbe857bcf6cc9e361bb537101281
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:58 2018 -0700

    [AsyncSocket] Replace 'Bool safeAccess' parameter with 'DWORD accessType' in AsyncSocket_CreateNamedPipe.
    
    So that callers can select wanted access control.

commit 0e4b5b90b268a542984f572909ea49d32bd15b12
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:58 2018 -0700

    Implement tools hang detection logic
    
    Create a dedicated detector thread. The thread sits in a loop and
    wakes up periodically to decrement an atomic counter. Also schedules
    a checkin timer with the main loop to reset the counter periodically.
    
    If the counter ever drops to/below zero, the tools hang is detected,
    and a tools hang event is generated. Otherwise, if there was a hang,
    but the	counter has now come back up to positive, a tools recovery
    event is generated.
    
    In order to properly create hang and recovery event, previous state
    needs to be tracked.
    
    In order to properly handle shutdown, we need a condition variable so
    that the detector thread can wake up on it while sleeping. This is
    because the toolsd calls the thread pool shutdown function which
    in turn calls each thread's terminate function and wait for the threads
    to quit. Therefore, our terminate function shall wake up the detector
    thread and make it quit. Otherwise, the toolsd shutdown shall hang.
    
    Next change shall implement the new RPCI command to send the
    hang/recovery event to VMX.

commit 16a2feba8c1f0ff420df3ccf0839c89700cecd71
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:58 2018 -0700

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

commit d7fda97ce83c672a36ccfa678ed9fb8f77dba745
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:58 2018 -0700

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

commit 88adffa22be7f8212a8f18f43ede7d71b163c6d5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:58 2018 -0700

    Common header file change not directly applicable to open-vm-tools
    
    [ghi messages over MKSControl] Add a new return type for UI -> MKS message.
    So that the MKS side can send utf8 string error message to the UI side.

commit 723475d22891ae90d1d036a6efdf51b22809c8f0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:58 2018 -0700

    Use bitwise AND operation while fetching current IOPL.
    
    Iopl_Get() was using logical AND operation which could result
    in wrong IOPL value. We should be using bitwise AND instead.

commit 74401197479cca7db92d52ed61dced7a5b9fcc77
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:58 2018 -0700

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

commit ee7d2229f32702942f43418784dca2925e64712a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:58 2018 -0700

    Changes to common header files not directly applicable to open-vm-tools

commit 480fe9149b740faf298a7c6259f9d0c3a3c6bae8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:57 2018 -0700

    Hgfs FUSE Client: fix missing pthread_mutex_unlock call
    
    Fix missing pthread_mutex_unlock call in HgfsSetAttrCache when
    updating the cached attributes on a file and a memory allocation
    fails.

commit ac5341917916d37120b35dbe3d1a9ef1dfe61f92
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:57 2018 -0700

    Hgfs Server Linux: fix the share permissions on a file rename or delete
    
    Coverity found that the argumeents to obtain the share permissions
    on a file rename were swapped. Even though they are tested together
    in an if statement which is not an issue, it could be in the future.
    
    Reverse arguments so the share read and write permissions are correct.

commit 36174dbcba016b9421c32bd682cec2fe05db2016
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:57 2018 -0700

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

commit 8d371d534c227511c41ca8bdc4b4f9d8279cbd28
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:57 2018 -0700

    Update the copyright year for OVT bundled files modified since 10.3.2

commit 45f0733b4eeb4b46f820a5db911917cfbb769d37
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:57 2018 -0700

    Handle Linux kernel /proc FS uint32 type stat overflow when calculating tools rate stats.
    
    On both 32-bit and 64-bit Linux, tools always parses Linux kernel /proc FS
    stats as uint64 values. For rate stats, current - previous can handle uint64
    type stat overflow, but not uint32 type.

commit 570578fcf07fab60cf28f6e9396473c9ba8a815b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:57 2018 -0700

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

commit 741a58d63943823568488080cc53b30c35e51530
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:57 2018 -0700

    Accomodate kmem_malloc() and kmem_free() changes in FreeBSD 12
    
    The kmem_alloc() and kmem_free() APIs have been changed in the
    upcoming FreeBSD 12.0 release.   The change was to drop the now
    unused arena parameter from both functions.
    
    This fix defines and uses several macros whose definitions are
    specific to FreeBSD version 10, 11 and 12 kernel memory API changes.
    
    Github open-vm-tools pull request from Josh Paetzel.
    https://github.com/vmware/open-vm-tools/pull/286

commit 03d9d27074dd645b35a829bd506304ede0527734
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:57 2018 -0700

    Changes to common source files not directly applicable to open-vm-tools

commit 394c1f1c11ae4b8c3a907d46ba5c4bfe4d7bd82a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:56 2018 -0700

    Add some more VMX logging
    
    Add some more key logging to the VMX; also put [vgauthservice] into
    messages for easier grep filtering.

commit 19f930cf847b6113f9d0923b571d6e6bfc6db45f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:56 2018 -0700

    Common source file change not directly applicable to open-vm-tools
    
    On ESXi, AF_PACKET family is reported for vmk* interfaces only and its
    ifa_flags is reported as 0, so do not check for IFF_UP/IFF_LOOPBACK.

commit eee56ef486dbf94984e925eb9d248ce72203a2ed
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:56 2018 -0700

    Common header files changes not applicable to open-vm-tools

commit d7847e083e1a9db3dd6c38f07a67e52e58e061dd
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:56 2018 -0700

    Tools: More clean up from the guest mapping changes
    
    A few more places to improve the code.

commit 6781303c4c4c5d80116a607b390d435def0a5c15
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:56 2018 -0700

    Common header file change not directly applicable to open-vm-tools

commit 7eaf3377621b44af6a9768e6fd0fe61b32165781
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:56 2018 -0700

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

commit 39b03704a3175b404369040b64740d05bbb80b9a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:56 2018 -0700

    Fix Guest RPC Channel clean up memory leak on the guest side.
    
    The RpcChannel_Destroy() is leaking the memory on the outLock.
    Refactored the code so that RpcChannel_Shutdown() matches the
    RpcChannel_Setup() if invoked, and RpcChannel_Destroy() just calls
    RpcChannel_Shutdown()

commit a91e16cb36188a8d02923b689a235b6a26dba9b2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:56 2018 -0700

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

commit 8e1e6d8a55bc67dc084ea92e9d449acaf1968ad3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:55 2018 -0700

    ToolsCore_GetVmusrLimit(): use app name from ToolsServiceState struct
    
    The vmusr process on Windows is calling ToolsCore_GetVmusrLimit() early
    in the process before ToolsCore_Setup() is called to initialize the
    ctx member.  In ToolsCore_GetVmusrLimit(), changing the call to
    VMTools_ConfigGetInteger to use "state->name" instead of the
    state->ctx.name.

commit 7deb123700457d97316cf536ce8ee9c4150e70cb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:55 2018 -0700

    Incorporate the RpcChannel failure count in the warning message
    
    The RpcChannel failure limit can be adjusted by the user.  Capturing
    the failure count reached when a "permanent" channel failure is
    being logged.

commit 6e7835970e73978db54bef24731d4a3d49cc9e2a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:55 2018 -0700

    Allow only a single instance of vmusr when multiple users are logged into a VM
    
    When a vmusr process gets the "channel conflict" error while attempting
    to open the toolbox-dnd channel, a channel reset is triggered.  That
    reset results in the channel being restarted and a subsequent conflict
    and reset occurs - every second until the channel becomes available.
    
    For *nix guests:
    The fix is making use of the repetitive channel resets where the only
    RpcIn message received is a "reset" to catch this channel "permanently"
    unavailable state.  If other RpcIn messages are received, a channel
    is considered to be working and the cumulative error count is cleared..
    
    lib/rpcin/rpcin.c:
    - struct RpcIn: Added error status boolean and callback function to
    notify the dependent layer that a channel error has been
    resolved.
    - RpcInLoop(): If a non "reset" message is received, clear any channel
    error status.  This will also notify the dependent layer
    that the channel is functioning.
    - RpcIn_start(): Added additional argument for new callback; NULL if
    not needed.
    
    lib/rpcChannel/rpcChannel.c:
    - struct rpcChannelInt:
    - Renamed "rpcErrorCount" to "rpcResetErrorCount" since it is actually
    a count of the consecutive channel reset failures and not a count
    of RpcChannel errors.
    - Added counter "rpcFailureCount" for the cumulative channel errors.
    - Added "rpcFailureCb" for optional callback to notify the app of a
    "permanent" channel failure.
    - New function RpcChannelClearError() for RpcIn to notify when the
    channel is working; to clear the rpcFailureCount .
    - RpcChannel_Setup() - added two arguments for (1) an optional function
    to be called when there is a channel failure
    and (2) a failure count threshold.
    These optional values are stored in the
    RpcChannel structure being created.
    - RpcChannelError(): Added logic to notify the calling app if the error
    threshold has been reached and notify the app if a
    callback was provided. A zero threshold signifies
    the single vmusr limit should not be enforced.
    (fix disable switch).
    
    services/vmtoolsd/mainLoop.c:
    - New function ToolsCore_GetVmusrLimit() to retrieve the channel error
    threshold default or over-ride from tools.conf.
    
    services/vmtoolsd/toolsRpc.c:
    - Added ToolsCoreAppChannelFail(): Callback for "permanent" channel
    connection failure.  A warning is logged based on whether another
    "vmtoolsd -n vmusr" is running or not and the process is terminated.
    On Mac OS, the process is terminated with exit(1) as an indication
    to launchd that the vmusr process should not automatically be
    restarted.
    
    The current implementation uses the error callback only for the vmusr
    server on Linux (*nix).
    The default channel error limit is 5 (approx. 5 second), but is user
    configurable in tools.conf.
    
    [vmusr]
    maxChannelAttempts = n    # where allowed n = 0, 3-15
    
    When "maxChannelAttempts = 0" is used, the restriction to a single
    running vmusr process is not enforced.   The existing behavior is
    restored with all the accompanying VMX log spew.  This is essentially
    a user configurable feature disablement switch.

commit 3e05fcb7f92256b6f878c05792e4e9c933854500
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:55 2018 -0700

    Common source file change not applicable to open-vm-tools

commit 0b39faad61c6879b1eae2c79e264cec62990899a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:55 2018 -0700

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

commit 09ac9ffe74fad2b9d73e59b0365bc7f641483019
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:55 2018 -0700

    Remove vmxnet and vmxnet3 drivers from FreeBSD builds and open-vm-tools
    
    The vmxnet (version 1) network driver is not supported by any currently
    supported VMware virtualization platform. Removing the FreeBSD
    specific vmxnet source and deleting the vmxnet.ko driver build from
    the tools and the open-vm-tools builds.
    
    FreeBSD has their own vmxnet3 network driver based on community source
    and has never made use of the vmxnet3 source code or drivers from
    VMware.  Removing the unneeded FreeBSD vmxnet3 source and builds

commit ecf022ae2b53034d483004e4f8640e66bdbfed9c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:54 2018 -0700

    Add virbr* interfaces on RHEL to default exclude-nics.

commit 444ef4fa635f89c1018e2563c31fc6f01450d942
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Oct 26 10:44:54 2018 -0700

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

commit 5add0ab1ad77a04edb6efc130fed1ad4abfe2ca6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Sep 4 15:41:00 2018 -0700

    nicinfo: skip loopback devices
    
    When libdnet isn't used, loopback devices were reported. This change
    skips these interfaces. Also skip interfaces that are down.
    
    The interface was visible with vim-cmd, but not in the VC or
    ESX UI. It did not contain any IP addresses.

commit 827d7fdbd4dc182f2f771977672d640d05e749b5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Sep 4 15:41:00 2018 -0700

    Common header file change not directly applicable to open-vm-tools

commit 8280a4bfec3b7f8977af6d352d1ba4291786c8a6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Sep 4 15:40:59 2018 -0700

    Commom header file change not applicable to open-vm-tools

commit f00f4772e77858ffeae1f10feef4c6bd59dde2f0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Sep 4 15:40:59 2018 -0700

    Update SSL configuration with more secure settings.
    
    Due to SSL issues in the past, The preference is to have default
    settings to be more secure than compatible.  This change mainly
    inherits the default settings from ssl.c.

commit bffe18fbf52826e52fa972bb090bcb4ff1831092
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Sep 4 15:40:59 2018 -0700

    Make Tools logfiles readable only by owner and root

commit 542046b5d4aa64e254da832b7d8c1ad6eefe2275
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Sep 4 15:40:59 2018 -0700

    Reduce quiesced snapshot warning messages when running on older hosts.
    
    vSphere 6.7 added a new interface on the host side that allows tools
    to send a "generic" backup manifest during a quiesced snapshot on
    Linux guests. VMTools 10.2.0 or later will try to send the manifest
    file and if the host is unable to field it, then VMTools logs this
    information and continues with the quiesced snapshot in the older
    fashion.  This change reduces the logging that is done in this case.

commit ef8b0bfcc4d7a37bfc92fca0c4f06d7499e58b42
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Sep 4 15:40:59 2018 -0700

    Add some key VMX debug messages
    
    Add some key debug-to-vmx messages to help debug SAML tokens.
    Fix a potential issue in the logging code.
    Always use a local version of htonll() since Visual Studio has
    changed its mind about its existance in vs2017.

commit 1ce7f3e7faca67b9ef8c42baaff23ec82019cb11
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Sep 4 15:40:59 2018 -0700

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

commit 0546f98b3beb75af0cdd435b4233c99a1f35253e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Sep 4 15:40:59 2018 -0700

    Tools: Clean up more "structured" left overs
    
    It's now "detailed data".

commit ce47017617b1a01fafddeb8b3f75debe374530e5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Sep 4 15:40:59 2018 -0700

    Tools: Symbol name revisions
    
    Change references to the recently added structured OS data to detailed
    OS data.  Replace "Structured" with "DetailedData" in names.

commit c1c102819e1df82f30f1d7b26b8da816d094fc3c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Sep 4 15:40:58 2018 -0700

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

commit 3211b6cb046fb1c9321efd074d60a0a7f9a7b011
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Sep 4 15:40:58 2018 -0700

    Fix a gcc-8 compiler warning in lib/misc/vthreadBase.c
    
    gcc-8 generates a stringop-truncation warning when it's possible
    for strncpy to exclude the trailing nul.  The code was fine, we never
    touch the last byte in the buffer and it's a static, but explicitly
    set a nul at the end of the buffer so gcc sees it.
    
    This is needed for open-vm-tools to build on SUSE Tumbleweed.

commit 233952398ef899a23b69087a1db1722ec71f503e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Sep 4 15:40:58 2018 -0700

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

commit 1535eb36e8293d753c29f1eaf6cd6d2165efb1ca
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Sep 4 15:40:58 2018 -0700

    End VGAuth impersonation in the case of error.
    
    * In GuestAuthPasswordAuthenticateImpersonate():
    When VGAuth_UserHandleAccessToken fails, unimpersonation is not
    being done. This can cause issues. Fixed it.
    
    * In GuestAuthSAMLAuthenticateAndImpersonate(), fixed the following issues:
    The 'newHandle' is not being freed which causes a memory leak.
    When VGAuth_UserHandleAccessToken fails, unimpersonation is not
    being done.

commit 82f3edb174f4fff33d72358f4fb3bd1f00aa264f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Sep 4 15:40:58 2018 -0700

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

commit 9c4144b6538928015184a52e7e5231a56907dfba
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Sep 4 15:40:58 2018 -0700

    Fix coverity complaint; not a real bug

commit 49f64d6445dd20b7f3a07e8fee3dff5e1e9b03a5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Sep 4 15:40:58 2018 -0700

    vm_version.h should include vm_tools_version.h only for Tools builds.

commit 0520c8ed6fb2d9a6cc466a2dd1441c4294673620
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Sep 4 15:40:58 2018 -0700

    Tools: Start using the new structure guest data
    
    Turn on the structured output for guest OS identification.

commit 356eb36845fa0aa1f1c3d2058c91bd8ecda23eb8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Sep 4 15:40:57 2018 -0700

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

commit 78b081377d9c4370b5a8a6d2a4f985f4d143e938
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Sep 4 15:40:57 2018 -0700

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

commit e509d49578ee5fa025c6393accc0e3f897217933
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Sep 4 15:40:57 2018 -0700

    Tools: More cleanup
    
    Remove references to VMDB.
    Cleaned up some headers - they are all the same now
    NIC, not nic in messages
    RPC, not rpc in messages
    OS, not os in messages
    Added a few debugging messages for the new, structure data paths

commit 47a6790d8b20c25a34488d2b279fe95ff36c44aa
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Sep 4 15:40:56 2018 -0700

    Add VMX logging support to vgauth
    
    Add support to log to the VMX.  Currently this is just for special
    error conditions.

commit 7c340eee74f1db6442467f8b0de72eb40f7b5837
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:53:31 2018 -0700

    sync version and build number

commit fbe2521a191980e2afc8f0d68fa31bbdb8f9a0e1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:51:55 2018 -0700

    Workaround for false negative result when detecting cloud-init existance
    
    "cloud-init -v" cmd is used to detect if cloud-init is properly configured and
    it works on most linux distros. However in some linux distro like Amazon Linux 2,
    "cloud-init -v" will print result to stderr instead of stdout and it makes
    "forkExecAndWaitCommand" give false negative result.
    
    1. added a new bool switch in  "ForkExecAndWaitCommand" to choose
       if we should ignore the stderr output when the return code is 0
    2. removed unnecessary reference for "ForkExecAndWaitCommand" in linuxDeploymentUtilities.c
    3. trivial change for some formatting

commit 1d2b93b545ec9060c91a2afbcaf8dbc8bc897e34
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:46 2018 -0700

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

commit 1f15c765275316d0fae89b2eb089ba8fcd7ceabb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:46 2018 -0700

    Tools: Rename GuestInfoUpdateVmdb to GuestInfoUpdateVMX

commit ef4d2bc0a20bc348704dcd2df93695e8249b2818
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:46 2018 -0700

    hostinfoPosix.c: More clean up

commit 6ec4bb7ff88538f0cc5257e6c22f22d1afb73470
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:46 2018 -0700

    Tools Version change for AppDef Beta - 10.3.2.

commit 799fa0932ed7a5e673892c9ef5c2d2c905ef14d7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:46 2018 -0700

    Common header file change not applcable to open-vm-tools.

commit 69976fc902b8c08f85ce11d9afbc06767dcd8793
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:46 2018 -0700

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

commit 44e3d3c02bae8734d9396b462089f639c5b02b68
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:45 2018 -0700

    Fix memory leaks in 'vix' tools plugin.
    
    * vix plugin retrieves the power script file paths from the
    config file but doesn't free them and this causes a memory leak.
    Fixed the code to free the filepaths.
    
    * In GuestAuthPasswordAuthenticateImpersonate function, the VGAuth
    handle is not freed when the impersonation fails. Fixed the
    code to call VGAuth_UserHandleFree in the error path.
    
    Note: I executed one guest operation with wrong credentials.
    Every failure leaks 75 bytes of memory. (in Centos 64-bit VM)
    
    * Fixed another minor issue in the code. At couple of places in
    the code, replaced 'err' with 'vgErr' for storing the return value
    of VGAuth_UserHandleAccessToken.

commit 9f52cd6f278aae31d72cd018655b31978ee53bba
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:45 2018 -0700

    open-vm-tools: build without libdnet by default
    
    Building with libdnet does not add any value for Linux, so build
    without it by default, but keep the option open to fall back on
    it if there are issues.
    
    FreeBSD still needs libdnet for full functionality, therefore
    make building without it the default only for Linux.

commit 64848ab7e16492c4bb8544eaff1aa839783e63bf
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:45 2018 -0700

    Some source code clean up.

commit c3461876464b93bcd65cca2a01767ffae0bf9ef3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:45 2018 -0700

    lib/file: FileIO_CloseAndUnlink
    
    Unlink regardless of the close status.

commit 1d6223d03fdcf56758877b99e0cbd8b1d22ab639
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:45 2018 -0700

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

commit d2bb2886a1cc41b4fc4966f30e443bed2bce2684
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:45 2018 -0700

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

commit 9b2bbc77ed18ac1b61dd9055ec1c468da5ba49af
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:45 2018 -0700

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

commit 7e4b0b67628554186c3ca0cd68d427f2ab8b8818
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:45 2018 -0700

    Adding structured data to Tools. (feature DISABLED)
    
    This change touches both vmware-tools and the VMX.
    
    Tools:
    Added new rpc for sending a structured data. The structured data is
    composed of 2 parts. A struct header and a well formatted property list
    string called structured string.
    
    The structured string is built by appending key='value' pairs
    separated by ' '. This string will include any extra information
    regarding the guest that is applicable to the VMX and higher up.
    
    The structured string will not include any '"' characters and all '\\'
    and '\'' characters are escaped. The fields included in the structured
    string will vary depending on the guest OS, and if Linux, also what lsb
    standard it conforms to.
    
    The structure header contains the OS name and OS long name and will
    always be included. If the structured data can be sent successfully the
    short and long os names are not sent individually. If the VMX is an
    older version and does not support the structured data RPC, then the
    send in Tools will fail and can react accordingly.

commit ba0fb39c6f636092079040fa35ef96a44c107b73
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:45 2018 -0700

    Back out the previous change to a common header file.

commit cabba0a37c21d91576ed7986597db9deb38cf153
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:45 2018 -0700

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

commit d6ec07055e4bb8eb8a0f632a3b6daa9387138819
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:44 2018 -0700

    Common source file change not directly applicable to open-vm-tools
    
    Verify existence of the returned path, retry the guest OP
    CreateTemporaryFileInGuest/CreateTemporaryDirectoryInGuest using system
    temp folder if the path disappears.

commit 19ca3e36f6f16842a54f6f297f3cafcabde2f384
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:44 2018 -0700

    Change for tools vmx logging. Added locking to handle race condition
    and deadlocks.
    
    While there, changing GStaticRecMutex to GRecMutex since
    GStaticRecMutex is deprecated since glib 2.32, and we are now at
    glib 2.48.
    
    The requirement here is that on top of the existing logging mechanism,
    toolsd also send logs to VMX according to VMX side setting for toolsd
    log levels. The existing logging mechansim shall be preserved so that
    if there is a problem sending a message to VMX, that message is saved
    in the guest according to whatever exising setting in tools.conf
    either to a local file or the guest syslog. In addition, if there is
    an issue sending VMX the log message, additioinal logs about the error
    can also be logged using the existing tools.conf based log mechansim.
    
    In order to support both the new and the old RPCs and the existing
    tools.conf settings, it is best to use static globals for the vmx
    logging. This simplifies both design and coding, and make it easier
    to reason about the state of the vmx guest logger.
    
    There is also no need to split the new code into another file. The newly
    added logic actually belong to vmtoolsLog.c which keeps track of the
    global states of the log processing and then invokes each external
    log handler. The newly added code shall be invoked from the existing
    vmtoolsLog.c framework code and also uses/updates multiple existing
    vmtoolsLog.c data structure.
    
    The old VMX LogHandler shall be left alone for now, since not all guest
    apps will move to the new code at the same time. Once every apps have changed,
    the old VMX LogHandler can be removed. Also removed is the stoplogging
    code from the old VMX LogHandler since it is already covered by the
    caller VMToolsLog() in vmtoolsLog.c
    
    The global logging state is initialized as early as possible. However,
    it should be done after the first VMTools_ConfigLogging() call so
    that if there is any errors during the initialization, we can use
    the local logging system to log them.
    
    For a compatibility with older hosts and older tools, this change
    tries to make sure the old vmx handler settings shall still WORK.
    This is the most challenging part.
    
    In order to avoid sending logs to VMX twice, if the VMX handler setting
    is specified in the tools.conf, the local logger shall replace it
    with the default file logging. However, the vmx handler setting is
    NOT ignored, it shall be honored and used if the host is old and does
    not support the new guest.log.* RPCs. There, we shall enter a fallback
    mode and use the old log RPCs and the VMX handler's level setting is
    read and used.
    
    Need to call the setup() code in multiple places.
    1) Initial start up (this is to enable it as early as possible).
    2) Set option for a host designated level change.
    3) RPC channel reset.
    4) Tools config change procssing from signal HUP or timer callback.
    
    The setup code can use g_xxx() for logging, but the core log handler
    VmxGuestLog() cannot, to avoid recursive g_xxx() calls. Instead,
    it calls Debug()/Warning() suites just like RpcChannel code.
    
    Before, the RpcChannel loggings are thrown away which is not good.
    This change here fixed the issue by logging those using the internal
    VMToolsLogInt() function which directly write to the file system logger.
    
    This change also fixed a bug where the vmtoolsd domain logs are thrown
    away at the beginnnig of the tools load up. Enabling those requires us
    to add the username as part of the log file name, since both the vmsvc
    and vmusr processes would have use the same file vmware-vmtoolsd.log
    which would cause a permission problem. The g_get_user_name only
    returns the user without the domain. This might be a concern if
    there are the same user id in both the local accouts and in the
    domain. This rare case needs to be handled, but I am leaving it out
    for now since it is very rare use case, and the same problem exists
    already with the existing code.

commit 82df2654ab19cb03438f3f59034101fe1b3e6aea
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:44 2018 -0700

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

commit d5f6c71ada79e3d5d65c8e1786069d366f8f72fd
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:44 2018 -0700

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

commit b5b7eac80c468358871e96968e7bfc92b316846e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:44 2018 -0700

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

commit a9f4fd75e83720fd8bc96a487d642d5730dc89c8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:44 2018 -0700

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

commit ebf08325adf874723c86aa313954492101117934
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:44 2018 -0700

    Disable hgfsServer plugin when not running in a VMware VM.
    
    VmCheck_GetVersion() accesses Backdoor in an unsafe manner
    which is not expected to work on non-VMware environments
    including physical machines. So, we need to make sure that
    VmCheck_GetVersion() is called only when we are running in
    a VMware VM.

commit a778e115e4174b9cd5798838588e8fd4f175d558
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:44 2018 -0700

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

commit 455a76d9e10636f6667010f10be282fae145a454
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:44 2018 -0700

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

commit 995e3f462932578a80934947bc87235d6e621beb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:43 2018 -0700

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

commit 4f7c3bf51cba283c5264dd1d838c6d67ce40351d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:43 2018 -0700

    Optional override for short and long OS names sent from Tools
    
    Added support for customers to override the returned long and short OS
    names through the tools config file. If the setting is present, then names
    gathered by hostinfo will be ignored. The user is responsible for setting
    the appropriate names.
    
    The override will be ignored if the short-name setting is not present in
    tools.conf.
    
    An empty string will be sent for the long OS name if only the short-name
    setting is present.
    
    Appropriate warning msg will be generated in both cases.
    
    Example of the conf setting:
    
    [guestosinfo]
    short-name = centos6-64
    long-name = some long name

commit 2e86d0f86d91d6ffd87345c5c76053361d56c19b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:43 2018 -0700

    Common header file not directly applicable to open-vm-tools.

commit 9e9f6155931885c785463ba5d99ece78c8039f98
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:43 2018 -0700

    Tools version to 10.3.1 as ben assigned to a Hot Patch.
    
    Tools 10.3.1 has the newer version of the WDDM driver 8.16.01.0001

commit 20fd139fd1ab50f6bd44749ffc8ebdf4aa1da293
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:43 2018 -0700

    Expose more guest stats for vROPS to report the exact physical memory
    stats as the guest OS UI does.
    
    Windows:
    guest.mem.modifiedPages (Win32_PerfRawData_PerfOS_Memory#ModifiedPageListBytes)
    guest.mem.standby.core (Win32_PerfRawData_PerfOS_Memory#StandbyCacheCoreBytes)
    guest.mem.standby.normal (Win32_PerfRawData_PerfOS_Memory#StandbyCacheNormalPriorityBytes)
    guest.mem.standby.reserve (Win32_PerfRawData_PerfOS_Memory#StandbyCacheReserveBytes)
    
    Linux:
    guest.mem.total (/proc/meminfo#MemTotal)
    guest.mem.buffers (/proc/meminfo#Buffers)
    guest.mem.cached (/proc/meminfo#Cached)
    guest.mem.slabReclaim (/proc/meminfo#SReclaimable)
    guest.mem.available (/proc/meminfo#MemAvailable since Linux 3.14, emulated by VMTools for kernels 2.6.27+)

commit 49c74fb3a37aa1fd973f72e078ee9a10c7199fc9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:43 2018 -0700

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

commit bfa850db67e150e8d44093a14ef6a9999c5c9968
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:43 2018 -0700

    Fix some bad derefs in primary NIC gathering code.
    
    Found by user in https://github.com/vmware/open-vm-tools/issues/272
    
    Debug code tries to access a struct field that may not have been initialized.
     - Pointer deref'd without a sanity check.

commit 742c2c3bcea285302487b02bddad042237810663
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Aug 29 13:29:42 2018 -0700

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

commit 5d33923a603758f1d97bad4245674a403f1d5944
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:09 2018 -0700

    lib/file: Add missing errno for FileLock_Lock()
    
    FileLock_Lock() can return the errno to the caller through int *err.
    Before this change, one case is missing: EAGAIN.  This change will fix it.

commit 8ad72bbf4a0687808e1a20f98bae213468611b1a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:09 2018 -0700

    Maintain VMware Tools release history in vm_tools_version.h
    
    Tracks TOOLS_VERSION_JACKHAMMER_UPDATE1 = 10.3.5.
    Tracks TOOLS_VERSION_CHAINSAW_PATCH2 = 10.2.7.

commit c8155fccf45883d034ce211e1b13dc209014d276
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:09 2018 -0700

    Log reply from VMX when powerOps plugin fails to send RPC.
    
    The powerOps plugin sends a "tools.os.statechange.status" RPC after
    the power scripts are executed.  The reply from VMX for this RPC
    is not currently logged.  The reply is very useful to debug
    'toolsRunningStatus' issues in FSR workflows.  Modified the code
    to log the reply.

commit 3e97096d420d361d2777d4ce827a75261b711d9b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:09 2018 -0700

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

commit d6e035ee1cfd3fe43df893a0a46ccba870540a1b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:09 2018 -0700

    Calculating monitor work area: No bar exists if seamless maximizing
    
    In Unbuntu 18.04, Redhat 7.4, 7.5, the work area size could not be calculated
    based on _NET_WM_STRUT or _NET_WM_STRUT_PARTIAL.  These two properties could
    not be retrived through the window manger.  In this fix, use _NET_WORKAREA to
    get the work area, but this is only available with a single monitor.

commit c045848efbf4494565bf86aeb098eac28c3cbd0e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:09 2018 -0700

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

commit 6fe529b678a0de7a2016b27047da844bde30e7a6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:09 2018 -0700

    Back out previous change to powerOps.c

commit 1e6255d4c81fd942c136701d9822d6249787af44
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:08 2018 -0700

    Log reply from VMX when powerOps plugin fails to send RPC.
    
    The powerOps plugin sends a "tools.os.statechange.status" RPC after
    the power scripts are executed.  The reply from VMX for this RPC is
    not currently logged.  The reply is very useful to debug 'toolsRunningStatus'
    issues in FSR workflows.  Modified the code to log the reply.

commit 4259f4e685370895a052ea27cdbd07a5f8b60553
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:08 2018 -0700

    Changes to header files: Add support for Mac OS 10.15
    
    Add the basic support for Mac OS 10.15; the hosted UI team will
    decide when things become customer facing.

commit ed493754080a28d77e1a14b9b8e8a2ee163a9de6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:08 2018 -0700

    Common header file change not directly applicable to open-vm-tools

commit ceac5b23cdf7101019ccbe806575115d285978c6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:08 2018 -0700

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

commit 93e869c8936024cc6d072ac95ac167a00dd80d33
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:08 2018 -0700

    Common header file change not directly applicable to open-vm-tools

commit d6f4eaa182a2cee590932981a968993157e6c6a6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:08 2018 -0700

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

commit 835368f6bc128b0324990b70487918a54e14bbe2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:08 2018 -0700

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

commit f603332ac13214577767df01917b20d45e18f85d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:08 2018 -0700

    Common source file change not applicable to open-vm-tools

commit 88c53fc060239f384b9c5f7fe2eb8bfb871661b0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:08 2018 -0700

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

commit 034695e2d34df7b1a4e44ab8a871ba4799dfac81
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:08 2018 -0700

    Use ToolsCmd_FreeRPC() to free the memory instead of vm_free.
    
    There exists a function ToolsCmd_FreeRPC that can be called to free
    the memory allocated from the ToolsCmd_SendRPC function call.
    
    At few places in the code, vm_free is used to free the memory.
    Replaced those references with ToolsCmd_FreeRPC.

commit f3f9dcf51a76bc9acfcc2412428a0a3dbb469c09
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:07 2018 -0700

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

commit 37e26227f9b57485d8e9eb2f57330a48c99fd7b8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:07 2018 -0700

    OVT: update AUTHORS to include John Eismeier
    
    Update AUTHORS to include John Eismeier for fix some spelling
    https://github.com/vmware/open-vm-tools/pull/264

commit 5d27cc8090975bbcf3bcc442a60bbf476a05a4a8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:07 2018 -0700

    Changes to common source files; not directly applicable to open-vm-tools
    
    Back out the previous change; missing a file.

commit e70640b985d31612ad63506eb3dd838b8bbded14
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:07 2018 -0700

    Changes to common source files; not directly applicable to open-vm-tools
    
    Add support for CRX pod and sys (version 1) VMs
    
    These are special Linux 4 VMs; the CRX pod VMs are wrapped around
    Kubernetes. Here we provide the basic VMX recognition and support
    mechanisms. Later changes will add the support of the CRX pod VMs
    to VIM/VMODL... and other pieces.

commit 251ca7762ecddfe052f3b8f2c879a9fcb714fb4c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:07 2018 -0700

    Properly free the memory when RpcChannel_Send() fails.
    
    At few places in the code, when RpcChannel_Send() function fails,
    the result (fourth argument to the function) is not freed which might
    result in a memory leak.
    
    Addressed few references by adding 'RpcChannel_Free(...)' calls
    in the necessary error code paths.
    
    For toolbox-cmd application, added a new function ToolsCmd_FreeRPC
    which internally calls RpcChannel_Free function to free the memory
    allocated from ToolsCmd_SendRPC calls. Modified toolboxcmd-shrink.c
    to use the new function to free the memory.

commit 62ee46c7748f9003904c5973da851994566f7214
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:07 2018 -0700

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

commit 4dafbf1d97eb923d497a57f545f4c73c882fa3a8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:06 2018 -0700

    Hgfs Server: fix some spelling errors
    
    Fix some spelling errors as mentioned on pull request
    https://github.com/vmware/open-vm-tools/pull/264

commit 0e52b04c09b7be47f36d5c9c75691f33e402143c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:06 2018 -0700

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

commit a50141e22177462962991f09f567ce3428f5b5de
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:06 2018 -0700

    Common header file change; not directly applicable to open-vm-tools
    
    Backout the previous change.

commit 73aa922e5a50b33bf5f47cbd0991faa15afe51da
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:06 2018 -0700

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

commit 9b3e899b9d349ed252ba5d27a0d58c8ed0b6d66c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:06 2018 -0700

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

commit 2ea4da9cf517477853ebf40096a360a464ab914d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:06 2018 -0700

    Common header file changes related to Log Facility; not directly applicable
    to open-vm-tools

commit 868d74c2389db8c0ed25ac7a83bc4a3fb08849e2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:06 2018 -0700

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

commit 63a1cbf60f82022ab37f5003e1b6e49ba9dbb9c8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:06 2018 -0700

    Add Util_Data2Buffer() variant that supports custom separator
    
    \0 means no separator at all.

commit ede9ca72e1ac0013c1560399c2cc394dcf70bb4a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:05 2018 -0700

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

commit 52d43d8e05657dbd995914ff646a30d922a5e72d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:05 2018 -0700

    Add the notification to toolsd about the guest log level change.
    
    Consolidated the VIGOR APIs of guestLogEnabled and guestLogLevel, since
    it is easier for the customers to use just one API to set both. Use
    the "disable" enum value to disable the guest logging instead of
    using a separate field and VIGOR API.
    
    Now sending a new tools option to the toolsd whenever the guestLogLevel
    changes.

commit 1d390482f4a5e0f7a2826d55012b213860295f72
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Aug 20 12:48:04 2018 -0700

    Back out the previous socket timeout fix
    
    Reverting commit 4453414

commit def5e3aa8cb0ba5457cf5147e32f80eec8556f49
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:23 2018 -0700

    [tools] Cleanup RpcOut reply after send failure
    
    There is a path in RpcOut that does not clear the reply message
    after a failure.  This can cause the invoker to trigger a free()
    failure.

commit 89f5ddb272cee9edd7b94ad10bab3f0c25d47e70
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:23 2018 -0700

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

commit 2abf659307e6c660f94c77ea9f40f679f0a7130d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:23 2018 -0700

    [VMTools] [DnD] [Code Refactor] - part 1 - dndGuest/dndcp sides refactor
    
    These code changes are based on following two principles:
    1. No functional impact/change on DnD & Copy Paste feature for WS/Fusion.
    2. The DnD base code is ready for Horizon View DnD feature target for
       an upcoming release.
    
    Summary for this patch:
    1. The dependency refactor to add a new folder dndGuestBase (lib\dndGuestBase)
       to extract the common code shared by WS/FS and View.
    2. Add two sub folders to dndGuestBase (vm-inc and crt-inc) to contain
       the WF/FS or view specific header files. (for example,
       vm-inc/vmGuestDnDSrc.hh, crt-inc/crtGuestDnDSrc.hh....)
    3. The header files start with 'crt' will not be used by WS/FS, they are
       added only for specifying the new folder structure.
    4. Move WS/FS specific dndGuest/dndcp codes to WS/FS specific derived
       classes like VMGuestDnDCPMgr, VMGuestDnDMgr, VMCopyPasteDnDWrapper and so on.
    5. Also have created some Horizon View specific codes on mkvchanserver in
       local environment to verify most of interfaces in the base classes are
       ready for Horizon View side DnD development.

commit 682679b70fe4d2f3455844f81856e1d8aec65dd8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:23 2018 -0700

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

commit 2c538abac6352b219ee9fa97afa769eeba12f555
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:22 2018 -0700

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

commit 4453414447537f3d7da71dbc678a8de698001cd9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:22 2018 -0700

    Fixed socket timeout issue when we send multiple namespacetool commands.
    
    When namespacetool commands are run without any delay, the second command
    may fail because the previous socket connection was not closed.

commit 5b9d8e2a1bada1b13cf2369ca6ff118e07fec104
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:22 2018 -0700

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

commit b17f9fa3c50f0aeed6760bc9b383c58d540dcd4f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:22 2018 -0700

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

commit 4ef4a932d92ed60976f065713b34d218174887cd
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:22 2018 -0700

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

commit 63e5ec8438cc4e1c1a39885c75baf661059dc7b3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:22 2018 -0700

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

commit 8be65e2dc14e724e0b902669cd14ce431dd20c76
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:22 2018 -0700

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

commit a9a723a05033fbf1405316c8e0ee7e753058fcb0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:22 2018 -0700

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

commit 4750dcff03e88674e49b9a920c1e6ee1f4355e9d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:22 2018 -0700

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

commit 3e4211020d7dc446db8942586dd2e94fea4d93c7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:22 2018 -0700

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

commit 4745bddc698a81e599237771e558f6a34f2a75b0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:22 2018 -0700

    [GHI over MKSControl] Improve the documentation of GHI channels.
    
    Also improved the log messages. And add a DND channel.

commit 7709224e3878833bdef1d6c89a6aeaef2f91229d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:22 2018 -0700

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

commit 485a379c33578f712ecbfa70e5a49df20e21fd53
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:22 2018 -0700

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

commit 7c3fab49fa6b6630e9bb742d41dfb14c44a651c6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:21 2018 -0700

    Update the Tools-10.3.0 OSL.

commit 5277280d7192379dcd77330cb33b513f12cec153
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:21 2018 -0700

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

commit a79c38c8f266712bae44053c5fb41d237a4bee0f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:21 2018 -0700

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

commit 322dba026b1b19799c3e34eab8452c7bbf805148
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:21 2018 -0700

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

commit 08d77f0d8d8cdf9f50620adf5dd287b5c5357254
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:21 2018 -0700

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

commit 96214c008175c82ac958456ac1c17c2ecca90604
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:21 2018 -0700

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

commit 2fdb335e3662b8559e0fa00f5e1278f794f2d31b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:21 2018 -0700

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

commit 46ad0b583d41027e5b188b76bb96fd15fcbe5127
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:21 2018 -0700

    Yet More SnowMotion Logging
    
    Prior logging indicates an issue when reading back from disk, so
    tweak the logging to report the count# (since SuperFgets doesn't log
    null terminators) of bytes and add a log to Dictionary_WriteFile to log
    the last 100 bytes of the buffer.

commit 57bc4445db65d50d0f7292bf99f1d239e5e3ac9a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:21 2018 -0700

    Fix the broken list in lib/include/guest_os_tables.h
    
    The list wasn't sorted.

commit 5144365f59262c0e773f953d8a42f11e06150f19
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:21 2018 -0700

    Changes to common header files; not applicable to open-vm-tools
    
    GOS: Add support for Windows Server 2019
    
    Add support for the upcoming Windows Server 2019. With this change it
    is present but does not show up in a public menu. Making it appear in
    a customer menu is something the hosted UI group does... when they are
    ready.

commit 707c9cf72348dae4a789e612339c5ff1959ce9a3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:21 2018 -0700

    Remove the new guest metrics feature switch, permanently enabling the
    collection of new guest metrics for vROps..

commit 4a1b82e70211e96cc5da71b223a38acba7121765
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:20 2018 -0700

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

commit ef4cb45f37cc57f0b91906a0749ec09e6f73b6aa
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:20 2018 -0700

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

commit 2f59cb53a75d34ff8e5693496028e64d0b05b7d7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:20 2018 -0700

    open-vm-tools: use lib specific var names for AC_PATH_TOOL to avoid
                   caching issues

commit 6dd7bddc0a89cac738382e9dae39f4d34d706f5f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:20 2018 -0700

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

commit 401e18c02e3a0b1f541f256a4c46a3d34fc5661f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:20 2018 -0700

    [tools-plugin] Potential solution for reported desktopEvent crash
    
    On several distros like RHEL, CentOS and Fedora, plugin desktopEvents.so
    crashes have been reported.  However, neither development or QE can
    reproduce this issue in local environments.
    
    The XFetchName document states that it may generate BadWindow error.  That
    means that the value for a Window argument does not name a defined Window.
    X FAQ also suggests handling badwindow error after finding it.  Since
    the window does not exist when XFetchName is run on it, the name is not
    needed.  Suppress this error to avoid a crash.
    
    After grabbing the X server, use XSetErrorHandler to temporarily define
    a local error handler to intercept and cleanly handle any BadWindow
    errors.  XSetErrorHandler returns the current error handler, so it is
    straightforward to reinstate GDK's original handler.

commit 58a05f680a7c11eeb2fbb576579969c1895bb01d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:20 2018 -0700

    Changes to common source files; not directly applicable to open-vm-tools
    
    MXUser: Lock tracking causes panic
    
    MXUser locks require a unique serial number so the lock stats code
    can proprly differentiate between each lock. We can't depend on the
    name to be unique as some locks are created and deleted many times,
    reusing their names.
    
    The serial number is also used to avoid ASLR attacks... we can't use
    the address of a lock... and even if we did, it's possible for that
    address to be reused... MXUser locks are dynamically allocated.
    
    The lock tracking code tracks the number of locks and this is now
    causing an issue. Way back when it was thought that seeing what
    was deemed a huge number of locks indicated a problem... but today
    we think those limits are getting quite small.
    
    Enlarge the serial number space to 64-bits. If we constantly create 1M
    locks per second it would take over 500000 years before we would have
    a problem like this again.

commit 1ba390a66aa6a7821bfaae018248e4f005da6512
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:20 2018 -0700

    Common header file change; not applicable to open-vm-tools
    
    Back out previous change to lib/include/ghIntegrationCommon.h.

commit f7a67dad2c1dbe4b8b933dcdf73d46e24b6525a7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:20 2018 -0700

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

commit d302a0d7d89b566ac82561c7630f463caa58237f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:20 2018 -0700

    [OVT] Update copyright year to 2018 for few files.
    
    Updated the copyright year to 2018 for few files changed in the last
    few days.

commit f79000faf754d38b3e8ef53458a4f51fcab455c4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:19 2018 -0700

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

commit 727871f9681b398330d6f186035bbb2c51369353
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:19 2018 -0700

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

commit 94f5b5e5a1fccc94706aba6f3f432162adbfac41
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:19 2018 -0700

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

commit 63a14504022a8b9509d9dc3235ae9e17e5843e10
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:19 2018 -0700

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

commit c024d229e4369366c45e816ac7b257c98f858d80
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:19 2018 -0700

    open-vm-tools: use AC_CHECK_TOOL for pkg-config
    
    AC_CHECK_TOOL honors the --host setting to configure, and
    searches for tools with the cross compile prefix thus
    allowing for cross compile specific tools.
    
    Fixes issue #26 in github.

commit 954f4b360aa4a18b29004b2cf382a37b46f900ca
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:19 2018 -0700

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

commit 1965add45fc265bd295480c00bfe4d8248abea3c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 27 11:46:19 2018 -0700

    Fix a bug where the clipboard content on the host gets loaded to tmp on
       the Linux guest with a right click on the guest
    
    Root Cause: Dndcp plugin creates a sub thread to monitor if there is another
                application access to the specific file.  The root cause for
                this bug is the main thread doesn't update its field before
                wakeup of the sub thread, this cause the sub thread get a wrong
                value.
    
    Solution: Main thread should update the field before waking up the sub thread.

commit c4810ef28ba40c5b5631aea1488cde3221503efc
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 6 15:02:37 2018 -0700

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

commit 6b48b2680673c562121940c59821222c6793a5f5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 6 15:02:37 2018 -0700

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

commit 4cd839359c127447686ed2f587b91b2c0095cc6a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 6 15:02:37 2018 -0700

    open-vm-tools: build for FreeBSD fails in fakeMouseWayland
    
    Root Cause:
    In the file fakeMouseWayland.cpp, several Linux related header files are included:
        <linux/input.h>
        <linux/ioctl.h>
        <linux/uinput.h>
    
    These header files do not exist for FreeBSD and Solaris.
    
    Solution:
    Lib fakeMouse is not needed by FreeBSD and Solaris, so update the makefile to build the fakemouse related code only on Linux.

commit 28dec2775af9c12e4e05b8662acc3a225595aaf3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 6 15:02:36 2018 -0700

    Back out previous change to add SnowMotion-specific SuperFGets logging.

commit 26a7bbaa1dfad5411b804829988cdf0ce4127b49
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 6 15:02:36 2018 -0700

    Add SnowMotion-specific SuperFGets logging
    
    Prior logging suggests vmx-side corruption prior to VM powerOn, so add
    logging closer to the source to try to isolate the cause.
    
    This includes a toggle that will be triggered in main and unset on VM
    powerOn.

commit 33205aafc87a147729ddbdfd562d08edcd0c5cd3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jul 6 15:02:36 2018 -0700

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

commit a6b976a9726d7a94b482f846c5ba486105483026
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 19 17:07:51 2018 -0700

    Use "/var/run" or "/run" instead of "/tmp" in Linux guest for imc package copy
    
    1. check if /var/run is a directory in VM
    2. if Yes, use /var/run/XXXXXX
    3. check if /run is a directory in VM
    4. if Yes, use /run/XXXXXX
    5. if both No, use /tmp/XXXXXX as before

commit 0345475d49f8155e9a27dd28fe6f9b5bacbdd8d2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 19 17:07:51 2018 -0700

    Return proper vix error code when guest op VIX_COMMAND_DELETE_GUEST_DIRECTORY_EX fails.

commit 8674505bf43fcf3099d767d17d5e8b400bb2e418
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 19 17:07:51 2018 -0700

    FreeBSD: clang compiler related changes to configure.ac
    
    On FreeBSD, the unwind.h header is available in the libunwind
    package (/usr/ports/devel/libunwind) which may or may not be installed
    on a system.  The libunwind functions to determine the call-chain in a
    program are defined only if " __GNU_SOURCE" is defined to enable "all"
    GCC extensions.  Avoid the unwind.h header if seen on FreeBSD.
    
    The "clang" compiler will issue warnings if the address of a member
    of a packed structure is taken.  Since warnings are errors with -Wall,
    add --Wno-address-of-packed-member to CFLAGS when compiling with
    "clang".

commit 30e58e8a0a18fcf3013cd76889056c055966bd50
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 19 17:07:50 2018 -0700

    Build open-vm-tools with xmlsec1 by default.
    
    Build open-vm-tools with xmlsec1 by default, rather than with
    xml-security-c as is done currently.  This requires modifications
    to configure.ac to change the default for use_xmlsec1, plus
    modifications to bora-vmsoft/install/Source/tools-pkg.make to
    initialize flags for xmlsec1 and xml2 now needed by the OVT build
    that is done during tools builds.
    
    Another change that surfaced during this was that the symbol that
    configure checks for the xmlsec library was wrong.  It should be
    xmlSecCheckVersionExt rather than xmlSecCheckVersion.  The latter
    is a header-defined macro but not a library symbol.

commit 0d8437a0ed19163e0b30d2f653fd6cfc8c6c6c8b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:41 2018 -0700

    Go back to the old INVALID_PPN value

commit e3fa62739ec86f00b90c5a7586698125093de8bc
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:41 2018 -0700

    Various small fixes to windows balloon driver; not applicable to open-vm-tools.

commit ac8f3f74ca37cd5b2e006120a54926f801309537
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:40 2018 -0700

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

commit 3aa98a239fb53ce7e5ffab2953dd414c38858790
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:40 2018 -0700

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

commit 9f057f1f1805fd822f09cd17f080ee852cb2f352
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:40 2018 -0700

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

commit 95938b9bf10e19f7b4873d62c6c766892bc0cf6e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:39 2018 -0700

    Update APIC_INVALID_PPN and PHYSMEM_MAX_PPN

commit bc241e19875862306fc66e42ec50faa20312ccf2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:39 2018 -0700

    vm_basic_types.h: remove VM_I386
    
    The VM_I386 macro is described as "historical". But recent cleanups
    reduced the number of usages to the point where "historical" can become
    "removed".
    
    Remove the declaration, comments describing the declaration, and
    fix the last two places to use the modern macro alternatives.

commit ac5261a005f11edad653f6cd884d28714e8242c5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:39 2018 -0700

    open-vm-tools: build with tirpc
    
    Newer distros (Fedora, OpenSuSE Tumblweed) no longer ship rpcgen with glibc,
    so we need to build with libtirpc (see
    https://bugzilla.redhat.com/show_bug.cgi?id=1531540 and
    https://bugzilla.suse.com/show_bug.cgi?id=1089181). With this change,
    configure will check for the presence of libtirpc and if found, sets
    flags to build with it. configure will also exit with an error if
    rpcgen is not found.

commit 84a43542a2fcad1df3a8eb4cec460d67d359ee27
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:38 2018 -0700

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

commit 411d143eee043afe7f649573305096453608d77a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:38 2018 -0700

    Add Safe version of DynBuf_Enlarge
    
    This change adds the "safe" variant of the enlarge interface. Similar to
    DynBuf_SafeAppend, this panics when the buffer enlargement fails due to
    memory allocation failures.

commit 910f5c10b01f04862fd1b25af18166c17eb1cdff
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:38 2018 -0700

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

commit 0701b481beb3b310e733d65667fa59ad0b64d9c9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:38 2018 -0700

    open-vm-tools: build dndcp with thread libs
    
    Recent changes in the dndcp plugin made it necessary to make sure that
    it links against pthread libs.

commit 5402d55a456ea21a5f39ebb5e7d9a84434f6dae6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:38 2018 -0700

    Log full version of Tools in vmware.log.
    
    Currently, only the Tools build number is logged in vmware.log.
    It will be very handy to have the full version logged in
    there and avoid the need to manually lookup the build.

commit a0ec585e3aad04d2a8a27706d7b99bde60f4a8d2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:37 2018 -0700

    Remove CPUIDSummary
    
    CPUIDSummary is no longer used and, along with its corresponding header file
    cpuid_info.h, can be removed.

commit ab11ce6bd158f9bb08de323ba9b518b259ee2488
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:37 2018 -0700

    Change the balloon driver internals to 64-bits.
    
    As a first step towards making the driver being able to balloon 16TB+,
    let's change all the internals to use 64-bits values for the counters.
    Initially, I wanted to only touch the windows driver, as this is the one
    that we really care about, but since some code and datastructure are
    shared, I had to modify pretty much all drivers.
    
    The next step will be to change the drivers capabilities by adding
    BALLOON_64_BIT_TARGET.

commit 6e450a50dce8eb0387cd6aa2a3eeb39b364640b7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:37 2018 -0700

    Bump invalid PPN to 2^52 - 1
    
    We are ready to bump INVALID_PPN value. Let us set it
    to 2^52 - 1. This is more than enough to get over 4PB vRAM,
    that requires 40-bit PPNs.
    
    Another option was to set it to (uint64)-1, like the current value
    of INVALID_PPN64, but it seems like there is no good reason
    to do it. There are a few instances where INVALID_PPN is
    treated as a regular PPN, e.g. we may convert it to PA and back.
    2^52 - 1 will allow us to preserve that natural relationship
    between invalid PPN and invalid PA.
    
    All INVALID_PPN64 will have to be converted to INVALID_PPN
    in follow up changes.

commit de663d0b5c4cbdd799932c7d6202326c8e2caf62
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:37 2018 -0700

    Drop suffix 64 in public except vm_basic_types
    
    This change renames PPN64, TPPN64, PgNum64 and PgCnt64 as PPN, TPPN,
    PageNum and PageCnt respectively in the public directory.

commit b8f31230261acb03f84a33bf45bb34f6c0b8211e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:36 2018 -0700

    Fix locale issues for vgauth on Linux
    
    setlocale() returns nothing unless we earlier force it
    to be empty.
    
    Change the default msgCatalog location on Linux so
    the catalogs can be found without config changes in the normal
    install area.
    
    When doing catalog lookup, first chop off the charset
    suffix.  Otherwise we first look for 'zh_CN.UTF-8', then
    fall back to just 'zh' if that fails.  We support zh_TW and zh_CN,
    but not a 'zh'.
    
    Also fix things for NeoKylin, which appears to use LANG
    but not setlocale().

commit dee74b5944132494ddb3462bfaab8aa31300cf98
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:36 2018 -0700

    Changes to build CAF with VS 2015; not applicable to open-vm-tools.

commit bb73aa0856a2715ab8481748097c973f4089b3b5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:36 2018 -0700

    Tools 10.3,0 L10n drop2
    
    This is to integrate the final L10n drop for VMware Tools 10.3.

commit fc46fff9904be54286947f4ce61c26f8118c3b33
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:35 2018 -0700

    Common header files change not applicable to open-vm-tools.

commit f00ecc833139a651edf936d7b4c01bfd1504908f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:35 2018 -0700

    [Wayland DnD] Part3: Update the Drag Detection Window and Use UInput in DnDUIX11
    
    Two changes in this patch:
    1. Changes the class DragDetWnd to template class.
    
       Currently the DragDetWnd inherits from Gtk::Invisible, but Gtk::Invisible
       doesn't work for Wayland, it seems this is a bug for Wayland and maybe it
       will be fixed sometime.
    
       So, changes the DragDetWnd to template class, and it will inherit from
       Gtk::Invisible for X11 and inherit from Gtk::Window for Wayland.
    
    2. Uses UInput to simulate mouse motion in class DuDUIX11.
    
    This patch is part of the new feature 'Wayland support in Linux guest'.

commit 140820c8bdc0d2d83909612bc0e877eaff8ff5d0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:35 2018 -0700

    vm_basic_types.h: use system headers for uint64_t, uintptr_t, size_t
    
    Extensive rewrite. Basically standardizes on using stdint.h (C99)
    and sys/types.h (POSIX) to define interesting types, with several
    non-trivial caveats:
    - stdint.h is not available on older Windows compilers. For now,
    emulate with crtdefs.h + manual definitions.
    - Linux kernel does not provide stdint.h (gcc-4.5+ does and it's
    incompatible), and sys/types.h won't work at all.
    However, linux/types.h gives everything we need.
    - Linux kernel defines uint64_t as 'long long' (and uintptr_t as
    'long' - yes, really), in contrast to Linux userlevel which defines
    uint64_t as 'long'. Send Linux kernel down a different FMT64 path
    so we don't get "%llx" / "%lx" mismatches.
    - VMM and VMKernel don't provide sys/types.h (except VMK's FreeBSD
    modules). Directly provide definitions here.
    
    Net effect of this change is removal of two blocks of code that
    provide our own definitions of uintptr_t/intptr_t/size_t/ssize_t.
    Also pruned a few now-unneeded stdint.h and sys/types.h includes as well.
    
    Curious observers will inquire why not get size_t from C99 standard
    header stddef.h. Turns out that header is EXCEPTIONALLY hard to include,
    which is why I'm using sys/types.h in most places. Actually using
    stddef.h is left for a later change.

commit 5852956ccace7a55c3834dfbfaf15d1f45d6d0c0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:35 2018 -0700

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

commit 9c528b5b013821f2d8bc4ad5258e9e9bd5338021
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:34 2018 -0700

    [OVT] Update copyright year to 2018 for files modified since 10.2.5 GA

commit 46a0b08377224ac62d78c88dfd2cd3c4e049e169
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:33 2018 -0700

    [tools] Not checking symbols when building open-vm-tools
    
    Using a hard-coded mangled name is not a good idea because C++ does not
    have any standard for name mangling.  Remove these mangled names introduced
    in an earlier fix.

commit 67c9aeb27a0c7064369c5863e6dc91b3090a5737
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:32 2018 -0700

    Hgfs Win Client: fix bad illegal character escaping; not applicable to open-vm-tools.

commit 79f95aa342b58e0eceeb7b6ae010b57c804abdcb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:32 2018 -0700

    Bump the tools version on the devel branch to 10.4.0

commit 1e18ab88842e0d9d930a9cb3d4f710f5e12d4c62
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:47:32 2018 -0700

    Header file change for tools logging improvements for VMware Managed Cloud.

commit 4420450a96c279b89af4999005202e3d7e8eca4a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:45:07 2018 -0700

    MXUser lock: Remove ASLR defeating stats reporting
    
    Way back when the tracking of the top users of an MXUser lock was added
    to the stats. It was never used, it's not reported by kstats.prl and
    the code make it possible to break ASLR. Remove the code.

commit 33db7c56e888d9c7c5f8f76fd0de927d50389ae5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:45:07 2018 -0700

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

commit 54191584c2ebb7b5cc2faced5046c366630e0118
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:45:07 2018 -0700

    Add two switches for max IPv4/6 routes to gather
    
    Gathering nic info in a Linux guest OS which is configured with large
    number(60000+) of ipv6 routes could result in vmtoolsd process taking a
    long time and rock solid 100% CPU of a core.  Though tools only exports
    at most NICINFO_MAX_ROUTES(100) routes, it tries to read all the contents
    of /proc/net/ipv6_route which costs too much time because:
    1. IPv6 route table is not efficient natively compared to ipv4 due to
       its implementation.
    2. The g_io library can aggravate the performance.
    
    On the other hand, when gathering routes, IPv4 comes first, and IPv6 second.
    And the routes reported to VMX has an overall limitation of serializing
    (NICINFO_MAX_ROUTES).  If there's more than NICINFO_MAX_ROUTES IPv4 routes
    in system, no IPv6 will get reported.
    
    Added two switches "max-ipv4-routes" and "max-ipv6-routes"
    (NICINFO_MAX_ROUTES by default) in tools.conf and let SlashProcNet_GetRoute*()
    only read the first max ipv4/6 routes lines of /proc/net/[ipv6_]route to avoid
    performance problem.  Users can disable ipv4/ipv6 routes gathering
    separately if they want ipv6 or ipv4 only.

commit 0b045f21abfef3da7789e6258ef0b2ee7221eeda
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:45:06 2018 -0700

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

commit f1a7a8bbdbb790bab80f0fc55134180048242afa
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:45:06 2018 -0700

    Hostinfo_GetCpuid Cleanups
    
    This change includes several cleanups in Hostinfo_GetCpuid. The CPUIDSummary
    type is unnecessary, the function really only cares about levels 0 and 1.
    Also removed a hardcoded mask and shift in favor of a CPUID_GET and fixed
    some formatting issues.

commit 5657cd53e41048264a831f8c0bcebcced8d21944
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:45:06 2018 -0700

    locks: Increase buffer size in MXUserHistoDump
    
    It was noticed that the size of one of the char arrays in MXUserHistoDump
    is not large enough given the format string. This change bumps the
    size to accommodate (plus slack).

commit 00087edfaec951fb7330843282a0fe20128fbb56
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:45:05 2018 -0700

    [Wayland Copy & Paste] Part2: Uses VMBlock notification mechanism for Copy & Paste
    
    This patch is part of the new feature for Workstation 15: \[P0\] Wayland
    support in Linux guest - Copy & Paste.
    
    In the first patch, the notification mechanism is added to the VMBlock module.
    In this patch, the notification mechanism is used,

commit 8532fc18fe4acbb3f1df354fa3f94bf7d4581adc
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:45:05 2018 -0700

    [Wayland Copy & Paste] Part1: Add notification mechanism to the VMBlock module
    
    This patch is part of the new feature for Workstation 15: [P0] Wayland support
    in Linux guest - Copy & Paste.
    
    In the implementation of current VMTools, there is a restriction, in the first
    second after grab into the guest, the CopyPasteUIX11::LocalGetFileRequestCB,
    which is a callback from a file paste request from another guest application
    and begins copying the files from host to guest and return the file list,
    will return none directly.
    
    The Wayland file explorer will request the content in the clipboard after the
    user clicks on the file explorer, and the request will get nothing since the
    restriction in the VMTools, so the following ‘Paste’ operation will fail.
    
    Solution:
    This solution is only used for the Linux guest with Wayland. The behavior
    for Linux guest with X11 will not change.
    
    The restriction, the CopyPasteUIX11::LocalGetFileRequestCB returns directly
    in the first second after grab into the guest, will be removed.
    
    And, the notification mechanism will be added into the VM block file system.
    This mechanism is similar with the inotify module.
    
    Take the VMBlock Fuse File System as an example, currently, the mount point contains below contents:
    
    * /blockdir/
    
    * /dev
    
    /blockdir/ contains the symlinks to the contents of the target directory.
    
    /dev is the control file for VMBlock Fuse File System.
    
    In this new solution, a new folder /notifydir/ will be added, each file in this folder is a special file, read from this file will be blocked until any other process read from the corresponding file in target directory or the block on the target directory is removed.
    
    This patch only focus on the notification mechanism.

commit f240e2095c0780eb4e8afa4a75d7cbb83c7f4185
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:45:04 2018 -0700

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

commit d92e07cb46d66894e2278f954584b75259b8534f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:45:04 2018 -0700

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

commit 277b574bebe8f7c595e2c6002ead84cfe4492d8d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:45:04 2018 -0700

    Define 64-bit PPN, TPPN, PageNum and PageCnt
    
    This change introduces 64-bit PPN, TPPN, PageNum and PageCnt
    types so we can start dropping 64 suffix everywhere in the code base.

commit 41dc7d851d9d20b345f0063e700775fc8e8b594a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:45:04 2018 -0700

    [Lifecycle][ESX] Allow ALL 'admin' users to access Personality Manager APIs
    
    1. During the uninstall workflow, NSX-T does not have access to 'root'
       users and uses an admin user created by them to call Personality Manager APIs
    
    2. Added a new PAM module for "settingsd" service and removed "root"
       hardcoding.
    
    2.1 Kept it same as "sshd" module except I removed sending VOB during
        authentication.
    
    3. For this, updated the auth lib to add a new method Auth_AuthenticateUserPAM,i
       which takes the PAM "service-name" to use while authenticating.
    
    4. Modified the existing method Auth_AuthenticateUser to call this API
       when USE_PAM is true.
    
    5. This would be available only on !_WIN32

commit bd0cf5aa66781bbfccd39f9a0e145053c0e2fb7b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:45:04 2018 -0700

    retire PPN, TPPN, PageNum, PageCnt types
    
    This change retires 32-bit PPN, TPPN, PageNum, PageCnt types and
    introduces temporary PPNTMP type for tools (graphics, pvscsi, balloon),
    so that driver owners can work on PPN64 conversion at their own
    pace and can easily identify places that require attention.

commit 15bf6c2e417fa7b52500f8981538cf6515a0e02f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:45:04 2018 -0700

    Common header files change not directly applicable to open-vm-tools.

commit b763d9b17cfb17745f990f329e416ba1abeef70d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:45:03 2018 -0700

    Common header files change not directly appliable to open-vm-tools.

commit 1e7f879d82c515a0244cdb607ac46401c9055b47
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:45:03 2018 -0700

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

commit c598268c3355757395d279d922adcdc055a51448
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:45:03 2018 -0700

    Hgfs Server Plugin: only handle the shared folders client in hosted products
    
    Only initialize the Shared Folders client redirector in hosted product
    environments.
    
    Details: Check if the tools system service started in a non-hosted product
    and if so do not start the shared folders client redirector.
    Check if the tools user service started in a non-hosted product product and if
    so then skip reconnecting any Shared Folders mapped drives.

commit 4f97b892121c31d3deb05e15b5dc2c8e0c69b749
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:45:03 2018 -0700

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

commit e62247538d0fb334272a100e42cc248c6b9e1845
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:45:03 2018 -0700

    Remove debug display of CPUID vendor string seen in VmCheck_IsVirtualWorld
    
    The "Debug" message containing vendor string returned by the CPUID
    instruction will appear on STDERR for stand-alone programs such
    as vmware-checkvm.

commit 77d6d2bf3f8965302f258b27b433fa6dc2183c00
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:45:03 2018 -0700

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

commit e0bcd12ada77bb8f1b1a549c02ac537de51e2476
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:45:02 2018 -0700

    Backout previous header file change.

commit 5eaf3d287aa417c7020f5011cf834d618d577890
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:45:02 2018 -0700

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

commit e6f7422b9454f0b272755128f373879e0fa78627
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Jun 5 15:45:02 2018 -0700

    VMware Tools 10.3 L10n drop1
    
    This is to check in the 1st L10n drop for VMware Tools 10.3.

commit 7ddbe3c9df400dfdf7d67d259ae3942d157dedb4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 30 15:42:54 2018 -0700

    sync deploypkg files

commit 80a23d71a281493071668fd45b77d7f8248fad68
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 30 14:04:14 2018 -0700

    Changes to common header files:
    - Add Amazon Linux 2 to the known guest OS list.
    - Other change not application to open-vm-tools.

commit 48dc7a57ff3fe5cb1441040876f74b69772c1ea5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 30 14:04:13 2018 -0700

    [DeployPkg] Replace Log() references with g_log()
    
    * Modified the code to replace a couple of Log() references with g_debug()
    so that they are properly logged with 'deplogPkg' domain instead of the
    generic 'vmsvc' domain in the tools log files.

commit 9cb12223b4da529df043d95ab025f22c6ee00c39
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:18 2018 -0700

    [oss] Upgrade GTK+ and its dependent libraries for VMtools
    
    GTK+ and its dependent libraries are upgraded to:
    gtk+       2.24.32
    atk        2.28.1
    gdk-pixbuf 2.36.11
    pango      1.40.13
    cairo      1.14.12
    fontconfig 2.13.0
    freetype   2.9

commit a5c03957c95ec78c92246b87cdf60a90b2eca7f7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:18 2018 -0700

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

commit f87d177acab33f00229234ed51722504e2f7afc7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:18 2018 -0700

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

commit ba65905dfc7e6c07d1aeea37db885284e54b02fa
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:18 2018 -0700

    Set perms on Tools script logs.
    
    Make the network script logs secure; set log file perms to 0600.

commit aa59d16e0b5968efc298065ef50ece282d406265
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:18 2018 -0700

    [Wayland DnD] Part2: Open the uinput device file with root permission.
    
    The device file /dev/uinput (or /dev/input/uinput) can only be accessed
    by root account, so the dndcp plugin may failed to open this device file
    if the current user is not root account.
    
    A way to fix this issue is opening this device file with root account,
    then pass the file descriptor to the sub task which is started with the
    current account. An example for this solution is blockVM file system
    device file.
    
    This patch is part of the new feature 'Wayland support in Linux guest'.

commit b3899c91d348d23c2e6c22944b8ac1a06e4e3988
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:18 2018 -0700

    [Wayland DnD] Part1: Add 'fakeMouse' module which is used to simulate the
           mouse motion under Wayland
    
    For Linux guest with X11, the VMTools uses the X system APIs to simulate
    the mouse motion, but these X11 System APIs do not work in Wayland. Need
    to pick up another method to simulate the mouse motion.
    
    Another way to simulate the mouse motion is using uinput module.
    
    uinput is a kernel module that makes it possible to emulate input devices
    from userspace. By writing to /dev/uinput (or /dev/input/uinput) device,
     a process can create a virtual input device with specific capabilities.
    Once this virtual device is created, the process can send events through
    it, that will be delivered to userspace and in-kernel consumers.
    
    Here is the link which contains more information about the uinput module:
    
    https://www.kernel.org/doc/html/v4.12/input/uinput.html
    
    This patch adds a new module named 'fakeMouse' which is used to simulate the mouse motion under Wayland.
    
    This patch is part of the new feature 'Wayland support in Linux guest'.

commit 995befcb0d6156fb47773c96db6d478173d1bc89
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:18 2018 -0700

    Add new guest metrics to be consumed by vROps.
    
    Windows:
    * ProcessorQueueLength
    * CurrentDiskQueueLength
    * AvgDiskQueueLength
    
    Linux:
    * CPU run queue size
    * Current disk queue size
    * Average disk queue size

commit 9d6cfe650cd15095e65024fbb5d9cd6944e1cf14
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:17 2018 -0700

    Historical: Recording version numbers assigned for 10.2.x patches.
    
    Define TOOLS_VERSION_CHAINSAW_PATCH1 as 10.2.1.
    Define TOOLS_VERSION_CHAINSAW_PATCH2 as 10.2.6.

commit ba6c319f18d294b36c0e989f851fbfdbc8a629b7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:17 2018 -0700

    Bump up the version requirement for glib and friends to 2.34.0
    
    For open-vm-tools, we are bumping up the minimum version requirement
    to 2.34.0 for glib and its friends. Modified the configure.ac
    with the proper new version checks. Also, updated the
    error message with the proper version.

commit 26d03ad8075913cb869b814462b7285c02367252
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:17 2018 -0700

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

commit ce1ed002f5e05f09678e15b4021bac8155edb1eb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:17 2018 -0700

    Common source file changes that are not directly related to open-vm-tools.
    
    Build vmtools and vgauth for Windows with xmlsec instead of
    xml-security-c.  It will still be possible to build with xml-security-c
    either by commenting out the definition of USE_XMLSEC_FOR_WINDOWS in
    bora-vmsoft/vgauth/make/inc/defs.mk or adding a make command line
    argument of USE_XMLSEC_FOR_WINDOWS=0.

commit d5c0bcea04aae65484ba3c2756b64acf6f6388d0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:17 2018 -0700

    Update bora-vmsoft/install/Source/README
    
    The content is stale. Since the file is used internally and is
    not published, rather than maintain it in two places, point to
    the current README file and Release Notes on github.

commit 512d5475520ec5e0525633cd47530faaae774b5e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:17 2018 -0700

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

commit 982998c9a6a3ec8664f9c4c08ff9ef30f52a9ae2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:17 2018 -0700

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

commit ab36b3227275a5beded8a5115929e2d649c6aad3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:17 2018 -0700

    Common header file changes not applicable to open-vm-tools.

commit 0527d5c5f14f626a5129231778ec433dfff55c2a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:17 2018 -0700

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

commit 571dc1fbadd962d91dcb7a44652b501de3f48e0e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:16 2018 -0700

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

commit 998903d73496bf6080053f994c8410dc880db2f9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:16 2018 -0700

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

commit 3b814f9b4dcbf54893078a4ba187d8d0cbf23e31
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:16 2018 -0700

    lib/hashMap/hashMap.c:
      Add new HashMap_Get() which uses a constant time memory comparison function.
    
    lib/misc/utilMem.c:
      Constant time memory and string comparison functions.

commit 5daceb4448834143d884b061f391c37aeaaad683
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:16 2018 -0700

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

commit 42d1e6b11c0b11c1b1f6f967cb5c4d7e2f3b39e0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:16 2018 -0700

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

commit f4b7b227119712c90be4a3583d4430a3fcc1d093
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:16 2018 -0700

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

commit 874b8b4801a5bba439401db8e624e3e3d1989ca7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:16 2018 -0700

    Common header file change not applicale to open-vm-tools.

commit ff2616a657c32bbb5e6799f8b8cd0a470d0e5202
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:16 2018 -0700

    Common header file changes not applicable to open-vm-tools.

commit 5d9cc73f1c7979466d55f7897f98c0888d2fb15d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:15 2018 -0700

    Header file change in preparation for C++11 compilation.  Also updating
    copyright dates.

commit 29fb30f6d1956ccd4ad803b1b7f0430e4ef28ceb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:15 2018 -0700

    FreeBSD vmmemctl: Fold in open-vm-tools pull requests #125 and #140
    
    This change incorporates two open-vm-tools pull requests that provide
    code changes that allows the existing vmmemctl.ko driver to be compiled
    on FreeBSD 10, 11 or 12.
    
    Pull request #125:
    An optional argument has been added to the sysctl_add_oid() function
    in FreeBSD 12.x. All releases have a SYSCTL_ADD_OID() macro that does
    not require the additional argument.
    
    Pull request #140:
    Functions and macros to lock and unlock memory pages and objects have
    changed between the FBSD 10 & 11.  The pull request provides a set C
    preprocessor directives to select the appropriate code based on the
    FreeBSD release being targeted.
    
    The code change as been tidied up by using the release version checks
    to define LOCK and UNLOCK macros for memory pages and objects at the
    beginning of the source file.  The code logic is easier to follow
    without the abundance of #if, #else and #endif statements scattered
    about.
    
    Ed Schouten: https://github.com/vmware/open-vm-tools/pull/125
    Steve Wills: https://github.com/vmware/open-vm-tools/pull/140

commit 2a34b181de524b3f0d01cad90d3da184bde7ad99
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:15 2018 -0700

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

commit fab45e62a1468b86d2097a6a0784c4f259d6b0ef
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:15 2018 -0700

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

commit 357e8418e5441c2c5fc75a19f7b6529d6bce7452
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:15 2018 -0700

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

commit fad97e4a7c756b3b297e0fe9e68a1a4674c4fdcc
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Apr 23 17:08:15 2018 -0700

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

commit 357d9139342c19a98ed12f5961f415d099df3287
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Mar 23 15:05:36 2018 -0700

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

commit 6c3261d152442fa11fc2b928490d74846f23465d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Mar 23 15:05:36 2018 -0700

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

commit 3747daca8efbfe8e709687b97c874a29f183b717
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Mar 23 15:05:36 2018 -0700

    Backout previous change to lib/include/vm_basic_math.h.

commit f9414d19532a9664e6c260a8644ee09200e32429
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Mar 23 15:05:36 2018 -0700

    Common header file change: lib/include/vm_basic_math.h
    
    Define portability macros for Inf and Nan tests.

commit de2010a1a45a9e515b932a1a83374539661a2b39
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Mar 23 15:05:35 2018 -0700

    Add missing memory constraints for vm_atomic RMW (Read/Modify/Write) instructions
    
    There are two inseparable concepts involved when dealing with atomics:
    1. Atomicity of the access itself
    2. Ordering of the access with respect to other reads&writes (from the view of
    other processors).
    
    Our Read-Modify-Write functions are all meant to provide the highest level of
    ordering guarantee: Sequential Consistency, which means no reordering of reads
    or writes across the access. We properly implement that on ARM, and on
    x86/x64 at the hardware layer. But, on x86/x64 we needed to tell the compiler
    (it must flush out any pending reads/writes that are currently hiding in
    registers)
    
    Side Note: we do *not* change the pure Read and pure Write functions, only
    the Read/Modify/Write ones. On both ARM and x86/x64, vm_atomic functions like
    Atomic_WriteN provide no (re)ordering guarantees today (at the hardware layer
    on ARM or at the compiler layer on x86/x64). This is because some callers
    didn't need or want such guarantees - as such, Atomic_WriteN by itself is
    *not* sufficient to, say, release a lock. Making these remaining atomic
    weapons safe by default will require us to first
    1. add new unordered atomic equivalents of Atomic_ReadN/TestBitN and
    Atomic_WriteN (in C11 terminology, acquire/release and relaxed)
    2. Scan the tree and switch appropriate callers to the new functions
    
    *and only then*
    3. Strengthen the defaults, affecting only callers who needed the stronger
    defaults to be correct. ... but that would be a separate change in the
    future.
    
    Codegen differences (vmm.vmm64):
    --------------------------------
    The function that uncovered this was ST_HandleCrossCall, which invoked
    Atomic_And64.
    
    original w/o explicit compiler mem barrier in ST_HandleCrossCall:
    ...
    lock and 	QWORD PTR [rdx+0x0],rax
    movsxd 	rax,DWORD PTR [rip+offset]  <-- load reordered after Atomic_And64
    lea    	rax,[rax+rax*2]
    lea    	rdi,[rax*8+0x0]
    
    with "memory" constraint, it's now identical to code w/an explicit
    compiler mem barrier (which was the workaround):
    ...
    mov    	edx,DWORD PTR [rip+offset]  <-- load emitted prior to Atomic_And64
    ...
    lock and 	QWORD PTR [rsi+0x0],rax
    movsxd 	rax,edx                     <-- ... and used after Atomic_And64
    lea    	rax,[rax+rax*2]
    lea    	rdi,[rax*8+0x0]
    
    vmm.vmm64's .text section shrank 28 bytes
    vmware-vmx's .text section shrank 16 bytes
    
    Given that these are tiny fractions of the .text section, this suggests the
    problem was quite rare, which is why it escaped our attention until now.
    (Testing of vmx's lib/lock, lib/sync, lib/vprobe, and lib/misc saw no
    differences with GCC 4.4, 6.4, 7.1 or Clang)
    
    While in there: nuke some tabs
    
    Slated for a future change: vmkapi_atomic.h

commit 333ac41076afff4e31ccb0d0688e1581e8c9019a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Mar 23 15:05:35 2018 -0700

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

commit 8671bd8d4f68a490a5b20f1876f05797f3057c4b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Mar 23 15:05:35 2018 -0700

    vmcheck.c VmCheck_IsVirtualWorld(): Always check for a working backdoor.
    
    The specific checks for Xen and VirtualPC hypervisors currently happen
    only if the VMware hypervisor is not detected.  The test for a working
    VMware backdoor is then done to avoid all other hypervisors.
    
    In the case where running on a VMware hypervisor and the backdoor
    channel has been disabled such as with
    
       monitor_control.restrict_backdoor = "TRUE"
    
    vmtoolsd, vmware-toolbox-cmd and vmware-checkvm will crash when
    attempting to get the version number of the installed VMware Tools.
    
    Added an additional test to detect Linux KVM with the existing tests
    for the Xen hypervisor and Microsoft Virtual PC.  Avoid checking for
    a working backdoor if a non VMware hypervisor is seen.
    
    Microsoft Hv checking to be added later and is tracked in a separate PR.
    Oracle VirtualBox provides no unique CPUID vendor signature string.

commit 09958952cc761075d5546b18bed0ce59260ec4db
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Mar 23 15:05:35 2018 -0700

    FreeBSD open-vm-tools kernel modules compilations cannot locate <stdint.h>
    
    With the change for VMware headers to utilize the standard types
    defined in C99 standard headers, the compilation of FreeBSD kernel
    modules must specifically add /usr/include to the compilation
    options.
    
    CFLAGS += -isystem /usr/include
    
    This change updates the Makefiles's for FreeBSD kernel modules and
    drivers.

commit cdf0406dc669f2284e1e810ac5820f123d46a50e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Mar 23 15:05:35 2018 -0700

    FreeBSD: Improper use of sysconf() for getpwent buffer size leads to
             vmtoolsd crash.
    
    On FreeBSD, sysconf(_SC_GETPW_R_SIZE_MAX) can return -1 if it has
    no hard limit ultimately resulting in an incorrect buffer size.
    
    This change is adapting the sysconf() ifixes done elsewhere to
    bora-vmsoft/services/plugins/vix/vixTools.c and updating the
    open-vm-tools AUTHORS file to share credit for the pull request.
    
    https://github.com/vmware/open-vm-tools/pull/238

commit e20e9bd49d244749ee6bcd4ea7d57a26d891afbe
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Mar 23 15:05:35 2018 -0700

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

commit 7e03f0676a8d1a8667d7d6aeda968a74c8708c0e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Mar 23 15:05:35 2018 -0700

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

commit 0c4420178932c1879f402ece689e5cfaf5f37d84
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Mar 23 15:05:35 2018 -0700

    CAF changes for Windows; not applicable to open-vm-tools.

commit e9463abdc0d56d0612237faf01a5736c9998b499
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Mar 23 14:57:12 2018 -0700

    sysconf() usage leads to crashes in BSD tools
    
    Not using the sysconf interface properly when determinining the
    getpwent buffer size. Fix this.
    
    Problem was identified and proposed fix was submitted in pull request
    https://github.com/vmware/open-vm-tools/pull/238

commit 4eff69adab058331a1e93aee17ed9a4e13fa8714
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Mar 23 14:57:12 2018 -0700

    [lib/file]: remove useless heap allocation
    
    FileIO_AtomicUpdateEx allocates the argument to the "swap" ioctl
    on the heap. This argument is a struct which contains a single int
    fd... there is no need to heap-allocate it, the stack is just fine.

commit 6de42f7d96fb5c70d70ae3b68011477f8b93aef2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Mar 23 14:57:12 2018 -0700

    bora/lib: Use _exit when in the context of a signal handler
    
    There are a few cases in bora/lib where exit(3) is used in the
    context of a signal handler. It was recently noticed that exit(3) is
    not async-signal-safe, and _exit(2) should be used instead.
    
    This patch changes a call from exit(3) to _exit(2) in bora/lib.

commit 54415a34a372388374bf322d8118ef47c7b0f9f7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Mar 23 14:57:12 2018 -0700

    Hgfs FUSE Client: enable the FUSE client for RHEL 7, Ubuntu 14.04 and others
    
    The RHEL 7.x releases are all kernel 3.10 based. Currently the Hgfs FUSE
    client will not be enabled for these earlier kernel versions, enabled only
    for 4.0 kernels and later.  This means for default tools install on plaftorms
    running those kernel versions the Hgfs kernel client must be installed and
    used for Shared Folders.  The consequence of this means that the tar tools
    installer must be run to provide the Hgfs kernel client on top of the OVT
    install.
    
    To remove the need to install the tar tools we must enable support for the
    Hgfs FUSE client, which just requires the kernel version check to be modified
    from 4.0.0 to 3.10.0.

commit 84977ad9a0ca964d5873516c42efec328bac23c9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Mar 23 14:57:12 2018 -0700

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

commit 587d95eeadbdab2f20020ef24686bd989af6d8b0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Mar 23 14:57:11 2018 -0700

    lib/misc/hostinfoPosix.c: Fix sscanf format string case typo.

commit 8e22cb4da06036b71a06698da3377ed72cfef440
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Mar 23 14:57:11 2018 -0700

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

commit 9e3738b457eba1d9f8302fa449e9521da59f2dfd
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Mar 23 14:57:11 2018 -0700

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

commit 18358aecd27f7d77b71d5ab31250edc600b7bfbc
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Mar 23 14:57:11 2018 -0700

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

commit 670dba44e90c64173a1f67e617a7193f18fc3a2c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Mar 23 14:57:11 2018 -0700

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

commit 5fe941cd27194495811036667d312f14aece1975
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Mar 23 14:57:11 2018 -0700

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

commit 03faa87192b23354a996b4d62282c002de002c59
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Mar 23 14:57:11 2018 -0700

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

commit 2438cefba37d37de65bf2003b1880f47b529ef47
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Mar 6 10:38:43 2018 -0800

    Enhancements for rpcChannel library.
    
    rpcChannel.c file contains the code for building rpcChannel library. A good
    amount of the same code is duplicated in rpcChannelSimple.c file to
    build a simplified version (no glib dependency) of the rpcChannel library.
    It's recommended to remove the duplication and maintain only one single
    file which can be used to build both 'glib-dependent rpcChannel' and
    'glib independent rpcChannel' library.
    
    This changeset implements the following changes:
    * Removed rpcChannelSimple.c
    
    * Renamed I_USE_SIMPLE_RPC make variable to USE_RPCI_ONLY. If this
    flag is specified, rpcChannel library will be built using only RPCI.
    No dependencies on rpcIn will be added. This inturn will remove
    dependencies on dynxdr, xdr and glib.
    
    * Modified the RpcChannelInt structure to have only the necessary
    attributes when USE_RPCI_ONLY is defined.
    
    * Modified a bunch of functions into '#if defined(NEED_RPCIN)' block
    to make available only when necessary.
    
    * Modified guestrpc.h to provide the declarations for few RpcChannel_*
    functions only when needed.
    
    * Modified rpcChannel library to implement necessary stub files / functions
    when it has to be built 'with rpci only' setting.
    
    * Removed various copies of 'glib_stubs.c' maintained by different
    consumers of rpcChannel (appmonitorlib, vmGuestLib, 'imgcust' components).
    
    * Modified the make files of various consumers (vmGuestLib, appmonitorlib,
    imgcust components [linux-pkg-deployer, guestcustutil, UnitTest]) to
    remove the dependencies for dynxdr library.
    
    * Did some code refactoring.
    - Removed some dead code in some make files.

commit 87be66f17bf7911a8ec59ce9917778f7f653a398
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Mar 6 10:38:43 2018 -0800

    Implement a new function VMTools_GetTimeAsString.
    
    * Implemented a new function VMTools_GetTimeAsString in
    vmtools library which returns a properly formatted UTC timestamp
    information. This function can be used by different modules / plugins
    in 'VMware Tools' to add the timestamp information in log files.
    
    Example of UTC timestamp information: "2018-02-22T21:17:38.517Z"
    
    * Modified vmtools logging module to call the new function and
    prepend the UTC timestamp information in every log message.
    
    * Modified deployPkgLog.c to use the new function.
    
    * Removed references / definition of System_GetTimeAsString since
    it is no longer used anywhere in the code.

commit acbf7d90add72d9d3aa70bb8677179e7b3d28e23
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Mar 6 10:38:43 2018 -0800

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

commit 87ddd2684bff33836db5667718449f42642c76e2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Mar 6 10:38:43 2018 -0800

    GOS Table: The official Amazon Linux 2 string is "amazonlinux2-64"
    
    The hosted UI isn't creating an Amazon 2 VM with the correct guest OS
    identifier string. Fix this.

commit 91b42f829a0ddc13a1657610700332dad7a9e362
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Mar 6 10:38:43 2018 -0800

    Fix vgauth log timestamps to have zone and use UTC

commit d225ed26cca556f559c035234d11bd7d380c6d7f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Mar 6 10:38:42 2018 -0800

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

commit d585ee8fcc4135d6d52fdc38ec2e0ca747663bf7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Mar 6 10:38:42 2018 -0800

    Compilation fixes to build Tools with VS2015
    
    This change consists of fixing warnings/errors as a result of building Tools with VS2015.

commit 03c98a1fb30513b223e3d6eafb21b5f4d4c6c5bc
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Mar 6 10:38:42 2018 -0800

    Add timestamp information to each deploypkg log message.
    
    * Modified deployPkgLog.c file to prepend UTC timestamp information
    to each log message coming from 'deploypkg' module in 'VMware Tools'.
    
    * Used bunch of glib functions to get the current UTC time. As per
    the glib manual, these glib functions are available since 2.26. 2.26 was
    released around 8 years ago which is kind of very old. Having the glib
    dependency on 2.26 is OK.
    
    * Did some minor code refactoring. In DeployPkg.c file, at all
    call sites for DeployPkgLog_Log, replaced the hard coded values with
    the proper LogLevel enums.

commit 73a21a057dc23cf428b5fa1799eb0c5945732fee
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Mar 6 10:38:42 2018 -0800

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

commit 3eb8434aebde9a2eebc65d57044d8ea6367d685f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Mar 6 10:38:42 2018 -0800

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

commit 24e9d211752210abb94bd1e76bec8be20d8abef8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Mar 6 10:38:42 2018 -0800

    vm_basic_types.h: enable stdint.h for c99
    
    C99 mode (a.k.a. __STDC_VERSION__ >= 199901L) guarantees
    the stdint.h header will be present, which means we can use it
    for standard types instead of rolling our own.

commit b4016c210e7cb6c0407d40dba5edfa64d550bef3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Mar 6 10:38:41 2018 -0800

    Don't lose errno/lastError when logging
    
    guestOps need to see errno/lastError in order to return the proper
    error to VIX/guestOps APIs.  Logging (at any layer) can cause these
    to be overwritten, so make sure they're preserved.

commit 14a0ffe23be6437c9ee656ccf2d516ead6265dfd
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Feb 26 19:23:18 2018 -0800

    Enhancing CAF listener preconfigured check logic to update the preconfigured flag at runtime
    
    1. Preconfigure listener and start listener upon tunnel enabled logic are
       invoked in two different threads.
    2. There is a case where preconfigure logic is performed after the
       pre-configured flag is computed in the enable-listener thread.
    
    The current patch invalidates the flag in the start listener thread and
    should guarantee the preconfigured status is up-to-date.

commit 60f7afc97264435e1c04c2e70fe39397261b52b4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Feb 26 19:22:04 2018 -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 872baeed3fd1e79f89143baa0b9c47077b655567
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Feb 26 12:29:08 2018 -0800

    lib/file: add File_MakeSafeTempSubdir
    
    File_MakeSafeTempDir and File_GetSafeTmpDir are typically used to create
    "safe" temp dirs on Windows and Linux. These are dirs in a known-secure
    location with known-secure security attributes that only allow access to
    the current user. These APIs work fine. However, on Windows if one creates
    a subdir inside the safe dir, the subdir may be given an unexpected
    (and overly restrictive) set of default DACLs on it in unusual situations.
    The solution is to introduce a new API specifically to allow a caller to
    create a subdir within an existing safe dir that ensures the DACLs
    are exactly what are needed.

commit bdbab22ec42544dbfff657b811d695e5b5a6d429
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Feb 26 12:29:08 2018 -0800

    Remove the header file safetime.h
    
    This removes the file itself.

commit 047f05f379eb73530ac943d35cda5c162e045fa2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Feb 26 12:29:08 2018 -0800

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

commit 2c927bb65029cb89ba0c4b7ba9b341890166823d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Feb 26 12:29:07 2018 -0800

    Skip specified file systems when doing a quiesced snapshot on Linux
    
    Add a tools.conf setting "excludedFileSystems" that specifies one or
    more file system mount points to be skipped over when performing a
    quiesced snapshot on Linux guests.  The value of excludedFileSystems
    is a comma-separated list of glob-style patterns as recognized by the
    glib routines described here:
    
    https://developer.gnome.org/glib/stable/glib-Glob-style-pattern-matching.html
    
    With this change, when performing a quiesced snapshot, the sync driver
    freeze routine removes from the list of mount points it is to process
    any path that matches a pattern in the excludedFileSystems list.
    
    In the course of testing the change, a bug was found in SyncDriverFreeze
    in which it returned SD_ERROR rather than FALSE when the path list is
    empty.
    
    This change also includes some whitespace cleanup in syncDriverWin32.c.

commit 9fb904dbdbd12952f2743d1463cda56a72c50c90
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Feb 26 12:29:07 2018 -0800

    lib/file: Paranoid clear of old cached values
    
    Rare, but an app might toggle addPid; cover this.  Also optimize the
    cache update.

commit d244dac08f07cbbcba3f66eab7d78c16150edfba
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Feb 26 12:29:07 2018 -0800

    lib/file: File_GetSafeTmpDir is not aware of credentials changes
    
    Some applications may masquerade their use (change their EUID).
    Futhermore, each thread in an application can have a separate EUID.
    
    Anytime a application or thread asked for its safe temporary directory,
    it needs to get the same result regardless of how many times it asks.
    
    Change File_GetSafeTmpDir to cache the EUID associated with the cached
    values. If there is an EUID change, invalidate the existing cache
    entries and recompute them. The recomputation process is stable, in
    that it will obtain the same return any time it is called.
    
    This way we get the benefit of the cache (performance), ensured
    correctness (for applications that do not masquerade), and correctness
    for those applications that do masquerade.

commit f9177b133f7f683fcc0f85770712d8069ec52421
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Feb 26 12:29:07 2018 -0800

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

commit 4da56779c42a55ce1b872748f9d6fd90bd10d281
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Feb 26 12:29:07 2018 -0800

    lib/file: Clean up POSIX File_GetSafeTempDir() in fileTempPosix.c
    
    Make things clearer.

commit f608f63948520ab2088870a800bcc62c67a416ab
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Feb 26 12:29:07 2018 -0800

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

commit 5d98c8b5183e236dc8fb548647574f4b24e87d23
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Feb 26 12:29:07 2018 -0800

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

commit 65a35ec640223e4455e016c883261f514eb21492
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Feb 26 12:29:06 2018 -0800

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

commit aefcbec68487e14de8938fafbf0606a9ce37b2b9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Feb 26 12:29:06 2018 -0800

    Skip davfs mount points during quiescing (part 2)
    
    Refactor the change to skip davfs mount points.  Capture the length
    of the static URL prefixes at compile time and avoid repetitive
    strlen() calls when checking each active mount point.

commit f459a325c4eec2e31eddc7f74901623b30ea0525
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Feb 26 12:29:06 2018 -0800

    Skip davfs mount points during quiescing
    
    The davfs2 is a Linux filesystem that allows mounting a Web Distributed
    Authoring and Versioning (WebDAV) network resource as a local filesystem.
    On some Linux releases, the FREEZE ioctl() is rejected and quiescing
    these filesystems is not attempted.  On others, however, the FREEZE is
    not rejected and there exists the potential of a quiescing deadlock
    if the davfs2 attempts to write to its cache in /var which has already
    been quiesced.
    
    This fix is to avoid a potential deadlock by excluding davfs2 mounts
    as the networking filesystem they are.  Since davfs2 may be implemented
    on the Linux fuse (default) or coda filesystem kernel module,
    the detection of these network mounts must be based upon detection
    of the URL prefix of the mounted device name.
    
    The static function SyncDriverIsRemoteFSType() is being updated to
    not only exclude remote filesystems based on filesystem type but also
    to exclude davfs2 remote filesystems by the "http://" or "https://"
    URL prefix on the device name.  The function name is being changed
    to SyncDriverIsRemoteFS().

commit 3af8139cfcb4578dd9d7cd9a85301ed808775eb4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Feb 26 12:29:06 2018 -0800

    vm_basic_types.h: scrub FMTxx specifiers
    
    Reduce the amount of magic in vm_basic_types.h... nowadays, any
    system we support (including Tools) DEFINITELY supports C99-style
    specifiers, with two exceptions: pre-vs2015 MSVC, and pre-10.13
    macOS kernels.
    
    Rip out all the pre-C99 junk. Add a few comments explaining exactly
    what the caveats here are.

commit 442683ac70f1f1c8665feb347be40cac5c8edd65
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Feb 26 12:29:06 2018 -0800

    amazonlinux2-64 should use OVT only, not tar tools linux.iso.

commit b4e66d7ac1f29b4d81877741c0dc85b8eeb68365
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Feb 26 12:29:06 2018 -0800

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

commit 16e63100ba9aeb419d22d8ade3af1eda2e3f02c0
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Feb 26 12:29:05 2018 -0800

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

commit f5b05ca724708bd54b5c5b7dc3f9d0d959134773
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Feb 26 12:29:05 2018 -0800

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

commit 783e87e2a465d28db5233e7d1e284fa9410ffec4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Feb 26 12:29:05 2018 -0800

    Remove uses of header file safetime.h
    
    - (many places) replace "safetime.h" with <time.h> and/or <sys/stat.h>,
                    occasionally re-ordering this header to top of file
    - (many places) remove "safetime.h" as no time functions are used

commit bf31e9478b99b5713f2c330e48d2e40c5091d3bc
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Feb 26 12:29:04 2018 -0800

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

commit cbdbeef4b6c3454f58e9733079140edcc30fdb2a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Feb 26 12:29:03 2018 -0800

    Remove GLIBC_VERSION_NN macros
    
    No existing usages. Astute observers will note we currently
    use glibc-2.5 minimum (so all but one of these macros are ALWAYS
    defined).

commit eec6e2798def2e9ff6da5e73b092cfe92e60b763
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 7 16:39:26 2018 -0800

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

commit 5170db44c1c7b814d0d2bd4131e1895dbd999db7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 7 16:39:26 2018 -0800

    Use a unique random temp directory for vmtoolsd on Linux.
    
    The temporay directory currently used by vmtoolsd and its plugins
    on Linux is of the form /tmp/vmware-<user>.  Since it is used to
    upload VMware Tools upgrade and GOS customization scripts and commands,
    that name predictability may make it susceptible to attack.  This
    change adds a new function File_GetSafeRandomTmpDir() in
    bora/lib/file/fileTempPosix.c to both add the PID to the user name
    and add a random number suffix to the temp directory path.
    
    /tmp/vmware-<user>_<pid>-nnnnnn
    
    VMware Tools commands and plugins are being updated to use this random
    temp directory.

commit 9bc56af5d0cb7dcc6f079ff4ab4d3456535365b2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 7 16:39:26 2018 -0800

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

commit 3e4091698461c0a5c36f9025410941f189c5af69
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 7 16:39:26 2018 -0800

    Fix two comment typos in hostinfoPosix.c.

commit cf4f582e5b3c2df25aa775d77d458a15583a05ad
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 7 16:39:26 2018 -0800

    open-vm-tools: ignore with/without gtk2/3 options when building without X
    
    When building without X support, we should ignore the options to enable/disable
    gtk2 and gtk3. This was reported in gthub issue
    https://github.com/vmware/open-vm-tools/issues/228 .

commit 0a099c6f4949a05d1400dc147ab68ad15ebf152a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 7 16:39:26 2018 -0800

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

commit 7be0019e01c7d473deffb8b8646fce1dff22e11a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 7 16:39:25 2018 -0800

    Common header file changes not applicable to open-vm-tools.

commit f838807d08b9c4e72d4887642d4181dea25b6c35
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 7 16:39:25 2018 -0800

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

commit 25d00050c8009dd74e3bbcf1883fdd408411a693
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 7 16:39:25 2018 -0800

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

commit 6b6038522ed24ea134eb4e4a2752288f6f42fcd5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Wed Feb 7 16:39:25 2018 -0800

    Header file change not applicable to open-vm-tools.

commit ee4bd450c4449f8905dbca2e4759660fda5c58dc
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:40 2018 -0800

    fix buffer overrun in AsyncTCPSocketConnect()
    
    Callers may pass a struct smaller than sockaddr_storage, but a
    sockaddr_storage-sized chunk gets copied to asock->remoteAddr.
    memcpy() should be used.
    
    One such caller is AsyncSocket_ConnectUnixDomain(). It passes sockaddr_un.
    sizeof(sockaddr_un) == 110, sizeof(sockaddr_storage) == 128.
    
    Caught by AddressSanitizer.

commit 13df0e2fc2f68aeab0380761eb0c5ab129730710
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:40 2018 -0800

    open-vm-tools: use pkg-config for building with icu
    
    icu uses pkg-config in recent versions, and no longer ships with
    icu-config in most recent versions. Make the configure script
    use pkg-config for icu if available, and icu-config if not. For
    pkg-config we need to specify 'icui18n' which returns the same result
    as icu-config did to link with icui18n.

commit 3a8221c7e4b149efacf87658ac239d815c56adba
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:40 2018 -0800

    Ignore ENXIO errors with SyncDriver
    
    A quiesced snapshot fails when the target VM has a bind mount.  The
    problem is that the syncDriver gets an ENXIO error when it tries to
    open the mount point.  To fix the problem, let the quiesce operation
    skip a mount point when opening it results in an ENXIO error.
    
    This change is based on pull request
    https://github.com/vmware/open-vm-tools/pull/218 .

commit ff754c8a99bffe92b07c933898c7d9d20c02873f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:40 2018 -0800

    Refinement for memory corruption bug fix in StdIO_ReadNextLine

commit 7b45a62730624c711fb4eb63a0bfd125a2befa57
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:40 2018 -0800

    lib/file: Style clean up in the public file.h

commit 3a7dc2f92e6cb61c9ca8e57c367c972683355278
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:40 2018 -0800

    Common header file changes not applicable to open-vm-tools.

commit c52bb302a181d4bdd0b2b61d6e901339b61d2dab
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:40 2018 -0800

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

commit 035765d487f8ab9b2222ad239b278e4725aa5a22
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:39 2018 -0800

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

commit 3011466e0f59471292a58ba5124238898d18945a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:39 2018 -0800

    open-vm-tools: use ENV{DEVTYPE}=="disk" in udev scsi rule
    
    Fix udev scsi rule to not print warnings on boot.
    The rule now checks for the device type. The previous fix by
    trying to check for a valid timeout field did not work as expected.
    This change uses the rule from Mike Latimer at
    https://github.com/vmware/open-vm-tools/pull/216

commit 9da6562e0c04fa79fad726513508a628f29f4812
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:39 2018 -0800

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

commit 6ccc073a58e1822dc4eb8c20e10dc89791643e9c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:39 2018 -0800

    Fix memory corruption bug in StdIO_ReadNextLine

commit 4f729b61b908c82318b8dcfc16264c15b58817c8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:39 2018 -0800

    Common header file changes not applicable to open-vm-tools.

commit 9fa726051f7efe1b7e0bab745b7bad85d1fb3efb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:39 2018 -0800

    Common header file changes not applicable to open-vm-tools.

commit 378c193d4a57cfed14045ffed6ea641957ed18c7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:39 2018 -0800

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

commit ba83dcff6214190f8ed545401f2bfa27650bbf07
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:39 2018 -0800

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

commit fc922804318de417578fd08fab2e07c1d58e8de8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:39 2018 -0800

    Update copyright year to 2018.

commit ca39511ceb8e88254cad71e98cba5cbfff08a99d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:39 2018 -0800

    UUID: Clean up UUID_PackText
    
    Use size_t, not int.

commit c358e5e181b95d872da9ffcc943cc147ae0584f8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:39 2018 -0800

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

commit 0ccc8b1a79bf76b9826c37b2133e5dbd4b9904dc
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:38 2018 -0800

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

commit 5c6f7b09d6865496036653360301092b8672675f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:38 2018 -0800

    guestOS identification: Tweak handling the LSB
    
    The multi-standard handing code dealt with the LSB strictly. This
    causes some issues with older distros that are not LSB compliant but
    happened to work due to a specific behavior.
    
    Return the LSB to "LSB and old way" and provide some specific coverage
    of detaults to ensure coverage.

commit 2516f528e47722faa38868d99939c825f13c2bdb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:38 2018 -0800

    Restore "ufs" to the list of known filesystems
    
    Removing extraneous #ifdef VMX86_TOOLS - #endif

commit 3c453912325ead3f19b84fced65217608069ddfa
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:38 2018 -0800

    Restore "ufs" to the list of known filesystems
    
    A previous change, 5074636, to remove "ufs" from the kernel also removed
    "ufs" from the known list of Linux filesystems.   As a result, the "ufs"
    filesystems on FreeBSD and Solaris VMs cannot be seen and therefore
    no disk information is available in vmsvc/get.guest output.

commit aa6502a057aec571a72b971cb13cf0e9d713cddc
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:38 2018 -0800

    Update tools copyright to 2018

commit 5af33281a66ebf0c30ad15074f931f33bda0bc9d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:38 2018 -0800

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

commit dc028e7bbb63865e1ae1c6262872e74c47c80d61
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:38 2018 -0800

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

commit d55cc529267b0b385fc9d4453075d023c789e46f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:38 2018 -0800

    Hgfs Server: replace duplicate function usage with a common function.
    
    This change simply replaces a duplicate function usage with a common
    function and removes the duplicate one.

commit ccdef7096a4782dd00b6f55695aff9c3f01cf4b5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:38 2018 -0800

    hostinfoPosix.c: Change a warning to a log message.

commit 2321ff31fa671658ad0af3af22eef27e5d9af050
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:38 2018 -0800

    Switch IMC to use RpcChannel_SendOne instead of deprecated RpcOut_sendOne
    
    Modify ./libDeployPkg/Makefile.am to build deploypkg module for
    open-vm-tools correctlly.

commit d9f7c825cfbe075c3b643632419ff26a72628e41
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:38 2018 -0800

    lib/file: Clean up a few things.

commit b4ee6678c9dd8cdf4e144056545dd41ba0636085
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:37 2018 -0800

    hostinfoPosix.c: Pick up some review comments

commit ce060ca498defdf08da4fac899dc623328d47a5d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:37 2018 -0800

    GuestOS: Support the os-release standard
    
    While bringing up Amazon Linux as a guest, it was discovered that
    Amazon Linux was not LSB compilant. The LSB standard defines a way
    to uniquely determine which distro one is running on. Since our code
    was based on the LSB standard, we made some changes to explicitly
    detect Amazon Linux and handle it as a special case.
    
    Amazon let us know that there is a "new" standard - os-release - which
    they are compliant with. One must explicitly install Amazon Linux in a
    special way to obtain the LSB compliance.
    
    Researching the "new" standard, it turned out to not be that different
    than the LSB standard. Further research showed that some distros (e.g.
    Ubuntu) are releasing with both standards.
    
    This change refactors the existing code, removes the explicit Amazon
    Linux checking, and accepts the os-release standard. Amazon Linux then
    "just falls out".

commit 6bd88d82e943d691c4312e3f2e7cef1038af7a9c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:37 2018 -0800

    Reduce Vigor transport socket draining overhead
    
    A previous change in VigorPollImpl and asyncsocket to fix a memory
    leak that causes a performance regression for parallel reconfiguration of
    running VMs (the kind requiring FSR).  During an FSR, the connection
    between hostd and the source vmx would drop and hostd would then
    reconnect to the destination vmx.  One source of regression is that
    the buffer has to be drained when a disconnect happens and the draining
    logic may potentially unregister and re-register the recv callback
    multiple times.  This change adds an asyncsocket function specifically
    for draining recv that reduces the manipulation of callback.  It
    reduces the regression by up to ~50% (the effect is more pronounced with
    more VMs).

commit de9b602664d91c54288b91a81f6a01d7cb927fce
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:37 2018 -0800

    atomic: add TestSetBitVector and TestClearBitVector functions
    
    Implement atomic set/clear bit from a byte array.
    
    Also add missing "memory" constraint to non-atomic ClearBitVector()
    and ComplementBitVector().

commit 17e9209aeb4f6d3a3535b7064916f3a25b985395
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:37 2018 -0800

    Tools Hgfs Server Plugin: fix logging of client redirector handling functions
    
    Modify logging of client redirector handling functions for starting the client
    redirector kernel component and reconnecting mapped drives at services start
    up. This changes the level from warning to info as these messages are purely
    informational and not warnings of unexpected events or conditions.

commit 076b7201b61af9f3dcb36050ff37a8145a05d404
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:37 2018 -0800

    Fix error reported by clang 6.0.0 - comparison 'int' <= 4294967295 is always true
    
    Fix the logical constant compare warning/error in vixTools.c of the
    vix plugin.  Rewrite the continuous for loop to simply iterate from
    zero to MAX_INT32.

commit 7a58576e98e5bdb47fbe101c43b106ba77f2e811
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:37 2018 -0800

    Add VMware Tools 10.2.5 to vm_tools_version.h
    
    - Add tools version 10.2.5 as the first scheduled tools 10.2.x
      update - TOOLS_VERSION_CHAINSAW_UPDATE1
    - Corrected a typo in a macro name in an earlier tools version
      definition.

commit 13c49b85cebacea847d30c4e5a0b92fa7ea9dba8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Feb 6 16:32:37 2018 -0800

    hostinfo: Identify Amazon Linux
    
    Amazon Linux is not LSB compliant. Add a small amount of code such that
    Amazon Linux can differentiated from all of other Linuxen and correctly
    report its identifying data.

commit c5bc784da611ee929e0da7c20a410e03e6540613
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jan 26 15:04:36 2018 -0800

    Set X11 as the backend for gtk3 of open-vm-tools
    
    Open-vm-tools defaults to gtk3.  For distros like Fedora 27, Wayland is
    the default display server.  With no restriction on the backend, plugins
    will try to use Wayland as the backend of Gtk+3.  As a result,
    gdk_display_get_default() returns a Wayland display;
    gdk_display_get_default_group() also returns a Wayland window.  Applying
    GDK_WINDOW_XID() on the Wayland window will result in the crash reported
    on recent Linux releases that default to a Wayland display server.
    
    As X11-specific code is widely used in tools plugins, a migratation to
    Wayland in the short term is not possible.  So, as a compromised solution,
    plugins can be forced to run on XWayland, which is the compatible mode
    of Wayland for legacy X11 clients.
    
    gdk_set_allowed_backends() only applies when flag GTK3 is defined, and Gtk
    version cwgreater than 3.10.

commit 98e0ab52c86b3a1d4fd38cec6913b1f5ba0f336c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jan 26 15:04:36 2018 -0800

    hostinfo: More cleanup
    
    Continue the prep for Amazon Linux.

commit ce769ae4aa3a14810b418c044629f2d9dcb72a37
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jan 26 15:04:36 2018 -0800

    hostinfo: More prep work for Amazon Linux support
    
    Amazon Linux is not LSB compliant but it does have a file that is
    much like an LSB compliant release (name=value pairs). Make the names
    of the structures generic... the logic can be reused for Amazon Linux
    in a follow up change.
    
    Fix up some function headers.

commit 7fce1b8f9ec60c27865717f536a4e440587500ad
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jan 26 15:04:36 2018 -0800

    Refactor HostinfoOSData...
    
    Refactor the HostinfoOsData in several smaller and simpler routines.
    This will make it easier to maintain in the future (it was pretty
    unwieldy already) and easier to add the logic for a non-LSB Linux.
    
    More refactoring and actually adding the Amazon recognition code will
    follow.

commit b2b71c7995f4389cd7a9899dca8aa29bd9fa9c6a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jan 26 15:04:36 2018 -0800

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

commit 40bcee40c892cc7de92825cce1226576d6eab66c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jan 26 15:04:35 2018 -0800

    Changes to common source files:
    
    lib/asyncsocket/asyncsocket.c: Use ASSERT instead of VERIFY when removings
                                   poll callback in AsyncSocketCancelRecv.
    lib/include/vm_product_versions.h: Change not applicable to open-vm-tools.

commit 757833d601541e9bde24571fa22e669900e98a7e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jan 26 15:04:35 2018 -0800

    Change the glibc constraint to 2.11 from 2.12.
    
    Earlier, we made a change to stop building open-vm-tools
    for LINUX systems with glibc < 2.12 But SLES 11 SP4 which is
    supported comes with glibc 2.11.3 The check will
    block SLES 11 SP4 from moving to OVT 10.2.x To fix it, this change
    relaxes the glibc constraint to 2.11.

commit 75825dcc7548d779f23c4c93429736d690d86a45
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jan 26 15:04:35 2018 -0800

    Hgfs: remove Hgfs VMCI transport header from linux open-vm-tools
    
    Linux Hgfs clients do not use the VMCI module for a transport and have
    since migrated to a FUSE implementation. Therefore we do not need to
    include the Hgfs VMCI transport header file.

commit 09b6621863ece170e4fc6b617f0bc1e3d17867f2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jan 26 15:04:35 2018 -0800

    Hgfs Server: fix error result for new dir creation in the virtual folder
    
    The Hgfs server code detects when a client tries to create a new folder in the
    virtual folder containing the VMware Shares. This is not allowed as only the
    host can add new Shares which appears in this folder. The current error code
    returned to the client in these cases is access denied. This is only correct
    when the new folder does not collide with an existing share. This stops clients
    treating the virtual folder as a regular read/write physical folder. However,
    for the case where the name collides, the access denied error is not correct,
    as it does not tell the client the folder already exists. This causes some
    applications to fail as they expect to see this error if the path component
    exists as that is okay and expected. At this point the application will continue
    to traverse the path and ensure the next component exists or if not create that.
    
    To ensure that applications don't prematurely fail and can test that the share
    still exists in the path the Hgfs server should return HGFS_ERROR_FILE_EXIST
    and leave HGFS_ERROR_ACCESS_DENIED for all other cases.

commit fb3630fb0d7846b9f06f0c506c38eadf0cfbfa81
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jan 26 15:04:35 2018 -0800

    Hgfs: get rid of vmware_pack_begin and vmware_pack_end header files
    
    Get rid of vmware_pack_begin and vmware_pack_end header files and
    replace with the pragma pack and pop.  This code currently only
    affects Windows clients and the VMX HGFS VMCI transport.

commit f7c551253400e7f153cc696b5b121cd6e0d4ebd8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jan 26 15:04:35 2018 -0800

    GOSTable: Amazon Linux 2
    
    Add the basic support for Amazon Linux 2. The distro identification
    code will follow in a separate change.

commit c8f7c09d106884c19100077fdffe8f11b80d6bdb
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jan 5 14:47:15 2018 -0800

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

commit 5939eaefbad529e811c64b46d93ddcce56615db8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jan 5 14:47:15 2018 -0800

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

commit 55f323265bb7aee605a40f289f9c1a8ba7be56c6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jan 5 14:47:15 2018 -0800

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

commit d42e5bf76689c820dfb84d681c007c96197f6182
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jan 5 14:47:15 2018 -0800

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

commit 90819beef53238ba108be35cba93329b9d160de7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jan 5 14:47:15 2018 -0800

    Get rid of convertutf and bsd_printf for all non-Win VMware 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 e5e478d46f047aa8f22b427b9d4505581af9915a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jan 5 14:47:15 2018 -0800

    Fix the SSL/AsyncSocket "SSL_shutdown:shutdown while in init" problem
    
    QE regression tests have caught a bug in the bora SSL/AsyncSocket
    layer. A normal SSL connection could be abnormally terminated by some
    other random connections.
    
    Seems a common bug of the SSL usage according to the link below.
    VMware is not the first one to hit it. :-)
    https://marc.info/?l=openssl-users&w=4&r=1&s=shutdown+while+in+init&q=b
    
    The cause is that the SSL error queue was not cleared before
    calling the SSL IO functions like SSL_write,read,connect,accept.
    Refer to the man page of SSL_get_error, Paragraph 2 of the Description.
    Fixed the problem by adding addtional call to clear the error queue.
    
    Found another problem that the system error is not preserved between
    where it is set after the SSL IO call and the use of it to determine
    whether to retry the SSL IO. This is probably due to tools has its
    own logging which does not preserve the system error number.
    Fixed the logging.

commit 8a9c43698ebcc858314ec1c041d24b8e8d1372cf
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jan 5 14:47:15 2018 -0800

    vm_basic_types.h: use stdint.h a little more.
    
    Now that enough of the builds are C++11, let's make the common case
    use the <stdint.h> header to define the intNN types directly
    from language-standard intNN_t types, and treat pre-C99/C++98
    code as the special case.
    
    This also provides some clarity about the last __STRICT_ANSI__
    macros in this file.  One was related to usage of 'long long' in
    strict c90 mode and has been replaced with a comment indicating that
    64-bit-variable compiler extensions are mandatory (strict c90 mode is
    not allowed via the headers).  The other related to X11 headers; those
    headers have been examined to understand the workarounds needed and
    the exact scenario(s) that are problematic have been commented (turns
    out FreeBSD had nothing to do with the problem).
    
    Finally, all the Bool-related definitions have been moved and merged
    to a single location NOT at the top of the file.
    
    Net effects of this change:
    - non-linux C++11 (so Windows+Mac) now uses stdint.h
    - exact set of macros involved in declaring Bool is reduced
    - compiling with c90 mode really will break now (use gnu90 instead).

commit 2674b02449875b04889be00400f52351105ab25f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jan 5 14:47:15 2018 -0800

    Consume vmx headear files in bora tree instead of gosc's own copy
    
    1. Consuming header files from bora/vmx instead of gosc/vmx
    2. Deprecated "gosc/vmx/public/toolsdDeployPkg.h",
    use "bora/guestABI/include/vmware/guestrpc/deploypkg.h" instead.
    Combined macro definition to the new header file and modified
    reference accordingly.
    3. Modified makefile for open-vm-tools to consume new header file,
    removed old header file staging in open-vm-tools.stage

commit bd018012a08579e89209e23b69963937210e5182
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jan 5 14:47:15 2018 -0800

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

commit 36929119b9e28df8e267c49b5661354253439215
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jan 5 14:47:15 2018 -0800

    Remove some __STRICT_ANSI__ guards in vm_basic_types.h
    
    Some time in the distant past, these guards were needed to
    work around... something. (Probably, it was that 'long long'
    is not a valid type in strict c90 mode). Note that we don't
    use c90 mode, we only use gnu90 or c99.
    
    This ends up being relevant because for C++ we are indeed
    using -std=c++11 (which implies __STRICT_ANSI__). The Linux/C++
    section of this file thus had duplicate definitions (which I am
    now removing) to work around the gap.
    
    Quick cheat sheet for -std= values:
    - c90 := __STRICT_ANSI__, no long long type
    - gnu90 := c90 + gcc extensions, has long long type
    - c99 := __STRICT_ANSI__, has long long type (defined in c99)
    - c++11 := __STRICT_ANSI__, has long long type (defined in C++11)

commit 6b1ef0ef99f34011da3f5383414eeedf81c59d3b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jan 5 14:47:15 2018 -0800

    open-vm-tools: fix finding C++ compiler for cross-compiling
    
    Patch contributed by Andrew Stormont (andy-js) on github:
    https://github.com/vmware/open-vm-tools/pull/206 and
    https://github.com/vmware/open-vm-tools/issues/92.

commit df18c2c2c3e7dde4478ee68a5f4a96600a3d07a2
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jan 5 14:47:14 2018 -0800

    Allow copying of object policy within the same container
    
    ObjLib_CloneExtParams is currently not allowing copying of policy from
    parent to child/clone object on VSAN. This is because the copy policy
    check is based on unique filesystem ID, which will be different for
    parent and child on VSAN because they will mostly be created on same
    container but different namespace. This change uses VCFS root instead
    of namespace UUID to make the comparison on VSAN.
    
    Bonus fix: File_FullPath is now fixed to work for any combination of
    ancestor path being present. Currently it only works if either the
    given path exists, or when only the last component of the path does
    not exist. And since this fix relies on finding the VCFS root of both
    parent and child (parent is present but child is not),
    ObjLibPathToVCFSRoot has been modified to rely on File_FullPath  in
    addition to Util_GetCanonicalPath if the path does not exist.

commit a678f3ea9f6de366b3b3de2f99956d93d2216b08
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jan 5 14:47:14 2018 -0800

    Correction to previous change for Solaris11_64 GOS.

commit 74eb0c942f78f775c9de2bfd0e4f9970a8cded51
Author: Oliver Kurth <okurth@vmware.com>
Date:   Fri Jan 5 14:47:14 2018 -0800

    Properly classify Solaris 11-64 as 64-bit

commit 47e604c2dba131c13300fe15bf4ad69d5b996674
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Dec 4 16:27:21 2017 -0800

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

commit 584aa9f307c85b07fa8adaf113e87cc3c200cca9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Dec 4 16:27:21 2017 -0800

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

commit 976e505b4ad5233f4eb97c7e09be63f6b0662fc7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Dec 4 16:27:21 2017 -0800

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

commit 96f90f19e87cfb9b1dd62d30f4b88333d973bb90
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Dec 4 16:27:21 2017 -0800

    open-vm-tools: add missing copyright headers

commit 124c6437b0fcac3e65a7748f336e8b47d9528767
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Dec 4 16:27:21 2017 -0800

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

commit 11ff20501da5a4a4a6bcc05797b0129462cafc95
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Dec 4 16:27:21 2017 -0800

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

commit 3dc2785d95c6b6ca42161c270fc9b3f17764ff2d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Dec 4 16:27:21 2017 -0800

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

commit 525f5824a48d8856ec30250d73a99da9fea2c39f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Dec 4 16:27:21 2017 -0800

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

commit fe6997afdc10d3bd7396c7dea7417523851166d6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Dec 4 16:27:20 2017 -0800

    Update the Tools-10.2.0 GA Open Source License Files.

commit 9ac30cc60efd96556df21e87d5e8a42c7057fc95
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Dec 4 16:27:20 2017 -0800

    RpcVMX: Report driver name and driver version to vmx to store the key-value in
    GuestVars, and write a log in vmware.log using RpcVMX_Log.

commit 1667bc143164a6709debca423e4be0241e3275db
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Dec 4 16:27:20 2017 -0800

    GuestInfo: skip check for shrinkable disk when gathering disk info
    
    Some Linux OSes may have a non-existing device mounted to a filesystem,
    for example Photon OS has the root file system mounted from
    /dev/root, which does not exist. The wiper library does a check
    for a shrinkable disk, and this fails. This change skips the check
    when gathering data for diskinfo, but leaves it intact for
    other disk wiper purposes. Information from read-only flesystems
    will also be reported.

commit 35b115033acb5c65e22bd4e44b90d6d69a6815c6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Dec 4 16:27:20 2017 -0800

    FileIO: Add customizable privileged file opener for Apple.  The change is
    not applicable to open-vm-tools.

commit eb8456de3ddb41ecc7155c447e4bac17ca440a5d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Dec 4 16:27:20 2017 -0800

    Make AutoCPtr's constructor explicit to make it more obvious when
    pointer ownership is transferred. (This also matches std::auto_ptr.)

commit 29c40dee7848e52437b5dab2ed466771a15df13b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Nov 30 15:38:04 2017 -0800

    Make logfiles readable only by admin/root.

commit 989d96498a370034423515d3818fd02749677097
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Nov 30 15:38:04 2017 -0800

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

commit c4387fa58c21a0174a9cd6b053e565aea2c4870f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Nov 30 15:38:04 2017 -0800

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

commit e2f15a777d241f468f5ca2bc0b608f3ecb71fc6a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Nov 30 15:38:04 2017 -0800

    Common header files change not applicable to open-vm-tools.

commit d3c3a4d3e9d97e09b07018df2dccb4b4b2c4dd1b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Nov 30 15:38:04 2017 -0800

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

commit 9a08115f6b111445f57302651f7fcb1e4f11e907
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Nov 30 15:38:04 2017 -0800

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

commit a8f4c5ada9852dfdb251715f3785b1fee45b8f67
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Nov 30 15:38:04 2017 -0800

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

commit 443f07aab7c60df74e1731127921b92447c86d61
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Nov 30 15:38:04 2017 -0800

    Typo correction in common header file comment.

commit a5d480e471fe4e0e73f6be28ab65f6ecde64f775
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Nov 30 15:38:03 2017 -0800

    Improve diskinfo debug output
    
    Add more debug information so that it is easier to figure out why some
    partitions are not being found.

commit 08abcfc9cc08c758a8189e69e7f99ab270a2e553
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Nov 30 15:38:03 2017 -0800

    Make VigorPollImpl FD-based callbacks non-periodic (take 3)
    
    The previous attempt reveals another pre-existing issue.  An fd that is
    closed by AsyncSocket may be reused right away.  The SharedStream for
    that fd may still have an outstanding callback that needs to fire
    before it would be destroyed.  If the destruction happens after the fd
    is re-used and the new owner is using boost asio stream, the Release()
    call would cancel the async read/write operation for the new owner.
    One simple fix is to dup the fd when creating a SharedStream.  This
    means hostd would need 2 fds for each running VM.  The hostd fd limit
    is currently 4096 and I was able to power on 1K VMs.  If necessary, the
    fd limit can be increased (the system limit is 32K).
    
    Previous description:
    
    The original change has an issue on Linux that is not observed in ESX.
    When the read and write callbacks fire in parallel, both would release
    the reference to the SharedStream, triggering its destructor.  Later
    when the read callback tries to re-register itself, it would hit a
    boost exception.  To avoid that, I delayed the reset of
    CallbackFD::stream to the end of Invoke so that the SharedStream
    object woudl not be destroyed as long as the callback is re-registered.
    
    Original description:
    
    The hard-to-reproduce AsyncSocket leak turns out to be a variation of
    PR 1530561.  The fix for that bug only plugs the leak when the race is
    between a VigorPollImpl callback that fires with an CanceledException
    (which can be triggered by another callback registered on the same fd --
    this is the boost behavior) and a thread trying to unregister the same
    callback (e.g. upon detection of a disconnect).  There is still a
    potential reference leak when the read and write callbacks run in
    parallel, if a disconnection happens between the two asyncsocket
    callbacks (the asyncsocket callbacks take the asyncsocket lock, so they
    are mostly serialized).  The second asyncsocket callback handling the
    disconnect error would unregister the first callback while the first
    callback would be attempting to re-register itself at the VigorPollImpl
    level (to provide the periodic behavior exposed by IVmdbPoll).  If the
    unregister wins the race, it would return false because the callback
    cannot be cancelled (it is running).  Then ReRegister would not find
    the callback in the hash table, so the callback would not fire again,
    which means the reference taken when registering the callback is leaked.
    
    Applying the fix for PR 1530561 in the above scenario would not work
    because an AsycnSocket callback may unregister itself and in that case
    the reference is appropriately released.  Unless we save the thread ID
    in Unregister, we would not be able to distinguish when the callback
    needs to run in order to release the reference.  After considering
    various options, I believe trying to support periodic fd-based
    callbacks on top of a multi-threaded poll API is troublesome.  This
    change adds a poll flag for one-shot callbacks and used that in
    AsyncSocket with IVmdbPoll.  VigorPollImpl only support the one-shot
    behavior.  In the long term I would like to retire IVmdbPoll and create
    a new poll interface.  For now I would like to minimize churn while
    fixing the memory leak.

commit 595f5add83e8fbf1ffcabd7537d294c1c9c4edfe
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Nov 30 15:38:03 2017 -0800

    Fix memory leak in vmtoolsd.

commit 884aa32f9c9f773957275e09cd6620598185718a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Nov 30 15:38:03 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 6151fbafe8714c15614dd254ff8816cd28620f3c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Nov 30 15:38:03 2017 -0800

    Correcting the few copyright notice added to a few CAF related files bundled in Open-VM-Tools.

commit 23cfd0c0fc03c36b83c47614037f85ff98806b86
Author: Oliver Kurth <okurth@vmware.com>
Date:   Thu Nov 30 15:38:03 2017 -0800

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

commit 6056c840a4a5593a3f4a87acc175b5eac3ce23dc
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Oct 24 14:07:36 2017 -0700

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

commit 965dbcad8680e32a8b093715b29656505a8eaf44
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Oct 24 14:07:36 2017 -0700

    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 b5c64af227b2eea0f23f2c8f3cf40c5d24c8548f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Oct 24 14:07:35 2017 -0700

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

commit cc18f0829bbf9d61b36f6c292a2f4fb9b9618812
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Oct 24 14:07:35 2017 -0700

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

commit 4b0af4d8b889eccd0fbc18d63698c95f83be1ca3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Oct 24 14:07:35 2017 -0700

    [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 13438dc9ab2af20587e003bc7f8ba088dc2d3ed8
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Oct 24 14:07:35 2017 -0700

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

commit a94ed0b8af8afc7d446312c3b391f336421bd4c3
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Oct 24 14:07:33 2017 -0700

    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 2aba22668d4f61ddad7dff2a3e872458bf64e67a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Oct 24 14:07:33 2017 -0700

    lib/file: Enhance File_EnsureDirectoryEx to do more checking
    
    When creating a directory, distinguish whether an EEXIST error is
    because the directory already exists or because there is a file with
    that path name.  Return the appropriate error.

commit c579e664050ddd35e975b4a7fa18beb74f2decdc
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Oct 24 14:07:33 2017 -0700

    VMware Tools 10.2.0 L10n changes for VGAuth.

commit 07973b8c75feafba8c5ea400a87d0f03cdea744d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Oct 24 14:07:33 2017 -0700

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

commit b88ff280ea0ea778ef9a4e422129bbf66291be73
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Oct 24 14:07:33 2017 -0700

    lib/file: Reduce the create directory spam
    
    The lib/file primitives (e.g. create file, create directory) may fail -
    but they also return errno/GetLastError. The caller should inspect a
    failure and decide what to do (or log). The lib/file primitives should
    not log. The client should do that. The primitives are the high
    performance path and failure isn't necessarily a failure, only the
    client can decide.
    
    The lib/file primitives (e.g. create file, create directory) may fail -
    but they also return errno/GetLastError. The caller should inspect a
    failure and decide what to do (or log). The lib/file primitives should
    not log. The client should do that. The primitives are the high
    performance path and failure isn't necessarily a failure, only the
    client can decide.

commit 8bdee4f53760e3a63a890653a0960c09b9258db9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Oct 24 14:07:33 2017 -0700

    Misc GuestOS ID fixes.
    
    - Centos8 64bit guest will have linux 4.x. Moved Centos8-64 guest id
      from all3xlinux64 to all4xlinux64 guest list.
    - oracle8_64 is missing in the list. Added it to all4xlinux64 guest list.
    - Photon has linux 4.x. Moved photon from all3xlinux64 to all4xlinux64
      guest list.
    
    - Changed the HostinfoOSData() function to return other4xlinux for
      the distros where the version cannot be determined.

commit 2ca8abc426c42e3ad7c05fd22e38ca04d6cc5e86
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Oct 24 14:07:33 2017 -0700

    Bump imgcust version to 8.4.0.xxxx

commit 921f05729bdbcb83a98ab1a28641baabd095af97
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Oct 24 14:07:33 2017 -0700

    Back out commit d2c18c44...: Make VigorPollImpl FD-based callbacks non-periodic
    
    Yet another issue is exposed by the change.  This is a clean backout
    but keeping the cleanupOnError fix in SharedStreamFactory::Get.

commit e373c1ca328f78581d915940bd7e98abdb76a089
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Oct 24 14:07:32 2017 -0700

    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 3455478483a6f8e810c00519b6611020e25fee83
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Oct 24 14:07:32 2017 -0700

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

commit a62edfbf695ea5ad4bf8f8d91bac1740e428158f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Tue Oct 24 14:07:32 2017 -0700

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

commit 009def580b00040fa6e6c07cb5743e60973973f5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:23 2017 -0700

    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 7643a1eddcc2cdc0b8a42af821ae92ca076ee37a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:22 2017 -0700

    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 ff6daf51be641a805f94fa11415e032bad3ef48a
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:22 2017 -0700

    Porting some common code to another architecture; not applicable to
    open-vm-tools.

commit a1d4afc447091d9fbccf89be6561accfc1e33aa9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:22 2017 -0700

    Add support to tools timeSync to issue w32tm resync in Windows guests.
    
    This change adds support to issue a w32tm resync command from within
    VMware tools timeSync in order to reconfigure w32time configuration
    parameters. This forces guest time to be resynchronized to external
    time server.

commit d2c18c44df3fbc410e04b2f1b2595a326a52afec
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:22 2017 -0700

    Add a poll flag for one-shot callbacks in AsyncSocket
    
    The original change had an issue.  When the read and write callbacks
    fire in parallel, both would release the reference to the SharedStream,
    triggering its destructor.  Later when the read callback tried to
    re-register itself, it would hit a boost exception.  To avoid that,
    delay the reset of CallbackFD::stream to the end of Invoke so that the
    SharedStream object will not be destroyed as long as the callback is
    re-registered.

commit 485dc67e56ad68e05d4106059594279f67dd119b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:22 2017 -0700

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

commit 9719f528b4ca3d91952e8feaca49d005f7944097
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:22 2017 -0700

    HostDiskMacos: Migrate macOS host disk functions from file and user to hostDisk.

commit c81c16581af70d6242dceccf3b9cdfd0dd3a88f4
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:22 2017 -0700

    Revert - HostDiskMacos: Migrate macOS host disk functions from file and user to hostDisk.

commit d9fa89c015f72f233f46c8dd73640bbd3006d901
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:21 2017 -0700

    HostDiskMacos: Migrate macOS host disk functions from file and user to hostDisk.

commit 02d088e2603a292375f5d8db73b431ce30ddbf9c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:21 2017 -0700

    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 60179f0b8a4faaa66b490ba7b3f927664e634d6f
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:21 2017 -0700

    Revert - HostDiskMacos: Migrate macOS host disk functions from file and user to hostDisk.

commit a01a01b881672f41e827ea50b9e4501b1cc09fc6
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:21 2017 -0700

    Changes to header files vmnet_defs.h and vmxnet3_defs.h needed to
    integrate ENS capabilities into existing Uplink capabilities.
    The changes are not directly applicable to open-vm-tools.

commit 6d86d11a0d1715e80417380c4565d2141cd39c15
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:21 2017 -0700

    HostDiskMacos: Migrate macOS host disk functions from file and user to hostDisk.

commit 2e95b4a100dff023d0e88315829c988c063228d5
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:21 2017 -0700

    Update file version for imgcust deliverables

commit 6288ac9749b21a5eb791b080c20e1028eaab5173
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:21 2017 -0700

    Revert change to add a poll flag for one-shot callbacks.

commit 39d8a762211ed0d599cc9834f4eaf15c9fa41dfa
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:21 2017 -0700

    strutil.c: Add a case-insensitive version of StrUtil_EndsWith.
    
    Common header file change; not applicable to open-vm-tools.

commit a0741150a070825f22b35d7e1642c0c88f29673d
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:21 2017 -0700

    Update of a product version in a shared header file; not applicable to
    open-vm-tools.

commit 7b8e29217723040cfeec1f1db09afc2560237439
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:20 2017 -0700

    AsyncSocket: Fix DoOneMsg's inBlockingRecv bookkeeping
    
    For the I[Vmdb]Poll support in AsyncTCPSocket, inBlockingRecv has been
    used to avoid conflict with AsyncSocketDoOneMsg.  There is an issue
    with where inBlocking Recv is decremented, which is right after poll,
    where the thread would drop the lock.  The lock may also be dropped
    during AsyncTCPSocketFillRecvBuffer, and for that there is a separate
    inDoOneMsg flag.  This change unifies the two flags and makes
    inBlockingRecv cover both functions that may drop the lock.  This fixes
    the race that would allow AsyncTCPSocketRecvCallback to run when
    AsyncTCPSocketDoOneMsg is in progress.  A couple places where we
    previously checked inBlockingRecv to report an error now have to also
    check inRecvLoop (TRUE during AsyncTCPSocketFillRecvBuffer) -- those
    checks cannot be enforced during FillRecvBuffer because the client
    callback is allowed to change the callback or cancel it.  The lone
    usage of inDoOneMsg is switched to inBlockingRecv.

commit ac699fac9d8030fe2c804ad8720d7fa7b5e72839
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:20 2017 -0700

    Set the Tools version to 10.3.0

commit 2fae8543aaeed65725575dac50c55ea554b349a1
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:20 2017 -0700

    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 729acd5603c62d514d5e244faf9e508db2b9efd7
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:20 2017 -0700

    Add new GOS definitions in HWV=14

commit f9c76215aaed31a6210112df578ed9d6c3c25712
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:20 2017 -0700

    Fix ASSERT of registering the same callback twice (take 2)
    
    Re-check the condition of inBlockingRecv after the lock
    may have been dropped.

commit a20022349089880cb43ccdef082f02de95476984
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:20 2017 -0700

    Fix ASSERT of registering the same callback twice
    
    The previous change for Poll introduced a bug in AsyncSocket.
    When re-registering the recv callback, it needs to check whether
    there is a concurrent blocking recv (which means the send callback
    has detected a disconnection and is draining the pipe).  The recv
    callback should act like a no-op in that case (other than to
    release the reference).

commit 396d5adb3aba9ab0e059a4b45ac2e3d68fb513f9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:19 2017 -0700

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

commit 3cb87c817b804e231b0d2aa4c007a61b83999750
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:19 2017 -0700

    Hgfs Protocol: clean up the Hgfs protocol operation capabilities
    
    This change cleans up the operation capability and its flags which
    currently are not clearly associated with the type to which they refer.
    The name doesn't help in that regard either.
    
    The capability and flags are used in the Hgfs session creation by
    both the server and client to dictate the protocol operation versions
    to be used during the lifetime of that session. The flags denote
    which operations are currently used and how they are expected to be
    used.

commit 14c579038de187e0bdbc952073524e4a0668548e
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:19 2017 -0700

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

commit fa4c5b9eac9e2899aef8f6a831e121152adc075b
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:19 2017 -0700

    hosted file locking: An upper bound on creating the lock directory
    
    There is currently no upper bound on how long we wait to enter a hosted
    file lock (create lock directory and the direct entry (the "D")). Fix
    this.

commit 2496fecbcd4c99bb3cc73df64b24982607f54227
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:19 2017 -0700

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

commit 314d3ca4d1b2a6a28427fc19510f89c7d7df6234
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:19 2017 -0700

    lib/file: Hosted file locking code robustness improvement
    
    The hosted file locking code tosses a random number generator and
    creates an directory name (D name) and member name (M name) that both
    use the random number.
    
    If the D name cannot be created we try again until we can create one.
    The assumption is other lockers are racing with the code. The random
    number generator makes the chance of collisons small and soon we get
    a D name.
    
    Once a D name can be created, we check if the M name exists. If it
    does, we remove the D name and try again until we get a unique D and
    M name. Once the M name is created, the D name is discarded.
    
    If we're unable to remove the D name, we could land up filling the
    locking directory with garbage that cannot be cleaned up. Fail if
    we're unable to remove the D entry.

commit 824c7718031c6adbc02b7a60b61639bc029b9852
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:19 2017 -0700

    Add a poll flag for one-shot callbacks in AsyncSocket.

commit 7367296bebe4eed2bc5555f49fbaeea197be94ef
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:19 2017 -0700

    Disable lib/string wprintf functions for non-Windows builds
    
    The lib/string wprintf functions currently are enabled only
    for Windows and Linux builds, but Windows is the only
    platform that uses them.  Disable them for Linux, too.
    
    This also means HAS_BSD_WPRINTF can be removed.

commit fcc96bf4c1123fb51d96fdbb935e83b91bd04765
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:18 2017 -0700

    Remove Str_Mbscpy and Str_Mbscat
    
    Since we assume that all non-wide-char strings are UTF-8, the
    implementations of Str_Mbscpy and Str_Mbscat are basically
    identical to those of Str_Strcpy and Str_Strcat.  We thus do
    not need the Str_Mbs versions.

commit c8f3f5164f277ee311543c153e6cf4d9a5c3b17c
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:18 2017 -0700

    GOSTable: Linux 4.x kernel
    
    Add Linux 4.x entries to the Guest OS table.

commit b7ee5608972cdb7a585fb7b1a13fb62f24f546e9
Author: Oliver Kurth <okurth@vmware.com>
Date:   Mon Oct 23 14:21:18 2017 -0700

    lib/file: FileIO_AtomicUpdateEx ASSERT
    
    ASSERT(File_IsSameFile(dirName, dstDirName)) fired when NFS went
    down at just the right moment.  It was not obvious that the ASSERT
    fired due to an NFS failure.
    
    File_IsSameFile correctly returns errno upon failure.  Check the
    errno value to properly detect and return an error.

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.
