diff --git a/.gitignore b/.gitignore index eebff73..541e40c 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/open-vm-tools-9.10.2-2822639.tar.gz +SOURCES/open-vm-tools-10.0.5-3227872.tar.gz diff --git a/.open-vm-tools.metadata b/.open-vm-tools.metadata index ca4ae48..16f383d 100644 --- a/.open-vm-tools.metadata +++ b/.open-vm-tools.metadata @@ -1 +1 @@ -e77058f842120b0bc34cacc375757fa72c133518 SOURCES/open-vm-tools-9.10.2-2822639.tar.gz +81fa7f23d44428db05d22bde704544638227822a SOURCES/open-vm-tools-10.0.5-3227872.tar.gz diff --git a/SOURCES/0001-Bug-1473600-Skip-freezing-autofs-mounts.patch b/SOURCES/0001-Bug-1473600-Skip-freezing-autofs-mounts.patch deleted file mode 100644 index 5966c86..0000000 --- a/SOURCES/0001-Bug-1473600-Skip-freezing-autofs-mounts.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 581f2d0e93a3aacd7bbf252963d2fbd1720bab15 Mon Sep 17 00:00:00 2001 -From: Dyno Hongjun Fu -Date: Mon, 23 Nov 2015 22:17:59 -0800 -Subject: [PATCH] [Bug 1473600] Skip freezing autofs mounts. - ---- - lib/syncDriver/syncDriverPosix.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/lib/syncDriver/syncDriverPosix.c b/lib/syncDriver/syncDriverPosix.c -index a6e4e1e..400b8a7 100644 ---- a/lib/syncDriver/syncDriverPosix.c -+++ b/lib/syncDriver/syncDriverPosix.c -@@ -42,10 +42,11 @@ static SyncFreezeFn gBackends[] = { - }; - - static const char *gRemoteFSTypes[] = { -+ "autofs", -+ "cifs", - "nfs", - "nfs4", - "smbfs", -- "cifs", - "vmhgfs" - }; - --- -1.8.3.1 - diff --git a/SOURCES/no-unused-const.patch b/SOURCES/no-unused-const.patch new file mode 100644 index 0000000..f11a7f5 --- /dev/null +++ b/SOURCES/no-unused-const.patch @@ -0,0 +1,12 @@ +--- configure.ac.old 2016-05-24 23:43:41.265711304 -0700 ++++ configure.ac 2016-05-25 00:03:39.128437427 -0700 +@@ -942,7 +942,8 @@ + # Glib2 keep changing mutex APIs so we also need to disable 'deprecated' + # warnings for now (-Wno-deprecated-declarations). + for TEST_CFLAG in -Wno-pointer-sign -Wno-unused-value -fno-strict-aliasing \ +- -Wno-unknown-pragmas -Wno-uninitialized -Wno-deprecated-declarations; do ++ -Wno-unknown-pragmas -Wno-uninitialized -Wno-deprecated-declarations \ ++ -Wno-unused-const-variable; do + AC_MSG_CHECKING([for GCC flag $TEST_CFLAG]) + ORIGINAL_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS $TEST_CFLAG" diff --git a/SOURCES/pam-bz1313071.patch b/SOURCES/pam-bz1313071.patch new file mode 100644 index 0000000..c3fe7bb --- /dev/null +++ b/SOURCES/pam-bz1313071.patch @@ -0,0 +1,10 @@ +--- open-vm-tools-10.0.5-3227872/scripts/linux/pam.d/vmtoolsd.orig 2015-11-23 23:07:44.000000000 -0800 ++++ open-vm-tools-10.0.5-3227872/scripts/linux/pam.d/vmtoolsd 2016-06-16 13:16:18.000095000 -0700 +@@ -1,7 +1,5 @@ + #%PAM-1.0 +-auth sufficient pam_unix2.so + auth sufficient pam_unix.so shadow + auth required pam_unix_auth.so shadow +-account sufficient pam_unix2.so + account sufficient pam_unix.so + account required pam_unix_acct.so diff --git a/SOURCES/vmw-bitmask-gcc6.patch b/SOURCES/vmw-bitmask-gcc6.patch new file mode 100644 index 0000000..e5d802c --- /dev/null +++ b/SOURCES/vmw-bitmask-gcc6.patch @@ -0,0 +1,16 @@ +--- lib/include/x86cpuid.h.old 2016-05-24 23:23:20.747118224 -0700 ++++ lib/include/x86cpuid.h 2016-05-24 23:28:35.829547406 -0700 +@@ -905,11 +905,9 @@ + * + * e.g. - CPUID_VIRT_BITS_MASK = 0xff00 + * - CPUID_VIRT_BITS_SHIFT = 8 +- * +- * Note: The MASK definitions must use some gymnastics to get +- * around a warning when shifting left by 32. + */ +-#define VMW_BIT_MASK(shift) (((1 << (shift - 1)) << 1) - 1) ++#define VMW_BIT_MASK(shift) (0xffffffffu >> (32 - shift)) ++ + + #define FIELD(lvl, ecxIn, reg, bitpos, size, name, s, c3) \ + CPUID_##name##_SHIFT = bitpos, \ diff --git a/SPECS/open-vm-tools.spec b/SPECS/open-vm-tools.spec index 914a27e..cf24303 100644 --- a/SPECS/open-vm-tools.spec +++ b/SPECS/open-vm-tools.spec @@ -1,5 +1,5 @@ ################################################################################ -### Copyright 2013-15 VMware, Inc. All rights reserved. +### Copyright 2013-16 VMware, Inc. All rights reserved. ### ### RPM SPEC file for building open-vm-tools packages. ### @@ -19,16 +19,16 @@ ################################################################################ %global _hardened_build 1 -%global majorversion 9.10 -%global minorversion 2 -%global toolsbuild 2822639 +%global majorversion 10.0 +%global minorversion 5 +%global toolsbuild 3227872 %global toolsversion %{majorversion}.%{minorversion} %global toolsdaemon vmtoolsd #%global vgauthdaemon vgauthd Name: open-vm-tools Version: %{toolsversion} -Release: 5%{?dist} +Release: 2%{?dist} Summary: Open Virtual Machine Tools for virtual machines hosted on VMware Group: Applications/System License: GPLv2 @@ -42,44 +42,51 @@ ExclusiveArch: x86_64 ExclusiveArch: %{ix86} x86_64 %endif -# Bug 1269956 - [ESX][RHEL7]System with autofs/nfs mounts hangs while taking snapshot, vmtoolsd stuck in autofs backtrace -Patch1: 0001-Bug-1473600-Skip-freezing-autofs-mounts.patch +Patch1: no-unused-const.patch +Patch2: vmw-bitmask-gcc6.patch +# https://bugzilla.redhat.com/show_bug.cgi?id=1313071#c7 +Patch3: pam-bz1313071.patch -BuildRequires: autoconf -BuildRequires: automake -BuildRequires: libtool -BuildRequires: gcc-c++ -BuildRequires: doxygen +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: libtool +BuildRequires: gcc-c++ +BuildRequires: doxygen # Fuse is optional and enables vmblock-fuse -BuildRequires: fuse-devel -BuildRequires: glib2-devel >= 2.14.0 -BuildRequires: gtk2-devel >= 2.4.0 -BuildRequires: gtkmm24-devel -BuildRequires: libdnet-devel -BuildRequires: libicu-devel -BuildRequires: libmspack-devel -BuildRequires: libX11-devel -BuildRequires: libXext-devel -BuildRequires: libXi-devel -BuildRequires: libXinerama-devel -BuildRequires: libXrandr-devel -BuildRequires: libXrender-devel -BuildRequires: libXtst-devel -BuildRequires: openssl-devel -BuildRequires: pam-devel -BuildRequires: procps-devel -BuildRequires: systemd -BuildRequires: xerces-c-devel -#BuildRequires: xml-security-c-devel - -Requires: initscripts -Requires: coreutils -Requires: net-tools -Requires: grep -Requires: sed -Requires: systemd -Requires: tar -Requires: which +BuildRequires: fuse-devel +BuildRequires: glib2-devel >= 2.14.0 +BuildRequires: gtk2-devel >= 2.4.0 +BuildRequires: gtkmm24-devel +BuildRequires: libdnet-devel +BuildRequires: libicu-devel +BuildRequires: libmspack-devel +BuildRequires: libX11-devel +BuildRequires: libXext-devel +BuildRequires: libXi-devel +BuildRequires: libXinerama-devel +BuildRequires: libXrandr-devel +BuildRequires: libXrender-devel +BuildRequires: libXtst-devel +BuildRequires: openssl-devel +BuildRequires: pam-devel +BuildRequires: procps-devel +BuildRequires: systemd +BuildRequires: xerces-c-devel +#BuildRequires: xml-security-c-devel + +Requires: coreutils +Requires: fuse +Requires: net-tools +Requires: grep +Requires: sed +Requires: systemd +Requires: tar +Requires: which + +# open-vm-tools >= 10.0.0 do not require open-vm-tools-deploypkg +# provided by VMware. That functionality is now available as part +# of open-vm-tools package itself. +Obsoletes: open-vm-tools-deploypkg %description The %{name} project is an open source implementation of VMware Tools. It @@ -110,16 +117,16 @@ VMware virtual machines. %prep %setup -q -n %{name}-%{version}-%{toolsbuild} -%patch1 -p1 + +%patch1 -p0 +%patch2 -p0 +%patch3 -p1 %build -# Use _DEFAULT_SOURCE to suppress warning until upstream -# is fixed. Refer https://sourceware.org/bugzilla/show_bug.cgi?id=16632. -export CFLAGS="$RPM_OPT_FLAGS -D_DEFAULT_SOURCE" -export CXXLAGS="$RPM_OPT_FLAGS -D_DEFAULT_SOURCE" # Required for regenerating configure script when # configure.ac get modified -#autoreconf -i +autoreconf -i +autoconf # configure from open-vm-tools 9.10.2 is missing 'x' bit chmod a+x configure @@ -151,6 +158,9 @@ find %{buildroot}%{_libdir} -name '*.la' -delete rm -fr %{buildroot}%{_defaultdocdir} rm -f docs/api/build/html/FreeSans.ttf +# Remove mount.vmhgfs & symlink +rm -fr %{buildroot}%{_sbindir} %{buildroot}/sbin/mount.vmhgfs + # Move vm-support to /usr/bin mv %{buildroot}%{_sysconfdir}/vmware-tools/vm-support %{buildroot}%{_bindir} @@ -163,11 +173,21 @@ install -p -m 644 -D %{SOURCE1} %{buildroot}%{_unitdir}/%{toolsdaemon}.service # upstream %post -if [ -e %{_bindir}/vmware-guestproxycerttool ]; then +if [ -f %{_bindir}/vmware-guestproxycerttool ]; then mkdir -p %{_sysconfdir}/vmware-tools/GuestProxyData/server mkdir -p -m 0700 %{_sysconfdir}/vmware-tools/GuestProxyData/trusted %{_bindir}/vmware-guestproxycerttool -g &> /dev/null || /bin/true fi + +# Setup mount point for Shared Folders +if [ -f %{_bindir}/vmware-checkvm -a \ + -f %{_bindir}/vmhgfs-fuse ] && \ + %{_bindir}/vmware-checkvm &> /dev/null && \ + %{_bindir}/vmware-checkvm -p | grep -q Workstation && \ + %{_bindir}/vmhgfs-fuse -e &> /dev/null; then + mkdir -p /mnt/hgfs +fi + /sbin/ldconfig #%systemd_post %{vgauthdaemon}.service %systemd_post %{toolsdaemon}.service @@ -176,12 +196,21 @@ fi %systemd_preun %{toolsdaemon}.service #%systemd_preun %{vgauthdaemon}.service -# Tell VMware that open-vm-tools is being uninstalled -if [ "$1" = "0" -a \ - -e %{_bindir}/vmware-checkvm -a \ - -e %{_bindir}/vmware-rpctool ] && \ - %{_bindir}/vmware-checkvm &> /dev/null; then - %{_bindir}/vmware-rpctool 'tools.set.version 0' &> /dev/null || /bin/true +if [ "$1" = "0" -a \ + -f %{_bindir}/vmware-checkvm ] && \ + %{_bindir}/vmware-checkvm &> /dev/null; then + + # Tell VMware that open-vm-tools is being uninstalled + if [ -f %{_bindir}/vmware-rpctool ]; then + %{_bindir}/vmware-rpctool 'tools.set.version 0' &> /dev/null || /bin/true + fi + + # Teardown mount point for Shared Folders + if [ -d /mnt/hgfs ] && \ + %{_bindir}/vmware-checkvm -p | grep -q Workstation; then + umount /mnt/hgfs &> /dev/null || /bin/true + rmdir /mnt/hgfs &> /dev/null || /bin/true + fi fi %postun @@ -189,7 +218,7 @@ fi %systemd_postun_with_restart %{toolsdaemon}.service #%systemd_postun_with_restart %{vgauthdaemon}.service # Cleanup GuestProxy certs if open-vm-tools is being uninstalled -if [ "$1" = "0" ]; then \ +if [ "$1" = "0" ]; then rm -rf %{_sysconfdir}/vmware-tools/GuestProxyData &> /dev/null || /bin/true fi @@ -198,13 +227,21 @@ fi %postun devel -p /sbin/ldconfig %files -%doc AUTHORS ChangeLog COPYING NEWS README +%{!?_licensedir:%global license %%doc} +%license COPYING +%doc AUTHORS ChangeLog NEWS README %config(noreplace) %{_sysconfdir}/pam.d/* -%{_sysconfdir}/vmware-tools/ +%dir %{_sysconfdir}/vmware-tools/ +#%dir %{_sysconfdir}/vmware-tools/vgauth +#%dir %{_sysconfdir}/vmware-tools/vgauth/schemas %config(noreplace) %{_sysconfdir}/vmware-tools/*.conf #%config %{_sysconfdir}/vmware-tools/vgauth/schemas/* +%{_sysconfdir}/vmware-tools/*-vm-default +%{_sysconfdir}/vmware-tools/scripts +%{_sysconfdir}/vmware-tools/statechange.subr #%{_bindir}/VGAuthService %{_bindir}/vm-support +%{_bindir}/vmhgfs-fuse %{_bindir}/vmtoolsd %{_bindir}/vmware-checkvm %{_bindir}/vmware-guestproxycerttool @@ -224,9 +261,7 @@ fi %{_libdir}/%{name}/plugins/common/*.so %dir %{_libdir}/%{name}/plugins/vmsvc %{_libdir}/%{name}/plugins/vmsvc/*.so -%exclude %{_sbindir}/mount.vmhgfs %{_datadir}/%{name}/ -%exclude /sbin/ %{_unitdir}/%{toolsdaemon}.service #%{_unitdir}/%{vgauthdaemon}.service @@ -248,6 +283,12 @@ fi %{_libdir}/libvmtools.so %changelog +* Thu Jun 16 2016 Richard W.M. Jones - 10.0.5-2 +- Rebase to open-vm-tools 10.0.5 (from Fedora Rawhide) + resolves: rhbz#1268537 +- Remove PAM calls to pam_unix2.so module + resolves: rhbz#1313071 + * Tue May 3 2016 Dave Wysochanski - 9.10.2-5 - Skip freezing autofs mounts. resolves: rhbz#1269956