From 58b3d4e63e5ab71fdb666c68048e735928ca09c7 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 23 Jun 2025 13:21:57 +0100 Subject: [PATCH] Add support for VDDK 9.0.0.0 resolves: RHEL-99466 --- 0043-vddk-Add-support-for-VDDK-9.0.0.0.patch | 49 ++++++++++++++++++++ nbdkit.spec | 7 ++- 2 files changed, 55 insertions(+), 1 deletion(-) create mode 100644 0043-vddk-Add-support-for-VDDK-9.0.0.0.patch diff --git a/0043-vddk-Add-support-for-VDDK-9.0.0.0.patch b/0043-vddk-Add-support-for-VDDK-9.0.0.0.patch new file mode 100644 index 0000000..f3deaec --- /dev/null +++ b/0043-vddk-Add-support-for-VDDK-9.0.0.0.patch @@ -0,0 +1,49 @@ +From c33178791b9f66cb49082a496b5e65c6027f5ebd Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Mon, 23 Jun 2025 13:05:51 +0100 +Subject: [PATCH] vddk: Add support for VDDK 9.0.0.0 + +(cherry picked from commit c966fe7d05ed7e992e1bf725d4625434c74eaf8d) +--- + plugins/vddk/nbdkit-vddk-plugin.pod | 2 +- + plugins/vddk/vddk.c | 4 +++- + 2 files changed, 4 insertions(+), 2 deletions(-) + +diff --git a/plugins/vddk/nbdkit-vddk-plugin.pod b/plugins/vddk/nbdkit-vddk-plugin.pod +index 1e376140..a03f688a 100644 +--- a/plugins/vddk/nbdkit-vddk-plugin.pod ++++ b/plugins/vddk/nbdkit-vddk-plugin.pod +@@ -405,7 +405,7 @@ This is also the first version that supported the + C API. This is used to provide + sparseness (extent) information over NBD. + +-=item VDDK 8.0.2.1 (released Feb 2024) ++=item VDDK 9.0.0.0 (released Jun 2025) + + This is the latest version of VDDK that we have tested at the time of + writing, but the plugin should work with future versions. +diff --git a/plugins/vddk/vddk.c b/plugins/vddk/vddk.c +index bbf0af31..f5e22ae3 100644 +--- a/plugins/vddk/vddk.c ++++ b/plugins/vddk/vddk.c +@@ -78,7 +78,7 @@ NBDKIT_DLL_PUBLIC int vddk_debug_datapath = 1; + void *dl; /* dlopen handle */ + bool init_called; /* was InitEx called */ + __thread int error_suppression; /* threadlocal error suppression */ +-int library_version; /* VDDK major: 6, 7, 8, ... */ ++int library_version; /* VDDK major: 6, 7, 8, 9 */ + bool is_remote; /* true if remote connection */ + + enum compression_type compression; /* compression */ +@@ -407,6 +407,8 @@ load_library (bool load_error_is_fatal) + * our testsuite is easier to write if we point libdir directly to + * a stub .so. + */ ++ { "lib64/libvixDiskLib.so.9", 9 }, ++ { "libvixDiskLib.so.9", 9 }, + { "lib64/libvixDiskLib.so.8", 8 }, + { "libvixDiskLib.so.8", 8 }, + { "lib64/libvixDiskLib.so.7", 7 }, +-- +2.47.1 + diff --git a/nbdkit.spec b/nbdkit.spec index 1873250..e6801fa 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -56,7 +56,7 @@ Name: nbdkit Version: 1.38.5 -Release: 10%{?dist} +Release: 11%{?dist} Summary: NBD server License: BSD-3-Clause @@ -123,6 +123,7 @@ Patch0039: 0039-vddk-stats-Record-the-byte-count-of-each-QueryAlloca.patch Patch0040: 0040-vddk-stats-Collect-elapsed-time-for-ReadAsync-and-Wr.patch Patch0041: 0041-server-Fix-off-by-one-for-maximum-block_status-lengt.patch Patch0042: 0042-blocksize-Fix-32-bit-overflow-in-.extents-CVE-2025-4.patch +Patch0043: 0043-vddk-Add-support-for-VDDK-9.0.0.0.patch # For automatic RPM Provides generation. # See: https://rpm-software-management.github.io/rpm/manual/dependency_generators.html @@ -1541,6 +1542,10 @@ fi %changelog +* Mon Jun 23 2025 Richard W.M. Jones - 1.38.5-11 +- Add support for VDDK 9.0.0.0 + resolves: RHEL-99466 + * Mon Jun 09 2025 Richard W.M. Jones - 1.38.5-10 - CVE-2025-47711 denial of service attack by client sending maximum size block status