Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package open-vm-tools for openSUSE:Factory checked in at 2025-10-02 19:19:56 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/open-vm-tools (Old) and /work/SRC/openSUSE:Factory/.open-vm-tools.new.11973 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "open-vm-tools" Thu Oct 2 19:19:56 2025 rev:135 rq:1308459 version:13.0.5 Changes: -------- --- /work/SRC/openSUSE:Factory/open-vm-tools/open-vm-tools.changes 2025-06-27 23:01:24.281501651 +0200 +++ /work/SRC/openSUSE:Factory/.open-vm-tools.new.11973/open-vm-tools.changes 2025-10-02 19:20:41.731702098 +0200 @@ -1,0 +2,40 @@ +Wed Oct 1 14:53:20 UTC 2025 - Kirk Allan <[email protected]> + +- Update to open-vm-tools 13.0.5 based on build 24915695. (boo#1250692): + + Please refer to the Release Notes at + https://github.com/vmware/open-vm-tools/blob/stable-13.0.5/ReleaseNotes.md. + + The granular changes that have gone into the open-vm-tools 13.0.5 release + are in the ChangeLog at + https://github.com/vmware/open-vm-tools/blob/stable-13.0.5/open-vm-tools/ChangeLog. + + There are no new features in the open-vm-tools 13.0.5 release. This is + primarily a maintenance release that addresses a security issue. + + This release resolves and includes the patch for CVE-2025-41244. For more + information on this vulnerability and its impact on Broadcom products, + see VMSA-2025-0015. + + A patch to address CVE-2025-41244 on earlier open-vm-tools releases is + provided to the Linux community at CVE-2025-41244.patch. + + A minor enhancement has been made for Guest OS Customization. The + DeployPkg plugin has been updated to use "systemctl reboot", if available. + + For a more complete list of issues addressed in this release, see the + What's New and Resolved Issues section of the Release Notes. + +- Drop patch now contained in 13.0.5: + 0001-GOSC-Update-Guest-OS-Customization-to-utilize-system.patch + CVE-2025-41244-1240-1300-SDMP.patch + +------------------------------------------------------------------- +Tue Sep 23 21:36:31 UTC 2025 - Kirk Allan <[email protected]> + +- Fix (bsc#1250373 (CVE-2025-41244) - VUL-0: contains a local privilege + escalation vulnerability. ++ Add patch: + - CVE-2025-41244-1240-1300-SDMP.patch + +------------------------------------------------------------------- Old: ---- 0001-GOSC-Update-Guest-OS-Customization-to-utilize-system.patch open-vm-tools-13.0.0.obscpio New: ---- open-vm-tools-13.0.5.obscpio ----------(Old B)---------- Old:- Drop patch now contained in 13.0.5: 0001-GOSC-Update-Guest-OS-Customization-to-utilize-system.patch CVE-2025-41244-1240-1300-SDMP.patch ----------(Old E)---------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ open-vm-tools.spec ++++++ --- /var/tmp/diff_new_pack.PQvrhJ/_old 2025-10-02 19:20:43.171762340 +0200 +++ /var/tmp/diff_new_pack.PQvrhJ/_new 2025-10-02 19:20:43.175762507 +0200 @@ -38,7 +38,7 @@ %define with_X 1 Name: open-vm-tools -Version: 13.0.0 +Version: 13.0.5 Release: 0 Summary: Open Virtual Machine Tools License: BSD-3-Clause AND GPL-2.0-only AND LGPL-2.1-only @@ -159,7 +159,6 @@ Supplements: modalias(pci:v000015ADd*sv*sd*bc*sc*i*) ExclusiveArch: %ix86 x86_64 aarch64 #Upstream patches -Patch2: 0001-GOSC-Update-Guest-OS-Customization-to-utilize-system.patch #SUSE specific patches Patch0: pam-vmtoolsd.patch @@ -262,7 +261,6 @@ # fix for an rpmlint warning regarding wrong line feeds sed -i -e "s/\r//" README #Upstream patches -%patch -P 2 -p2 #SUSE specific patches %patch -P 0 -p2 ++++++ _service ++++++ --- /var/tmp/diff_new_pack.PQvrhJ/_old 2025-10-02 19:20:43.223764515 +0200 +++ /var/tmp/diff_new_pack.PQvrhJ/_new 2025-10-02 19:20:43.227764682 +0200 @@ -2,7 +2,7 @@ <service name="obs_scm" mode="manual"> <param name="url">https://github.com/vmware/open-vm-tools.git</param> <param name="scm">git</param> - <param name="revision">stable-13.0.0</param> + <param name="revision">stable-13.0.5</param> <param name="versionformat">@PARENT_TAG@</param> <param name="versionrewrite-pattern">stable-(.*)</param> </service> ++++++ open-vm-tools-13.0.0.obscpio -> open-vm-tools-13.0.5.obscpio ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vm-tools-13.0.0/ReleaseNotes.md new/open-vm-tools-13.0.5/ReleaseNotes.md --- old/open-vm-tools-13.0.0/ReleaseNotes.md 2025-06-19 06:05:18.000000000 +0200 +++ new/open-vm-tools-13.0.5/ReleaseNotes.md 2025-09-30 08:45:41.000000000 +0200 @@ -1,8 +1,8 @@ -# open-vm-tools 13.0.0 Release Notes +# open-vm-tools 13.0.5 Release Notes -Updated on: 17 June 2025 +Updated on: 29 Sep 2025 -open-vm-tools | 17 JUNE 2025 | Build 24696409 +open-vm-tools | 29 SEP 2025 | Build 24915695 Check back for additions and updates to these release notes. @@ -12,7 +12,6 @@ * [What's New](#whatsnew) * [Internationalization](#i18n) -* [Product Support Notice](#suppnote) * [Guest Operating System Customization Support](#guestop) * [Interoperability Matrix](#interop) * [Resolved Issues](#resolvedissues) @@ -20,21 +19,21 @@ ## <a id="whatsnew" name="whatsnew"></a>What's New -* The vm-support script has been improved (version 0.98). +* This release resolves [CVE-2025-41244](https://www.cve.org/CVERecord?id=CVE-2025-41244). For more information on this vulnerability and its impact on Broadcom products, see [VMSA-2025-0015](https://support.broadcom.com/web/ecx/support-content-notification/-/external/content/SecurityAdvisories/0/36149). - To aid in triaging open-vm-tools issues, the vm-support script has been updated to: - * now collect all current open-vm-tools log files as configured in the [logging] section of tools.conf. - * collect one month of information from the systemd journal. + A patch to address CVE-2025-41244 on earlier open-vm-tools releases is provided to the Linux community at [CVE-2025-41244.patch](https://github.com/vmware/open-vm-tools/tree/CVE-2025-41244.patch). + +* Guest OS Customization has been updated to use "systemctl reboot", if available. * Please see the [Resolved Issues](#resolvedissues) and [Known Issues](#knownissues) sections below. -* A complete list of the granular changes in the open-vm-tools 13.0.0 release is available at: +* A complete list of the granular changes in the open-vm-tools 13.0.5 release is available at: - [open-vm-tools ChangeLog](https://github.com/vmware/open-vm-tools/blob/stable-13.0.0/open-vm-tools/ChangeLog) + [open-vm-tools ChangeLog](https://github.com/vmware/open-vm-tools/blob/stable-13.0.5/open-vm-tools/ChangeLog) ## <a id="i18n" name="i18n"></a>Internationalization -open-vm-tools 13.0.0 is available in the following languages: +open-vm-tools 13.0.5 is available in the following languages: * English * French @@ -52,47 +51,18 @@ ## <a id="resolvedissues" name ="resolvedissues"></a> Resolved Issues -* **The following github.com/vmware/open-vm-tools pull requests and issues has been addressed.** - - * FTBFS: --std=c23 conflicting types between function definition and declaration MXUserTryAcquireForceFail() - - [Fixes Issue #750](https://github.com/vmware/open-vm-tools/issues/750)<br> - [Pull request #751](https://github.com/vmware/open-vm-tools/pull/751) - - * Provide tools.conf settings to deactivate one-time and periodic time synchronization - - The new tools.conf settings `disable-all` and `disable-periodic` allow the guest OS administrator to deactivate one-time and periodic time synchronization without rebooting the VM or restarting the guest OS. - - [Fixes Issue #302](https://github.com/vmware/open-vm-tools/issues/302) - - * Fix xmlsec detection when cross-compiling with pkg-config - - [Pull request #732](https://github.com/vmware/open-vm-tools/pull/732) - -* **After October 25, 2024, with open-vm-tools earlier than 13.0.0, the salt-minion component is not installed or fails to install in a guest operating system through the VMware Component Manager** - - When you configure the salt-minion component in the present state, its last status is set to 102 (not installed) or 103 (installation failed), never reaching the installed state 100. +* **This release resolves CVE-2025-41244.** - * The VM advanced setting with the key "guestinfo./vmware.components.salt_minion.desiredstate" has a value present. - * The VM advanced setting with the key "guestinfo.vmware.components.salt_minion.laststatus" has a value 102 or 103. + * For more information on this vulnerability and its impact on Broadcom products, see [VMSA-2025-0015](https://support.broadcom.com/web/ecx/support-content-notification/-/external/content/SecurityAdvisories/0/36149). - The salt-minion component installs a log file with traces indicating failure to access the online salt repository on https://repo.saltproject.io. The "vmware-svtminion.sh-install-*.log" file for the failed install shows a trace similar to: + * A patch to address CVE-2025-41244 on earlier open-vm-tools releases is provided to the Linux community at [CVE-2025-41244.patch](https://github.com/vmware/open-vm-tools/tree/CVE-2025-41244.patch). - ``` - <date+time> INFO: /usr/lib64/open-vm-tools/componentMgr/saltMinion/svtminion.sh:_curl_download attempting download of file 'repo.json' - <date+time> WARNING: /usr/lib64/open-vm-tools/componentMgr/saltMinion/svtminion.sh:_curl_download failed to download file 'repo.json' from 'https://repo.saltproject.io/salt/py3/onedir/repo.json' on '0' attempt, retcode '6' - <date+time> WARNING: /usr/lib64/open-vm-tools/componentMgr/saltMinion/svtminion.sh:_curl_download failed to download file 'repo.json' from 'https://repo.saltproject.io/salt/py3/onedir/repo.json' on '1' attempt, retcode '6' - <date+time> WARNING: /usr/lib64/open-vm-tools/componentMgr/saltMinion/svtminion.sh:_curl_download failed to download file 'repo.json' from 'https://repo.saltproject.io/salt/py3/onedir/repo.json' on '2' attempt, retcode '6' - <date+time> WARNING: /usr/lib64/open-vm-tools/componentMgr/saltMinion/svtminion.sh:_curl_download failed to download file 'repo.json' from 'https://repo.saltproject.io/salt/py3/onedir/repo.json' on '3' attempt, retcode '6' - <date+time> WARNING: /usr/lib64/open-vm-tools/componentMgr/saltMinion/svtminion.sh:_curl_download failed to download file 'repo.json' from 'https://repo.saltproject.io/salt/py3/onedir/repo.json' on '4' attempt, retcode '6' - <date+time> ERROR: /usr/lib64/open-vm-tools/componentMgr/saltMinion/svtminion.sh:_curl_download failed to download file 'repo.json' from 'https://repo.saltproject.io/salt/py3/onedir/repo.json' after '5' attempts - ``` +* **Guest OS Customization updated to use "systemctl reboot".** - This issue is resolved in this release. + Currently the "telinit 6" command is used to reboot a Linux VM following Guest OS Customization. As the classic Linux init system, SysVinit, is deprecated in favor of a newer init system, systemd, the telinit command may not be available on the base Linux OS. - The new versions of the salt-minion integration scripts supporting the new Salt Project repository locations are available at: + This change adds support to Guest OS Customization for the systemd init system. If the modern init system, systemd, is available, then a "systemctl reboot" command will be used to trigger reboot. Otherwise, the "telinit 6" command will be used assuming the traditional init system, SysVinit, is still available. - * [https://packages.broadcom.com/artifactory/saltproject-generic/onedir/](https://packages.broadcom.com/artifactory/saltproject-generic/onedir/) ## <a id="knownissues" name="knownissues"></a>Known Issues @@ -108,4 +78,4 @@ <tt>vmhgfs-fuse /mnt/hgfs fuse defaults,allow_other 0 0</tt> - For more information on how to configure VMware Tools Shared Folders, see [KB 60262](https://knowledge.broadcom.com/external/article?legacyId=60262) + For more information on how to configure VMware Tools Shared Folders, see [KB 60262](https://knowledge.broadcom.com/external/article?legacyId=60262). diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vm-tools-13.0.0/open-vm-tools/ChangeLog new/open-vm-tools-13.0.5/open-vm-tools/ChangeLog --- old/open-vm-tools-13.0.0/open-vm-tools/ChangeLog 2025-06-19 06:05:18.000000000 +0200 +++ new/open-vm-tools-13.0.5/open-vm-tools/ChangeLog 2025-09-30 08:45:41.000000000 +0200 @@ -1,3 +1,90 @@ +commit 4c7899b1d241dad1259eedbc999b4f25041c4fca +Author: Kruti Pendharkar <[email protected]> +Date: Mon Sep 29 23:37:12 2025 -0700 + + ================================================= + open-vm-tools 13.0.5 released at this point. + ================================================= + + Update of the ChangeLog with the final changes in preparation for + the open-vm-tools 13.0.5 release. + +commit d3e111e46db3acc56ac592fe8d695dc63f9b4c11 +Author: Kruti Pendharkar <[email protected]> +Date: Mon Sep 29 23:30:35 2025 -0700 + + Update the ReleaseNotes.md for the 13.0.5 open-vm-tools release. + +commit ae3ca4ef23348a9a883fd3c63d4bcbc79f615c59 +Author: Kruti Pendharkar <[email protected]> +Date: Mon Sep 29 23:23:35 2025 -0700 + + Prepare for the open-vm-tools 13.0.5 release. + + - Update the tools version in the configure.ac. + - Update the build numbers in the buldNumber.h. + +commit 3ab0685c1cf7981c84898d546a73d6db6dcd3823 +Author: Kruti Pendharkar <[email protected]> +Date: Mon Sep 29 23:03:43 2025 -0700 + + Address CVE-2025-41244 + - Disable (default) the execution of the SDMP get-versions.sh script. + + With the Linux SDMP get-versions.sh script disabled, version information + of installed services will not be made available to VMware Aria + +commit 1de3f643df26c37a477d717254be95d414bd0c39 +Author: Kruti Pendharkar <[email protected]> +Date: Mon Sep 29 23:03:43 2025 -0700 + + Change to common source files not applicable to open-vm-tools. + +commit f0e624d1ae33cee7e66aaed17d82242272383c9a +Author: Kruti Pendharkar <[email protected]> +Date: Mon Sep 29 23:03:43 2025 -0700 + + Change to common source files not applicable to open-vm-tools. + +commit 7ff34bef69c7252fb0ceb628f64103b0fa4f56f2 +Author: Kruti Pendharkar <[email protected]> +Date: Mon Sep 29 23:03:43 2025 -0700 + + Use different command to reboot linux VM, depending on the init system type + + We currently use the "telinit 6" command to reboot linux VMs. + However, the "telinit" command will be unavailable in the future as SysVinit + will be deprecated on some modern linux systems. + + For example: In SUSE, "telinit" command is part of systemd-sysvcompat + (15 SP6 and newer) or systemd-sysvinit (older than 15 SP6), whereas in some + SUSE images or templates such as SUSE minimal VM has no such packages installed. + See SUSE KB: https://www.suse.com/support/kb/doc/?id=000021564 + + This change detects the init system of a linux and uses different command + to trigger reboot. If the modern init system, systemd, is available, then + "systemctl reboot" command will be used to trigger reboot. Otherwise, continue + using "telinit 6" command as SysVinit, the traditional init system, is still + available. + +commit 7e8d6f072381e606c0c211069c3ba14582e9b30e +Author: Kruti Pendharkar <[email protected]> +Date: Mon Sep 29 23:03:43 2025 -0700 + + Set the tools version for open-vm-tools 13.0.5 release + +commit 248d01bdd92371cd868c5486ab48ce2f845d208f +Author: Kruti Pendharkar <[email protected]> +Date: Mon Sep 29 23:03:43 2025 -0700 + + Change to common header file not applicable to open-vm-tools. + +commit 3c28b6f4d9af2df2027a9df9c82e2f0196bd8bf7 +Author: Kruti Pendharkar <[email protected]> +Date: Wed Jun 18 21:05:18 2025 -0700 + + Update ChangeLog with the open-vm-tools 13.0.0 release marker. + commit 01d8ecaee6b85a897c281dcaf5c080acc6ccf576 Author: Kruti Pendharkar <[email protected]> Date: Wed Jun 18 20:59:50 2025 -0700 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vm-tools-13.0.0/open-vm-tools/configure.ac new/open-vm-tools-13.0.5/open-vm-tools/configure.ac --- old/open-vm-tools-13.0.0/open-vm-tools/configure.ac 2025-06-19 06:05:18.000000000 +0200 +++ new/open-vm-tools-13.0.5/open-vm-tools/configure.ac 2025-09-30 08:45:41.000000000 +0200 @@ -36,10 +36,10 @@ ### Initialization ### -TOOLS_VERSION="13.0.0" +TOOLS_VERSION="13.0.5" AC_INIT( [open-vm-tools], - [13.0.0], + [13.0.5], [[email protected]]) # In order to make this configure script auto-detect situations where diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vm-tools-13.0.0/open-vm-tools/lib/include/buildNumber.h new/open-vm-tools-13.0.5/open-vm-tools/lib/include/buildNumber.h --- old/open-vm-tools-13.0.0/open-vm-tools/lib/include/buildNumber.h 2025-06-19 06:05:18.000000000 +0200 +++ new/open-vm-tools-13.0.5/open-vm-tools/lib/include/buildNumber.h 2025-09-30 08:45:41.000000000 +0200 @@ -1,12 +1,12 @@ #define BUILD_NUMBER \ - "build-24696409" + "build-24915695" #define BUILD_NUMBER_NUMERIC \ - 24696409 + 24915695 #define BUILD_NUMBER_NUMERIC_STRING \ - "24696409" + "24915695" #define PRODUCT_BUILD_NUMBER \ - "product-build-52586" + "product-build-52705" #define PRODUCT_BUILD_NUMBER_NUMERIC \ - 52586 + 52705 #define PRODUCT_BUILD_NUMBER_NUMERIC_STRING \ - "52586" + "52705" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vm-tools-13.0.0/open-vm-tools/lib/include/vm_tools_version.h new/open-vm-tools-13.0.5/open-vm-tools/lib/include/vm_tools_version.h --- old/open-vm-tools-13.0.0/open-vm-tools/lib/include/vm_tools_version.h 2025-06-19 06:05:18.000000000 +0200 +++ new/open-vm-tools-13.0.5/open-vm-tools/lib/include/vm_tools_version.h 2025-09-30 08:45:41.000000000 +0200 @@ -1804,15 +1804,29 @@ #define TOOLS_VERSION_PLIERS_RELEASE_V_BASE 0 #ifndef RC_INVOKED -#define TOOLS_VERSION_NEXT TOOLS_VERSION_TO_UINT(TOOLS_VERSION_NEXT_V) +#define TOOLS_VERSION_SWISS_ARMY_KNIFE_RELEASE TOOLS_VERSION_TO_UINT(TOOLS_VERSION_SWISS_ARMY_KNIFE_RELEASE_V) #endif /* RC_INVOKED */ -#define TOOLS_VERSION_NEXT_V_MJR 13 -#define TOOLS_VERSION_NEXT_V_MNR 0 -#define TOOLS_VERSION_NEXT_V_BASE 0 +#define TOOLS_VERSION_SWISS_ARMY_KNIFE_RELEASE_V_MJR 13 +#define TOOLS_VERSION_SWISS_ARMY_KNIFE_RELEASE_V_MNR 0 +#define TOOLS_VERSION_SWISS_ARMY_KNIFE_RELEASE_V_BASE 0 -#define TOOLS_VERSION_CURRENT TOOLS_VERSION_NEXT -#define TOOLS_VERSION_CURRENT_STR TOOLS_VERSION_TO_STR(TOOLS_VERSION_NEXT) -#define TOOLS_VERSION_CURRENT_CSV TOOLS_VERSION_TO_CSV(TOOLS_VERSION_NEXT) +#ifndef RC_INVOKED +#define TOOLS_VERSION_SWISS_ARMY_KNIFE_PATCH1 TOOLS_VERSION_TO_UINT(TOOLS_VERSION_SWISS_ARMY_KNIFE_PATCH1_V) +#endif /* RC_INVOKED */ +#define TOOLS_VERSION_SWISS_ARMY_KNIFE_PATCH1_V_MJR 13 +#define TOOLS_VERSION_SWISS_ARMY_KNIFE_PATCH1_V_MNR 0 +#define TOOLS_VERSION_SWISS_ARMY_KNIFE_PATCH1_V_BASE 1 + +#ifndef RC_INVOKED +#define TOOLS_VERSION_SWISS_ARMY_KNIFE_UPDATE1 TOOLS_VERSION_TO_UINT(TOOLS_VERSION_SWISS_ARMY_KNIFE_UPDATE1_V) +#endif /* RC_INVOKED */ +#define TOOLS_VERSION_SWISS_ARMY_KNIFE_UPDATE1_V_MJR 13 +#define TOOLS_VERSION_SWISS_ARMY_KNIFE_UPDATE1_V_MNR 0 +#define TOOLS_VERSION_SWISS_ARMY_KNIFE_UPDATE1_V_BASE 5 + +#define TOOLS_VERSION_CURRENT TOOLS_VERSION_SWISS_ARMY_KNIFE_UPDATE1 +#define TOOLS_VERSION_CURRENT_STR TOOLS_VERSION_TO_STR(TOOLS_VERSION_SWISS_ARMY_KNIFE_UPDATE1) +#define TOOLS_VERSION_CURRENT_CSV TOOLS_VERSION_TO_CSV(TOOLS_VERSION_SWISS_ARMY_KNIFE_UPDATE1) /* * The extended Tools version is the current Tools version with the diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vm-tools-13.0.0/open-vm-tools/libDeployPkg/linuxDeployment.c new/open-vm-tools-13.0.5/open-vm-tools/libDeployPkg/linuxDeployment.c --- old/open-vm-tools-13.0.0/open-vm-tools/libDeployPkg/linuxDeployment.c 2025-06-19 06:05:18.000000000 +0200 +++ new/open-vm-tools-13.0.5/open-vm-tools/libDeployPkg/linuxDeployment.c 2025-09-30 08:45:41.000000000 +0200 @@ -1,5 +1,5 @@ /********************************************************* - * Copyright (c) 2006-2024 Broadcom. All rights reserved. + * Copyright (c) 2006-2025 Broadcom. All Rights Reserved. * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries. * * This program is free software; you can redistribute it and/or modify it @@ -122,6 +122,9 @@ static const char* VARRUNIMCDIR = "/var/run/vmware-imc"; #endif static const char* TMPDIR = "/tmp"; +static const char* USRBINSYSTEMCTL = "/usr/bin/systemctl"; +static const char* BINSYSTEMCTL = "/bin/systemctl"; +static const char* SBINTELINIT = "/sbin/telinit"; // Possible return codes from perl script static const int CUST_SUCCESS = 0; @@ -197,7 +200,6 @@ static void GetCloudinitVersion(const char* versionOutput, int* major, int* minor); -static Bool IsTelinitASoftlinkToSystemctl(void); /* * Globals @@ -1674,28 +1676,43 @@ sLog(log_error, "Failed to fork: '%s'.", strerror(errno)); } else if (pid == 0) { // We're in the child + char rebootCommand[1024]; int rebootCommandResult; + bool isSystemd = false; bool isRebooting = false; - // Retry reboot until telinit 6 succeeds to workaround PR 2716292 where - // telinit is a soft(symbolic) link to systemctl and it could exit - // abnormally due to systemd sends SIGTERM - bool retryReboot = IsTelinitASoftlinkToSystemctl(); + // PR 3438671, using different command to reboot modern systemd linux + // or traditional SysVinit linux + // Repeatedly try to reboot to workaround PR 2716292 on modern systemd + // linux where systemctl reboot could exit abnormally due to systemd + // sends SIGTERM + // Repeatedly try to reboot to workaround PR 530641 on traditional + // SysVinit linux where telinit 6 is overwritten by a telinit 2 + if (access(USRBINSYSTEMCTL, X_OK) == 0) { + isSystemd = true; + Str_Snprintf(rebootCommand, sizeof(rebootCommand), "%s reboot", + USRBINSYSTEMCTL); + } else if (access(BINSYSTEMCTL, X_OK) == 0) { + isSystemd = true; + Str_Snprintf(rebootCommand, sizeof(rebootCommand), "%s reboot", + BINSYSTEMCTL); + } else { + Str_Snprintf(rebootCommand, sizeof(rebootCommand), "%s 6", + SBINTELINIT); + } sLog(log_info, "Trigger reboot."); - // Repeatedly try to reboot to workaround PR 530641 where - // telinit 6 is overwritten by a telinit 2 do { if (isRebooting) { sLog(log_info, "Rebooting."); } rebootCommandResult = - ForkExecAndWaitCommand("/sbin/telinit 6", true, NULL, 0); + ForkExecAndWaitCommand(rebootCommand, true, NULL, 0); isRebooting = (rebootCommandResult == 0) ? true : isRebooting; sleep(1); - } while (rebootCommandResult == 0 || (retryReboot && !isRebooting)); + } while (rebootCommandResult == 0 || (isSystemd && !isRebooting)); if (!isRebooting) { sLog(log_error, - "Failed to reboot, reboot command returned error %d.", - rebootCommandResult); + "Failed to reboot, reboot command %s returned error %d.", + rebootCommand, rebootCommandResult); exit (127); } else { sLog(log_info, "Reboot has been triggered."); @@ -1955,8 +1972,11 @@ char** args = GetFormattedCommandLine(command); const char* processStdOut; Bool isPerlCommand = (strcmp(args[0], "/usr/bin/perl") == 0) ? true : false; - Bool isTelinitCommand = - (strcmp(args[0], "/sbin/telinit") == 0) ? true : false; + Bool isRebootCommand = + (Str_Strncmp(command, "/usr/bin/systemctl reboot", strlen(command)) || + Str_Strncmp(command, "/bin/systemctl reboot", strlen(command)) || + Str_Strncmp(command, "/sbin/telinit 6", strlen(command))) ? + true : false; sLog(log_debug, "Command to exec : '%s'.", args[0]); Process_Create(&hp, args, sLog); @@ -2012,9 +2032,9 @@ } } } else { - if (isTelinitCommand) { + if (isRebootCommand) { sLog(log_info, - "Telinit command failed with exitcode: %d, stderr: '%s'.", + "Reboot command failed with exitcode: %d, stderr: '%s'.", retval, Process_GetStderr(hp)); } else { @@ -2209,43 +2229,3 @@ } sLog(log_info, "Cloud-init version major: %d, minor: %d", *major, *minor); } - -/** - * - * Check if "telinit" command is a soft(symbolic) link to "systemctl" command - * - * The fullpath of "systemctl" command could be: - * /bin/systemctl - * or - * /usr/bin/systemctl - * - * @returns TRUE if "telinit" command is a soft link to "systemctl" command - * FALSE if "telinit" command is not a soft link to "systemctl" command - * - **/ -static Bool -IsTelinitASoftlinkToSystemctl(void) -{ - static const char systemctlBinPath[] = "/bin/systemctl"; - static const char readlinkCommand[] = "/bin/readlink /sbin/telinit"; - char readlinkCommandOutput[256]; - int forkExecResult; - - forkExecResult = ForkExecAndWaitCommand(readlinkCommand, - true, - readlinkCommandOutput, - sizeof(readlinkCommandOutput)); - if (forkExecResult != 0) { - sLog(log_debug, "readlink command result = %d.", forkExecResult); - return FALSE; - } - - if (strstr(readlinkCommandOutput, systemctlBinPath) != NULL) { - sLog(log_debug, "/sbin/telinit is a soft link to systemctl"); - return TRUE; - } else { - sLog(log_debug, "/sbin/telinit is not a soft link to systemctl"); - } - - return FALSE; -} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vm-tools-13.0.0/open-vm-tools/services/plugins/serviceDiscovery/serviceDiscovery.c new/open-vm-tools-13.0.5/open-vm-tools/services/plugins/serviceDiscovery/serviceDiscovery.c --- old/open-vm-tools-13.0.0/open-vm-tools/services/plugins/serviceDiscovery/serviceDiscovery.c 2025-06-19 06:05:18.000000000 +0200 +++ new/open-vm-tools-13.0.5/open-vm-tools/services/plugins/serviceDiscovery/serviceDiscovery.c 2025-09-30 08:45:41.000000000 +0200 @@ -1,5 +1,5 @@ /********************************************************* - * Copyright (c) 2020-2024 Broadcom. All Rights Reserved. + * Copyright (c) 2020-2025 Broadcom. All Rights Reserved. * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries. * * This program is free software; you can redistribute it and/or modify it @@ -123,6 +123,12 @@ #define SERVICE_DISCOVERY_CONF_DEFAULT_CACHEDATA TRUE /* + * Defines the configuration to enable/disable version obtaining logic + */ +#define CONFNAME_SERVICEDISCOVERY_VERSION_CHECK "version-check-enabled" +#define SERVICE_DISCOVERY_CONF_DEFAULT_VERSION_CHECK FALSE + +/* * Define the configuration to require at least one subscriber subscribed for * the gdp message. * @@ -1265,23 +1271,27 @@ * * Construct final paths of the scripts that will be used for execution. * + * @param[in] versionCheckEnabled TRUE to include the SERVICE_DISCOVERY_KEY_VERSIONS + * entry; FALSE to skip it (derived from config). + * ***************************************************************************** */ static void -ConstructScriptPaths(void) +ConstructScriptPaths(Bool versionCheckEnabled) { int i; #if !defined(OPEN_VM_TOOLS) gchar *toolsInstallDir; #endif + int insertIndex = 0; if (gFullPaths != NULL) { return; } gFullPaths = g_array_sized_new(FALSE, TRUE, sizeof(KeyNameValue), - ARRAYSIZE(gKeyScripts)); + ARRAYSIZE(gKeyScripts) - (versionCheckEnabled ? 0u : 1u)); if (scriptInstallDir == NULL) { #if defined(OPEN_VM_TOOLS) scriptInstallDir = Util_SafeStrdup(VMTOOLS_SERVICE_DISCOVERY_SCRIPTS); @@ -1293,6 +1303,15 @@ #endif } for (i = 0; i < ARRAYSIZE(gKeyScripts); ++i) { + /* + * Skip adding if: + * 1. Version check is disabled, AND + * 2. The keyName matches SERVICE_DISCOVERY_KEY_VERSIONS + */ + if (!versionCheckEnabled && + g_strcmp0(gKeyScripts[i].keyName, SERVICE_DISCOVERY_KEY_VERSIONS) == 0) { + continue; + } KeyNameValue tmp; tmp.keyName = g_strdup_printf("%s", gKeyScripts[i].keyName); #if defined(_WIN32) @@ -1300,7 +1319,8 @@ #else tmp.val = g_strdup_printf("%s%s%s", scriptInstallDir, DIRSEPS, gKeyScripts[i].val); #endif - g_array_insert_val(gFullPaths, i, tmp); + g_array_insert_val(gFullPaths, insertIndex, tmp); + insertIndex++; } } @@ -1366,14 +1386,20 @@ } }; gboolean disabled; + Bool versionCheckEnabled; regData.regs = VMTools_WrapArray(regs, sizeof *regs, ARRAYSIZE(regs)); + versionCheckEnabled = VMTools_ConfigGetBoolean( + ctx->config, + CONFGROUPNAME_SERVICEDISCOVERY, + CONFNAME_SERVICEDISCOVERY_VERSION_CHECK, + SERVICE_DISCOVERY_CONF_DEFAULT_VERSION_CHECK); /* * Append scripts execution command line */ - ConstructScriptPaths(); + ConstructScriptPaths(versionCheckEnabled); disabled = VMTools_ConfigGetBoolean(ctx->config, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vm-tools-13.0.0/open-vm-tools/services/plugins/vix/vixTools.c new/open-vm-tools-13.0.5/open-vm-tools/services/plugins/vix/vixTools.c --- old/open-vm-tools-13.0.0/open-vm-tools/services/plugins/vix/vixTools.c 2025-06-19 06:05:18.000000000 +0200 +++ new/open-vm-tools-13.0.5/open-vm-tools/services/plugins/vix/vixTools.c 2025-09-30 08:45:41.000000000 +0200 @@ -1,5 +1,5 @@ /********************************************************* - * Copyright (c) 2007-2024 Broadcom. All rights reserved. + * Copyright (c) 2007-2025 Broadcom. All Rights Reserved. * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries. * * This program is free software; you can redistribute it and/or modify it @@ -2645,6 +2645,65 @@ #endif +#if defined(_WIN32) +/* + *----------------------------------------------------------------------------- + * + * VixTools_ConfigGetString -- + * + * Wrapper for VMTools_ConfigGetString to retrieve values + * from VIX_TOOLS_CONFIG_API_GROUPNAME group. + * + * Return value: + * Value of the key if the value was read successfully, or else + * a copy of defValue unless defValue is NULL, in which case it's NULL. + * The returned string should be freed with g_free when no longer + * needed. + * + * Side effects: + * None + * + *----------------------------------------------------------------------------- + */ +gchar * +VixTools_ConfigGetString(const gchar *key, // IN + const gchar *defValue) // In +{ + + return VMTools_ConfigGetString(gConfDictRef, + VIX_TOOLS_CONFIG_API_GROUPNAME, + key, defValue); +} + + +/* + *----------------------------------------------------------------------------- + * + * VixTools_ConfigLogInvalidString -- + * + * Log a warning when a config string from the + * VIX_TOOLS_CONFIG_API_GROUPNAME group has an invalid value. + * + * Return value: + * None + * + * Side effects: + * None + * + *----------------------------------------------------------------------------- + */ +void +VixTools_ConfigLogInvalidString(const gchar *function, // IN + const gchar *key, // IN + const gchar *confValue, // IN + const gchar *usedValue) // IN +{ + g_warning("%s: invalid value '%s' from tools.conf [%s] %s, using %s.\n", + function, confValue, VIX_TOOLS_CONFIG_API_GROUPNAME, key, usedValue); +} +#endif + + /* *----------------------------------------------------------------------------- * @@ -11750,7 +11809,7 @@ * the GuestAuth library. * * Results: - * VIX_OK if successful.Other VixError code otherwise. + * VIX_OK if successful, otherwise some other VixError code. * * Side effects: * Current process impersonates. @@ -11774,10 +11833,6 @@ VGAuthExtraParams extraParams[1]; Bool impersonated = FALSE; - extraParams[0].name = VGAUTH_PARAM_LOAD_USER_PROFILE; - extraParams[0].value = loadUserProfile ? VGAUTH_PARAM_VALUE_TRUE : - VGAUTH_PARAM_VALUE_FALSE; - err = VixMsg_DeObfuscateNamePassword(obfuscatedNamePassword, &username, &password); @@ -11793,14 +11848,22 @@ goto done; } +#ifdef _WIN32 + vgErr = VGAuth_ValidateUsernamePassword_Helper(ctx, username, password, + &newHandle); +#else vgErr = VGAuth_ValidateUsernamePassword(ctx, username, password, - 0, NULL, - &newHandle); + 0, NULL, &newHandle); +#endif if (VGAUTH_FAILED(vgErr)) { err = VixToolsTranslateVGAuthError(vgErr); goto done; } + extraParams[0].name = VGAUTH_PARAM_LOAD_USER_PROFILE; + extraParams[0].value = loadUserProfile ? VGAUTH_PARAM_VALUE_TRUE : + VGAUTH_PARAM_VALUE_FALSE; + vgErr = VGAuth_Impersonate(ctx, newHandle, (int)ARRAYSIZE(extraParams), extraParams); @@ -11859,7 +11922,7 @@ * the GuestAuth library. * * Results: - * VIX_OK if successful. Other VixError code otherwise. + * VIX_OK if successful, otherwise some other VixError code. * * Side effects: * Current process impersonates. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vm-tools-13.0.0/open-vm-tools/services/plugins/vix/vixToolsInt.h new/open-vm-tools-13.0.5/open-vm-tools/services/plugins/vix/vixToolsInt.h --- old/open-vm-tools-13.0.0/open-vm-tools/services/plugins/vix/vixToolsInt.h 2025-06-19 06:05:18.000000000 +0200 +++ new/open-vm-tools-13.0.5/open-vm-tools/services/plugins/vix/vixToolsInt.h 2025-09-30 08:45:41.000000000 +0200 @@ -1,5 +1,6 @@ /********************************************************* - * Copyright (c) 2010-2020,2023 VMware, Inc. All rights reserved. + * Copyright (c) 2010-2025 Broadcom. All Rights Reserved. + * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries. * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as published @@ -38,6 +39,7 @@ #include "VGAuthCommon.h" #include "VGAuthError.h" #include "VGAuthAuthentication.h" +#include "VGAuthAuthenticationWin32.h" #include "VGAuthAlias.h" #endif @@ -72,6 +74,15 @@ #ifdef _WIN32 VixError VixToolsTranslateVGAuthError(VGAuthError vgErr); + +gchar *VixTools_ConfigGetString(const gchar *key, + const gchar *defValue); + +void VixTools_ConfigLogInvalidString(const gchar *function, + const gchar *key, + const gchar *confValue, + const gchar *usedValue); + #endif VixError VixToolsImpersonateUser(VixCommandRequestHeader *requestMsg, @@ -207,6 +218,13 @@ Bool hostVerified, void **userToken, VGAuthUserHandle **curUserHandle); + +VGAuthError +VGAuth_ValidateUsernamePassword_Helper(VGAuthContext *ctx, + const char *userName, + const char *password, + VGAuthUserHandle **handle); + #endif // _WIN32 #ifdef VMX86_DEVEL diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vm-tools-13.0.0/open-vm-tools/vgauth/lib/VGAuthInt.h new/open-vm-tools-13.0.5/open-vm-tools/vgauth/lib/VGAuthInt.h --- old/open-vm-tools-13.0.0/open-vm-tools/vgauth/lib/VGAuthInt.h 2025-06-19 06:05:18.000000000 +0200 +++ new/open-vm-tools-13.0.5/open-vm-tools/vgauth/lib/VGAuthInt.h 2025-09-30 08:45:41.000000000 +0200 @@ -1,5 +1,6 @@ /********************************************************* - * Copyright (c) 2011-2017,2023 VMware, Inc. All rights reserved. + * Copyright (c) 2011-2025 Broadcom. All Rights Reserved. + * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries. * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as published @@ -28,6 +29,9 @@ #include "VGAuthBasicDefs.h" #include "VGAuthCommon.h" #include "VGAuthAuthentication.h" +#ifdef _WIN32 +#include "VGAuthAuthenticationWin32.h" +#endif #include "VGAuthAlias.h" #include "audit.h" #include "prefs.h" @@ -287,6 +291,9 @@ VGAuthError VGAuthValidateUsernamePasswordImpl(VGAuthContext *ctx, const char *userName, const char *password, + const int numExtraParams, + const VGAuthExtraParams + *extraParams, VGAuthUserHandle **handle); #ifdef UNITTEST @@ -342,6 +349,17 @@ gboolean defValue, gboolean *paramValue); +#define VGAuthGetStringExtraParam(numEP, ep, name, defValue, value) \ + VGAuthGetStringExtraParamImpl(__FUNCTION__, (numEP), ep, \ + name, defValue, (value)) + +VGAuthError VGAuthGetStringExtraParamImpl(const char *funcName, + int numExtraParams, + const VGAuthExtraParams *params, + const char *paramName, + const char *defValue, + const char **paramValue); + void VGAuth_FreeAliasInfoContents(VGAuthAliasInfo *si); void VGAuth_CopyAliasInfo(const VGAuthAliasInfo *src, VGAuthAliasInfo *dst); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vm-tools-13.0.0/open-vm-tools/vgauth/lib/auth.c new/open-vm-tools-13.0.5/open-vm-tools/vgauth/lib/auth.c --- old/open-vm-tools-13.0.0/open-vm-tools/vgauth/lib/auth.c 2025-06-19 06:05:18.000000000 +0200 +++ new/open-vm-tools-13.0.5/open-vm-tools/vgauth/lib/auth.c 2025-09-30 08:45:41.000000000 +0200 @@ -1,5 +1,6 @@ /********************************************************* - * Copyright (c) 2011-2017,2023 VMware, Inc. All rights reserved. + * Copyright (c) 2011-2025 Broadcom. All Rights Reserved. + * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries. * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as published @@ -543,8 +544,7 @@ * @param[in] password The password to be validated. * @param[in] numExtraParams The number of elements in extraParams. * @param[in] extraParams Any optional, additional paramaters to the - * function. Currently none are supported, so this - * must be NULL. + * function. * @param[out] handle The resulting handle representing the user * associated with @a userName. * Must be freed with VGAuth_UserHandleFree(). @@ -560,7 +560,7 @@ VGAuth_ValidateUsernamePassword(VGAuthContext *ctx, const char *userName, const char *password, - int numExtraParams, + const int numExtraParams, const VGAuthExtraParams *extraParams, VGAuthUserHandle **handle) { @@ -587,14 +587,15 @@ return VGAUTH_E_INVALID_ARGUMENT; } - err = VGAuthValidateExtraParams(numExtraParams, extraParams); - if (VGAUTH_E_OK != err) { - return err; - } - + /* + * numExtraParams and extraParams need to be validated before use. No need + * to validate them here since they're just passed through. + */ err = VGAuthValidateUsernamePasswordImpl(ctx, userName, password, + numExtraParams, + extraParams, handle); if (VGAUTH_E_OK == err) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vm-tools-13.0.0/open-vm-tools/vgauth/lib/authPosix.c new/open-vm-tools-13.0.5/open-vm-tools/vgauth/lib/authPosix.c --- old/open-vm-tools-13.0.0/open-vm-tools/vgauth/lib/authPosix.c 2025-06-19 06:05:18.000000000 +0200 +++ new/open-vm-tools-13.0.5/open-vm-tools/vgauth/lib/authPosix.c 2025-09-30 08:45:41.000000000 +0200 @@ -1,5 +1,6 @@ /********************************************************* - * Copyright (C) 2011-2017, 2019, 2021 VMware, Inc. All rights reserved. + * Copyright (c) 2011-2025 Broadcom. All Rights Reserved. + * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries. * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as published @@ -240,11 +241,15 @@ * * Validates a username/password. * - * @param[in] ctx The VGAuthContext. - * @param[in] userName The username to be validated. - * @param[in] password The password to be validated. - * @param[out] handle The resulting handle representing the user - * associated with the username. + * @param[in] ctx The VGAuthContext. + * @param[in] userName The username to be validated. + * @param[in] password The password to be validated. + * @param[in] numExtraParams The number of elements in extraParams. + * @param[in] extraParams Any optional, additional paramaters to the + * function. Currently none are supported, so this + * must be NULL. + * @param[out] handle The resulting handle representing the user + * associated with the username. * * @return VGAUTH_E_OK on success, VGAuthError on failure * @@ -255,6 +260,8 @@ VGAuthValidateUsernamePasswordImpl(VGAuthContext *ctx, const char *userName, const char *password, + const int numExtraParams, + const VGAuthExtraParams *extraParams, VGAuthUserHandle **handle) { #ifdef USE_PAM @@ -266,6 +273,11 @@ struct passwd *pwd; #endif + err = VGAuthValidateExtraParams(numExtraParams, extraParams); + if (VGAUTH_E_OK != err) { + return err; + } + #ifdef USE_PAM if (!AuthLoadPAM()) { return VGAUTH_E_FAIL; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/open-vm-tools-13.0.0/open-vm-tools/vgauth/lib/common.c new/open-vm-tools-13.0.5/open-vm-tools/vgauth/lib/common.c --- old/open-vm-tools-13.0.0/open-vm-tools/vgauth/lib/common.c 2025-06-19 06:05:18.000000000 +0200 +++ new/open-vm-tools-13.0.5/open-vm-tools/vgauth/lib/common.c 2025-09-30 08:45:41.000000000 +0200 @@ -1,5 +1,6 @@ /********************************************************* - * Copyright (c) 2011-2017, 2023 VMware, Inc. All rights reserved. + * Copyright (c) 2011-2025 Broadcom. All Rights Reserved. + * The term "Broadcom" refers to Broadcom Inc. and/or its subsidiaries. * * This program is free software; you can redistribute it and/or modify it * under the terms of the GNU Lesser General Public License as published @@ -163,6 +164,74 @@ return VGAUTH_E_OK; } + +/* + ****************************************************************************** + * VGAuthGetStringExtraParamImpl -- */ /** + * + * Get the string value of the specified extra param in the params array. + * + * @param[in] funcName The name of the calling function. + * @param[in] numParams The number of elements in the params array. + * @param[in] params The params array to get param value from. + * @param[in] paramName The param name to get its value. + * @param[in] defValue The param default value if not set in the array. + * @param[out] paramValue Returned param value + * + * @retval VGAUTH_E_INVALID_ARGUMENT If incomplete arguments are passed in, + * the specified extra parameter is passed + * in the array multiple times or the + * parameter value is invalid. + * @reval VGAUTH_E_OK If no error is encountered. + * + ****************************************************************************** + */ + +VGAuthError +VGAuthGetStringExtraParamImpl(const char *funcName, + int numParams, + const VGAuthExtraParams *params, + const char *paramName, + const char *defValue, + const char **paramValue) +{ + gboolean paramSet = FALSE; + int i; + + if ((numParams < 0) || (numParams > 0 && NULL == params)) { + Warning("%s: invalid number of parameters: %d.\n", funcName, numParams); + return VGAUTH_E_INVALID_ARGUMENT; + } + + if (NULL == paramName || NULL == paramValue) { + return VGAUTH_E_INVALID_ARGUMENT; + } + + for (i = 0; i < numParams; i++) { + if (g_strcmp0(params[i].name, paramName) == 0) { + // only allow it to be set once + if (paramSet) { + Warning("%s: extraParam '%s' passed multiple times.\n", + funcName, params[i].name); + return VGAUTH_E_INVALID_ARGUMENT; + } + if (params[i].value) { + *paramValue = params[i].value; + paramSet = TRUE; + } else { + Warning("%s: extraParam '%s' has NULL value.\n", + funcName, params[i].name); + return VGAUTH_E_INVALID_ARGUMENT; + } + } + } + + if (!paramSet) { + *paramValue = defValue; + } + return VGAUTH_E_OK; +} + /* ****************************************************************************** ++++++ open-vm-tools.obsinfo ++++++ --- /var/tmp/diff_new_pack.PQvrhJ/_old 2025-10-02 19:20:44.459816222 +0200 +++ /var/tmp/diff_new_pack.PQvrhJ/_new 2025-10-02 19:20:44.467816556 +0200 @@ -1,5 +1,5 @@ name: open-vm-tools -version: 13.0.0 -mtime: 1750305918 -commit: 3c28b6f4d9af2df2027a9df9c82e2f0196bd8bf7 +version: 13.0.5 +mtime: 1759214741 +commit: fbc80ffbd226b4a61bb8ea1c9a682b5c7614e3fd
