diff options
-rw-r--r-- | .SRCINFO | 10 | ||||
-rw-r--r-- | PKGBUILD | 16 | ||||
-rw-r--r-- | vmnet.patch | 75 | ||||
-rw-r--r-- | vmware-workstation.install | 2 |
4 files changed, 14 insertions, 89 deletions
@@ -1,7 +1,7 @@ pkgbase = vmware-workstation pkgdesc = The industry standard for running multiple operating systems as virtual machines on a single Linux PC. - pkgver = 17.0.0 - pkgrel = 3 + pkgver = 17.0.1 + pkgrel = 1 url = https://www.vmware.com/products/workstation-for-linux.html install = vmware-workstation.install arch = x86_64 @@ -28,7 +28,7 @@ pkgbase = vmware-workstation options = emptydirs backup = etc/vmware/config backup = etc/conf.d/vmware - source = https://download3.vmware.com/software/WKST-1700-LX/VMware-Workstation-Full-17.0.0-20800274.x86_64.bundle + source = https://download3.vmware.com/software/WKST-1701-LX/VMware-Workstation-Full-17.0.1-21139696.x86_64.bundle source = vmware-bootstrap source = vmware-vix-bootstrap source = config @@ -43,7 +43,7 @@ pkgbase = vmware-workstation source = Makefile source = vmmon.patch source = vmnet.patch - sha256sums = 9014e87066f5b60e62f9dbd698e68f7cf507c6b59c5fcfe86de2aa44647e9910 + sha256sums = 95fd421b8705bf6e57b893f2a4570928d702129249bc49fc5cc34cf779defb65 sha256sums = 12e7b16abf8d7e858532edabb8868919c678063c566a6535855b194aac72d55e sha256sums = da1698bf4e73ae466c1c7fc93891eba4b9c4581856649635e6532275dbfea141 sha256sums = ac81b0470feebba36482fbb2a9f641fef98924711bf761c0e6fdec67178194de @@ -57,6 +57,6 @@ pkgbase = vmware-workstation sha256sums = 10562d11d50edab9abc2b29c8948714edcb9b084f99b3766d07ddd21259e372e sha256sums = 273d4357599a3e54259c78cc49054fef8ecfd2c2eda35cbcde3a53a62777a5ac sha256sums = 1060b5d45caeda5119b220fab4e1ece398af34d75131139a5dc6f74ee06672c3 - sha256sums = 465bd02962e990c0a03b26b36e1ede691c0344231d80650d4a7c79db76fe3d7a + sha256sums = 7c3b6a7871b19e31fafdcc2631751dd9569196740d8e7c2026653d155c0c8da0 pkgname = vmware-workstation @@ -14,10 +14,10 @@ #PKGEXT=.pkg.tar pkgname=vmware-workstation -pkgver=17.0.0 -_buildver=20800274 +pkgver=17.0.1 +_buildver=21139696 _pkgver=${pkgver}_${_buildver} -pkgrel=3 +pkgrel=1 pkgdesc='The industry standard for running multiple operating systems as virtual machines on a single Linux PC.' arch=(x86_64) url='https://www.vmware.com/products/workstation-for-linux.html' @@ -76,7 +76,7 @@ source=( 'vmnet.patch' ) sha256sums=( - '9014e87066f5b60e62f9dbd698e68f7cf507c6b59c5fcfe86de2aa44647e9910' + '95fd421b8705bf6e57b893f2a4570928d702129249bc49fc5cc34cf779defb65' '12e7b16abf8d7e858532edabb8868919c678063c566a6535855b194aac72d55e' 'da1698bf4e73ae466c1c7fc93891eba4b9c4581856649635e6532275dbfea141' @@ -93,7 +93,7 @@ sha256sums=( '10562d11d50edab9abc2b29c8948714edcb9b084f99b3766d07ddd21259e372e' '273d4357599a3e54259c78cc49054fef8ecfd2c2eda35cbcde3a53a62777a5ac' '1060b5d45caeda5119b220fab4e1ece398af34d75131139a5dc6f74ee06672c3' - '465bd02962e990c0a03b26b36e1ede691c0344231d80650d4a7c79db76fe3d7a' + '7c3b6a7871b19e31fafdcc2631751dd9569196740d8e7c2026653d155c0c8da0' ) options=(!strip emptydirs) @@ -109,8 +109,8 @@ _isovirtualprinterimages=(Linux Windows) if [ -n "$_enable_macOS_guests" ]; then -_vmware_fusion_ver=13.0.0 -_vmware_fusion_buildver=20802013 +_vmware_fusion_ver=13.0.1 +_vmware_fusion_buildver=21139760 _vmware_fusion_ver_full=${_vmware_fusion_ver}_${_vmware_fusion_buildver} # List of VMware Fusion versions: https://softwareupdate.vmware.com/cds/vmw-desktop/fusion/ @@ -127,7 +127,7 @@ source+=( "efi-patches.txt" ) sha256sums+=( - '40bb9fbd4b2a18b48138a7fb3285d89187d50caab10506cff81b367b6edc858d' + 'e92ebc38fd5b1a693168f837a31932558a641c84fb57ad72f55e47c8ac4332df' '8a61e03d0edbbf60c1c84a43aa87a6e950f82d2c71b968888f019345c2f684f3' '392c1effcdec516000e9f8ffc97f2586524d8953d3e7d6f2c5f93f2acd809d91' ) diff --git a/vmnet.patch b/vmnet.patch index f671ddea71ec..60fc5a12d86f 100644 --- a/vmnet.patch +++ b/vmnet.patch @@ -12,78 +12,3 @@ # Header directory for the running kernel ifdef LINUXINCLUDE -From 78b77816d39a77b1643426ece1ebd48776d83c1b Mon Sep 17 00:00:00 2001 -From: Michal Kubecek <mkubecek@suse.cz> -Date: Fri, 7 Oct 2022 12:56:44 +0200 -Subject: [PATCH] vmnet: work around field-spanning write warning - -The vmnet code uses struct VNet_EventHeader for an event header which is -followed by variable amount of payload data but does use a flexible array -member like most similar structures. When building with FORTIFY_SOURCE -against kernel 6.1-rc1, this results in runtime warnings like - - memcpy: detected field-spanning write (size 28) of single field "&t->event" - -in VNetEvent_Send() and VNetUserListenerEventHandler(). Create a helper for -copying full event structure and for implement it using two separate copy -statements, one for fixed header and one for the variable payload. Another -approach would be the use of unsafe_memcpy() but this code does not seem to -be performance critical so let us split the memcpy() instead. ---- - vmnet-only/vnet.h | 8 ++++++++ - vmnet-only/vnetEvent.c | 2 +- - vmnet-only/vnetUserListener.c | 2 +- - 3 files changed, 10 insertions(+), 2 deletions(-) - -diff --git a/vmnet-only/vnet.h b/vmnet-only/vnet.h -index d6691d5c..d5bb5572 100644 ---- a/vmnet-only/vnet.h -+++ b/vmnet-only/vnet.h -@@ -269,6 +269,7 @@ typedef struct VNet_EventHeader { - uint32 eventId; - uint32 classSet; - uint32 type; -+ char payload[]; - } VNet_EventHeader; - #pragma pack(pop) - -@@ -286,6 +287,13 @@ typedef struct VNet_LinkStateEvent { - } VNet_LinkStateEvent; - #pragma pack(pop) - -+static inline void VNet_Event_copy(VNet_EventHeader *dst, -+ const VNet_EventHeader *src) -+{ -+ *dst = *src; -+ memcpy(dst->payload, src->payload, src->size - sizeof(*src)); -+} -+ - /* - *---------------------------------------------------------------------------- - */ -diff --git a/vmnet-only/vnetEvent.c b/vmnet-only/vnetEvent.c -index 3fda7f5a..062398e0 100644 ---- a/vmnet-only/vnetEvent.c -+++ b/vmnet-only/vnetEvent.c -@@ -402,7 +402,7 @@ VNetEvent_Send(VNetEvent_Sender *s, // IN: a sender - p->nextEvent = s->firstEvent; - s->firstEvent = p; - } -- memcpy(&p->event, e, e->size); -+ VNet_Event_copy(&p->event, e); - - /* send event */ - classSet = e->classSet; -diff --git a/vmnet-only/vnetUserListener.c b/vmnet-only/vnetUserListener.c -index 114f3907..e9f51755 100644 ---- a/vmnet-only/vnetUserListener.c -+++ b/vmnet-only/vnetUserListener.c -@@ -226,7 +226,7 @@ VNetUserListenerEventHandler(void *context, // IN: the user listener - return; - } - t->nextEvent = NULL; -- memcpy(&t->event, e, e->size); -+ VNet_Event_copy(&t->event, e); - - /* append event to event list */ - userListener = (VNetUserListener*)context; diff --git a/vmware-workstation.install b/vmware-workstation.install index 8e58daa8703e..0fd6c4783c51 100644 --- a/vmware-workstation.install +++ b/vmware-workstation.install @@ -23,7 +23,7 @@ EOF post_remove() { cat << EOF -==> To remove VMware settings, delete /etc/vmware and /etc/vmware-installer directories. +==> To completely clean VMware installation, you may have to manually delete /etc/vmware, /etc/vmware-installer and /usr/lib/vmware-installer directories if they still exist. EOF } |