From f0f5e8b3ec84ff88900395d908d654770d2efe55 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 19 Jan 2021 15:48:47 +0000 Subject: [PATCH 001/298] Obsolete nbdkit-tar-plugin to provide smooth upgrades to F33+. --- nbdkit.spec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 977a251..9652e94 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -46,7 +46,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.24.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: NBD server License: BSD @@ -713,6 +713,8 @@ License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} Requires: tar +Obsoletes: %{name}-tar-plugin < 1.23.9-3 + %description tar-filter This package is a tar archive filter for %{name}. @@ -1267,6 +1269,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Jan 19 2021 Richard W.M. Jones - 1.24.0-3 +- Obsolete nbdkit-tar-plugin to provide smooth upgrades to F33+. + * Fri Jan 08 2021 Mamoru TASAKA - 1.24.0-2 - F-34: rebuild against ruby 3.0 From a720df9554a818c3bef0042b523e0ca4cf0a8eb8 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 20 Jan 2021 13:31:41 +0000 Subject: [PATCH 002/298] New upstream development version 1.25.1. --- nbdkit.spec | 9 ++++++--- sources | 4 ++-- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 9652e94..f9f7539 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -42,11 +42,11 @@ ExclusiveArch: x86_64 %global patches_touch_autotools 1 # The source directory. -%global source_directory 1.24-stable +%global source_directory 1.25-development Name: nbdkit -Version: 1.24.0 -Release: 3%{?dist} +Version: 1.25.1 +Release: 1%{?dist} Summary: NBD server License: BSD @@ -1269,6 +1269,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Wed Jan 20 2021 Richard W.M. Jones - 1.25.1-1 +- New upstream development version 1.25.1. + * Tue Jan 19 2021 Richard W.M. Jones - 1.24.0-3 - Obsolete nbdkit-tar-plugin to provide smooth upgrades to F33+. diff --git a/sources b/sources index bffaaa7..0a830f0 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.24.0.tar.gz) = cef2976163856b0c46148f9953764ed9ddf59fd2644380375ab34b7a10e981c3bebf892b63771b20a4a34f6ffb59d80f46204a38aa9fd0cd9fef82ff098b35d8 -SHA512 (nbdkit-1.24.0.tar.gz.sig) = 71888a984f3dcb73b87903a9e56bf5a6c6f8114907cb092185e0e3d44ce0406ae62e9671de87fd000f72f73fe732f23c69cdbb2eafa496884846a39fc70f90fa +SHA512 (nbdkit-1.25.1.tar.gz) = 72b18c3be56240aeda4087ce3ebf7addf7a37ca4a063f39775b93dd89b9aefd196423a5912f581cf9f5ea774fca6e2159b2490d638260c4781627f5128e98031 +SHA512 (nbdkit-1.25.1.tar.gz.sig) = ef24fe7a4cd353f2646829615a99532060429ffd93e41aba3b59a3d4d7a6335c6c47254fb4b43192cd974e72c4c2248b644c6c254ed1323787db3f781620e734 From 54e2732c5848f8055db5773b549ade86b1efa6c3 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 26 Jan 2021 21:16:57 +0000 Subject: [PATCH 003/298] - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index f9f7539..475e729 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -46,7 +46,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.25.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD @@ -1269,6 +1269,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Jan 26 2021 Fedora Release Engineering - 1.25.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Wed Jan 20 2021 Richard W.M. Jones - 1.25.1-1 - New upstream development version 1.25.1. From aef3b97d9399c4e08663a089815d2c393e928f2d Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 3 Feb 2021 22:37:24 +0000 Subject: [PATCH 004/298] New upstream development version 1.25.2. Remove all remaining traces of nbdkit-gzip-plugin and nbdkit-tar-plugin. Remove nbdkit-streaming-plugin (deprecated upstream). Remove obsoletes of old nbdkit-ext2-plugin. --- nbdkit.spec | 76 +++++++---------------------------------------------- sources | 4 +-- 2 files changed, 11 insertions(+), 69 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 475e729..c794d73 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -45,8 +45,8 @@ ExclusiveArch: x86_64 %global source_directory 1.25-development Name: nbdkit -Version: 1.25.1 -Release: 2%{?dist} +Version: 1.25.2 +Release: 1%{?dist} Summary: NBD server License: BSD @@ -207,7 +207,6 @@ Provides: %{name}-random-plugin = %{version}-%{release} Provides: %{name}-sh-plugin = %{version}-%{release} Provides: %{name}-sparse-random-plugin = %{version}-%{release} Provides: %{name}-split-plugin = %{version}-%{release} -Provides: %{name}-streaming-plugin = %{version}-%{release} Provides: %{name}-zero-plugin = %{version}-%{release} @@ -246,8 +245,6 @@ nbdkit-sparse-random-plugin Make sparse random disks. nbdkit-split-plugin Concatenate one or more files. -nbdkit-streaming-plugin A streaming file serving plugin. - nbdkit-zero-plugin Zero-length plugin for testing. @@ -325,19 +322,6 @@ This package is a libguestfs plugin for %{name}. %endif -%if 0%{?rhel} == 8 -%package gzip-plugin -Summary: GZip plugin for %{name} -License: BSD - -Requires: %{name}-server%{?_isa} = %{version}-%{release} - - -%description gzip-plugin -This package is a gzip plugin for %{name}. -%endif - - %if !0%{?rhel} %package iso-plugin Summary: Virtual ISO 9660 plugin for %{name} @@ -499,20 +483,6 @@ Requires: %{name}-server%{?_isa} = %{version}-%{release} This package contains SSH support for %{name}. -%if 0%{?rhel} == 8 -%package tar-plugin -Summary: Tar archive plugin for %{name} -License: BSD - -Requires: %{name}-server%{?_isa} = %{version}-%{release} -Requires: tar - - -%description tar-plugin -This package is a tar archive plugin for %{name}. -%endif - - %if !0%{?rhel} %package tcl-plugin Summary: Tcl plugin for %{name} @@ -684,10 +654,6 @@ License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} -# Remove in Fedora 34: -Provides: %{name}-ext2-plugin = %{version}-%{release} -Obsoletes: %{name}-ext2-plugin <= %{version}-%{release} - %description ext2-filter This package contains ext2, ext3 and ext4 filesystem support for @@ -822,19 +788,9 @@ find $RPM_BUILD_ROOT -name '*.la' -delete # rust plugin is built. Delete it if this happens. rm -f $RPM_BUILD_ROOT%{_mandir}/man3/nbdkit-rust-plugin.3* -%if 0%{?rhel} != 8 -# Remove the deprecated gzip plugin (use gzip filter instead). -rm $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/nbdkit-gzip-plugin.so -rm $RPM_BUILD_ROOT%{_mandir}/man1/nbdkit-gzip-plugin.1* - -# Remove the deprecated tar plugin (use tar filter instead). -rm $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/nbdkit-tar-plugin.so -rm $RPM_BUILD_ROOT%{_mandir}/man1/nbdkit-tar-plugin.1* -%endif - %if 0%{?rhel} # In RHEL, remove some plugins we cannot --disable. -for f in cc cdi torrent; do +for f in cc cdi streaming torrent; do rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/nbdkit-$f-plugin.so rm -f $RPM_BUILD_ROOT%{_mandir}/man?/nbdkit-$f-plugin.* done @@ -918,7 +874,6 @@ export LIBGUESTFS_TRACE=1 %{_libdir}/%{name}/plugins/nbdkit-sh-plugin.so %{_libdir}/%{name}/plugins/nbdkit-sparse-random-plugin.so %{_libdir}/%{name}/plugins/nbdkit-split-plugin.so -%{_libdir}/%{name}/plugins/nbdkit-streaming-plugin.so %{_libdir}/%{name}/plugins/nbdkit-zero-plugin.so %{_mandir}/man1/nbdkit-data-plugin.1* %{_mandir}/man1/nbdkit-eval-plugin.1* @@ -935,7 +890,6 @@ export LIBGUESTFS_TRACE=1 %{_mandir}/man3/nbdkit-sh-plugin.3* %{_mandir}/man1/nbdkit-sparse-random-plugin.1* %{_mandir}/man1/nbdkit-split-plugin.1* -%{_mandir}/man1/nbdkit-streaming-plugin.1* %{_mandir}/man1/nbdkit-zero-plugin.1* @@ -983,15 +937,6 @@ export LIBGUESTFS_TRACE=1 %endif -%if 0%{?rhel} == 8 -%files gzip-plugin -%doc README -%license LICENSE -%{_libdir}/%{name}/plugins/nbdkit-gzip-plugin.so -%{_mandir}/man1/nbdkit-gzip-plugin.1* -%endif - - %if !0%{?rhel} %files iso-plugin %doc README @@ -1088,15 +1033,6 @@ export LIBGUESTFS_TRACE=1 %{_mandir}/man1/nbdkit-ssh-plugin.1* -%if 0%{?rhel} == 8 -%files tar-plugin -%doc README -%license LICENSE -%{_libdir}/%{name}/plugins/nbdkit-tar-plugin.so -%{_mandir}/man1/nbdkit-tar-plugin.1* -%endif - - %if !0%{?rhel} %files tcl-plugin %doc README @@ -1269,6 +1205,12 @@ export LIBGUESTFS_TRACE=1 %changelog +* Wed Feb 03 2021 Richard W.M. Jones - 1.25.2-1 +- New upstream development version 1.25.2. +- Remove all remaining traces of nbdkit-gzip-plugin and nbdkit-tar-plugin. +- Remove nbdkit-streaming-plugin (deprecated upstream). +- Remove obsoletes of old nbdkit-ext2-plugin. + * Tue Jan 26 2021 Fedora Release Engineering - 1.25.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild diff --git a/sources b/sources index 0a830f0..7a2926b 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.25.1.tar.gz) = 72b18c3be56240aeda4087ce3ebf7addf7a37ca4a063f39775b93dd89b9aefd196423a5912f581cf9f5ea774fca6e2159b2490d638260c4781627f5128e98031 -SHA512 (nbdkit-1.25.1.tar.gz.sig) = ef24fe7a4cd353f2646829615a99532060429ffd93e41aba3b59a3d4d7a6335c6c47254fb4b43192cd974e72c4c2248b644c6c254ed1323787db3f781620e734 +SHA512 (nbdkit-1.25.2.tar.gz) = 1b0e55cbe3d043a6dc16e3d5291d1eca01b2c93ea3b8ff4a2e8bcdf65d39f4997c816386981d7cc2f8a052c641b92129aa6963361e1c21358618fcd274553b29 +SHA512 (nbdkit-1.25.2.tar.gz.sig) = 55866ea439409e64e1ff1bab82a69c78ad088690632cf27b5f9d4f8759256deb26ef932c68dcd8fa551cd7e2a0eaaf4223ce56b663d34e4015dfa0328b6270e1 From 13b6512f5ee3e4868f31b0047aca523de9c7423e Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 4 Feb 2021 08:52:06 +0000 Subject: [PATCH 005/298] Fix removal of streaming plugin. --- nbdkit.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index c794d73..d3a63f9 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -788,9 +788,13 @@ find $RPM_BUILD_ROOT -name '*.la' -delete # rust plugin is built. Delete it if this happens. rm -f $RPM_BUILD_ROOT%{_mandir}/man3/nbdkit-rust-plugin.3* +# Remove the streaming plugin (deprecated upstream). +rm $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/nbdkit-streaming-plugin.so +rm $RPM_BUILD_ROOT%{_mandir}/man1/nbdkit-streaming-plugin.1* + %if 0%{?rhel} # In RHEL, remove some plugins we cannot --disable. -for f in cc cdi streaming torrent; do +for f in cc cdi torrent; do rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/nbdkit-$f-plugin.so rm -f $RPM_BUILD_ROOT%{_mandir}/man?/nbdkit-$f-plugin.* done From b3800b1c4df16b7a812e053c9bdef87d27792047 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 2 Mar 2021 15:42:37 +0000 Subject: [PATCH 006/298] OCaml 4.12.0 build (RHBZ#1934138). --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index d3a63f9..8745e36 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -46,7 +46,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.25.2 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD @@ -1209,6 +1209,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Mar 2 2021 Richard W.M. Jones - 1.25.2-2 +- OCaml 4.12.0 build (RHBZ#1934138). + * Wed Feb 03 2021 Richard W.M. Jones - 1.25.2-1 - New upstream development version 1.25.2. - Remove all remaining traces of nbdkit-gzip-plugin and nbdkit-tar-plugin. From 69ac3379ace23a5d6a13d40fd840dab193db2b6a Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 2 Mar 2021 22:06:28 +0000 Subject: [PATCH 007/298] New upstream development version 1.25.3. --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 8745e36..42d21fe 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -45,8 +45,8 @@ ExclusiveArch: x86_64 %global source_directory 1.25-development Name: nbdkit -Version: 1.25.2 -Release: 2%{?dist} +Version: 1.25.3 +Release: 1%{?dist} Summary: NBD server License: BSD @@ -1209,6 +1209,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Mar 2 2021 Richard W.M. Jones - 1.25.3-1 +- New upstream development version 1.25.3. + * Tue Mar 2 2021 Richard W.M. Jones - 1.25.2-2 - OCaml 4.12.0 build (RHBZ#1934138). diff --git a/sources b/sources index 7a2926b..ffd76d8 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.25.2.tar.gz) = 1b0e55cbe3d043a6dc16e3d5291d1eca01b2c93ea3b8ff4a2e8bcdf65d39f4997c816386981d7cc2f8a052c641b92129aa6963361e1c21358618fcd274553b29 -SHA512 (nbdkit-1.25.2.tar.gz.sig) = 55866ea439409e64e1ff1bab82a69c78ad088690632cf27b5f9d4f8759256deb26ef932c68dcd8fa551cd7e2a0eaaf4223ce56b663d34e4015dfa0328b6270e1 +SHA512 (nbdkit-1.25.3.tar.gz) = b727d6cea2c32e8c0e95bb697dfe7a1daae31f1e5411ff21d8304886f313ca82120e067fdd034f868410abeed3bd4515a39ede4d80c808bc194c67e817d4b00c +SHA512 (nbdkit-1.25.3.tar.gz.sig) = 8e850f49a1daaefbf7835ffc03c90b2b5cb4917ae2ccb7e1db43e2b9262260e2c03172bf7f81554b9d72805f25059dc32eea11c88472d48ca5748abec982eb68 From a5d0de331a9b4431e3838d547c4b6e55ec607af3 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 4 Mar 2021 14:15:59 +0000 Subject: [PATCH 008/298] Remove socat dependency in RHEL 9. --- nbdkit.spec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 42d21fe..8c4e0cc 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -46,7 +46,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.25.3 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD @@ -135,7 +135,9 @@ BuildRequires: %{_bindir}/qemu-img BuildRequires: %{_bindir}/qemu-io BuildRequires: %{_bindir}/qemu-nbd BuildRequires: %{_sbindir}/sfdisk +%if !0%{?rhel} BuildRequires: %{_bindir}/socat +%endif BuildRequires: %{_sbindir}/ss BuildRequires: %{_bindir}/stat BuildRequires: %{_bindir}/ssh-keygen @@ -1209,6 +1211,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Thu Mar 4 2021 Richard W.M. Jones - 1.25.3-2 +- Remove socat dependency in RHEL 9. + * Tue Mar 2 2021 Richard W.M. Jones - 1.25.3-1 - New upstream development version 1.25.3. From 157d6381114a8753dc0277809d21af0840f302ed Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 9 Mar 2021 13:06:41 +0000 Subject: [PATCH 009/298] Make nbdkit-vddk-plugin depend on libxcrypt-devel (RHBZ#1931818). --- nbdkit.spec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 8c4e0cc..faee8f9 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -46,7 +46,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.25.3 -Release: 2%{?dist} +Release: 3%{?dist} Summary: NBD server License: BSD @@ -535,6 +535,8 @@ Summary: VMware VDDK plugin for %{name} License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} +# https://bugzilla.redhat.com/show_bug.cgi?id=1931818 +Requires: libxcrypt-compat %description vddk-plugin @@ -1211,6 +1213,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Mar 9 2021 Richard W.M. Jones - 1.25.3-3 +- Make nbdkit-vddk-plugin depend on libxcrypt-devel (RHBZ#1931818). + * Thu Mar 4 2021 Richard W.M. Jones - 1.25.3-2 - Remove socat dependency in RHEL 9. From ae88b94409a3e7ca5315389272ff558ddba6652d Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 9 Mar 2021 13:11:30 +0000 Subject: [PATCH 010/298] Fix %changelog message in previous commit. The actual change is OK, but I got the name of the package wrong in the %changelog message. --- nbdkit.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index faee8f9..54770dd 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -1214,7 +1214,7 @@ export LIBGUESTFS_TRACE=1 %changelog * Tue Mar 9 2021 Richard W.M. Jones - 1.25.3-3 -- Make nbdkit-vddk-plugin depend on libxcrypt-devel (RHBZ#1931818). +- Make nbdkit-vddk-plugin depend on libxcrypt-compat (RHBZ#1931818). * Thu Mar 4 2021 Richard W.M. Jones - 1.25.3-2 - Remove socat dependency in RHEL 9. From 8644a889cbd01cd09b983cafbe6b0afa8b78ac4d Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 10 Mar 2021 22:26:23 +0000 Subject: [PATCH 011/298] New upstream development version 1.25.4. New filter: multi-conn --- nbdkit.spec | 13 +++++++++++-- sources | 4 ++-- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 54770dd..4268a53 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -45,8 +45,8 @@ ExclusiveArch: x86_64 %global source_directory 1.25-development Name: nbdkit -Version: 1.25.3 -Release: 3%{?dist} +Version: 1.25.4 +Release: 1%{?dist} Summary: NBD server License: BSD @@ -566,6 +566,7 @@ Provides: %{name}-fua-filter = %{version}-%{release} Provides: %{name}-ip-filter = %{version}-%{release} Provides: %{name}-limit-filter = %{version}-%{release} Provides: %{name}-log-filter = %{version}-%{release} +Provides: %{name}-multi-conn-filter = %{version}-%{release} Provides: %{name}-nocache-filter = %{version}-%{release} Provides: %{name}-noextents-filter = %{version}-%{release} Provides: %{name}-nofilter-filter = %{version}-%{release} @@ -620,6 +621,8 @@ nbdkit-limit-filter Limit nr clients that can connect concurrently. nbdkit-log-filter Log all transactions to a file. +nbdkit-multi-conn-filter Enable, emulate or disable multi-conn. + nbdkit-nocache-filter Disable cache requests in the underlying plugin. nbdkit-noextents-filter Disable extents in the underlying plugin. @@ -1094,6 +1097,7 @@ export LIBGUESTFS_TRACE=1 %{_libdir}/%{name}/filters/nbdkit-ip-filter.so %{_libdir}/%{name}/filters/nbdkit-limit-filter.so %{_libdir}/%{name}/filters/nbdkit-log-filter.so +%{_libdir}/%{name}/filters/nbdkit-multi-conn-filter.so %{_libdir}/%{name}/filters/nbdkit-nocache-filter.so %{_libdir}/%{name}/filters/nbdkit-noextents-filter.so %{_libdir}/%{name}/filters/nbdkit-nofilter-filter.so @@ -1125,6 +1129,7 @@ export LIBGUESTFS_TRACE=1 %{_mandir}/man1/nbdkit-ip-filter.1* %{_mandir}/man1/nbdkit-limit-filter.1* %{_mandir}/man1/nbdkit-log-filter.1* +%{_mandir}/man1/nbdkit-multi-conn-filter.1* %{_mandir}/man1/nbdkit-nocache-filter.1* %{_mandir}/man1/nbdkit-noextents-filter.1* %{_mandir}/man1/nbdkit-nofilter-filter.1* @@ -1213,6 +1218,10 @@ export LIBGUESTFS_TRACE=1 %changelog +* Wed Mar 10 2021 Richard W.M. Jones - 1.25.4-1 +- New upstream development version 1.25.4. +- New filter: multi-conn + * Tue Mar 9 2021 Richard W.M. Jones - 1.25.3-3 - Make nbdkit-vddk-plugin depend on libxcrypt-compat (RHBZ#1931818). diff --git a/sources b/sources index ffd76d8..2fa8882 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.25.3.tar.gz) = b727d6cea2c32e8c0e95bb697dfe7a1daae31f1e5411ff21d8304886f313ca82120e067fdd034f868410abeed3bd4515a39ede4d80c808bc194c67e817d4b00c -SHA512 (nbdkit-1.25.3.tar.gz.sig) = 8e850f49a1daaefbf7835ffc03c90b2b5cb4917ae2ccb7e1db43e2b9262260e2c03172bf7f81554b9d72805f25059dc32eea11c88472d48ca5748abec982eb68 +SHA512 (nbdkit-1.25.4.tar.gz) = 59d20e16cac56013c15f81fb41bc95f45fdbb22d6977bfed9b078ef15a9a551214dba2cc6ce8bf6a6859c43f424bb98455a3ebb351eb79b486491df6a8a8e85a +SHA512 (nbdkit-1.25.4.tar.gz.sig) = 0e1a39111999efaf3e19f2ed73b546b2e96e45bab2f351057ff3e0a1f0119f8416d9e645149dd2446b6ea66c360d1984986df609b293227d4841aac94f631143 From 2d8cf73f160ff8442fa8d2626637e9c1f8f261fd Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 15 Mar 2021 20:35:14 +0000 Subject: [PATCH 012/298] Fix upstream URL. Enable non-guestfs tests on all arches. --- nbdkit.spec | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 4268a53..c52cd0d 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -24,8 +24,7 @@ # it as a bug and add it to this list. # # armv7, aarch64: https://bugzilla.redhat.com/show_bug.cgi?id=1893892 -#global broken_test_arches NONE -%global broken_test_arches %{arm} aarch64 +%global broken_test_arches NONE %if 0%{?rhel} == 7 # On RHEL 7, nothing in the virt stack is shipped on aarch64 and @@ -46,11 +45,11 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.25.4 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD -URL: https://github.com/libguestfs/nbdkit +URL: https://gitlab.com/nbdkit/nbdkit %if 0%{?rhel} >= 8 # On RHEL 8+, we cannot build the package on i686 (no virt stack). @@ -1218,6 +1217,10 @@ export LIBGUESTFS_TRACE=1 %changelog +* Mon Mar 15 2021 Richard W.M. Jones - 1.25.4-2 +- Fix upstream URL. +- Enable non-guestfs tests on all arches. + * Wed Mar 10 2021 Richard W.M. Jones - 1.25.4-1 - New upstream development version 1.25.4. - New filter: multi-conn From 0dad06ac95c57be6ab009be7427c80d7ada92b79 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 3 Apr 2021 14:00:40 +0100 Subject: [PATCH 013/298] New upstream version 1.25.5. --- nbdkit.spec | 9 ++++++--- sources | 4 ++-- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index c52cd0d..51e1142 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -38,14 +38,14 @@ ExclusiveArch: x86_64 %global verify_tarball_signature 1 # If there are patches which touch autotools files, set this to 1. -%global patches_touch_autotools 1 +%global patches_touch_autotools %{nil} # The source directory. %global source_directory 1.25-development Name: nbdkit -Version: 1.25.4 -Release: 2%{?dist} +Version: 1.25.5 +Release: 1%{?dist} Summary: NBD server License: BSD @@ -1217,6 +1217,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Sat Apr 03 2021 Richard W.M. Jones - 1.25.5-1 +- New upstream version 1.25.5. + * Mon Mar 15 2021 Richard W.M. Jones - 1.25.4-2 - Fix upstream URL. - Enable non-guestfs tests on all arches. diff --git a/sources b/sources index 2fa8882..a0ea8e9 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.25.4.tar.gz) = 59d20e16cac56013c15f81fb41bc95f45fdbb22d6977bfed9b078ef15a9a551214dba2cc6ce8bf6a6859c43f424bb98455a3ebb351eb79b486491df6a8a8e85a -SHA512 (nbdkit-1.25.4.tar.gz.sig) = 0e1a39111999efaf3e19f2ed73b546b2e96e45bab2f351057ff3e0a1f0119f8416d9e645149dd2446b6ea66c360d1984986df609b293227d4841aac94f631143 +SHA512 (nbdkit-1.25.5.tar.gz) = 1bbfdcef4c8545d7dd0c07e4f08a212c44bb295bf29951870302f83019f5a7269d0efff0839241829592c59437126cf5c4c53402671d2ff8359905e5809aed61 +SHA512 (nbdkit-1.25.5.tar.gz.sig) = 8ef7b27cfd0c36fee3f8b0242bba2eae90486a88e2faea251d6ceba5547461cf3e42f6117a4a9c27e63c9ca791bdfa04e80672e49991007de6fc36d9c46da446 From 1401871dcf6c380fae9951d12f5237e335b31165 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 10 Apr 2021 10:51:35 +0100 Subject: [PATCH 014/298] New upstream version 1.25.6. --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 51e1142..35e0627 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -44,7 +44,7 @@ ExclusiveArch: x86_64 %global source_directory 1.25-development Name: nbdkit -Version: 1.25.5 +Version: 1.25.6 Release: 1%{?dist} Summary: NBD server @@ -1217,6 +1217,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Sat Apr 10 2021 Richard W.M. Jones - 1.25.6-1 +- New upstream version 1.25.6. + * Sat Apr 03 2021 Richard W.M. Jones - 1.25.5-1 - New upstream version 1.25.5. diff --git a/sources b/sources index a0ea8e9..22a1133 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.25.5.tar.gz) = 1bbfdcef4c8545d7dd0c07e4f08a212c44bb295bf29951870302f83019f5a7269d0efff0839241829592c59437126cf5c4c53402671d2ff8359905e5809aed61 -SHA512 (nbdkit-1.25.5.tar.gz.sig) = 8ef7b27cfd0c36fee3f8b0242bba2eae90486a88e2faea251d6ceba5547461cf3e42f6117a4a9c27e63c9ca791bdfa04e80672e49991007de6fc36d9c46da446 +SHA512 (nbdkit-1.25.6.tar.gz) = 127234467e6a13718c9f6f5581f7e26f98f8478d40717f53a00309fa29c16879da3e91c93e5e5dacbe769ca399f80a021ed37dd8be9da8b5a8f8617459c77b66 +SHA512 (nbdkit-1.25.6.tar.gz.sig) = 2ab74a238f419aad808193cd2f76742a943cbfcd0f2748f519261cd496b2a45b905ffb64559ff59b99136174dc7ea56e320688787a08a51cd166dbb3dfa087fc From 54b225aed234be0d92e1c3c490eda7997efb657e Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 5 May 2021 13:05:40 +0100 Subject: [PATCH 015/298] New upstream version 1.25.7. Disable libguestfs tests on riscv64. --- nbdkit.spec | 16 +++++++++++++--- sources | 4 ++-- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 35e0627..00c9f9f 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -1,8 +1,14 @@ %global _hardened_build 1 %ifarch %{kernel_arches} -# ... except that it doesn't work on s390, so: -%ifnarch s390 s390x +# riscv64 tests fail with +# qemu-system-riscv64: invalid accelerator kvm +# qemu-system-riscv64: falling back to tcg +# qemu-system-riscv64: unable to find CPU model 'host' +# This seems to require changes in libguestfs and/or qemu to support +# -cpu max or -cpu virt. +# s390x builders can't run libguestfs +%ifnarch riscv64 s390 s390x %global have_libguestfs 1 %endif %endif @@ -44,7 +50,7 @@ ExclusiveArch: x86_64 %global source_directory 1.25-development Name: nbdkit -Version: 1.25.6 +Version: 1.25.7 Release: 1%{?dist} Summary: NBD server @@ -1217,6 +1223,10 @@ export LIBGUESTFS_TRACE=1 %changelog +* Wed May 05 2021 Richard W.M. Jones - 1.25.7-1 +- New upstream version 1.25.7. +- Disable libguestfs tests on riscv64. + * Sat Apr 10 2021 Richard W.M. Jones - 1.25.6-1 - New upstream version 1.25.6. diff --git a/sources b/sources index 22a1133..db5b068 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.25.6.tar.gz) = 127234467e6a13718c9f6f5581f7e26f98f8478d40717f53a00309fa29c16879da3e91c93e5e5dacbe769ca399f80a021ed37dd8be9da8b5a8f8617459c77b66 -SHA512 (nbdkit-1.25.6.tar.gz.sig) = 2ab74a238f419aad808193cd2f76742a943cbfcd0f2748f519261cd496b2a45b905ffb64559ff59b99136174dc7ea56e320688787a08a51cd166dbb3dfa087fc +SHA512 (nbdkit-1.25.7.tar.gz) = a4ff0045971bddb89ace27968f4248c1302fbc9aa7e19a417f3bb79e78c531cf9a561c5dccb66580378a0f6b2bbe7b344ba7a6eb88e3bc3bf2dedb275bfeafff +SHA512 (nbdkit-1.25.7.tar.gz.sig) = f28c2aeaaa142767408d537d3e01437c24385c22e6a20cccb76edd6c9edc3fb82dc835cf65dcc4718bed90e31c458bbfe3b205bb3557013ed2ae2164321b080d From 2f2ada7150c14de2fc1675b9b3919ac925760bd9 Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Fri, 21 May 2021 12:09:19 +0200 Subject: [PATCH 016/298] Perl 5.34 rebuild --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 00c9f9f..d4183a6 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,7 +51,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.25.7 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD @@ -1223,6 +1223,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Fri May 21 2021 Jitka Plesnikova - 1.25.7-2 +- Perl 5.34 rebuild + * Wed May 05 2021 Richard W.M. Jones - 1.25.7-1 - New upstream version 1.25.7. - Disable libguestfs tests on riscv64. From 6525018aaa498815972e5db7537b29606a906a90 Mon Sep 17 00:00:00 2001 From: Leigh Scott Date: Tue, 25 May 2021 11:23:21 +0100 Subject: [PATCH 017/298] Rebuild for new libtorrent --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index d4183a6..b4c6701 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,7 +51,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.25.7 -Release: 2%{?dist} +Release: 3%{?dist} Summary: NBD server License: BSD @@ -1223,6 +1223,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue May 25 2021 Leigh Scott - 1.25.7-3 +- Rebuild for new libtorrent + * Fri May 21 2021 Jitka Plesnikova - 1.25.7-2 - Perl 5.34 rebuild From b607a227bd1c5336ba67755842b5e41846112021 Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Tue, 25 May 2021 16:13:37 +0200 Subject: [PATCH 018/298] Perl 5.34 re-rebuild updated packages --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index b4c6701..1cce80b 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,7 +51,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.25.7 -Release: 3%{?dist} +Release: 4%{?dist} Summary: NBD server License: BSD @@ -1223,6 +1223,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue May 25 2021 Jitka Plesnikova - 1.25.7-4 +- Perl 5.34 re-rebuild updated packages + * Tue May 25 2021 Leigh Scott - 1.25.7-3 - Rebuild for new libtorrent From ade90e480c88f131b9afb3711b7dcf9e9ac54783 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 25 May 2021 15:33:43 +0100 Subject: [PATCH 019/298] New upstream version 1.25.8. --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 1cce80b..aac8f24 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -50,8 +50,8 @@ ExclusiveArch: x86_64 %global source_directory 1.25-development Name: nbdkit -Version: 1.25.7 -Release: 4%{?dist} +Version: 1.25.8 +Release: 1%{?dist} Summary: NBD server License: BSD @@ -1223,6 +1223,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue May 25 2021 Richard W.M. Jones - 1.25.8-1 +- New upstream version 1.25.8. + * Tue May 25 2021 Jitka Plesnikova - 1.25.7-4 - Perl 5.34 re-rebuild updated packages diff --git a/sources b/sources index db5b068..bf1f333 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.25.7.tar.gz) = a4ff0045971bddb89ace27968f4248c1302fbc9aa7e19a417f3bb79e78c531cf9a561c5dccb66580378a0f6b2bbe7b344ba7a6eb88e3bc3bf2dedb275bfeafff -SHA512 (nbdkit-1.25.7.tar.gz.sig) = f28c2aeaaa142767408d537d3e01437c24385c22e6a20cccb76edd6c9edc3fb82dc835cf65dcc4718bed90e31c458bbfe3b205bb3557013ed2ae2164321b080d +SHA512 (nbdkit-1.25.8.tar.gz) = 4084fbc3fb24eb20114e8c31eb4ea1f763a2c4c09048a29447f9df7a0101049e97d82ed00b581ff22fc4ec5e0221beeb67107f57be101544b49bc6192e8ada13 +SHA512 (nbdkit-1.25.8.tar.gz.sig) = 71f9ddc29974474b074e06ba19ccaffbca59ed425e73a3962ed698dfbcc94aeddbcd0b138fe3e1c99074cfcb79c404c790a5418b5083ccf3daac65643791a189 From ef181318d5264657f0022ada4f4240ad47534f91 Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Tue, 25 May 2021 21:10:34 +0200 Subject: [PATCH 020/298] Perl 5.34 re-rebuild of updated packages --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index aac8f24..a8592dd 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,7 +51,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.25.8 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD @@ -1223,6 +1223,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue May 25 2021 Jitka Plesnikova - 1.25.8-2 +- Perl 5.34 re-rebuild of updated packages + * Tue May 25 2021 Richard W.M. Jones - 1.25.8-1 - New upstream version 1.25.8. From f628c070193621ca9cbdef0f34c2f9f065552c02 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 2 Jun 2021 12:30:44 +0100 Subject: [PATCH 021/298] Add gating tests for RHEL 9 --- gating.yaml | 6 ++++++ tests/basic-test.sh | 6 ++++++ tests/tests.yml | 12 ++++++++++++ 3 files changed, 24 insertions(+) create mode 100755 gating.yaml create mode 100755 tests/basic-test.sh create mode 100755 tests/tests.yml diff --git a/gating.yaml b/gating.yaml new file mode 100755 index 0000000..648918d --- /dev/null +++ b/gating.yaml @@ -0,0 +1,6 @@ +--- !Policy +product_versions: + - rhel-9 +decision_context: osci_compose_gate +rules: + - !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional} diff --git a/tests/basic-test.sh b/tests/basic-test.sh new file mode 100755 index 0000000..07eb459 --- /dev/null +++ b/tests/basic-test.sh @@ -0,0 +1,6 @@ +#!/bin/bash - +set -e +set -x + +# Run nbdkit and check that nbdinfo can connect back to it. +nbdkit -U - memory 1G --run 'nbdinfo "$uri"' diff --git a/tests/tests.yml b/tests/tests.yml new file mode 100755 index 0000000..28c6a43 --- /dev/null +++ b/tests/tests.yml @@ -0,0 +1,12 @@ +- hosts: localhost + roles: + - role: standard-test-basic + tags: + - classic + required_packages: + - libnbd + - nbdkit + tests: + - simple: + dir: . + run: ./basic-test.sh From c05c44cc7bc78cca7a92bbc85b8f940a6f5477c9 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 2 Jun 2021 13:09:47 +0100 Subject: [PATCH 022/298] Skip tests/test-memory-allocator-malloc-mlock.sh on RHEL 9 / aarch64 Test failure: FAIL: test-memory-allocator-malloc-mlock.sh =========================================== /builddir/build/BUILD/nbdkit-1.25.8/server/nbdkit -v -P memory-allocator-malloc-mlock.pid -U /tmp/nbdkit-test-sock.QSUxq3 -- /builddir/build/BUILD/nbdkit-1.25.8/plugins/memory/.libs/nbdkit-memory-plugin.so 2048 allocator=malloc,mlock=true nbdkit: debug: nbdkit 1.25.8 (nbdkit-1.25.8-2.el9) nbdkit: debug: TLS disabled: could not load TLS certificates nbdkit: debug: registering plugin /builddir/build/BUILD/nbdkit-1.25.8/plugins/memory/.libs/nbdkit-memory-plugin.so nbdkit: debug: registered plugin /builddir/build/BUILD/nbdkit-1.25.8/plugins/memory/.libs/nbdkit-memory-plugin.so (name memory) nbdkit: debug: memory: load nbdkit: debug: memory: config key=size, value=2048 nbdkit: debug: memory: config key=allocator, value=malloc,mlock=true nbdkit: debug: memory: config_complete nbdkit: debug: using thread model: parallel nbdkit: debug: memory: get_ready nbdkit: debug: allocator: malloc,mlock=true nbdkit: debug: allocator parameter: mlock=true nbdkit: error: allocator=malloc: mlock: Cannot allocate memory ./test-memory-allocator-malloc-mlock.sh: run cleanup hooks: exit code 1 FAIL test-memory-allocator-malloc-mlock.sh (exit status: 1) --- nbdkit.spec | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index a8592dd..8c51afb 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -817,22 +817,40 @@ rm -f $RPM_BUILD_ROOT%{_mandir}/man1/nbdkit-S3-plugin.1* %check %ifnarch %{broken_test_arches} +function skip_test () +{ + for f in "$@"; do + rm -f "$f" + echo 'exit 77' > "$f" + chmod +x "$f" + done +} + # Workaround for broken libvirt (RHBZ#1138604). mkdir -p $HOME/.cache/libvirt # tests/test-captive.sh is racy especially on s390x. We need to # rethink this test upstream. -truncate -s 0 tests/test-captive.sh +skip_test tests/test-captive.sh %ifarch s390x # Temporarily kill tests/test-cache-max-size.sh since it fails # sometimes on s390x for unclear reasons. -truncate -s 0 tests/test-cache-max-size.sh +skip_test tests/test-cache-max-size.sh %endif # Temporarily kill test-nbd-tls.sh and test-nbd-tls-psk.sh # https://www.redhat.com/archives/libguestfs/2020-March/msg00191.html -truncate -s 0 tests/test-nbd-tls.sh tests/test-nbd-tls-psk.sh +skip_test tests/test-nbd-tls.sh tests/test-nbd-tls-psk.sh + +# This test fails on RHEL 9 & aarch64 with the error: +# nbdkit: error: allocator=malloc: mlock: Cannot allocate memory +# It could be the mlock limit on the builder is too low. +%if 0%{?rhel} +%ifarch aarch64 +skip_test tests/test-memory-allocator-malloc-mlock.sh +%endif +%endif # Make sure we can see the debug messages (RHBZ#1230160). export LIBGUESTFS_DEBUG=1 From 9647b363022eeb6ade4e4338ca2006596fe67b13 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 3 Jun 2021 21:02:24 +0100 Subject: [PATCH 023/298] New upstream version 1.25.9. --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 8c51afb..34e6fa4 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -50,8 +50,8 @@ ExclusiveArch: x86_64 %global source_directory 1.25-development Name: nbdkit -Version: 1.25.8 -Release: 2%{?dist} +Version: 1.25.9 +Release: 1%{?dist} Summary: NBD server License: BSD @@ -1241,6 +1241,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Thu Jun 03 2021 Richard W.M. Jones - 1.25.9-1 +- New upstream version 1.25.9. + * Tue May 25 2021 Jitka Plesnikova - 1.25.8-2 - Perl 5.34 re-rebuild of updated packages diff --git a/sources b/sources index bf1f333..6d71595 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.25.8.tar.gz) = 4084fbc3fb24eb20114e8c31eb4ea1f763a2c4c09048a29447f9df7a0101049e97d82ed00b581ff22fc4ec5e0221beeb67107f57be101544b49bc6192e8ada13 -SHA512 (nbdkit-1.25.8.tar.gz.sig) = 71f9ddc29974474b074e06ba19ccaffbca59ed425e73a3962ed698dfbcc94aeddbcd0b138fe3e1c99074cfcb79c404c790a5418b5083ccf3daac65643791a189 +SHA512 (nbdkit-1.25.9.tar.gz) = b650762dbbf39adf15165af1bf1af00670f61e0f668e61c40d6a8784aa6f53e2896597981c48f808335a1ad6123f75b274beb39b6adc135d725eb4c23f4d4c3e +SHA512 (nbdkit-1.25.9.tar.gz.sig) = 76ba71f371f61b5300181b013f2588b11ce86d8996f081347d07914eadb426c0fd3490e7e29f6f5a3bb61f8fa1c13269fc9fcb558968a479d3f219b1384dac10 From ae298c5846c6de0d2004ecc415eff7c1fd932df3 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Fri, 4 Jun 2021 20:12:28 +0200 Subject: [PATCH 024/298] Rebuilt for Python 3.10 --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 34e6fa4..de27697 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,7 +51,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.25.9 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD @@ -1241,6 +1241,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Fri Jun 04 2021 Python Maint - 1.25.9-2 +- Rebuilt for Python 3.10 + * Thu Jun 03 2021 Richard W.M. Jones - 1.25.9-1 - New upstream version 1.25.9. From 901bd9af1680c6c35363f543979bf02c9c110c6a Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 7 Jun 2021 17:18:44 +0100 Subject: [PATCH 025/298] New upstream version 1.26.0. --- nbdkit.spec | 9 ++++++--- sources | 4 ++-- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index de27697..fc019bf 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -47,11 +47,11 @@ ExclusiveArch: x86_64 %global patches_touch_autotools %{nil} # The source directory. -%global source_directory 1.25-development +%global source_directory 1.26-stable Name: nbdkit -Version: 1.25.9 -Release: 2%{?dist} +Version: 1.26.0 +Release: 1%{?dist} Summary: NBD server License: BSD @@ -1241,6 +1241,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Mon Jun 07 2021 Richard W.M. Jones - 1.26.0-1 +- New upstream version 1.26.0. + * Fri Jun 04 2021 Python Maint - 1.25.9-2 - Rebuilt for Python 3.10 diff --git a/sources b/sources index 6d71595..63f11a1 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.25.9.tar.gz) = b650762dbbf39adf15165af1bf1af00670f61e0f668e61c40d6a8784aa6f53e2896597981c48f808335a1ad6123f75b274beb39b6adc135d725eb4c23f4d4c3e -SHA512 (nbdkit-1.25.9.tar.gz.sig) = 76ba71f371f61b5300181b013f2588b11ce86d8996f081347d07914eadb426c0fd3490e7e29f6f5a3bb61f8fa1c13269fc9fcb558968a479d3f219b1384dac10 +SHA512 (nbdkit-1.26.0.tar.gz) = f5330a1ad47e45dfdfeed800af1fa5e5e02aa471da5cce45bf0d8f46f82655be8974bfc8fd2fd16a6cfc60349ada38675bc7e0b73b81f941d9022ac3cdda23ca +SHA512 (nbdkit-1.26.0.tar.gz.sig) = 838c10ecda260e801e5c760c9c61fa78a7713e6dd89fa7f3737259dcfeb64ebeba08ad2443190efe3190ef3c22617b1ca9cb4676a28512fd13708845e23a1d57 From 18609d8a7205a9f6b7da0fc8003370f6863f180f Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 11 Jun 2021 14:39:05 +0100 Subject: [PATCH 026/298] New upstream development version 1.27.1. --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index fc019bf..bfea203 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -47,10 +47,10 @@ ExclusiveArch: x86_64 %global patches_touch_autotools %{nil} # The source directory. -%global source_directory 1.26-stable +%global source_directory 1.27-development Name: nbdkit -Version: 1.26.0 +Version: 1.27.1 Release: 1%{?dist} Summary: NBD server @@ -1241,6 +1241,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Fri Jun 11 2021 Richard W.M. Jones - 1.27.1-1 +- New upstream development version 1.27.1. + * Mon Jun 07 2021 Richard W.M. Jones - 1.26.0-1 - New upstream version 1.26.0. diff --git a/sources b/sources index 63f11a1..f3a67b7 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.26.0.tar.gz) = f5330a1ad47e45dfdfeed800af1fa5e5e02aa471da5cce45bf0d8f46f82655be8974bfc8fd2fd16a6cfc60349ada38675bc7e0b73b81f941d9022ac3cdda23ca -SHA512 (nbdkit-1.26.0.tar.gz.sig) = 838c10ecda260e801e5c760c9c61fa78a7713e6dd89fa7f3737259dcfeb64ebeba08ad2443190efe3190ef3c22617b1ca9cb4676a28512fd13708845e23a1d57 +SHA512 (nbdkit-1.27.1.tar.gz) = 83e846ad4f9c5041b4fbf0ea96aa850f1e99054e4abc2120f3c016415847c6b90bf47a77c4deffe88f9a083ab9b2bedc397f3616039ac55ab09d404da00e3bc5 +SHA512 (nbdkit-1.27.1.tar.gz.sig) = cc777793402b751556e8091c4fb06cbc3983108de6677743dc69779d00d153aed97710ba56cd23a2a70a8b1ff5f67ed7c98e07ce5b095bf5c2414852a6c414d3 From 040f87208f94825d2a3b08fd8d1c119574fca906 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 5 Jul 2021 18:14:09 +0100 Subject: [PATCH 027/298] New upstream development version 1.27.2. --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index bfea203..a3d6006 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -50,7 +50,7 @@ ExclusiveArch: x86_64 %global source_directory 1.27-development Name: nbdkit -Version: 1.27.1 +Version: 1.27.2 Release: 1%{?dist} Summary: NBD server @@ -1241,6 +1241,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Mon Jul 05 2021 Richard W.M. Jones - 1.27.2-1 +- New upstream development version 1.27.2. + * Fri Jun 11 2021 Richard W.M. Jones - 1.27.1-1 - New upstream development version 1.27.1. diff --git a/sources b/sources index f3a67b7..3e9fd49 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.27.1.tar.gz) = 83e846ad4f9c5041b4fbf0ea96aa850f1e99054e4abc2120f3c016415847c6b90bf47a77c4deffe88f9a083ab9b2bedc397f3616039ac55ab09d404da00e3bc5 -SHA512 (nbdkit-1.27.1.tar.gz.sig) = cc777793402b751556e8091c4fb06cbc3983108de6677743dc69779d00d153aed97710ba56cd23a2a70a8b1ff5f67ed7c98e07ce5b095bf5c2414852a6c414d3 +SHA512 (nbdkit-1.27.2.tar.gz) = a1ed1afc541914a5ab92e2509a0f2dfa61c55c04175ecc18ce1082e2d760c52f667bbc1f0950d5e14e47dca7cf4706216abb469e5629f9b3d0f3513f94735e15 +SHA512 (nbdkit-1.27.2.tar.gz.sig) = 88fb1bdad7f0dab80e104166ffdab8ac2ea610f75161946fbcb81dd9c6e1c9fda37acda99b56c4b052a634493833d01f8ac95ebceae78a6753f17868337109b5 From cdda2ce6d6b781a4df56f86cc58973e503e50239 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 22 Jul 2021 15:52:47 +0000 Subject: [PATCH 028/298] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index a3d6006..046111c 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,7 +51,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.27.2 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD @@ -1241,6 +1241,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Thu Jul 22 2021 Fedora Release Engineering - 1.27.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Mon Jul 05 2021 Richard W.M. Jones - 1.27.2-1 - New upstream development version 1.27.2. From 3190c1b685ba4327d747a816f42441343394f74a Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 23 Jul 2021 23:03:45 +0100 Subject: [PATCH 029/298] New upstream development version 1.27.3. --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 046111c..5cb9a44 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -50,8 +50,8 @@ ExclusiveArch: x86_64 %global source_directory 1.27-development Name: nbdkit -Version: 1.27.2 -Release: 2%{?dist} +Version: 1.27.3 +Release: 1%{?dist} Summary: NBD server License: BSD @@ -1241,6 +1241,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Fri Jul 23 2021 Richard W.M. Jones - 1.27.3-1 +- New upstream development version 1.27.3. + * Thu Jul 22 2021 Fedora Release Engineering - 1.27.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild diff --git a/sources b/sources index 3e9fd49..0ac40c4 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.27.2.tar.gz) = a1ed1afc541914a5ab92e2509a0f2dfa61c55c04175ecc18ce1082e2d760c52f667bbc1f0950d5e14e47dca7cf4706216abb469e5629f9b3d0f3513f94735e15 -SHA512 (nbdkit-1.27.2.tar.gz.sig) = 88fb1bdad7f0dab80e104166ffdab8ac2ea610f75161946fbcb81dd9c6e1c9fda37acda99b56c4b052a634493833d01f8ac95ebceae78a6753f17868337109b5 +SHA512 (nbdkit-1.27.3.tar.gz) = 0c1197baf1f5d7012f48fe0d868d1fbc5a2373b0f7ff9256bef120fcee65a7b7cb1dcafb080c644fc5b407f5e57ff38cfaea1f1a3500eed987dc3320bd693cfb +SHA512 (nbdkit-1.27.3.tar.gz.sig) = 1885a641dc52e9c85e1b1cf44281e0f2fb36da6b23323d07d60d88a2eb7a7edbf61717265dd76406fdb79ffae98deaa058b8f817dc13b1efcd0cff8d2bb684e0 From 3bc00d5182df76ccff1c5d05f5a0bc497cce0fd8 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 5 Aug 2021 09:07:06 +0100 Subject: [PATCH 030/298] New upstream development version 1.27.4. --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 5cb9a44..f26cc27 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -50,7 +50,7 @@ ExclusiveArch: x86_64 %global source_directory 1.27-development Name: nbdkit -Version: 1.27.3 +Version: 1.27.4 Release: 1%{?dist} Summary: NBD server @@ -1241,6 +1241,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Thu Aug 05 2021 Richard W.M. Jones - 1.27.4-1 +- New upstream development version 1.27.4. + * Fri Jul 23 2021 Richard W.M. Jones - 1.27.3-1 - New upstream development version 1.27.3. diff --git a/sources b/sources index 0ac40c4..f7f024c 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.27.3.tar.gz) = 0c1197baf1f5d7012f48fe0d868d1fbc5a2373b0f7ff9256bef120fcee65a7b7cb1dcafb080c644fc5b407f5e57ff38cfaea1f1a3500eed987dc3320bd693cfb -SHA512 (nbdkit-1.27.3.tar.gz.sig) = 1885a641dc52e9c85e1b1cf44281e0f2fb36da6b23323d07d60d88a2eb7a7edbf61717265dd76406fdb79ffae98deaa058b8f817dc13b1efcd0cff8d2bb684e0 +SHA512 (nbdkit-1.27.4.tar.gz) = 09fa39ebd226031f43dd3fe215df31e881de6fad085b46fb24ded6a1b7c8d56671cc1422554f94272f42fa45806859af7eda57a221ad4764a0d12eee0338302c +SHA512 (nbdkit-1.27.4.tar.gz.sig) = 2971f404081b5bf08d029061945b69fc66a0264fb5a3e489b7c49a32e7b6c3cfc716a15797e70b802634611420165c45a9a5cc89986e51d3a18228e6a4172c2f From 89825a793ec666e29b600e5dcc48d08b67b081d4 Mon Sep 17 00:00:00 2001 From: Eric Blake Date: Fri, 13 Aug 2021 11:22:12 -0500 Subject: [PATCH 031/298] Update keyring. Add myself via: gpg --export 'Eric Blake' | \ gpg --no-default-keyring --keyring ./libguestfs.keyring --import --- .gitignore | 1 + libguestfs.keyring | Bin 2823 -> 82814 bytes 2 files changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 4bd7ec0..1229603 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ /clog /nbdkit-*.tar.gz /nbdkit-*.tar.gz.sig +/*~ diff --git a/libguestfs.keyring b/libguestfs.keyring index bb3eb5537b7c398a10b7e2b26ca00af011d1a73e..f0508c8d7008b4290b09df40ececc5dd721b5bf9 100644 GIT binary patch literal 82814 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�D_@9Btdl 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 DXm|6* delta 38 ucmey@#@a5nL4awp9FzLyU?yuOrY&ld6_`XPuVoS3e1^rEX)`~&5eoq2=nBFB From 4c52eba3506fd53459417396da7aabcf24f6e8bc Mon Sep 17 00:00:00 2001 From: Eric Blake Date: Fri, 13 Aug 2021 11:27:26 -0500 Subject: [PATCH 032/298] New upstream development version 1.27.5. --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index f26cc27..463f2a1 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -50,7 +50,7 @@ ExclusiveArch: x86_64 %global source_directory 1.27-development Name: nbdkit -Version: 1.27.4 +Version: 1.27.5 Release: 1%{?dist} Summary: NBD server @@ -1241,6 +1241,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Fri Aug 13 2021 Eric Blake - 1.27.5-1 +- New upstream development version 1.27.5. + * Thu Aug 05 2021 Richard W.M. Jones - 1.27.4-1 - New upstream development version 1.27.4. diff --git a/sources b/sources index f7f024c..002b6b5 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.27.4.tar.gz) = 09fa39ebd226031f43dd3fe215df31e881de6fad085b46fb24ded6a1b7c8d56671cc1422554f94272f42fa45806859af7eda57a221ad4764a0d12eee0338302c -SHA512 (nbdkit-1.27.4.tar.gz.sig) = 2971f404081b5bf08d029061945b69fc66a0264fb5a3e489b7c49a32e7b6c3cfc716a15797e70b802634611420165c45a9a5cc89986e51d3a18228e6a4172c2f +SHA512 (nbdkit-1.27.5.tar.gz) = 8f3b013e108d3119f4288e538d507fd6e8bc9b33cf549df6a1638eae35f50cf7e9f8476370e0fc4111ad8a3e77cd3c98771e4e6371645f1e730b08ec0d288ff9 +SHA512 (nbdkit-1.27.5.tar.gz.sig) = 223a6caf2f180c0e0cf4bb3192d6c6fc4472cbd699364e77e64dcb3bdc670d22c3069a88d8d510832b2868463a97bf1cc995ecc5fa4b76e4cc1005a06e547fdb From 03411c4a444f30465d097f709a09b380655bebde Mon Sep 17 00:00:00 2001 From: Eric Blake Date: Thu, 19 Aug 2021 15:29:15 -0500 Subject: [PATCH 033/298] New upstream development version 1.27.7; addresses CVE-2021-3716. --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 463f2a1..78bcd55 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -50,7 +50,7 @@ ExclusiveArch: x86_64 %global source_directory 1.27-development Name: nbdkit -Version: 1.27.5 +Version: 1.27.7 Release: 1%{?dist} Summary: NBD server @@ -1241,6 +1241,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Thu Aug 19 2021 Eric Blake - 1.27.7-1 +- New upstream development version 1.27.7; addresses CVE-2021-3716. + * Fri Aug 13 2021 Eric Blake - 1.27.5-1 - New upstream development version 1.27.5. diff --git a/sources b/sources index 002b6b5..b9e609e 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.27.5.tar.gz) = 8f3b013e108d3119f4288e538d507fd6e8bc9b33cf549df6a1638eae35f50cf7e9f8476370e0fc4111ad8a3e77cd3c98771e4e6371645f1e730b08ec0d288ff9 -SHA512 (nbdkit-1.27.5.tar.gz.sig) = 223a6caf2f180c0e0cf4bb3192d6c6fc4472cbd699364e77e64dcb3bdc670d22c3069a88d8d510832b2868463a97bf1cc995ecc5fa4b76e4cc1005a06e547fdb +SHA512 (nbdkit-1.27.7.tar.gz) = c772515dd0d1188136856fc103df75cf195c29935eec2f16b61035e9d28d4672a32b19a21cf679de874d61f1fb00e4e8ebe2925a8290d4ef05ef3868e538d035 +SHA512 (nbdkit-1.27.7.tar.gz.sig) = 03819e6b2c4131c48e396cebce3d61cd5e6b4162a059c5661703f2a2a68a8451567228583108a8bfac60a64bb2c5fef2fc181299b09cf8330bb376b3d506b238 From 034cff38665affea16bf18d6d7ce1790ac2cdb33 Mon Sep 17 00:00:00 2001 From: Eric Blake Date: Thu, 19 Aug 2021 16:25:37 -0500 Subject: [PATCH 034/298] Include followup patch related to CVE-2021-3716. --- ...set-meta-context-replies-on-starttls.patch | 38 +++++++++++++++++++ nbdkit.spec | 8 +++- 2 files changed, 45 insertions(+), 1 deletion(-) create mode 100644 0001-server-reset-meta-context-replies-on-starttls.patch diff --git a/0001-server-reset-meta-context-replies-on-starttls.patch b/0001-server-reset-meta-context-replies-on-starttls.patch new file mode 100644 index 0000000..47ab2a6 --- /dev/null +++ b/0001-server-reset-meta-context-replies-on-starttls.patch @@ -0,0 +1,38 @@ +From 6c5faac6a37077cf2366388a80862bb00616d0d8 Mon Sep 17 00:00:00 2001 +From: Eric Blake +Date: Mon, 16 Aug 2021 13:43:29 -0500 +Subject: [nbdkit PATCH] server: reset meta context replies on starttls + +Related to CVE-2021-3716, but not as severe. No compliant client will +send NBD_CMD_BLOCK_STATUS unless it first negotiates +NBD_OPT_SET_META_CONTEXT. If an attacker injects a premature +SET_META_CONTEXT, either the client will never notice (because it +never uses BLOCK_STATUS), or the client will overwrite the attacker's +attempt with the client's own SET_META_CONTEXT request after +encryption is enabled. So I don't class this as having the potential +to trigger denial-of-service due to any protocol mismatch between +compliant client and server (I don't care what happens with +non-compliant clients). + +Fixes: 26455d45 (server: protocol: Implement Block Status "base:allocation".) +--- + server/protocol-handshake-newstyle.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/server/protocol-handshake-newstyle.c b/server/protocol-handshake-newstyle.c +index 7e6b7b1b..79b2c8ce 100644 +--- a/server/protocol-handshake-newstyle.c ++++ b/server/protocol-handshake-newstyle.c +@@ -497,6 +497,9 @@ negotiate_handshake_newstyle_options (void) + debug ("using TLS on this connection"); + /* Wipe out any cached state. */ + conn->structured_replies = false; ++ free (conn->exportname_from_set_meta_context); ++ conn->exportname_from_set_meta_context = NULL; ++ conn->meta_context_base_allocation = false; + for_each_backend (b) { + free (conn->default_exportname[b->i]); + conn->default_exportname[b->i] = NULL; +-- +2.31.1 + diff --git a/nbdkit.spec b/nbdkit.spec index 78bcd55..73e3cbb 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,7 +51,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.27.7 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD @@ -72,6 +72,9 @@ Source2: libguestfs.keyring # Maintainer script which helps with handling patches. Source3: copy-patches.sh +# Fix SET_META_CONTEXT leaking state across STARTTLS +Patch1: 0001-server-reset-meta-context-replies-on-starttls.patch + BuildRequires: make %if 0%{patches_touch_autotools} BuildRequires: autoconf, automake, libtool @@ -1241,6 +1244,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Thu Aug 19 2021 Eric Blake - 1.27.7-2 +- Include followup patch related to CVE-2021-3716. + * Thu Aug 19 2021 Eric Blake - 1.27.7-1 - New upstream development version 1.27.7; addresses CVE-2021-3716. From 5f0a7b31b4e5ec29f92fd2d39b3fe1e64f202d47 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 23 Aug 2021 09:52:15 +0100 Subject: [PATCH 035/298] New upstream development version 1.27.8. Remove patch which is included upstream. --- ...set-meta-context-replies-on-starttls.patch | 38 ------------------- nbdkit.spec | 11 +++--- sources | 4 +- 3 files changed, 8 insertions(+), 45 deletions(-) delete mode 100644 0001-server-reset-meta-context-replies-on-starttls.patch diff --git a/0001-server-reset-meta-context-replies-on-starttls.patch b/0001-server-reset-meta-context-replies-on-starttls.patch deleted file mode 100644 index 47ab2a6..0000000 --- a/0001-server-reset-meta-context-replies-on-starttls.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 6c5faac6a37077cf2366388a80862bb00616d0d8 Mon Sep 17 00:00:00 2001 -From: Eric Blake -Date: Mon, 16 Aug 2021 13:43:29 -0500 -Subject: [nbdkit PATCH] server: reset meta context replies on starttls - -Related to CVE-2021-3716, but not as severe. No compliant client will -send NBD_CMD_BLOCK_STATUS unless it first negotiates -NBD_OPT_SET_META_CONTEXT. If an attacker injects a premature -SET_META_CONTEXT, either the client will never notice (because it -never uses BLOCK_STATUS), or the client will overwrite the attacker's -attempt with the client's own SET_META_CONTEXT request after -encryption is enabled. So I don't class this as having the potential -to trigger denial-of-service due to any protocol mismatch between -compliant client and server (I don't care what happens with -non-compliant clients). - -Fixes: 26455d45 (server: protocol: Implement Block Status "base:allocation".) ---- - server/protocol-handshake-newstyle.c | 3 +++ - 1 file changed, 3 insertions(+) - -diff --git a/server/protocol-handshake-newstyle.c b/server/protocol-handshake-newstyle.c -index 7e6b7b1b..79b2c8ce 100644 ---- a/server/protocol-handshake-newstyle.c -+++ b/server/protocol-handshake-newstyle.c -@@ -497,6 +497,9 @@ negotiate_handshake_newstyle_options (void) - debug ("using TLS on this connection"); - /* Wipe out any cached state. */ - conn->structured_replies = false; -+ free (conn->exportname_from_set_meta_context); -+ conn->exportname_from_set_meta_context = NULL; -+ conn->meta_context_base_allocation = false; - for_each_backend (b) { - free (conn->default_exportname[b->i]); - conn->default_exportname[b->i] = NULL; --- -2.31.1 - diff --git a/nbdkit.spec b/nbdkit.spec index 73e3cbb..f7286f8 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -50,8 +50,8 @@ ExclusiveArch: x86_64 %global source_directory 1.27-development Name: nbdkit -Version: 1.27.7 -Release: 2%{?dist} +Version: 1.27.8 +Release: 1%{?dist} Summary: NBD server License: BSD @@ -72,9 +72,6 @@ Source2: libguestfs.keyring # Maintainer script which helps with handling patches. Source3: copy-patches.sh -# Fix SET_META_CONTEXT leaking state across STARTTLS -Patch1: 0001-server-reset-meta-context-replies-on-starttls.patch - BuildRequires: make %if 0%{patches_touch_autotools} BuildRequires: autoconf, automake, libtool @@ -1244,6 +1241,10 @@ export LIBGUESTFS_TRACE=1 %changelog +* Mon Aug 23 2021 Richard W.M. Jones - 1.27.8-1 +- New upstream development version 1.27.8. +- Remove patch which is included upstream. + * Thu Aug 19 2021 Eric Blake - 1.27.7-2 - Include followup patch related to CVE-2021-3716. diff --git a/sources b/sources index b9e609e..0a8762c 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.27.7.tar.gz) = c772515dd0d1188136856fc103df75cf195c29935eec2f16b61035e9d28d4672a32b19a21cf679de874d61f1fb00e4e8ebe2925a8290d4ef05ef3868e538d035 -SHA512 (nbdkit-1.27.7.tar.gz.sig) = 03819e6b2c4131c48e396cebce3d61cd5e6b4162a059c5661703f2a2a68a8451567228583108a8bfac60a64bb2c5fef2fc181299b09cf8330bb376b3d506b238 +SHA512 (nbdkit-1.27.8.tar.gz) = 0cc03ca57c3732d5f1b34805070b7d9b805253e5fc1cd55dc89638537e1b52465128e27a59c9d46d8de0177cb24f25b4cdd9954a036cf72fc75d5c80c8a603cd +SHA512 (nbdkit-1.27.8.tar.gz.sig) = 72f2aba33dd95531cac60c7ce34513e9a12725c7546926c8ec663505e80c3a18fef7555da2b6b55bbd2d5e799c850c30b473fc270a6d8c5f211ff875b13bf1a4 From 42e0d28d9a6fce000f55c907619f34bd65584da1 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 23 Aug 2021 10:52:00 +0100 Subject: [PATCH 036/298] Fix issues in nbdkit-data-plugin on 32 bit platforms. --- 0001-data-Fix-issues-on-32-bit.patch | 62 ++++++++++++++++++++++++++++ nbdkit.spec | 3 ++ 2 files changed, 65 insertions(+) create mode 100644 0001-data-Fix-issues-on-32-bit.patch diff --git a/0001-data-Fix-issues-on-32-bit.patch b/0001-data-Fix-issues-on-32-bit.patch new file mode 100644 index 0000000..d8339d0 --- /dev/null +++ b/0001-data-Fix-issues-on-32-bit.patch @@ -0,0 +1,62 @@ +From fe6538aafe5f8d6fc6b90ae8f6d3686c711288fd Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Mon, 23 Aug 2021 10:34:53 +0100 +Subject: [PATCH] data: Fix issues on 32 bit +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Commit 9352ad00e3 ("data: New functions new_node/get_node with simpler +usage") added a new expr() function to let you construct expressions. +However it uses varargs so callers have to be strict about the types +of the parameters, and the compiler cannot verify this. + +When creating EXPR_FILL the parameters are uint8_t, uint64_t, where +varargs always promotes uint8_t to int. We called it in a few places +with incorrect types. The error showed up when compiling on i686, but +actually we were very lucky this did not manifest on 64 bit platforms +too. It only worked because of how x86-64 ABI passes some arguments +in registers so that int is passed in a 64 bit register. On a 64 bit +platform that uses the stack it could have failed. + +Use casts as appropriate. Strongly typed qualified unions à la OCaml +would help here! + +Fixes: commit 9352ad00e3e1fff679f4eabb2208bfa1e1443a29 +--- + plugins/data/format.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/plugins/data/format.c b/plugins/data/format.c +index f1b4219e..60b73ef9 100644 +--- a/plugins/data/format.c ++++ b/plugins/data/format.c +@@ -1358,14 +1358,14 @@ optimize_ast (node_id root, node_id *root_rtn) + */ + if (get_node (root).string.size > 1) { + const string s = get_node (root).string; +- uint64_t b = s.ptr[0]; ++ uint8_t b = s.ptr[0]; + + for (i = 1; i < s.size; ++i) + if (s.ptr[i] != b) + break; + + if (i == s.size) { +- *root_rtn = new_node (expr (EXPR_FILL, b, s.size)); ++ *root_rtn = new_node (expr (EXPR_FILL, b, (uint64_t) s.size)); + return 0; + } + } +@@ -1485,7 +1485,7 @@ exprs_can_combine (expr_t e0, expr_t e1, node_id *id_rtn) + switch (e1.t) { + case EXPR_BYTE: /* byte byte => fill | string */ + if (e0.b == e1.b) { +- *id_rtn = new_node (expr (EXPR_FILL, e0.b, 2)); ++ *id_rtn = new_node (expr (EXPR_FILL, e0.b, UINT64_C(2))); + } + else { + if (string_append (&s, e0.b) == -1 || +-- +2.32.0 + diff --git a/nbdkit.spec b/nbdkit.spec index f7286f8..460661d 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -72,6 +72,9 @@ Source2: libguestfs.keyring # Maintainer script which helps with handling patches. Source3: copy-patches.sh +# Fix issues in nbdkit-data-plugin on 32 bit platforms. +Patch1: 0001-data-Fix-issues-on-32-bit.patch + BuildRequires: make %if 0%{patches_touch_autotools} BuildRequires: autoconf, automake, libtool From bfdc3bda8bdd0bdb11d68238622165d78496aa31 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 31 Aug 2021 11:44:20 +0100 Subject: [PATCH 037/298] Fix for qemu 6.1. --- ...mu-6.1-which-requires-backing-format.patch | 57 +++++++++++++++++++ nbdkit.spec | 7 ++- 2 files changed, 63 insertions(+), 1 deletion(-) create mode 100644 0001-cow-Fix-for-qemu-6.1-which-requires-backing-format.patch diff --git a/0001-cow-Fix-for-qemu-6.1-which-requires-backing-format.patch b/0001-cow-Fix-for-qemu-6.1-which-requires-backing-format.patch new file mode 100644 index 0000000..fb673a3 --- /dev/null +++ b/0001-cow-Fix-for-qemu-6.1-which-requires-backing-format.patch @@ -0,0 +1,57 @@ +From 618290ef33ce13b75c1a79fea1f1ffb327b5ba07 Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Tue, 31 Aug 2021 11:23:27 +0100 +Subject: [PATCH] cow: Fix for qemu 6.1 which requires backing format + +The diffing example in the manual created a qcow2 file with a backing +file but did not specify the backing format. However qemu 6.1 now +requires this and fails with: + + qemu-img: cow-diff.qcow2: Backing file specified without backing format + +or: + + qemu-img: Could not change the backing file to 'cow-base.img': backing format must be specified + +Fix the example by adding the -F option to the command line. + +Also there was a test of this rebasing sequence which failed, so this +commit updates the test too. +--- + filters/cow/nbdkit-cow-filter.pod | 4 ++-- + tests/test-cow.sh | 4 ++-- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/filters/cow/nbdkit-cow-filter.pod b/filters/cow/nbdkit-cow-filter.pod +index 791d1d36..b69544f6 100644 +--- a/filters/cow/nbdkit-cow-filter.pod ++++ b/filters/cow/nbdkit-cow-filter.pod +@@ -116,8 +116,8 @@ At the end, disconnect the client. + Run these C commands to construct a qcow2 file containing + the differences: + +- qemu-img create -f qcow2 -b nbd:localhost diff.qcow2 +- qemu-img rebase -b disk.img diff.qcow2 ++ qemu-img create -F raw -b nbd:localhost -f qcow2 diff.qcow2 ++ qemu-img rebase -F raw -b disk.img -f qcow2 diff.qcow2 + + F now contains the differences between the base + (F) and the changes stored in nbdkit-cow-filter. C +diff --git a/tests/test-cow.sh b/tests/test-cow.sh +index 8772afd7..edc4c223 100755 +--- a/tests/test-cow.sh ++++ b/tests/test-cow.sh +@@ -72,8 +72,8 @@ fi + # If we have qemu-img, try the hairy rebase operation documented + # in the nbdkit-cow-filter manual. + if qemu-img --version >/dev/null 2>&1; then +- qemu-img create -f qcow2 -b nbd:unix:$sock cow-diff.qcow2 +- time qemu-img rebase -b cow-base.img cow-diff.qcow2 ++ qemu-img create -F raw -b nbd:unix:$sock -f qcow2 cow-diff.qcow2 ++ time qemu-img rebase -F raw -b cow-base.img -f qcow2 cow-diff.qcow2 + qemu-img info cow-diff.qcow2 + + # This checks the file we created exists. +-- +2.32.0 + diff --git a/nbdkit.spec b/nbdkit.spec index 460661d..d1596d8 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,7 +51,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.27.8 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD @@ -74,6 +74,8 @@ Source3: copy-patches.sh # Fix issues in nbdkit-data-plugin on 32 bit platforms. Patch1: 0001-data-Fix-issues-on-32-bit.patch +# Fix for qemu 6.1. +Patch2: 0001-cow-Fix-for-qemu-6.1-which-requires-backing-format.patch BuildRequires: make %if 0%{patches_touch_autotools} @@ -1244,6 +1246,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Aug 31 2021 Richard W.M. Jones - 1.27.8-2 +- Fix for qemu 6.1. + * Mon Aug 23 2021 Richard W.M. Jones - 1.27.8-1 - New upstream development version 1.27.8. - Remove patch which is included upstream. From 4791eadbe05447379dd7758934a53cc490b04902 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 31 Aug 2021 22:59:11 +0100 Subject: [PATCH 038/298] Disable tests on armv7hl because of https://bugzilla.redhat.com/show_bug.cgi?id=1999878 --- nbdkit.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index d1596d8..65d0e3a 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -29,8 +29,8 @@ # If the test suite is broken on a particular architecture, document # it as a bug and add it to this list. # -# armv7, aarch64: https://bugzilla.redhat.com/show_bug.cgi?id=1893892 -%global broken_test_arches NONE +# armv7: https://bugzilla.redhat.com/show_bug.cgi?id=1999878 +%global broken_test_arches armv7 %if 0%{?rhel} == 7 # On RHEL 7, nothing in the virt stack is shipped on aarch64 and From bb338a4aa7908eb169029f61c447233babb90360 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 1 Sep 2021 09:24:38 +0100 Subject: [PATCH 039/298] Really disable tests on armv7hl --- nbdkit.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 65d0e3a..270af96 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -30,7 +30,7 @@ # it as a bug and add it to this list. # # armv7: https://bugzilla.redhat.com/show_bug.cgi?id=1999878 -%global broken_test_arches armv7 +%global broken_test_arches armv7hl %if 0%{?rhel} == 7 # On RHEL 7, nothing in the virt stack is shipped on aarch64 and From 8652782c79d48e7b11cc9d4aba682c410ef03dd0 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 1 Sep 2021 18:40:25 +0100 Subject: [PATCH 040/298] Re-enable tests on armv7. Reverts this commit: commit 4791eadbe05447379dd7758934a53cc490b04902 Author: Richard W.M. Jones Date: Tue Aug 31 22:59:11 2021 +0100 Disable tests on armv7hl because of https://bugzilla.redhat.com/show_bug.cgi?id=1999878 --- nbdkit.spec | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 270af96..8ede2e7 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -28,9 +28,7 @@ # If the test suite is broken on a particular architecture, document # it as a bug and add it to this list. -# -# armv7: https://bugzilla.redhat.com/show_bug.cgi?id=1999878 -%global broken_test_arches armv7hl +%global broken_test_arches NONE %if 0%{?rhel} == 7 # On RHEL 7, nothing in the virt stack is shipped on aarch64 and @@ -51,7 +49,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.27.8 -Release: 2%{?dist} +Release: 3%{?dist} Summary: NBD server License: BSD @@ -1246,6 +1244,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Wed Sep 1 2021 Richard W.M. Jones - 1.27.8-3 +- Re-enable tests on armv7. + * Tue Aug 31 2021 Richard W.M. Jones - 1.27.8-2 - Fix for qemu 6.1. From 3c10afbea214a37d00edf2e5ec789c143edfe1d2 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 4 Sep 2021 17:05:14 +0100 Subject: [PATCH 041/298] New upstream development version 1.27.9. Remove patches which are upstream. --- ...mu-6.1-which-requires-backing-format.patch | 57 ----------------- 0001-data-Fix-issues-on-32-bit.patch | 62 ------------------- nbdkit.spec | 13 ++-- sources | 4 +- 4 files changed, 8 insertions(+), 128 deletions(-) delete mode 100644 0001-cow-Fix-for-qemu-6.1-which-requires-backing-format.patch delete mode 100644 0001-data-Fix-issues-on-32-bit.patch diff --git a/0001-cow-Fix-for-qemu-6.1-which-requires-backing-format.patch b/0001-cow-Fix-for-qemu-6.1-which-requires-backing-format.patch deleted file mode 100644 index fb673a3..0000000 --- a/0001-cow-Fix-for-qemu-6.1-which-requires-backing-format.patch +++ /dev/null @@ -1,57 +0,0 @@ -From 618290ef33ce13b75c1a79fea1f1ffb327b5ba07 Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Tue, 31 Aug 2021 11:23:27 +0100 -Subject: [PATCH] cow: Fix for qemu 6.1 which requires backing format - -The diffing example in the manual created a qcow2 file with a backing -file but did not specify the backing format. However qemu 6.1 now -requires this and fails with: - - qemu-img: cow-diff.qcow2: Backing file specified without backing format - -or: - - qemu-img: Could not change the backing file to 'cow-base.img': backing format must be specified - -Fix the example by adding the -F option to the command line. - -Also there was a test of this rebasing sequence which failed, so this -commit updates the test too. ---- - filters/cow/nbdkit-cow-filter.pod | 4 ++-- - tests/test-cow.sh | 4 ++-- - 2 files changed, 4 insertions(+), 4 deletions(-) - -diff --git a/filters/cow/nbdkit-cow-filter.pod b/filters/cow/nbdkit-cow-filter.pod -index 791d1d36..b69544f6 100644 ---- a/filters/cow/nbdkit-cow-filter.pod -+++ b/filters/cow/nbdkit-cow-filter.pod -@@ -116,8 +116,8 @@ At the end, disconnect the client. - Run these C commands to construct a qcow2 file containing - the differences: - -- qemu-img create -f qcow2 -b nbd:localhost diff.qcow2 -- qemu-img rebase -b disk.img diff.qcow2 -+ qemu-img create -F raw -b nbd:localhost -f qcow2 diff.qcow2 -+ qemu-img rebase -F raw -b disk.img -f qcow2 diff.qcow2 - - F now contains the differences between the base - (F) and the changes stored in nbdkit-cow-filter. C -diff --git a/tests/test-cow.sh b/tests/test-cow.sh -index 8772afd7..edc4c223 100755 ---- a/tests/test-cow.sh -+++ b/tests/test-cow.sh -@@ -72,8 +72,8 @@ fi - # If we have qemu-img, try the hairy rebase operation documented - # in the nbdkit-cow-filter manual. - if qemu-img --version >/dev/null 2>&1; then -- qemu-img create -f qcow2 -b nbd:unix:$sock cow-diff.qcow2 -- time qemu-img rebase -b cow-base.img cow-diff.qcow2 -+ qemu-img create -F raw -b nbd:unix:$sock -f qcow2 cow-diff.qcow2 -+ time qemu-img rebase -F raw -b cow-base.img -f qcow2 cow-diff.qcow2 - qemu-img info cow-diff.qcow2 - - # This checks the file we created exists. --- -2.32.0 - diff --git a/0001-data-Fix-issues-on-32-bit.patch b/0001-data-Fix-issues-on-32-bit.patch deleted file mode 100644 index d8339d0..0000000 --- a/0001-data-Fix-issues-on-32-bit.patch +++ /dev/null @@ -1,62 +0,0 @@ -From fe6538aafe5f8d6fc6b90ae8f6d3686c711288fd Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Mon, 23 Aug 2021 10:34:53 +0100 -Subject: [PATCH] data: Fix issues on 32 bit -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Commit 9352ad00e3 ("data: New functions new_node/get_node with simpler -usage") added a new expr() function to let you construct expressions. -However it uses varargs so callers have to be strict about the types -of the parameters, and the compiler cannot verify this. - -When creating EXPR_FILL the parameters are uint8_t, uint64_t, where -varargs always promotes uint8_t to int. We called it in a few places -with incorrect types. The error showed up when compiling on i686, but -actually we were very lucky this did not manifest on 64 bit platforms -too. It only worked because of how x86-64 ABI passes some arguments -in registers so that int is passed in a 64 bit register. On a 64 bit -platform that uses the stack it could have failed. - -Use casts as appropriate. Strongly typed qualified unions à la OCaml -would help here! - -Fixes: commit 9352ad00e3e1fff679f4eabb2208bfa1e1443a29 ---- - plugins/data/format.c | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/plugins/data/format.c b/plugins/data/format.c -index f1b4219e..60b73ef9 100644 ---- a/plugins/data/format.c -+++ b/plugins/data/format.c -@@ -1358,14 +1358,14 @@ optimize_ast (node_id root, node_id *root_rtn) - */ - if (get_node (root).string.size > 1) { - const string s = get_node (root).string; -- uint64_t b = s.ptr[0]; -+ uint8_t b = s.ptr[0]; - - for (i = 1; i < s.size; ++i) - if (s.ptr[i] != b) - break; - - if (i == s.size) { -- *root_rtn = new_node (expr (EXPR_FILL, b, s.size)); -+ *root_rtn = new_node (expr (EXPR_FILL, b, (uint64_t) s.size)); - return 0; - } - } -@@ -1485,7 +1485,7 @@ exprs_can_combine (expr_t e0, expr_t e1, node_id *id_rtn) - switch (e1.t) { - case EXPR_BYTE: /* byte byte => fill | string */ - if (e0.b == e1.b) { -- *id_rtn = new_node (expr (EXPR_FILL, e0.b, 2)); -+ *id_rtn = new_node (expr (EXPR_FILL, e0.b, UINT64_C(2))); - } - else { - if (string_append (&s, e0.b) == -1 || --- -2.32.0 - diff --git a/nbdkit.spec b/nbdkit.spec index 8ede2e7..98e9f9d 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -48,8 +48,8 @@ ExclusiveArch: x86_64 %global source_directory 1.27-development Name: nbdkit -Version: 1.27.8 -Release: 3%{?dist} +Version: 1.27.9 +Release: 1%{?dist} Summary: NBD server License: BSD @@ -70,11 +70,6 @@ Source2: libguestfs.keyring # Maintainer script which helps with handling patches. Source3: copy-patches.sh -# Fix issues in nbdkit-data-plugin on 32 bit platforms. -Patch1: 0001-data-Fix-issues-on-32-bit.patch -# Fix for qemu 6.1. -Patch2: 0001-cow-Fix-for-qemu-6.1-which-requires-backing-format.patch - BuildRequires: make %if 0%{patches_touch_autotools} BuildRequires: autoconf, automake, libtool @@ -1244,6 +1239,10 @@ export LIBGUESTFS_TRACE=1 %changelog +* Sat Sep 4 2021 Richard W.M. Jones - 1.27.9-1 +- New upstream development version 1.27.9. +- Remove patches which are upstream. + * Wed Sep 1 2021 Richard W.M. Jones - 1.27.8-3 - Re-enable tests on armv7. diff --git a/sources b/sources index 0a8762c..33dfef5 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.27.8.tar.gz) = 0cc03ca57c3732d5f1b34805070b7d9b805253e5fc1cd55dc89638537e1b52465128e27a59c9d46d8de0177cb24f25b4cdd9954a036cf72fc75d5c80c8a603cd -SHA512 (nbdkit-1.27.8.tar.gz.sig) = 72f2aba33dd95531cac60c7ce34513e9a12725c7546926c8ec663505e80c3a18fef7555da2b6b55bbd2d5e799c850c30b473fc270a6d8c5f211ff875b13bf1a4 +SHA512 (nbdkit-1.27.9.tar.gz) = bddfe61ef41c0bada014da0b06fa47900aa1cf29c69654c7c70dae4528163582cc86e9db9a8257fe124d7a0dbadbc41c88d9b86cd8e62692f40b17be05ba4417 +SHA512 (nbdkit-1.27.9.tar.gz.sig) = 338f4151173231d51a436f43880718ef8ede12adbe7c1908a0b1df6de24d6f38d10bc5f2c4b39770696d1e075fddd80838a47537eba4c798d9c303b93a74288a From e91ee82439859f0147f4678d550209bb319cebf8 Mon Sep 17 00:00:00 2001 From: Sahana Prasad Date: Tue, 14 Sep 2021 19:08:44 +0200 Subject: [PATCH 042/298] Rebuilt with OpenSSL 3.0.0 --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 98e9f9d..d1556f7 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -49,7 +49,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.27.9 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD @@ -1239,6 +1239,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Sep 14 2021 Sahana Prasad - 1.27.9-2 +- Rebuilt with OpenSSL 3.0.0 + * Sat Sep 4 2021 Richard W.M. Jones - 1.27.9-1 - New upstream development version 1.27.9. - Remove patches which are upstream. From 2be736e65b5d1384650ee16b33248034f2a57b40 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 21 Sep 2021 22:58:03 +0100 Subject: [PATCH 043/298] New upstream development version 1.27.10. --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index d1556f7..8c21bfb 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -48,8 +48,8 @@ ExclusiveArch: x86_64 %global source_directory 1.27-development Name: nbdkit -Version: 1.27.9 -Release: 2%{?dist} +Version: 1.27.10 +Release: 1%{?dist} Summary: NBD server License: BSD @@ -1239,6 +1239,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Sep 21 2021 Richard W.M. Jones - 1.27.10-1 +- New upstream development version 1.27.10. + * Tue Sep 14 2021 Sahana Prasad - 1.27.9-2 - Rebuilt with OpenSSL 3.0.0 diff --git a/sources b/sources index 33dfef5..80d4145 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.27.9.tar.gz) = bddfe61ef41c0bada014da0b06fa47900aa1cf29c69654c7c70dae4528163582cc86e9db9a8257fe124d7a0dbadbc41c88d9b86cd8e62692f40b17be05ba4417 -SHA512 (nbdkit-1.27.9.tar.gz.sig) = 338f4151173231d51a436f43880718ef8ede12adbe7c1908a0b1df6de24d6f38d10bc5f2c4b39770696d1e075fddd80838a47537eba4c798d9c303b93a74288a +SHA512 (nbdkit-1.27.10.tar.gz) = af71fb68b06e6bc4d4d6fba95f6fda630c16b83ce92f4d2d463584b64cfb6ba5960706bea7257f6bce6d03abd4179ea346841f6f7d701b2fda44135859a35718 +SHA512 (nbdkit-1.27.10.tar.gz.sig) = 6261f99f19841b5ef6a9bc886da468d6ffbe0e17ed90a5534d44bda834d99649d34b3e2eea9427a48ccc5c81ae04d88caea4f25a7b37c66ad44d7f74dac91f3a From 1d3b29e985900ea106bb53d29351a5b86e4d7839 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 22 Sep 2021 10:35:11 +0100 Subject: [PATCH 044/298] Disable libguestfs test on ppc64le because qemu is broken: https://bugzilla.redhat.com/show_bug.cgi?id=2006709 --- nbdkit.spec | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 8c21bfb..412d6f8 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -1,6 +1,8 @@ %global _hardened_build 1 %ifarch %{kernel_arches} +# ppc64le broken in rawhide: +# https://bugzilla.redhat.com/show_bug.cgi?id=2006709 # riscv64 tests fail with # qemu-system-riscv64: invalid accelerator kvm # qemu-system-riscv64: falling back to tcg @@ -8,7 +10,7 @@ # This seems to require changes in libguestfs and/or qemu to support # -cpu max or -cpu virt. # s390x builders can't run libguestfs -%ifnarch riscv64 s390 s390x +%ifnarch %{power64} riscv64 s390 s390x %global have_libguestfs 1 %endif %endif From 0ae4bf9283e2cdf10239d9f3720f40b17f98c412 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 23 Sep 2021 15:55:16 +0100 Subject: [PATCH 045/298] New upstream stable branch version 1.28.0 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 412d6f8..2218457 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -47,10 +47,10 @@ ExclusiveArch: x86_64 %global patches_touch_autotools %{nil} # The source directory. -%global source_directory 1.27-development +%global source_directory 1.28-stable Name: nbdkit -Version: 1.27.10 +Version: 1.28.0 Release: 1%{?dist} Summary: NBD server @@ -1241,6 +1241,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Thu Sep 23 2021 Richard W.M. Jones - 1.28.0-1 +- New upstream stable branch version 1.28.0 + * Tue Sep 21 2021 Richard W.M. Jones - 1.27.10-1 - New upstream development version 1.27.10. diff --git a/sources b/sources index 80d4145..e4ed4c7 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.27.10.tar.gz) = af71fb68b06e6bc4d4d6fba95f6fda630c16b83ce92f4d2d463584b64cfb6ba5960706bea7257f6bce6d03abd4179ea346841f6f7d701b2fda44135859a35718 -SHA512 (nbdkit-1.27.10.tar.gz.sig) = 6261f99f19841b5ef6a9bc886da468d6ffbe0e17ed90a5534d44bda834d99649d34b3e2eea9427a48ccc5c81ae04d88caea4f25a7b37c66ad44d7f74dac91f3a +SHA512 (nbdkit-1.28.0.tar.gz) = 904b69847fc7fc3c3a394391657f52794e9a0d6d2a96df748ae74c6657ca07de33dd99b83888410d240031451927ead3a4776d0bdd433c2bf1e2acd36c3c8403 +SHA512 (nbdkit-1.28.0.tar.gz.sig) = 2b6d5c3c54766e1401d5c0b9192c46cf413aa586f0f33fed909c2056ca205a2bd8bb1a73077054d594ad9a963b6a07364f1e60e067437c0d333c4a0b202ebfb1 From 966e5bf1cc8d7645a1d2438541dfb474d32a096a Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 4 Oct 2021 21:08:00 +0100 Subject: [PATCH 046/298] OCaml 4.13.1 build --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 2218457..ff05a2c 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,7 +51,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.28.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD @@ -1241,6 +1241,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Mon Oct 04 2021 Richard W.M. Jones - 1.28.0-2 +- OCaml 4.13.1 build + * Thu Sep 23 2021 Richard W.M. Jones - 1.28.0-1 - New upstream stable branch version 1.28.0 From 829f3b07c17f5be31b2bd78d87c0e7b2f5115d3c Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 19 Oct 2021 21:43:31 +0100 Subject: [PATCH 047/298] New upstream development version 1.29.1 New filter: nbdkit-retry-request-filter --- nbdkit.spec | 15 ++++++++++++--- sources | 4 ++-- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index ff05a2c..b1310a1 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -47,11 +47,11 @@ ExclusiveArch: x86_64 %global patches_touch_autotools %{nil} # The source directory. -%global source_directory 1.28-stable +%global source_directory 1.29-development Name: nbdkit -Version: 1.28.0 -Release: 2%{?dist} +Version: 1.29.1 +Release: 1%{?dist} Summary: NBD server License: BSD @@ -583,6 +583,7 @@ Provides: %{name}-pause-filter = %{version}-%{release} Provides: %{name}-rate-filter = %{version}-%{release} Provides: %{name}-readahead-filter = %{version}-%{release} Provides: %{name}-retry-filter = %{version}-%{release} +Provides: %{name}-retry-request-filter = %{version}-%{release} Provides: %{name}-stats-filter = %{version}-%{release} Provides: %{name}-swab-filter = %{version}-%{release} Provides: %{name}-tls-fallback-filter = %{version}-%{release} @@ -650,6 +651,8 @@ nbdkit-readahead-filter Prefetch data when reading sequentially. nbdkit-retry-filter Reopen connection on error. +nbdkit-retry--request-filter Retry single requests on error. + nbdkit-stats-filter Display statistics about operations. nbdkit-swab-filter Filter for swapping byte order. @@ -1132,6 +1135,7 @@ export LIBGUESTFS_TRACE=1 %{_libdir}/%{name}/filters/nbdkit-rate-filter.so %{_libdir}/%{name}/filters/nbdkit-readahead-filter.so %{_libdir}/%{name}/filters/nbdkit-retry-filter.so +%{_libdir}/%{name}/filters/nbdkit-retry-request-filter.so %{_libdir}/%{name}/filters/nbdkit-stats-filter.so %{_libdir}/%{name}/filters/nbdkit-swab-filter.so %{_libdir}/%{name}/filters/nbdkit-tls-fallback-filter.so @@ -1164,6 +1168,7 @@ export LIBGUESTFS_TRACE=1 %{_mandir}/man1/nbdkit-rate-filter.1* %{_mandir}/man1/nbdkit-readahead-filter.1* %{_mandir}/man1/nbdkit-retry-filter.1* +%{_mandir}/man1/nbdkit-retry-request-filter.1* %{_mandir}/man1/nbdkit-stats-filter.1* %{_mandir}/man1/nbdkit-swab-filter.1* %{_mandir}/man1/nbdkit-tls-fallback-filter.1* @@ -1241,6 +1246,10 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Oct 19 2021 Richard W.M. Jones - 1.29.1-1 +- New upstream development version 1.29.1 +- New filter: nbdkit-retry-request-filter + * Mon Oct 04 2021 Richard W.M. Jones - 1.28.0-2 - OCaml 4.13.1 build diff --git a/sources b/sources index e4ed4c7..ce0be34 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.28.0.tar.gz) = 904b69847fc7fc3c3a394391657f52794e9a0d6d2a96df748ae74c6657ca07de33dd99b83888410d240031451927ead3a4776d0bdd433c2bf1e2acd36c3c8403 -SHA512 (nbdkit-1.28.0.tar.gz.sig) = 2b6d5c3c54766e1401d5c0b9192c46cf413aa586f0f33fed909c2056ca205a2bd8bb1a73077054d594ad9a963b6a07364f1e60e067437c0d333c4a0b202ebfb1 +SHA512 (nbdkit-1.29.1.tar.gz) = f54f98801002bc9108ecd1c368fa98592afd8c1ac7d2d3305f4750bf58538d39b0a258b8387c4913ae220833203c1f9eead472f2e77406234e7199f8b5117b7a +SHA512 (nbdkit-1.29.1.tar.gz.sig) = 6ecc6114475de00783171f50c95b31fa4eb4b99dcf4b12351ac12a3a76af66ce3578dd1dea63bbdc765dac9a6a796e2a6c64c7613768bf71c187e91bcc8fd257 From 1ecb1dd0bec6222639c1ffecac4c3a0c6446a3e3 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 25 Oct 2021 21:43:42 +0100 Subject: [PATCH 048/298] New upstream development version 1.29.2 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index b1310a1..87b9c9a 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -50,7 +50,7 @@ ExclusiveArch: x86_64 %global source_directory 1.29-development Name: nbdkit -Version: 1.29.1 +Version: 1.29.2 Release: 1%{?dist} Summary: NBD server @@ -1246,6 +1246,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Mon Oct 25 2021 Richard W.M. Jones - 1.29.2-1 +- New upstream development version 1.29.2 + * Tue Oct 19 2021 Richard W.M. Jones - 1.29.1-1 - New upstream development version 1.29.1 - New filter: nbdkit-retry-request-filter diff --git a/sources b/sources index ce0be34..f7c6f62 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.29.1.tar.gz) = f54f98801002bc9108ecd1c368fa98592afd8c1ac7d2d3305f4750bf58538d39b0a258b8387c4913ae220833203c1f9eead472f2e77406234e7199f8b5117b7a -SHA512 (nbdkit-1.29.1.tar.gz.sig) = 6ecc6114475de00783171f50c95b31fa4eb4b99dcf4b12351ac12a3a76af66ce3578dd1dea63bbdc765dac9a6a796e2a6c64c7613768bf71c187e91bcc8fd257 +SHA512 (nbdkit-1.29.2.tar.gz) = 4fdc1a50bdd224ea40205ff0c853d8ce04fe463c81850dacebd93826494eff955586b14798035a00425923865d513e924eb4c82efe3f44b7cb8b84c12ba24e6e +SHA512 (nbdkit-1.29.2.tar.gz.sig) = 19f9ba9fd998894726d2dfc11a2249ad5daa9240d4c38575614e692d03199b4879e2ae77ff2a6e7841f97dc93a83ef884040596d82ce5f20b98d546e47636030 From d41f24fd9d517f2904ff843442b8736993510ec8 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 28 Oct 2021 22:10:42 +0100 Subject: [PATCH 049/298] New upstream development version 1.29.3 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 87b9c9a..a5d1194 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -50,7 +50,7 @@ ExclusiveArch: x86_64 %global source_directory 1.29-development Name: nbdkit -Version: 1.29.2 +Version: 1.29.3 Release: 1%{?dist} Summary: NBD server @@ -1246,6 +1246,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Thu Oct 28 2021 Richard W.M. Jones - 1.29.3-1 +- New upstream development version 1.29.3 + * Mon Oct 25 2021 Richard W.M. Jones - 1.29.2-1 - New upstream development version 1.29.2 diff --git a/sources b/sources index f7c6f62..361f692 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.29.2.tar.gz) = 4fdc1a50bdd224ea40205ff0c853d8ce04fe463c81850dacebd93826494eff955586b14798035a00425923865d513e924eb4c82efe3f44b7cb8b84c12ba24e6e -SHA512 (nbdkit-1.29.2.tar.gz.sig) = 19f9ba9fd998894726d2dfc11a2249ad5daa9240d4c38575614e692d03199b4879e2ae77ff2a6e7841f97dc93a83ef884040596d82ce5f20b98d546e47636030 +SHA512 (nbdkit-1.29.3.tar.gz) = 3c81eda3c735167f4befe29274c7c43216121ff2b8925adf6c6cba9c2b6b735c05c4779afd4e22d4b2e5d7681ffbe49e7dcde0b977fb9a0da40a54b5a65977eb +SHA512 (nbdkit-1.29.3.tar.gz.sig) = 7aa8e90ce3662f98c88c337d203d7fc223ab2a8792ff2db01e282e7186d91255908f3588cc205ba9e047a8eae990fb3a9cecddc2658265d87119c313a78232be From 66ccfa6dd3cc42d6a33a148cd6981d3d9a226db1 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 30 Oct 2021 14:31:29 +0100 Subject: [PATCH 050/298] Distribute README.VDDK in nbdkit-vddk-plugin subpackage --- nbdkit.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index a5d1194..31bb3ce 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -1097,7 +1097,7 @@ export LIBGUESTFS_TRACE=1 %ifarch x86_64 %files vddk-plugin -%doc README +%doc README plugins/vddk/README.VDDK %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-vddk-plugin.so %{_mandir}/man1/nbdkit-vddk-plugin.1* From df8ac05e24cebe463c822281b5cdc903352ed8ed Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 2 Nov 2021 21:52:40 +0000 Subject: [PATCH 051/298] Switch to xorriso (instead of genisoimage) Upstream prefers it since: commit 174a0caf7eaf1943360f9d8f714f466ea7449d90 Author: Richard W.M. Jones Date: Sat Apr 3 17:15:34 2021 +0100 iso: Pick xorriso in preference to genisoimage or mkisofs. See this Debian page explaining the situation with genisoimage: https://wiki.debian.org/genisoimage --- nbdkit.spec | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 31bb3ce..046407d 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,7 +51,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.29.3 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD @@ -96,7 +96,7 @@ BuildRequires: libnbd-devel >= 1.3.11 BuildRequires: libssh-devel BuildRequires: e2fsprogs, e2fsprogs-devel %if !0%{?rhel} -BuildRequires: genisoimage +BuildRequires: xorriso BuildRequires: rb_libtorrent-devel %endif BuildRequires: bash-completion @@ -335,7 +335,7 @@ Summary: Virtual ISO 9660 plugin for %{name} License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} -Requires: genisoimage +Requires: xorriso %description iso-plugin @@ -1246,6 +1246,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Nov 02 2021 Richard W.M. Jones - 1.29.3-2 +- Switch to xorriso (instead of genisoimage) + * Thu Oct 28 2021 Richard W.M. Jones - 1.29.3-1 - New upstream development version 1.29.3 From 048b8de83c0e54418e01b3f75fc541fcf1b539e3 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 4 Nov 2021 08:54:51 +0000 Subject: [PATCH 052/298] Move nbdkit-null-plugin to the nbdkit-server package This plugin is required for probing the presence of filters (see nbdkit-probing(1) man page), so it makes sense to always have it around. The null plugin is only 16K in size so it does not add significantly to the nbdkit-server package. --- nbdkit.spec | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 046407d..fa46011 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -189,9 +189,13 @@ reading the nbdkit(1) and nbdkit-plugin(3) manual pages. Summary: The %{name} server License: BSD +Provides: %{name}-null-plugin = %{version}-%{release} %description server -This package contains the %{name} server with no plugins or filters. +This package contains the %{name} server with only the null plugin +and no filters. To install a basic set of plugins and filters you +need to install "nbdkit-basic-plugins", "nbdkit-basic-filters" or +the metapackage "nbdkit". %package basic-plugins @@ -206,7 +210,6 @@ Provides: %{name}-floppy-plugin = %{version}-%{release} Provides: %{name}-full-plugin = %{version}-%{release} Provides: %{name}-info-plugin = %{version}-%{release} Provides: %{name}-memory-plugin = %{version}-%{release} -Provides: %{name}-null-plugin = %{version}-%{release} Provides: %{name}-ondemand-plugin = %{version}-%{release} Provides: %{name}-pattern-plugin = %{version}-%{release} Provides: %{name}-partitioning-plugin = %{version}-%{release} @@ -236,8 +239,6 @@ nbdkit-info-plugin Serve client and server information. nbdkit-memory-plugin A virtual memory plugin. -nbdkit-null-plugin A null (bitbucket) plugin. - nbdkit-ondemand-plugin Create filesystems on demand. nbdkit-pattern-plugin Fixed test pattern. @@ -881,11 +882,13 @@ export LIBGUESTFS_TRACE=1 %{_sbindir}/nbdkit %dir %{_libdir}/%{name} %dir %{_libdir}/%{name}/plugins +%{_libdir}/%{name}/plugins/nbdkit-null-plugin.so %dir %{_libdir}/%{name}/filters %{_mandir}/man1/nbdkit.1* %{_mandir}/man1/nbdkit-captive.1* %{_mandir}/man1/nbdkit-client.1* %{_mandir}/man1/nbdkit-loop.1* +%{_mandir}/man1/nbdkit-null-plugin.1* %{_mandir}/man1/nbdkit-probing.1* %{_mandir}/man1/nbdkit-protocol.1* %{_mandir}/man1/nbdkit-service.1* @@ -903,7 +906,6 @@ export LIBGUESTFS_TRACE=1 %{_libdir}/%{name}/plugins/nbdkit-full-plugin.so %{_libdir}/%{name}/plugins/nbdkit-info-plugin.so %{_libdir}/%{name}/plugins/nbdkit-memory-plugin.so -%{_libdir}/%{name}/plugins/nbdkit-null-plugin.so %{_libdir}/%{name}/plugins/nbdkit-ondemand-plugin.so %{_libdir}/%{name}/plugins/nbdkit-partitioning-plugin.so %{_libdir}/%{name}/plugins/nbdkit-pattern-plugin.so @@ -919,7 +921,6 @@ export LIBGUESTFS_TRACE=1 %{_mandir}/man1/nbdkit-full-plugin.1* %{_mandir}/man1/nbdkit-info-plugin.1* %{_mandir}/man1/nbdkit-memory-plugin.1* -%{_mandir}/man1/nbdkit-null-plugin.1* %{_mandir}/man1/nbdkit-ondemand-plugin.1* %{_mandir}/man1/nbdkit-partitioning-plugin.1* %{_mandir}/man1/nbdkit-pattern-plugin.1* From 9fbfa6cc49fb6c7d602534f4886d789ce3ef8d5c Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 4 Nov 2021 09:12:05 +0000 Subject: [PATCH 053/298] Consistent use of whitespace Remove double line whitespace between %package and %description. Also remove whitespace lines within %package sections. Double line whitespace is kept between subpackages for visual clarity. --- nbdkit.spec | 58 ----------------------------------------------------- 1 file changed, 58 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index fa46011..898beb5 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -188,7 +188,6 @@ reading the nbdkit(1) and nbdkit-plugin(3) manual pages. %package server Summary: The %{name} server License: BSD - Provides: %{name}-null-plugin = %{version}-%{release} %description server @@ -201,7 +200,6 @@ the metapackage "nbdkit". %package basic-plugins Summary: Basic plugins for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} Provides: %{name}-data-plugin = %{version}-%{release} Provides: %{name}-eval-plugin = %{version}-%{release} @@ -259,14 +257,12 @@ nbdkit-zero-plugin Zero-length plugin for testing. %package example-plugins Summary: Example plugins for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} %if !0%{?rhel} # example4 is written in Perl. Requires: %{name}-perl-plugin %endif - %description example-plugins This package contains example plugins for %{name}. @@ -278,12 +274,10 @@ This package contains example plugins for %{name}. %package cc-plugin Summary: Write small inline C plugins and scripts for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} Requires: gcc Requires: %{_bindir}/cat - %description cc-plugin This package contains support for writing inline C plugins and scripts for %{name}. NOTE this is NOT the right package for writing plugins @@ -295,12 +289,10 @@ in C, install %{name}-devel for that. %package cdi-plugin Summary: Containerized Data Import plugin for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} Requires: jq Requires: podman - %description cdi-plugin This package contains Containerized Data Import support for %{name}. %endif @@ -309,10 +301,8 @@ This package contains Containerized Data Import support for %{name}. %package curl-plugin Summary: HTTP/FTP (cURL) plugin for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} - %description curl-plugin This package contains cURL (HTTP/FTP) support for %{name}. @@ -321,10 +311,8 @@ This package contains cURL (HTTP/FTP) support for %{name}. %package guestfs-plugin Summary: libguestfs plugin for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} - %description guestfs-plugin This package is a libguestfs plugin for %{name}. %endif @@ -334,11 +322,9 @@ This package is a libguestfs plugin for %{name}. %package iso-plugin Summary: Virtual ISO 9660 plugin for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} Requires: xorriso - %description iso-plugin This package is a virtual ISO 9660 (CD-ROM) plugin for %{name}. %endif @@ -348,10 +334,8 @@ This package is a virtual ISO 9660 (CD-ROM) plugin for %{name}. %package libvirt-plugin Summary: Libvirt plugin for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} - %description libvirt-plugin This package is a libvirt plugin for %{name}. It lets you access libvirt guest disks readonly. It is implemented using the libvirt @@ -362,12 +346,10 @@ virDomainBlockPeek API. %package linuxdisk-plugin Summary: Virtual Linux disk plugin for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} # for mke2fs Requires: e2fsprogs - %description linuxdisk-plugin This package is a virtual Linux disk plugin for %{name}. @@ -376,10 +358,8 @@ This package is a virtual Linux disk plugin for %{name}. %package lua-plugin Summary: Lua plugin for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} - %description lua-plugin This package lets you write Lua plugins for %{name}. %endif @@ -388,10 +368,8 @@ This package lets you write Lua plugins for %{name}. %package nbd-plugin Summary: NBD proxy / forward plugin for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} - %description nbd-plugin This package lets you forward NBD connections from %{name} to another NBD server. @@ -401,10 +379,8 @@ to another NBD server. %package ocaml-plugin Summary: OCaml plugin for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} - %description ocaml-plugin This package lets you run OCaml plugins for %{name}. @@ -415,11 +391,9 @@ To compile OCaml plugins you will also need to install %package ocaml-plugin-devel Summary: OCaml development environment for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} Requires: %{name}-ocaml-plugin%{?_isa} = %{version}-%{release} - %description ocaml-plugin-devel This package lets you write OCaml plugins for %{name}. %endif @@ -429,10 +403,8 @@ This package lets you write OCaml plugins for %{name}. %package perl-plugin Summary: Perl plugin for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} - %description perl-plugin This package lets you write Perl plugins for %{name}. %endif @@ -441,10 +413,8 @@ This package lets you write Perl plugins for %{name}. %package python-plugin Summary: Python 3 plugin for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} - %description python-plugin This package lets you write Python 3 plugins for %{name}. @@ -453,10 +423,8 @@ This package lets you write Python 3 plugins for %{name}. %package ruby-plugin Summary: Ruby plugin for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} - %description ruby-plugin This package lets you write Ruby plugins for %{name}. %endif @@ -468,12 +436,10 @@ This package lets you write Ruby plugins for %{name}. %package S3-plugin Summary: Amazon S3 and Ceph plugin for %{name} License: BSD - Requires: %{name}-python-plugin >= 1.22 # XXX Should not need to add this. Requires: python3-boto3 - %description S3-plugin This package lets you open disk images stored in Amazon S3 or Ceph using %{name}. @@ -483,10 +449,8 @@ or Ceph using %{name}. %package ssh-plugin Summary: SSH plugin for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} - %description ssh-plugin This package contains SSH support for %{name}. @@ -495,10 +459,8 @@ This package contains SSH support for %{name}. %package tcl-plugin Summary: Tcl plugin for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} - %description tcl-plugin This package lets you write Tcl plugins for %{name}. %endif @@ -507,7 +469,6 @@ This package lets you write Tcl plugins for %{name}. %package tmpdisk-plugin Summary: Remote temporary filesystem disk plugin for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} # For mkfs and mke2fs (defaults). Requires: util-linux, e2fsprogs @@ -517,7 +478,6 @@ Suggests: xfsprogs Suggests: ntfsprogs, dosfstools %endif - %description tmpdisk-plugin This package is a remote temporary filesystem disk plugin for %{name}. @@ -526,10 +486,8 @@ This package is a remote temporary filesystem disk plugin for %{name}. %package torrent-plugin Summary: BitTorrent plugin for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} - %description torrent-plugin This package is a BitTorrent plugin for %{name}. %endif @@ -539,12 +497,10 @@ This package is a BitTorrent plugin for %{name}. %package vddk-plugin Summary: VMware VDDK plugin for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} # https://bugzilla.redhat.com/show_bug.cgi?id=1931818 Requires: libxcrypt-compat - %description vddk-plugin This package is a plugin for %{name} which connects to VMware VDDK for accessing VMware disks and servers. @@ -554,7 +510,6 @@ VMware VDDK for accessing VMware disks and servers. %package basic-filters Summary: Basic filters for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} Provides: %{name}-blocksize-filter = %{version}-%{release} Provides: %{name}-cache-filter = %{version}-%{release} @@ -590,7 +545,6 @@ Provides: %{name}-swab-filter = %{version}-%{release} Provides: %{name}-tls-fallback-filter = %{version}-%{release} Provides: %{name}-truncate-filter = %{version}-%{release} - %description basic-filters This package contains filters for %{name} which only depend on simple C libraries: glibc, gnutls. Other filters for nbdkit with more @@ -667,10 +621,8 @@ nbdkit-truncate-filter Truncate, expand, round up or round down size. %package ext2-filter Summary: ext2, ext3 and ext4 filesystem support for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} - %description ext2-filter This package contains ext2, ext3 and ext4 filesystem support for %{name}. @@ -680,10 +632,8 @@ This package contains ext2, ext3 and ext4 filesystem support for %package gzip-filter Summary: GZip filter for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} - %description gzip-filter This package is a gzip filter for %{name}. @@ -691,13 +641,10 @@ This package is a gzip filter for %{name}. %package tar-filter Summary: Tar archive filter for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} Requires: tar - Obsoletes: %{name}-tar-plugin < 1.23.9-3 - %description tar-filter This package is a tar archive filter for %{name}. @@ -705,10 +652,8 @@ This package is a tar archive filter for %{name}. %package xz-filter Summary: XZ filter for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} - %description xz-filter This package is the xz filter for %{name}. @@ -716,11 +661,9 @@ This package is the xz filter for %{name}. %package devel Summary: Development files and documentation for %{name} License: BSD - Requires: %{name}-server%{?_isa} = %{version}-%{release} Requires: pkgconfig - %description devel This package contains development files and documentation for %{name}. Install this package if you want to develop @@ -733,7 +676,6 @@ BuildArch: noarch Requires: bash-completion >= 2.0 Requires: %{name}-server = %{version}-%{release} - %description bash-completion Install this package if you want intelligent bash tab-completion for %{name}. From 2e1040c18912273414d9534cd1689a11b22056ab Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 4 Nov 2021 09:13:46 +0000 Subject: [PATCH 054/298] New Fedora build with previous two commits --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 898beb5..dd65e37 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,7 +51,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.29.3 -Release: 2%{?dist} +Release: 3%{?dist} Summary: NBD server License: BSD @@ -1189,6 +1189,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Thu Nov 04 2021 Richard W.M. Jones - 1.29.3-3 +- Move nbdkit-null-plugin to the nbdkit-server package + * Tue Nov 02 2021 Richard W.M. Jones - 1.29.3-2 - Switch to xorriso (instead of genisoimage) From 5a0fb7a704362b9920c82bc4939590eff793a962 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 4 Nov 2021 14:44:44 +0000 Subject: [PATCH 055/298] New upstream development version 1.29.4 Remove references to nbdkit-streaming-plugin (now removed upstream) --- nbdkit.spec | 12 +++++------- sources | 4 ++-- 2 files changed, 7 insertions(+), 9 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index dd65e37..0dc298b 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -50,8 +50,8 @@ ExclusiveArch: x86_64 %global source_directory 1.29-development Name: nbdkit -Version: 1.29.3 -Release: 3%{?dist} +Version: 1.29.4 +Release: 1%{?dist} Summary: NBD server License: BSD @@ -746,10 +746,6 @@ find $RPM_BUILD_ROOT -name '*.la' -delete # rust plugin is built. Delete it if this happens. rm -f $RPM_BUILD_ROOT%{_mandir}/man3/nbdkit-rust-plugin.3* -# Remove the streaming plugin (deprecated upstream). -rm $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/nbdkit-streaming-plugin.so -rm $RPM_BUILD_ROOT%{_mandir}/man1/nbdkit-streaming-plugin.1* - %if 0%{?rhel} # In RHEL, remove some plugins we cannot --disable. for f in cc cdi torrent; do @@ -1189,7 +1185,9 @@ export LIBGUESTFS_TRACE=1 %changelog -* Thu Nov 04 2021 Richard W.M. Jones - 1.29.3-3 +* Thu Nov 04 2021 Richard W.M. Jones - 1.29.4-1 +- New upstream development version 1.29.4 +- Remove references to nbdkit-streaming-plugin (now removed upstream) - Move nbdkit-null-plugin to the nbdkit-server package * Tue Nov 02 2021 Richard W.M. Jones - 1.29.3-2 diff --git a/sources b/sources index 361f692..86ef477 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.29.3.tar.gz) = 3c81eda3c735167f4befe29274c7c43216121ff2b8925adf6c6cba9c2b6b735c05c4779afd4e22d4b2e5d7681ffbe49e7dcde0b977fb9a0da40a54b5a65977eb -SHA512 (nbdkit-1.29.3.tar.gz.sig) = 7aa8e90ce3662f98c88c337d203d7fc223ab2a8792ff2db01e282e7186d91255908f3588cc205ba9e047a8eae990fb3a9cecddc2658265d87119c313a78232be +SHA512 (nbdkit-1.29.4.tar.gz) = 0b523c9a2ac5714fddbc9880a71bc209075c9c089fa013d98a04b4df2548854791b600838052dd486a2535d2044678ff1d1663231ff14a50f116809bcc585f23 +SHA512 (nbdkit-1.29.4.tar.gz.sig) = 6447d6869abf5cbae8af9ce9c4b62ea06e607e1469a217f13020724911876adb6d4359382957acee3e9d68c3ff45df2f211d5866bb865f1c4cbe10c49434dce6 From c25bdd9e3ebd285072d3b98465ed13e1503ed919 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 9 Nov 2021 12:05:06 +0000 Subject: [PATCH 056/298] New upstream development version 1.29.5 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 0dc298b..07365da 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -50,7 +50,7 @@ ExclusiveArch: x86_64 %global source_directory 1.29-development Name: nbdkit -Version: 1.29.4 +Version: 1.29.5 Release: 1%{?dist} Summary: NBD server @@ -1185,6 +1185,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Nov 09 2021 Richard W.M. Jones - 1.29.5-1 +- New upstream development version 1.29.5 + * Thu Nov 04 2021 Richard W.M. Jones - 1.29.4-1 - New upstream development version 1.29.4 - Remove references to nbdkit-streaming-plugin (now removed upstream) diff --git a/sources b/sources index 86ef477..f1d888b 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.29.4.tar.gz) = 0b523c9a2ac5714fddbc9880a71bc209075c9c089fa013d98a04b4df2548854791b600838052dd486a2535d2044678ff1d1663231ff14a50f116809bcc585f23 -SHA512 (nbdkit-1.29.4.tar.gz.sig) = 6447d6869abf5cbae8af9ce9c4b62ea06e607e1469a217f13020724911876adb6d4359382957acee3e9d68c3ff45df2f211d5866bb865f1c4cbe10c49434dce6 +SHA512 (nbdkit-1.29.5.tar.gz) = 4c1228516b1c02a611ee1a589eb66f7511c2b98a9fc1c126d40e221021681ec32d71c7134666619d7b65415549d2c6ca80dc54d551532b1f3943b89e0565933d +SHA512 (nbdkit-1.29.5.tar.gz.sig) = 0b61797aeea81d640b681186f32c1ecd2721bcc5178eec046c6472b404f90c96bd63bf1ae97572773f0f88de40c0ab140074e121e5b9a0e071a40ec28cf110c0 From 6386105a86809b4a6225cea4d7a3c7f08b5311e0 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 9 Nov 2021 12:11:06 +0000 Subject: [PATCH 057/298] New minimum OCaml is 4.03 Starting in nbdkit 1.30 --- nbdkit.spec | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 07365da..0c7eb10 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -112,9 +112,7 @@ BuildRequires: python3-boto3 %endif %if !0%{?rhel} %if 0%{?have_ocaml} -# Requires OCaml 4.02.2 which contains fix for -# http://caml.inria.fr/mantis/view.php?id=6693 -BuildRequires: ocaml >= 4.02.2 +BuildRequires: ocaml >= 4.03 BuildRequires: ocaml-ocamldoc %endif BuildRequires: ruby-devel @@ -1187,6 +1185,7 @@ export LIBGUESTFS_TRACE=1 %changelog * Tue Nov 09 2021 Richard W.M. Jones - 1.29.5-1 - New upstream development version 1.29.5 +- New minimum OCaml is 4.03 * Thu Nov 04 2021 Richard W.M. Jones - 1.29.4-1 - New upstream development version 1.29.4 From c5bc76efe999f5c122219bd03df96a36f9229f00 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 19 Nov 2021 21:01:57 +0000 Subject: [PATCH 058/298] New upstream development version 1.29.6 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 0c7eb10..87be57a 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -50,7 +50,7 @@ ExclusiveArch: x86_64 %global source_directory 1.29-development Name: nbdkit -Version: 1.29.5 +Version: 1.29.6 Release: 1%{?dist} Summary: NBD server @@ -1183,6 +1183,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Fri Nov 19 2021 Richard W.M. Jones - 1.29.6-1 +- New upstream development version 1.29.6 + * Tue Nov 09 2021 Richard W.M. Jones - 1.29.5-1 - New upstream development version 1.29.5 - New minimum OCaml is 4.03 diff --git a/sources b/sources index f1d888b..a4e02b2 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.29.5.tar.gz) = 4c1228516b1c02a611ee1a589eb66f7511c2b98a9fc1c126d40e221021681ec32d71c7134666619d7b65415549d2c6ca80dc54d551532b1f3943b89e0565933d -SHA512 (nbdkit-1.29.5.tar.gz.sig) = 0b61797aeea81d640b681186f32c1ecd2721bcc5178eec046c6472b404f90c96bd63bf1ae97572773f0f88de40c0ab140074e121e5b9a0e071a40ec28cf110c0 +SHA512 (nbdkit-1.29.6.tar.gz) = cd543f19711e324bd3b7ab9368cb5641ce9f1c2e3a5321933d9b50a35ed698a78cbe23e1994dc15116a65db9df12e19871e3523cfbb3c06928f7b3e83ef8d401 +SHA512 (nbdkit-1.29.6.tar.gz.sig) = 52bb779079795476f1cad0ffa67ac204b34a958d11bb2fa6436343dc4845bb7c1d783b77d1a0c5c9172882e2bf9d35c81c77a944f03f298ac2316fa0fca1ca7c From 8803d4c3388a25d6357095134b941afa0f940e2e Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 23 Nov 2021 17:45:51 +0000 Subject: [PATCH 059/298] New upstream development version 1.29.7 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 87be57a..10b7fe5 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -50,7 +50,7 @@ ExclusiveArch: x86_64 %global source_directory 1.29-development Name: nbdkit -Version: 1.29.6 +Version: 1.29.7 Release: 1%{?dist} Summary: NBD server @@ -1183,6 +1183,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Nov 23 2021 Richard W.M. Jones - 1.29.7-1 +- New upstream development version 1.29.7 + * Fri Nov 19 2021 Richard W.M. Jones - 1.29.6-1 - New upstream development version 1.29.6 diff --git a/sources b/sources index a4e02b2..0804689 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.29.6.tar.gz) = cd543f19711e324bd3b7ab9368cb5641ce9f1c2e3a5321933d9b50a35ed698a78cbe23e1994dc15116a65db9df12e19871e3523cfbb3c06928f7b3e83ef8d401 -SHA512 (nbdkit-1.29.6.tar.gz.sig) = 52bb779079795476f1cad0ffa67ac204b34a958d11bb2fa6436343dc4845bb7c1d783b77d1a0c5c9172882e2bf9d35c81c77a944f03f298ac2316fa0fca1ca7c +SHA512 (nbdkit-1.29.7.tar.gz) = 3423520743f88fd0ed3ce9a7d2c2fb185da7254d380554f35af93b8660af09885edf1ed48fcbf9c81b67148eb36cb95a768a5a668361bc2e137b6123a7790212 +SHA512 (nbdkit-1.29.7.tar.gz.sig) = ad9cd9630878632ce06da43060ff2b67f36d5abb4d380fecd9ea31bb9c2e7cea435d9b54be9d0344127a31f1f916382c4ffc3f5d5786d039e73a93cdfaf99258 From 56d39b24786fa8a8b2c960583a6f276561d6f779 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 23 Nov 2021 18:00:14 +0000 Subject: [PATCH 060/298] Temporarily disable on armv7 https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/GD3ABSWD6HHTNEKV2EJY4PXABQ245UCZ/ --- nbdkit.spec | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/nbdkit.spec b/nbdkit.spec index 10b7fe5..ffd074b 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -1,3 +1,7 @@ +# No qemu on armv7 because of broken GCC, see: +# https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/GD3ABSWD6HHTNEKV2EJY4PXABQ245UCZ/ +ExcludeArch: %{arm} + %global _hardened_build 1 %ifarch %{kernel_arches} From 43959fc74253269af78e15d5fec57454a9d327e3 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 25 Nov 2021 08:32:42 +0000 Subject: [PATCH 061/298] Revert "Temporarily disable on armv7" This reverts commit 56d39b24786fa8a8b2c960583a6f276561d6f779. --- nbdkit.spec | 4 ---- 1 file changed, 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index ffd074b..10b7fe5 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -1,7 +1,3 @@ -# No qemu on armv7 because of broken GCC, see: -# https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org/thread/GD3ABSWD6HHTNEKV2EJY4PXABQ245UCZ/ -ExcludeArch: %{arm} - %global _hardened_build 1 %ifarch %{kernel_arches} From 081e50952e568b19b416d4f9e1f6467f6becd864 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 25 Nov 2021 08:33:17 +0000 Subject: [PATCH 062/298] Bump release and rebuild --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 10b7fe5..daf6683 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,7 +51,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.29.7 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD @@ -1183,6 +1183,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Thu Nov 25 2021 Richard W.M. Jones - 1.29.7-2 +- Bump release and rebuild + * Tue Nov 23 2021 Richard W.M. Jones - 1.29.7-1 - New upstream development version 1.29.7 From 2712f85f7658ec4cdf87ae889b9f5b455c017845 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 25 Nov 2021 13:42:16 +0000 Subject: [PATCH 063/298] Skip some long-running tests on armv7 --- nbdkit.spec | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/nbdkit.spec b/nbdkit.spec index daf6683..14ff0e8 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -792,6 +792,14 @@ skip_test tests/test-memory-allocator-malloc-mlock.sh %endif %endif +# armv7 is very slow and some tests take an especially long time to +# run. This skips some of the slowest tests. Note that +# test-data-format.sh is a slow test, but in the past we have found +# bugs by running it on armv7. +%ifarch %{arm} +skip_test tests/test-partition1.sh tests/test-cow.sh tests/test-cow-block-size.sh tests/test-cow-extents2.sh +%endif + # Make sure we can see the debug messages (RHBZ#1230160). export LIBGUESTFS_DEBUG=1 export LIBGUESTFS_TRACE=1 From bc579786a184871d9a500eada903247b874c5c6f Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 4 Dec 2021 11:03:54 +0000 Subject: [PATCH 064/298] New upstream development version 1.29.8 --- nbdkit.spec | 13 +++++++++++-- sources | 4 ++-- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 14ff0e8..3005732 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -50,8 +50,8 @@ ExclusiveArch: x86_64 %global source_directory 1.29-development Name: nbdkit -Version: 1.29.7 -Release: 2%{?dist} +Version: 1.29.8 +Release: 1%{?dist} Summary: NBD server License: BSD @@ -534,6 +534,7 @@ Provides: %{name}-nozero-filter = %{version}-%{release} Provides: %{name}-offset-filter = %{version}-%{release} Provides: %{name}-partition-filter = %{version}-%{release} Provides: %{name}-pause-filter = %{version}-%{release} +Provides: %{name}-protect-filter = %{version}-%{release} Provides: %{name}-rate-filter = %{version}-%{release} Provides: %{name}-readahead-filter = %{version}-%{release} Provides: %{name}-retry-filter = %{version}-%{release} @@ -598,6 +599,8 @@ nbdkit-partition-filter Serve a single partition. nbdkit-pause-filter Pause NBD requests. +nbdkit-protect-filter Write-protect parts of a plugin. + nbdkit-rate-filter Limit bandwidth by connection or server. nbdkit-readahead-filter Prefetch data when reading sequentially. @@ -1077,6 +1080,7 @@ export LIBGUESTFS_TRACE=1 %{_libdir}/%{name}/filters/nbdkit-offset-filter.so %{_libdir}/%{name}/filters/nbdkit-partition-filter.so %{_libdir}/%{name}/filters/nbdkit-pause-filter.so +%{_libdir}/%{name}/filters/nbdkit-protect-filter.so %{_libdir}/%{name}/filters/nbdkit-rate-filter.so %{_libdir}/%{name}/filters/nbdkit-readahead-filter.so %{_libdir}/%{name}/filters/nbdkit-retry-filter.so @@ -1110,6 +1114,7 @@ export LIBGUESTFS_TRACE=1 %{_mandir}/man1/nbdkit-offset-filter.1* %{_mandir}/man1/nbdkit-partition-filter.1* %{_mandir}/man1/nbdkit-pause-filter.1* +%{_mandir}/man1/nbdkit-protect-filter.1* %{_mandir}/man1/nbdkit-rate-filter.1* %{_mandir}/man1/nbdkit-readahead-filter.1* %{_mandir}/man1/nbdkit-retry-filter.1* @@ -1191,6 +1196,10 @@ export LIBGUESTFS_TRACE=1 %changelog +* Sat Dec 04 2021 Richard W.M. Jones - 1.29.8-1 +- New upstream development version 1.29.8 +- Add nbdkit-protect-filter. + * Thu Nov 25 2021 Richard W.M. Jones - 1.29.7-2 - Bump release and rebuild diff --git a/sources b/sources index 0804689..d1712e3 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.29.7.tar.gz) = 3423520743f88fd0ed3ce9a7d2c2fb185da7254d380554f35af93b8660af09885edf1ed48fcbf9c81b67148eb36cb95a768a5a668361bc2e137b6123a7790212 -SHA512 (nbdkit-1.29.7.tar.gz.sig) = ad9cd9630878632ce06da43060ff2b67f36d5abb4d380fecd9ea31bb9c2e7cea435d9b54be9d0344127a31f1f916382c4ffc3f5d5786d039e73a93cdfaf99258 +SHA512 (nbdkit-1.29.8.tar.gz) = a31544a47136a63650fa8ac187bd7f4db090846474794cf7b380b77228ed0b2d6b445989da681b8229999469e74e2513f1e37c98c11fc158711bcd75d87cef65 +SHA512 (nbdkit-1.29.8.tar.gz.sig) = 53f01816e7fe96d21347cb8aa8bffbf6fcdcae2cf5235ed3a4968b12d8fb7335f8154782f7feb17216695fce7cf5702fa0d23b64bc640bb9bbcaf70aab26dbe2 From e297dcb96e7cbbab2191268557e0c5e5713a020d Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 7 Dec 2021 09:54:38 +0000 Subject: [PATCH 065/298] New upstream development version 1.29.9 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 3005732..89e3c6b 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -50,7 +50,7 @@ ExclusiveArch: x86_64 %global source_directory 1.29-development Name: nbdkit -Version: 1.29.8 +Version: 1.29.9 Release: 1%{?dist} Summary: NBD server @@ -1196,6 +1196,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Dec 07 2021 Richard W.M. Jones - 1.29.9-1 +- New upstream development version 1.29.9 + * Sat Dec 04 2021 Richard W.M. Jones - 1.29.8-1 - New upstream development version 1.29.8 - Add nbdkit-protect-filter. diff --git a/sources b/sources index d1712e3..f2668df 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.29.8.tar.gz) = a31544a47136a63650fa8ac187bd7f4db090846474794cf7b380b77228ed0b2d6b445989da681b8229999469e74e2513f1e37c98c11fc158711bcd75d87cef65 -SHA512 (nbdkit-1.29.8.tar.gz.sig) = 53f01816e7fe96d21347cb8aa8bffbf6fcdcae2cf5235ed3a4968b12d8fb7335f8154782f7feb17216695fce7cf5702fa0d23b64bc640bb9bbcaf70aab26dbe2 +SHA512 (nbdkit-1.29.9.tar.gz) = 11fa0e6bdb84bbde5ac194d5a0deb599751ced0e59a843f140ef82458875753bfa2215eeb5c3e54336567a2ec032c63b4bd8b10f61d2b4edef63b4c67b1f798b +SHA512 (nbdkit-1.29.9.tar.gz.sig) = 6d8d345c10436768e2fc57583ede531c978ffd3c2ebcd8367490f311d408009b74d1cbd36bf6f00c85968efbc8908dc6a0c5b558f740ae28df06a8508eeb4e79 From eca1adb78130ae2dbe361c0701451450d6a74aa8 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 18 Dec 2021 11:42:50 +0000 Subject: [PATCH 066/298] New upstream development version 1.29.10 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 89e3c6b..e632dfc 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -50,7 +50,7 @@ ExclusiveArch: x86_64 %global source_directory 1.29-development Name: nbdkit -Version: 1.29.9 +Version: 1.29.10 Release: 1%{?dist} Summary: NBD server @@ -1196,6 +1196,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Sat Dec 18 2021 Richard W.M. Jones - 1.29.10-1 +- New upstream development version 1.29.10 + * Tue Dec 07 2021 Richard W.M. Jones - 1.29.9-1 - New upstream development version 1.29.9 diff --git a/sources b/sources index f2668df..797a3b1 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.29.9.tar.gz) = 11fa0e6bdb84bbde5ac194d5a0deb599751ced0e59a843f140ef82458875753bfa2215eeb5c3e54336567a2ec032c63b4bd8b10f61d2b4edef63b4c67b1f798b -SHA512 (nbdkit-1.29.9.tar.gz.sig) = 6d8d345c10436768e2fc57583ede531c978ffd3c2ebcd8367490f311d408009b74d1cbd36bf6f00c85968efbc8908dc6a0c5b558f740ae28df06a8508eeb4e79 +SHA512 (nbdkit-1.29.10.tar.gz) = c2e5891eff471ab80e364c5258a305bd20e11c0059f415ff2aa23ec03ceb52630eb5448684ffffcf50cc97515e4c63889349ae577c13bd61bf9e06cd4a08f2c9 +SHA512 (nbdkit-1.29.10.tar.gz.sig) = d3e5e7a1bf92652c96e3ac91f039fa9cfad0381039af3a1475eea06ad6eddb0b2a9a0314a2199e1b0cc4b0da090c491741fa2b289a37cb3aede5e58d77ddd861 From 560850cee6851220dc0175acfa34e8ab241cf8d1 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 18 Dec 2021 22:10:03 +0000 Subject: [PATCH 067/298] New upstream development version 1.29.11 Use new --disable-libguestfs-tests on non-guestfs arches. --- nbdkit.spec | 25 +++++++++++-------------- sources | 4 ++-- 2 files changed, 13 insertions(+), 16 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index e632dfc..a24d128 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -21,7 +21,8 @@ %global have_ocaml 1 %endif -# Architectures where the complete test suite must pass. +# Architectures where we run the complete test suite including +# the libguestfs tests. # # On all other architectures, a simpler test suite must pass. This # omits any tests that run full qemu, since running qemu under TCG is @@ -50,7 +51,7 @@ ExclusiveArch: x86_64 %global source_directory 1.29-development Name: nbdkit -Version: 1.29.10 +Version: 1.29.11 Release: 1%{?dist} Summary: NBD server @@ -77,9 +78,6 @@ BuildRequires: make BuildRequires: autoconf, automake, libtool %endif -%ifnarch %{complete_test_arches} -BuildRequires: autoconf, automake, libtool -%endif BuildRequires: gcc, gcc-c++ BuildRequires: %{_bindir}/pod2man BuildRequires: gnutls-devel @@ -691,13 +689,6 @@ for %{name}. autoreconf -i %endif -%ifnarch %{complete_test_arches} -# Simplify the test suite so it doesn't require qemu. -sed -i -e 's/^LIBGUESTFS_TESTS/xLIBGUESTFS_TESTS/' tests/Makefile.am -sed -i -e '/^if HAVE_GUESTFISH/,/^endif HAVE_GUESTFISH/d' tests/Makefile.am -autoreconf -i -%endif - %build # Golang bindings are not enabled in the build since they don't @@ -727,6 +718,11 @@ export PYTHON=%{__python3} --with-libguestfs \ %else --without-libguestfs \ +%endif +%ifarch %{complete_test_arches} + --enable-libguestfs-tests \ +%else + --disable-libguestfs-tests \ %endif --with-tls-priority=@NBDKIT,SYSTEM @@ -1196,8 +1192,9 @@ export LIBGUESTFS_TRACE=1 %changelog -* Sat Dec 18 2021 Richard W.M. Jones - 1.29.10-1 -- New upstream development version 1.29.10 +* Sat Dec 18 2021 Richard W.M. Jones - 1.29.11-1 +- New upstream development version 1.29.11 +- Use new --disable-libguestfs-tests on non-guestfs arches. * Tue Dec 07 2021 Richard W.M. Jones - 1.29.9-1 - New upstream development version 1.29.9 diff --git a/sources b/sources index 797a3b1..9aa7ad7 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.29.10.tar.gz) = c2e5891eff471ab80e364c5258a305bd20e11c0059f415ff2aa23ec03ceb52630eb5448684ffffcf50cc97515e4c63889349ae577c13bd61bf9e06cd4a08f2c9 -SHA512 (nbdkit-1.29.10.tar.gz.sig) = d3e5e7a1bf92652c96e3ac91f039fa9cfad0381039af3a1475eea06ad6eddb0b2a9a0314a2199e1b0cc4b0da090c491741fa2b289a37cb3aede5e58d77ddd861 +SHA512 (nbdkit-1.29.11.tar.gz) = 923e07db9f4bde4b8a110020a7301c11a1c7e6ad39a02d199c63b4330924f9da1235528b1b70d5c01686740d1e0ff041e2a93c66381db90364f811c39772a8cc +SHA512 (nbdkit-1.29.11.tar.gz.sig) = 1a62d33abe12bb1494722be6c631f30ffdf33d7a9d20e3674451639fa0a25f3c8304fb1dbd8cc345c8167a89cb7d77235afd859b368369821fa39d5f9c93f8d0 From 0fe18b829597ff78a726f9182dadaa760db57146 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 4 Jan 2022 13:49:03 +0000 Subject: [PATCH 068/298] New upstream development version 1.29.12 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index a24d128..beeab03 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,7 +51,7 @@ ExclusiveArch: x86_64 %global source_directory 1.29-development Name: nbdkit -Version: 1.29.11 +Version: 1.29.12 Release: 1%{?dist} Summary: NBD server @@ -1192,6 +1192,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Jan 04 2022 Richard W.M. Jones - 1.29.12-1 +- New upstream development version 1.29.12 + * Sat Dec 18 2021 Richard W.M. Jones - 1.29.11-1 - New upstream development version 1.29.11 - Use new --disable-libguestfs-tests on non-guestfs arches. diff --git a/sources b/sources index 9aa7ad7..5b6bb23 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.29.11.tar.gz) = 923e07db9f4bde4b8a110020a7301c11a1c7e6ad39a02d199c63b4330924f9da1235528b1b70d5c01686740d1e0ff041e2a93c66381db90364f811c39772a8cc -SHA512 (nbdkit-1.29.11.tar.gz.sig) = 1a62d33abe12bb1494722be6c631f30ffdf33d7a9d20e3674451639fa0a25f3c8304fb1dbd8cc345c8167a89cb7d77235afd859b368369821fa39d5f9c93f8d0 +SHA512 (nbdkit-1.29.12.tar.gz) = 928147bb07ca4cd321b634d54f9efa59f3fe4c5c82c0abf318893c15ea9c2412d134d6a374b21b4baffb024c398ba2db3f4b74f7bf2625eba336a6f849c71589 +SHA512 (nbdkit-1.29.12.tar.gz.sig) = 33f44db39ee1953489ee8ce3e94c4bf0b3e63fd32a92f17856603d48cfcbd22c0c98da901fe09375d04dce26928b448105b98685ed2b5e59d3640d16adb6b898 From 2168d136f982a1464675bc7af1989eae8ae60d81 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 15 Jan 2022 21:02:22 +0000 Subject: [PATCH 069/298] New upstream development version 1.29.13 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index beeab03..23829f7 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,7 +51,7 @@ ExclusiveArch: x86_64 %global source_directory 1.29-development Name: nbdkit -Version: 1.29.12 +Version: 1.29.13 Release: 1%{?dist} Summary: NBD server @@ -1192,6 +1192,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Sat Jan 15 2022 Richard W.M. Jones - 1.29.13-1 +- New upstream development version 1.29.13 + * Tue Jan 04 2022 Richard W.M. Jones - 1.29.12-1 - New upstream development version 1.29.12 diff --git a/sources b/sources index 5b6bb23..4cf5423 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.29.12.tar.gz) = 928147bb07ca4cd321b634d54f9efa59f3fe4c5c82c0abf318893c15ea9c2412d134d6a374b21b4baffb024c398ba2db3f4b74f7bf2625eba336a6f849c71589 -SHA512 (nbdkit-1.29.12.tar.gz.sig) = 33f44db39ee1953489ee8ce3e94c4bf0b3e63fd32a92f17856603d48cfcbd22c0c98da901fe09375d04dce26928b448105b98685ed2b5e59d3640d16adb6b898 +SHA512 (nbdkit-1.29.13.tar.gz) = 8598437195a150aed5cfaf0e85d47aefa6a85019d0eadd619306acb6e1bc6bd7739306dfb4756108528ee270c0de0d9cba2226cc39be067d6ff41b66d184cfe5 +SHA512 (nbdkit-1.29.13.tar.gz.sig) = 8b88f1bfb3f5af563317b871f14eac6882557f0af33434164c8a412b34a0f4bec5982b5e1b29c40b39aa3faa6ada32a885fd318eaee2f7c8734d10ed64926e1b From 48e6b17885cc1266b66c3e8c37b15d2685cc2916 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 20 Jan 2022 20:56:00 +0000 Subject: [PATCH 070/298] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 23829f7..e149dda 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.29.13 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD @@ -1192,6 +1192,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Thu Jan 20 2022 Fedora Release Engineering - 1.29.13-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Sat Jan 15 2022 Richard W.M. Jones - 1.29.13-1 - New upstream development version 1.29.13 From a3f1e0a0652bd5d715e6b276b4ba4f21a84ae444 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 20 Jan 2022 21:25:30 +0000 Subject: [PATCH 071/298] New upstream development version 1.29.14 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index e149dda..ac638ee 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,8 +51,8 @@ ExclusiveArch: x86_64 %global source_directory 1.29-development Name: nbdkit -Version: 1.29.13 -Release: 2%{?dist} +Version: 1.29.14 +Release: 1%{?dist} Summary: NBD server License: BSD @@ -1192,6 +1192,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Thu Jan 20 2022 Richard W.M. Jones - 1.29.14-1 +- New upstream development version 1.29.14 + * Thu Jan 20 2022 Fedora Release Engineering - 1.29.13-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild diff --git a/sources b/sources index 4cf5423..11d4f1f 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.29.13.tar.gz) = 8598437195a150aed5cfaf0e85d47aefa6a85019d0eadd619306acb6e1bc6bd7739306dfb4756108528ee270c0de0d9cba2226cc39be067d6ff41b66d184cfe5 -SHA512 (nbdkit-1.29.13.tar.gz.sig) = 8b88f1bfb3f5af563317b871f14eac6882557f0af33434164c8a412b34a0f4bec5982b5e1b29c40b39aa3faa6ada32a885fd318eaee2f7c8734d10ed64926e1b +SHA512 (nbdkit-1.29.14.tar.gz) = 563f7b10235acfc46002e893fadf5725e4517079538a55687e17e52d4d8782b7fe297f2d49ac70fdce8c1bd5dcbeb9817bf6b7e011861a6ceb3cb9c46ea928e7 +SHA512 (nbdkit-1.29.14.tar.gz.sig) = c1ec9e96fbc169b65ba20d8987f3c6983068de8a1d3bf922402cd683261ca3bfc17837a598483f6493b5f9204e9938b5176d2a29d98a77370444266ad4db401e From 40c86254ab1a7eeb46b63bbf31058706ef387b9e Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 24 Jan 2022 15:36:35 +0000 Subject: [PATCH 072/298] Skip test-memory-allocator-malloc-mlock.sh on ppc64le --- nbdkit.spec | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index ac638ee..fc5422d 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -782,11 +782,12 @@ skip_test tests/test-cache-max-size.sh # https://www.redhat.com/archives/libguestfs/2020-March/msg00191.html skip_test tests/test-nbd-tls.sh tests/test-nbd-tls-psk.sh -# This test fails on RHEL 9 & aarch64 with the error: +# This test fails on RHEL 9 aarch64 & ppc64le with the error: # nbdkit: error: allocator=malloc: mlock: Cannot allocate memory # It could be the mlock limit on the builder is too low. +# https://bugzilla.redhat.com/show_bug.cgi?id=2044432 %if 0%{?rhel} -%ifarch aarch64 +%ifarch aarch64 %{power64} skip_test tests/test-memory-allocator-malloc-mlock.sh %endif %endif From 6ace817dd9ae72ef018bbcbb476558ebed237f2b Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Thu, 27 Jan 2022 19:46:15 +0900 Subject: [PATCH 073/298] F-36: rebuild against ruby31 --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index fc5422d..8c4c927 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.29.14 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD @@ -1193,6 +1193,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Thu Jan 27 2022 Mamoru TASAKA - 1.29.14-2 +- F-36: rebuild against ruby31 + * Thu Jan 20 2022 Richard W.M. Jones - 1.29.14-1 - New upstream development version 1.29.14 From 3611f1241a83a2a2faf68978045dae0eb53e41d5 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 4 Feb 2022 17:02:22 +0000 Subject: [PATCH 074/298] Disable package notes misfeature until it is fixed in Fedora --- nbdkit.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/nbdkit.spec b/nbdkit.spec index 8c4c927..2907015 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -1,3 +1,4 @@ +%undefine _package_note_flags %global _hardened_build 1 %ifarch %{kernel_arches} From 3692699848116df5f6579dde1c8ff90e01d47060 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 15 Feb 2022 19:33:28 +0000 Subject: [PATCH 075/298] New upstream development version 1.29.15 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 2907015..3fe6eaa 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,8 +52,8 @@ ExclusiveArch: x86_64 %global source_directory 1.29-development Name: nbdkit -Version: 1.29.14 -Release: 2%{?dist} +Version: 1.29.15 +Release: 1%{?dist} Summary: NBD server License: BSD @@ -1194,6 +1194,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Feb 15 2022 Richard W.M. Jones - 1.29.15-1 +- New upstream development version 1.29.15 + * Thu Jan 27 2022 Mamoru TASAKA - 1.29.14-2 - F-36: rebuild against ruby31 diff --git a/sources b/sources index 11d4f1f..c4d2058 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.29.14.tar.gz) = 563f7b10235acfc46002e893fadf5725e4517079538a55687e17e52d4d8782b7fe297f2d49ac70fdce8c1bd5dcbeb9817bf6b7e011861a6ceb3cb9c46ea928e7 -SHA512 (nbdkit-1.29.14.tar.gz.sig) = c1ec9e96fbc169b65ba20d8987f3c6983068de8a1d3bf922402cd683261ca3bfc17837a598483f6493b5f9204e9938b5176d2a29d98a77370444266ad4db401e +SHA512 (nbdkit-1.29.15.tar.gz) = 71fed30dece2c59f0c79b0a2d2ef79d8bf25ab993c16b16601989dfa9f18f15f3ffd87205ac7adfd3349e97915a513ca68e5edb606849b9c3a142dd4d4cdf2ba +SHA512 (nbdkit-1.29.15.tar.gz.sig) = fc99f784afa380eaf4ca4649838ff387783ebfa8138fa55359b4dfa25f74d1055b12466def43dc0da980952c7e3e0e906ccd0bad08b0a7aa08111f08c7da0ba1 From 21c500ae3f9217009c4b8ef737020811469aa469 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 19 Feb 2022 10:46:58 +0000 Subject: [PATCH 076/298] New upstream development version 1.29.16 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 3fe6eaa..4e12d2d 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.29-development Name: nbdkit -Version: 1.29.15 +Version: 1.29.16 Release: 1%{?dist} Summary: NBD server @@ -1194,6 +1194,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Sat Feb 19 2022 Richard W.M. Jones - 1.29.16-1 +- New upstream development version 1.29.16 + * Tue Feb 15 2022 Richard W.M. Jones - 1.29.15-1 - New upstream development version 1.29.15 diff --git a/sources b/sources index c4d2058..a57a1e5 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.29.15.tar.gz) = 71fed30dece2c59f0c79b0a2d2ef79d8bf25ab993c16b16601989dfa9f18f15f3ffd87205ac7adfd3349e97915a513ca68e5edb606849b9c3a142dd4d4cdf2ba -SHA512 (nbdkit-1.29.15.tar.gz.sig) = fc99f784afa380eaf4ca4649838ff387783ebfa8138fa55359b4dfa25f74d1055b12466def43dc0da980952c7e3e0e906ccd0bad08b0a7aa08111f08c7da0ba1 +SHA512 (nbdkit-1.29.16.tar.gz) = 6b59a64a6aee0da208e4784078b4849e04530dbb6d04b3e8494669b77c04c7bc2fc2c46d4aaa8244c002523d5d576d289e9a9fc9dddb4c3ece42a154944f6278 +SHA512 (nbdkit-1.29.16.tar.gz.sig) = a0ced25213af058c39b9ff9ef7cbbc079b66191ea44bbf4f81e8c1927467a00bdc7b9849e5960da7079b2ac43ee55c5f024c08d97bb07d9dec4c4b41b2569f7d From ad997526078959ced38c77b74dbc97b3c7a6a8b0 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 19 Feb 2022 10:57:05 +0000 Subject: [PATCH 077/298] - New nbdkit-blocksize-policy-filter. --- nbdkit.spec | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/nbdkit.spec b/nbdkit.spec index 4e12d2d..882f8de 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -509,6 +509,7 @@ Summary: Basic filters for %{name} License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} Provides: %{name}-blocksize-filter = %{version}-%{release} +Provides: %{name}-blocksize-policy-filter = %{version}-%{release} Provides: %{name}-cache-filter = %{version}-%{release} Provides: %{name}-cacheextents-filter = %{version}-%{release} Provides: %{name}-checkwrite-filter = %{version}-%{release} @@ -550,6 +551,8 @@ complex dependencies are packaged separately. nbdkit-blocksize-filter Adjust block size of requests sent to plugins. +nbdkit-blocksize-policy-filter Set block size constraints and policy. + nbdkit-cache-filter Server-side cache. nbdkit-cacheextents-filter Cache extents. @@ -1054,6 +1057,7 @@ export LIBGUESTFS_TRACE=1 %doc README %license LICENSE %{_libdir}/%{name}/filters/nbdkit-blocksize-filter.so +%{_libdir}/%{name}/filters/nbdkit-blocksize-policy-filter.so %{_libdir}/%{name}/filters/nbdkit-cache-filter.so %{_libdir}/%{name}/filters/nbdkit-cacheextents-filter.so %{_libdir}/%{name}/filters/nbdkit-checkwrite-filter.so @@ -1088,6 +1092,7 @@ export LIBGUESTFS_TRACE=1 %{_libdir}/%{name}/filters/nbdkit-tls-fallback-filter.so %{_libdir}/%{name}/filters/nbdkit-truncate-filter.so %{_mandir}/man1/nbdkit-blocksize-filter.1* +%{_mandir}/man1/nbdkit-blocksize-policy-filter.1* %{_mandir}/man1/nbdkit-cache-filter.1* %{_mandir}/man1/nbdkit-cacheextents-filter.1* %{_mandir}/man1/nbdkit-checkwrite-filter.1* @@ -1196,6 +1201,7 @@ export LIBGUESTFS_TRACE=1 %changelog * Sat Feb 19 2022 Richard W.M. Jones - 1.29.16-1 - New upstream development version 1.29.16 +- New nbdkit-blocksize-policy-filter. * Tue Feb 15 2022 Richard W.M. Jones - 1.29.15-1 - New upstream development version 1.29.15 From 9f65d71f464880640be945da261cd6be6526fa50 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 24 Feb 2022 19:13:13 +0000 Subject: [PATCH 078/298] New stable version 1.30.0 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 882f8de..6b1f947 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -49,10 +49,10 @@ ExclusiveArch: x86_64 %global patches_touch_autotools %{nil} # The source directory. -%global source_directory 1.29-development +%global source_directory 1.30-stable Name: nbdkit -Version: 1.29.16 +Version: 1.30.0 Release: 1%{?dist} Summary: NBD server @@ -1199,6 +1199,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Thu Feb 24 2022 Richard W.M. Jones - 1.30.0-1 +- New stable version 1.30.0 + * Sat Feb 19 2022 Richard W.M. Jones - 1.29.16-1 - New upstream development version 1.29.16 - New nbdkit-blocksize-policy-filter. diff --git a/sources b/sources index a57a1e5..61f30e8 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.29.16.tar.gz) = 6b59a64a6aee0da208e4784078b4849e04530dbb6d04b3e8494669b77c04c7bc2fc2c46d4aaa8244c002523d5d576d289e9a9fc9dddb4c3ece42a154944f6278 -SHA512 (nbdkit-1.29.16.tar.gz.sig) = a0ced25213af058c39b9ff9ef7cbbc079b66191ea44bbf4f81e8c1927467a00bdc7b9849e5960da7079b2ac43ee55c5f024c08d97bb07d9dec4c4b41b2569f7d +SHA512 (nbdkit-1.30.0.tar.gz) = bdd9065c4faca312e103946a84901316443d8186e5b23658b721cd58e8d5e284ab6ef74996165edbf22c19bc1561068ac8c2eb368e21eaa227c43950d692e423 +SHA512 (nbdkit-1.30.0.tar.gz.sig) = bf4caf8eca8997f5033665f208454383967bc3f4f1c51925574698f3828efdf0b9004ac243bccd74a751b4edf48a53e956b1befe4e8bf29aa5a78647d5874e52 From 90d0f9b2f0de0f94fdaba9015370476c27c24a2e Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 28 Feb 2022 13:27:35 +0000 Subject: [PATCH 079/298] Add nbdkit-srpm-macros --- nbdkit-find-provides | 23 ++++++++++++ nbdkit.attr | 3 ++ nbdkit.spec | 88 ++++++++++++++++++-------------------------- 3 files changed, 62 insertions(+), 52 deletions(-) create mode 100755 nbdkit-find-provides create mode 100644 nbdkit.attr diff --git a/nbdkit-find-provides b/nbdkit-find-provides new file mode 100755 index 0000000..7013ccd --- /dev/null +++ b/nbdkit-find-provides @@ -0,0 +1,23 @@ +#!/bin/bash - + +# Generate RPM provides automatically for nbdkit packages and filters. +# Copyright (C) 2009-2022 Red Hat Inc. + +# To test: +# find /usr/lib64/nbdkit/plugins | ./nbdkit-find-provides VER REL +# find /usr/lib64/nbdkit/filters | ./nbdkit-find-provides VER REL + +ver="$1" +rel="$2" + +function process_file +{ + if [[ $1 =~ /plugins/nbdkit-.*-plugin ]] || + [[ $1 =~ /filters/nbdkit-.*-filter ]]; then + echo "Provides:" "$(basename $1 .so)" "=" "$ver-$rel" + fi +} + +while read line; do + process_file "$line" +done diff --git a/nbdkit.attr b/nbdkit.attr new file mode 100644 index 0000000..2757679 --- /dev/null +++ b/nbdkit.attr @@ -0,0 +1,3 @@ +%__nbdkit_provides %{_rpmconfigdir}/nbdkit-find-provides %{version} %{release} +%__nbdkit_path %{_libdir}/nbdkit/(plugins|filters)/nbdkit-.*-(plugin|filter)(\.so)?$ +%__nbdkit_flags exeonly diff --git a/nbdkit.spec b/nbdkit.spec index 6b1f947..fabfef6 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -53,7 +53,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.30.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD @@ -74,6 +74,11 @@ Source2: libguestfs.keyring # Maintainer script which helps with handling patches. Source3: copy-patches.sh +# For automatic RPM Provides generation. +# See: https://rpm-software-management.github.io/rpm/manual/dependency_generators.html +Source4: nbdkit.attr +Source5: nbdkit-find-provides + BuildRequires: make %if 0%{patches_touch_autotools} BuildRequires: autoconf, automake, libtool @@ -144,6 +149,11 @@ BuildRequires: %{_sbindir}/ss BuildRequires: %{_bindir}/stat BuildRequires: %{_bindir}/ssh-keygen +# This package has RPM rules that create the automatic Provides: for +# nbdkit plugins and filters. This means nbdkit build depends on +# itself, but it's a simple noarch package so easy to install. +## XXX TEMP DISABLE XXX BuildRequires: nbdkit-srpm-macros >= 1.30.0 + # nbdkit is a metapackage pulling the server and a useful subset # of the plugins and filters. Requires: nbdkit-server%{?_isa} = %{version}-%{release} @@ -185,7 +195,6 @@ reading the nbdkit(1) and nbdkit-plugin(3) manual pages. %package server Summary: The %{name} server License: BSD -Provides: %{name}-null-plugin = %{version}-%{release} %description server This package contains the %{name} server with only the null plugin @@ -198,21 +207,6 @@ the metapackage "nbdkit". Summary: Basic plugins for %{name} License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} -Provides: %{name}-data-plugin = %{version}-%{release} -Provides: %{name}-eval-plugin = %{version}-%{release} -Provides: %{name}-file-plugin = %{version}-%{release} -Provides: %{name}-floppy-plugin = %{version}-%{release} -Provides: %{name}-full-plugin = %{version}-%{release} -Provides: %{name}-info-plugin = %{version}-%{release} -Provides: %{name}-memory-plugin = %{version}-%{release} -Provides: %{name}-ondemand-plugin = %{version}-%{release} -Provides: %{name}-pattern-plugin = %{version}-%{release} -Provides: %{name}-partitioning-plugin = %{version}-%{release} -Provides: %{name}-random-plugin = %{version}-%{release} -Provides: %{name}-sh-plugin = %{version}-%{release} -Provides: %{name}-sparse-random-plugin = %{version}-%{release} -Provides: %{name}-split-plugin = %{version}-%{release} -Provides: %{name}-zero-plugin = %{version}-%{release} %description basic-plugins @@ -508,41 +502,6 @@ VMware VDDK for accessing VMware disks and servers. Summary: Basic filters for %{name} License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} -Provides: %{name}-blocksize-filter = %{version}-%{release} -Provides: %{name}-blocksize-policy-filter = %{version}-%{release} -Provides: %{name}-cache-filter = %{version}-%{release} -Provides: %{name}-cacheextents-filter = %{version}-%{release} -Provides: %{name}-checkwrite-filter = %{version}-%{release} -Provides: %{name}-cow-filter = %{version}-%{release} -Provides: %{name}-ddrescue-filter = %{version}-%{release} -Provides: %{name}-delay-filter = %{version}-%{release} -Provides: %{name}-error-filter = %{version}-%{release} -Provides: %{name}-exitlast-filter = %{version}-%{release} -Provides: %{name}-exitwhen-filter = %{version}-%{release} -Provides: %{name}-exportname-filter = %{version}-%{release} -Provides: %{name}-extentlist-filter = %{version}-%{release} -Provides: %{name}-fua-filter = %{version}-%{release} -Provides: %{name}-ip-filter = %{version}-%{release} -Provides: %{name}-limit-filter = %{version}-%{release} -Provides: %{name}-log-filter = %{version}-%{release} -Provides: %{name}-multi-conn-filter = %{version}-%{release} -Provides: %{name}-nocache-filter = %{version}-%{release} -Provides: %{name}-noextents-filter = %{version}-%{release} -Provides: %{name}-nofilter-filter = %{version}-%{release} -Provides: %{name}-noparallel-filter = %{version}-%{release} -Provides: %{name}-nozero-filter = %{version}-%{release} -Provides: %{name}-offset-filter = %{version}-%{release} -Provides: %{name}-partition-filter = %{version}-%{release} -Provides: %{name}-pause-filter = %{version}-%{release} -Provides: %{name}-protect-filter = %{version}-%{release} -Provides: %{name}-rate-filter = %{version}-%{release} -Provides: %{name}-readahead-filter = %{version}-%{release} -Provides: %{name}-retry-filter = %{version}-%{release} -Provides: %{name}-retry-request-filter = %{version}-%{release} -Provides: %{name}-stats-filter = %{version}-%{release} -Provides: %{name}-swab-filter = %{version}-%{release} -Provides: %{name}-tls-fallback-filter = %{version}-%{release} -Provides: %{name}-truncate-filter = %{version}-%{release} %description basic-filters This package contains filters for %{name} which only depend on simple @@ -673,8 +632,19 @@ for %{name}. Install this package if you want to develop plugins for %{name}. +%package srpm-macros +Summary: RPM Provides rules for %{name} plugins and filters +License: BSD +BuildArch: noarch + +%description srpm-macros +This package contains RPM rules that create the automatic Provides: +for %{name} plugins and filters found in the plugins directory. + + %package bash-completion Summary: Bash tab-completion for %{name} +License: BSD BuildArch: noarch Requires: bash-completion >= 2.0 Requires: %{name}-server = %{version}-%{release} @@ -757,6 +727,11 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/nbdkit-S3-plugin rm -f $RPM_BUILD_ROOT%{_mandir}/man1/nbdkit-S3-plugin.1* %endif +# Install RPM dependency generator. +mkdir -p $RPM_BUILD_ROOT%{_rpmconfigdir}/fileattrs/ +install -m 0644 %{SOURCE4} $RPM_BUILD_ROOT%{_rpmconfigdir}/fileattrs/ +install -m 0755 %{SOURCE5} $RPM_BUILD_ROOT%{_rpmconfigdir}/ + %check %ifnarch %{broken_test_arches} @@ -1192,6 +1167,12 @@ export LIBGUESTFS_TRACE=1 %{_libdir}/pkgconfig/nbdkit.pc +%files srpm-macros +%license LICENSE +%{_rpmconfigdir}/fileattrs/nbdkit.attr +%{_rpmconfigdir}/nbdkit-find-provides + + %files bash-completion %license LICENSE %dir %{_datadir}/bash-completion/completions @@ -1199,6 +1180,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Mon Feb 28 2022 Richard W.M. Jones - 1.30.0-2 +- Add nbdkit-srpm-macros + * Thu Feb 24 2022 Richard W.M. Jones - 1.30.0-1 - New stable version 1.30.0 From 14ef88f762551cb79c398d3d0e31e156735ffc0b Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 28 Feb 2022 15:08:04 +0000 Subject: [PATCH 080/298] Complete bootstrap of nbdkit-srpm-macros --- nbdkit.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index fabfef6..b8c98ee 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -53,7 +53,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.30.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: NBD server License: BSD @@ -152,7 +152,7 @@ BuildRequires: %{_bindir}/ssh-keygen # This package has RPM rules that create the automatic Provides: for # nbdkit plugins and filters. This means nbdkit build depends on # itself, but it's a simple noarch package so easy to install. -## XXX TEMP DISABLE XXX BuildRequires: nbdkit-srpm-macros >= 1.30.0 +BuildRequires: nbdkit-srpm-macros >= 1.30.0 # nbdkit is a metapackage pulling the server and a useful subset # of the plugins and filters. @@ -1180,7 +1180,7 @@ export LIBGUESTFS_TRACE=1 %changelog -* Mon Feb 28 2022 Richard W.M. Jones - 1.30.0-2 +* Mon Feb 28 2022 Richard W.M. Jones - 1.30.0-3 - Add nbdkit-srpm-macros * Thu Feb 24 2022 Richard W.M. Jones - 1.30.0-1 From d0df9f08fcd3dfc9a823e38094cec3d484ef323c Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 4 Mar 2022 14:44:44 +0000 Subject: [PATCH 081/298] Fix typo in nbdkit-basic-filters description Remove armv7 references --- nbdkit.spec | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index b8c98ee..ff4e210 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -568,7 +568,7 @@ nbdkit-readahead-filter Prefetch data when reading sequentially. nbdkit-retry-filter Reopen connection on error. -nbdkit-retry--request-filter Retry single requests on error. +nbdkit-retry-request-filter Retry single requests on error. nbdkit-stats-filter Display statistics about operations. @@ -771,14 +771,6 @@ skip_test tests/test-memory-allocator-malloc-mlock.sh %endif %endif -# armv7 is very slow and some tests take an especially long time to -# run. This skips some of the slowest tests. Note that -# test-data-format.sh is a slow test, but in the past we have found -# bugs by running it on armv7. -%ifarch %{arm} -skip_test tests/test-partition1.sh tests/test-cow.sh tests/test-cow-block-size.sh tests/test-cow-extents2.sh -%endif - # Make sure we can see the debug messages (RHBZ#1230160). export LIBGUESTFS_DEBUG=1 export LIBGUESTFS_TRACE=1 From 749ee3a67e719fb404aca0de1da805f554c46006 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 15 Mar 2022 17:02:48 +0000 Subject: [PATCH 082/298] New stable version 1.30.1 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index ff4e210..8d9dbdc 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,8 +52,8 @@ ExclusiveArch: x86_64 %global source_directory 1.30-stable Name: nbdkit -Version: 1.30.0 -Release: 3%{?dist} +Version: 1.30.1 +Release: 1%{?dist} Summary: NBD server License: BSD @@ -1172,6 +1172,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Mar 15 2022 Richard W.M. Jones - 1.30.1-1 +- New stable version 1.30.1 + * Mon Feb 28 2022 Richard W.M. Jones - 1.30.0-3 - Add nbdkit-srpm-macros diff --git a/sources b/sources index 61f30e8..9fccb5b 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.30.0.tar.gz) = bdd9065c4faca312e103946a84901316443d8186e5b23658b721cd58e8d5e284ab6ef74996165edbf22c19bc1561068ac8c2eb368e21eaa227c43950d692e423 -SHA512 (nbdkit-1.30.0.tar.gz.sig) = bf4caf8eca8997f5033665f208454383967bc3f4f1c51925574698f3828efdf0b9004ac243bccd74a751b4edf48a53e956b1befe4e8bf29aa5a78647d5874e52 +SHA512 (nbdkit-1.30.1.tar.gz) = 433016b43e192fb07697af0b357aa817b46af811494762a8d38a5d7d8edfeb155451b7e1a35062dda10cc2bf9b19865a3faa5b781bd8cf1a121e7088582b586d +SHA512 (nbdkit-1.30.1.tar.gz.sig) = 7148c52779f345bfa515f1dfb38ed8e6efdc8b89e8d7a51b966c3b6fb5ffe48f74d114038ef3215d5ca7c3a206c11cc3946ebc90971647a52e71fdfaed902ee8 From 29300b870b25d0876fb4932ec4fd692451c11b6b Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 2 Apr 2022 16:16:34 +0100 Subject: [PATCH 083/298] New stable version 1.30.2 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 8d9dbdc..35f169a 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.30-stable Name: nbdkit -Version: 1.30.1 +Version: 1.30.2 Release: 1%{?dist} Summary: NBD server @@ -1172,6 +1172,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Sat Apr 02 2022 Richard W.M. Jones - 1.30.2-1 +- New stable version 1.30.2 + * Tue Mar 15 2022 Richard W.M. Jones - 1.30.1-1 - New stable version 1.30.1 diff --git a/sources b/sources index 9fccb5b..4009f4c 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.30.1.tar.gz) = 433016b43e192fb07697af0b357aa817b46af811494762a8d38a5d7d8edfeb155451b7e1a35062dda10cc2bf9b19865a3faa5b781bd8cf1a121e7088582b586d -SHA512 (nbdkit-1.30.1.tar.gz.sig) = 7148c52779f345bfa515f1dfb38ed8e6efdc8b89e8d7a51b966c3b6fb5ffe48f74d114038ef3215d5ca7c3a206c11cc3946ebc90971647a52e71fdfaed902ee8 +SHA512 (nbdkit-1.30.2.tar.gz) = 84da92005bbb59a860c9ba5a88082d859c9dd4f9db5c81d8760e9d6925e10d80d27de78be9391113bf715d16de7726594b5b803512cd8b59ce14ec135fc4b09d +SHA512 (nbdkit-1.30.2.tar.gz.sig) = c64ccdbc25f56626360aa812af330e33f26e6954415b93976f5a3d58808affdc94efa6e309066b23dbfd354192c4693a408b79aa583a6f5e84ab1c2ef406179e From 55a4710f4f68f7c767f70313ca475f014cf7fa10 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 16 Apr 2022 13:05:44 +0100 Subject: [PATCH 084/298] New stable version 1.30.3 - Remove dependency on ssh-keygen which was never really used. --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 35f169a..f6c3cb9 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.30-stable Name: nbdkit -Version: 1.30.2 +Version: 1.30.3 Release: 1%{?dist} Summary: NBD server @@ -147,7 +147,6 @@ BuildRequires: %{_bindir}/socat %endif BuildRequires: %{_sbindir}/ss BuildRequires: %{_bindir}/stat -BuildRequires: %{_bindir}/ssh-keygen # This package has RPM rules that create the automatic Provides: for # nbdkit plugins and filters. This means nbdkit build depends on @@ -1172,6 +1171,10 @@ export LIBGUESTFS_TRACE=1 %changelog +* Sat Apr 16 2022 Richard W.M. Jones - 1.30.3-1 +- New stable version 1.30.3 +- Remove dependency on ssh-keygen which was never really used. + * Sat Apr 02 2022 Richard W.M. Jones - 1.30.2-1 - New stable version 1.30.2 diff --git a/sources b/sources index 4009f4c..8fb7c98 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.30.2.tar.gz) = 84da92005bbb59a860c9ba5a88082d859c9dd4f9db5c81d8760e9d6925e10d80d27de78be9391113bf715d16de7726594b5b803512cd8b59ce14ec135fc4b09d -SHA512 (nbdkit-1.30.2.tar.gz.sig) = c64ccdbc25f56626360aa812af330e33f26e6954415b93976f5a3d58808affdc94efa6e309066b23dbfd354192c4693a408b79aa583a6f5e84ab1c2ef406179e +SHA512 (nbdkit-1.30.3.tar.gz) = 536dcae12370896c90ba662ef00296c30e749bbc20470b75c9632274b2d338637f2be175075040e0250bb755e09dfcc4d30cbc03b154e7f625bb8f1d566858ef +SHA512 (nbdkit-1.30.3.tar.gz.sig) = 42472296cd5ddabaa0a6ba963e591160ee91c7988e060a0136f25b5230c16e1f205220fc5128a8ed77bc883a48250905886c2bb13b485ed2791eb3d91252b46e From 006954f935f06ba3de3535d3d28154bfc163662c Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 20 Apr 2022 13:47:25 +0100 Subject: [PATCH 085/298] New upstream development version 1.31.1 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index f6c3cb9..2b93050 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -49,10 +49,10 @@ ExclusiveArch: x86_64 %global patches_touch_autotools %{nil} # The source directory. -%global source_directory 1.30-stable +%global source_directory 1.31-development Name: nbdkit -Version: 1.30.3 +Version: 1.31.1 Release: 1%{?dist} Summary: NBD server @@ -1171,6 +1171,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Wed Apr 20 2022 Richard W.M. Jones - 1.31.1-1 +- New upstream development version 1.31.1 + * Sat Apr 16 2022 Richard W.M. Jones - 1.30.3-1 - New stable version 1.30.3 - Remove dependency on ssh-keygen which was never really used. diff --git a/sources b/sources index 8fb7c98..a19abc1 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.30.3.tar.gz) = 536dcae12370896c90ba662ef00296c30e749bbc20470b75c9632274b2d338637f2be175075040e0250bb755e09dfcc4d30cbc03b154e7f625bb8f1d566858ef -SHA512 (nbdkit-1.30.3.tar.gz.sig) = 42472296cd5ddabaa0a6ba963e591160ee91c7988e060a0136f25b5230c16e1f205220fc5128a8ed77bc883a48250905886c2bb13b485ed2791eb3d91252b46e +SHA512 (nbdkit-1.31.1.tar.gz) = 3ff696d99cd64a7fa5416408d02a609c6e16fa8d1529a39089ef6d2fd84cfcf8d91bf38b7ff52e1da01d654df603065153ba0e7716abd1573ecab3d26f878501 +SHA512 (nbdkit-1.31.1.tar.gz.sig) = 474b3c6460b3fe6d3959f0a9c9d41c50b0dbd715c2453ae5ddaaa2dfd4d9823c39a50931f2dbf29d4925496eb38e30c218870e014fded39ede647a61540f2458 From 40fa0c71e274a02d09ee833c6347c5b65f594550 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 26 Apr 2022 09:10:55 +0100 Subject: [PATCH 086/298] New upstream development version 1.31.2 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 2b93050..1e45a6b 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.31-development Name: nbdkit -Version: 1.31.1 +Version: 1.31.2 Release: 1%{?dist} Summary: NBD server @@ -1171,6 +1171,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Apr 26 2022 Richard W.M. Jones - 1.31.2-1 +- New upstream development version 1.31.2 + * Wed Apr 20 2022 Richard W.M. Jones - 1.31.1-1 - New upstream development version 1.31.1 diff --git a/sources b/sources index a19abc1..7647015 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.31.1.tar.gz) = 3ff696d99cd64a7fa5416408d02a609c6e16fa8d1529a39089ef6d2fd84cfcf8d91bf38b7ff52e1da01d654df603065153ba0e7716abd1573ecab3d26f878501 -SHA512 (nbdkit-1.31.1.tar.gz.sig) = 474b3c6460b3fe6d3959f0a9c9d41c50b0dbd715c2453ae5ddaaa2dfd4d9823c39a50931f2dbf29d4925496eb38e30c218870e014fded39ede647a61540f2458 +SHA512 (nbdkit-1.31.2.tar.gz) = 5a413afd72e4287d296214ceca2bb9001398230074b7a6630b68d867b2e374a309555e9062ee25bad91a443c31c12ad31e17f9a0a2d121566eb2e89b19de10ed +SHA512 (nbdkit-1.31.2.tar.gz.sig) = 07f728714258ae6a595a4269be4837778389f81ed81946f0104f51fb4ca682dff8df0f4b5379c49c2cb246a8c06645fba1854f1e3b41195d697315b76401b5d1 From bbbf0b64da1d12895d11b5de002cbdcc4cdc7916 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 7 May 2022 13:17:12 +0100 Subject: [PATCH 087/298] New upstream development version 1.31.3 Stats filter is now written in C++, move to a new subpackage. --- nbdkit.spec | 26 +++++++++++++++++++++----- sources | 4 ++-- 2 files changed, 23 insertions(+), 7 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 1e45a6b..b4c301a 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.31-development Name: nbdkit -Version: 1.31.2 +Version: 1.31.3 Release: 1%{?dist} Summary: NBD server @@ -569,8 +569,6 @@ nbdkit-retry-filter Reopen connection on error. nbdkit-retry-request-filter Retry single requests on error. -nbdkit-stats-filter Display statistics about operations. - nbdkit-swab-filter Filter for swapping byte order. nbdkit-tls-fallback-filter TLS protection filter. @@ -599,6 +597,15 @@ Requires: %{name}-server%{?_isa} = %{version}-%{release} This package is a gzip filter for %{name}. +%package stats-filter +Summary: Statistics filter for %{name} +License: BSD +Requires: %{name}-server%{?_isa} = %{version}-%{release} + +%description stats-filter +Display statistics about operations. + + %package tar-filter Summary: Tar archive filter for %{name} License: BSD @@ -1053,7 +1060,6 @@ export LIBGUESTFS_TRACE=1 %{_libdir}/%{name}/filters/nbdkit-readahead-filter.so %{_libdir}/%{name}/filters/nbdkit-retry-filter.so %{_libdir}/%{name}/filters/nbdkit-retry-request-filter.so -%{_libdir}/%{name}/filters/nbdkit-stats-filter.so %{_libdir}/%{name}/filters/nbdkit-swab-filter.so %{_libdir}/%{name}/filters/nbdkit-tls-fallback-filter.so %{_libdir}/%{name}/filters/nbdkit-truncate-filter.so @@ -1088,7 +1094,6 @@ export LIBGUESTFS_TRACE=1 %{_mandir}/man1/nbdkit-readahead-filter.1* %{_mandir}/man1/nbdkit-retry-filter.1* %{_mandir}/man1/nbdkit-retry-request-filter.1* -%{_mandir}/man1/nbdkit-stats-filter.1* %{_mandir}/man1/nbdkit-swab-filter.1* %{_mandir}/man1/nbdkit-tls-fallback-filter.1* %{_mandir}/man1/nbdkit-truncate-filter.1* @@ -1110,6 +1115,13 @@ export LIBGUESTFS_TRACE=1 %{_mandir}/man1/nbdkit-gzip-filter.1* +%files stats-filter +%doc README +%license LICENSE +%{_libdir}/%{name}/filters/nbdkit-stats-filter.so +%{_mandir}/man1/nbdkit-stats-filter.1* + + %files tar-filter %doc README %license LICENSE @@ -1171,6 +1183,10 @@ export LIBGUESTFS_TRACE=1 %changelog +* Sat May 07 2022 Richard W.M. Jones - 1.31.3-1 +- New upstream development version 1.31.3 +- Stats filter is now written in C++, move to a new subpackage. + * Tue Apr 26 2022 Richard W.M. Jones - 1.31.2-1 - New upstream development version 1.31.2 diff --git a/sources b/sources index 7647015..cadef7b 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.31.2.tar.gz) = 5a413afd72e4287d296214ceca2bb9001398230074b7a6630b68d867b2e374a309555e9062ee25bad91a443c31c12ad31e17f9a0a2d121566eb2e89b19de10ed -SHA512 (nbdkit-1.31.2.tar.gz.sig) = 07f728714258ae6a595a4269be4837778389f81ed81946f0104f51fb4ca682dff8df0f4b5379c49c2cb246a8c06645fba1854f1e3b41195d697315b76401b5d1 +SHA512 (nbdkit-1.31.3.tar.gz) = b657c596dca90a4a55d36debe8dfc1d694043d85baf9af83e88732badd46d62f9c3679f966b8ff21f648522bdc7164608f1c90b03ce009318bcd6f259a5f5b7e +SHA512 (nbdkit-1.31.3.tar.gz.sig) = 7169fd0c632678587eeb5c6c26e7c690c74692b16694c08e489418c1afabc79d87c9b504c816733e42ce19f5082b4818298f75927efca79e20ddeb4f352d4a22 From 9588e5cbc7997eed12d57c8282bd2e463ee38820 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 9 May 2022 15:36:00 +0100 Subject: [PATCH 088/298] New upstream development version 1.31.4 Add new luks filter. --- nbdkit.spec | 10 +++++++++- sources | 4 ++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index b4c301a..a0133c5 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.31-development Name: nbdkit -Version: 1.31.3 +Version: 1.31.4 Release: 1%{?dist} Summary: NBD server @@ -541,6 +541,8 @@ nbdkit-limit-filter Limit nr clients that can connect concurrently. nbdkit-log-filter Log all transactions to a file. +nbdkit-luks-filter Read and write LUKS-encrypted disks. + nbdkit-multi-conn-filter Enable, emulate or disable multi-conn. nbdkit-nocache-filter Disable cache requests in the underlying plugin. @@ -1046,6 +1048,7 @@ export LIBGUESTFS_TRACE=1 %{_libdir}/%{name}/filters/nbdkit-ip-filter.so %{_libdir}/%{name}/filters/nbdkit-limit-filter.so %{_libdir}/%{name}/filters/nbdkit-log-filter.so +%{_libdir}/%{name}/filters/nbdkit-luks-filter.so %{_libdir}/%{name}/filters/nbdkit-multi-conn-filter.so %{_libdir}/%{name}/filters/nbdkit-nocache-filter.so %{_libdir}/%{name}/filters/nbdkit-noextents-filter.so @@ -1080,6 +1083,7 @@ export LIBGUESTFS_TRACE=1 %{_mandir}/man1/nbdkit-ip-filter.1* %{_mandir}/man1/nbdkit-limit-filter.1* %{_mandir}/man1/nbdkit-log-filter.1* +%{_mandir}/man1/nbdkit-luks-filter.1* %{_mandir}/man1/nbdkit-multi-conn-filter.1* %{_mandir}/man1/nbdkit-nocache-filter.1* %{_mandir}/man1/nbdkit-noextents-filter.1* @@ -1183,6 +1187,10 @@ export LIBGUESTFS_TRACE=1 %changelog +* Mon May 09 2022 Richard W.M. Jones - 1.31.4-1 +- New upstream development version 1.31.4 +- Add new luks filter. + * Sat May 07 2022 Richard W.M. Jones - 1.31.3-1 - New upstream development version 1.31.3 - Stats filter is now written in C++, move to a new subpackage. diff --git a/sources b/sources index cadef7b..0a7e46a 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.31.3.tar.gz) = b657c596dca90a4a55d36debe8dfc1d694043d85baf9af83e88732badd46d62f9c3679f966b8ff21f648522bdc7164608f1c90b03ce009318bcd6f259a5f5b7e -SHA512 (nbdkit-1.31.3.tar.gz.sig) = 7169fd0c632678587eeb5c6c26e7c690c74692b16694c08e489418c1afabc79d87c9b504c816733e42ce19f5082b4818298f75927efca79e20ddeb4f352d4a22 +SHA512 (nbdkit-1.31.4.tar.gz) = 64ccc1e2aa72474f4c60c071aac14586a46b4077dda1f504da0ab10187c41b228fcb02124d1c35d7eb8d87cef882542e779a9efd43e4826d18f9addb0ce71642 +SHA512 (nbdkit-1.31.4.tar.gz.sig) = 68948dcd1cdb623098401d9a00eaf1f6434b2d474880717fa33306adb18bce76698bb21846d7f058def163832527aaf76ad9af6bdb76926e9b8ea1706a0a2e6c From a05d25e870312f232cb98aaa38eba80fedb52053 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 12 May 2022 15:37:37 +0100 Subject: [PATCH 089/298] New upstream development version 1.31.5 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index a0133c5..c4911bd 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.31-development Name: nbdkit -Version: 1.31.4 +Version: 1.31.5 Release: 1%{?dist} Summary: NBD server @@ -1187,6 +1187,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Mon May 09 2022 Richard W.M. Jones - 1.31.5-1 +- New upstream development version 1.31.5 + * Mon May 09 2022 Richard W.M. Jones - 1.31.4-1 - New upstream development version 1.31.4 - Add new luks filter. diff --git a/sources b/sources index 0a7e46a..09d14d0 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.31.4.tar.gz) = 64ccc1e2aa72474f4c60c071aac14586a46b4077dda1f504da0ab10187c41b228fcb02124d1c35d7eb8d87cef882542e779a9efd43e4826d18f9addb0ce71642 -SHA512 (nbdkit-1.31.4.tar.gz.sig) = 68948dcd1cdb623098401d9a00eaf1f6434b2d474880717fa33306adb18bce76698bb21846d7f058def163832527aaf76ad9af6bdb76926e9b8ea1706a0a2e6c +SHA512 (nbdkit-1.31.5.tar.gz) = 61a10ea2db4e1236b6fddb88bace5ea27cb43e61dd8c61bf1b7bdc1d4870273839f916364291beef6cfcd9b8e6f1420c576ec88eda8fc86ccab9e46cba9e5082 +SHA512 (nbdkit-1.31.5.tar.gz.sig) = d157c19e7bd70eeb94bad97031c9c0c408e69d7042cd4dde88bbffca7243c3bdf82c910aaec93c3d46db733c931d5a198aa387f7e4e80596c8a79d33690eeede From dce8a53a1e149a6b5be6d15a487a936d68315c29 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 14 May 2022 19:15:08 +0100 Subject: [PATCH 090/298] New upstream development version 1.31.6 New filter: scan --- nbdkit.spec | 8 ++++++++ sources | 4 ++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index c4911bd..697fa33 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -571,6 +571,8 @@ nbdkit-retry-filter Reopen connection on error. nbdkit-retry-request-filter Retry single requests on error. +nbdkit-scan-filter Prefetch data ahead of sequential reads. + nbdkit-swab-filter Filter for swapping byte order. nbdkit-tls-fallback-filter TLS protection filter. @@ -1063,6 +1065,7 @@ export LIBGUESTFS_TRACE=1 %{_libdir}/%{name}/filters/nbdkit-readahead-filter.so %{_libdir}/%{name}/filters/nbdkit-retry-filter.so %{_libdir}/%{name}/filters/nbdkit-retry-request-filter.so +%{_libdir}/%{name}/filters/nbdkit-scan-filter.so %{_libdir}/%{name}/filters/nbdkit-swab-filter.so %{_libdir}/%{name}/filters/nbdkit-tls-fallback-filter.so %{_libdir}/%{name}/filters/nbdkit-truncate-filter.so @@ -1098,6 +1101,7 @@ export LIBGUESTFS_TRACE=1 %{_mandir}/man1/nbdkit-readahead-filter.1* %{_mandir}/man1/nbdkit-retry-filter.1* %{_mandir}/man1/nbdkit-retry-request-filter.1* +%{_mandir}/man1/nbdkit-scan-filter.1* %{_mandir}/man1/nbdkit-swab-filter.1* %{_mandir}/man1/nbdkit-tls-fallback-filter.1* %{_mandir}/man1/nbdkit-truncate-filter.1* @@ -1187,6 +1191,10 @@ export LIBGUESTFS_TRACE=1 %changelog +* Sat May 14 2022 Richard W.M. Jones - 1.31.6-1 +- New upstream development version 1.31.6 +- New filter: scan + * Mon May 09 2022 Richard W.M. Jones - 1.31.5-1 - New upstream development version 1.31.5 diff --git a/sources b/sources index 09d14d0..958c820 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.31.5.tar.gz) = 61a10ea2db4e1236b6fddb88bace5ea27cb43e61dd8c61bf1b7bdc1d4870273839f916364291beef6cfcd9b8e6f1420c576ec88eda8fc86ccab9e46cba9e5082 -SHA512 (nbdkit-1.31.5.tar.gz.sig) = d157c19e7bd70eeb94bad97031c9c0c408e69d7042cd4dde88bbffca7243c3bdf82c910aaec93c3d46db733c931d5a198aa387f7e4e80596c8a79d33690eeede +SHA512 (nbdkit-1.31.6.tar.gz) = 77967ca9a72655c0b0d31095becd48a0840e1e32cc19a62fb86cb6525e9f4a4c0f4b56021b2a278a235501d463b1f0f49d1be2a9bb5668ad942732b687d7d328 +SHA512 (nbdkit-1.31.6.tar.gz.sig) = 38598e17316b153f9317293b2475c4295142f3b765149f3f5918a7b23519c913d80aec7158c631a2c98a8e660318e2a9ea79be41bcb32ea9fbaf229f5ae67407 From 3b857593d6c2f0a21ab47570ee15f686813cf8e2 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 14 May 2022 19:17:16 +0100 Subject: [PATCH 091/298] Forgot to update Version in previous commit --- nbdkit.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 697fa33..c49d7d4 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.31-development Name: nbdkit -Version: 1.31.5 +Version: 1.31.6 Release: 1%{?dist} Summary: NBD server From 0eb9381a2ad92daffc76ed1654172da4d5d176dd Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 19 May 2022 15:56:33 +0100 Subject: [PATCH 092/298] New upstream development version 1.31.7 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index c49d7d4..1236a49 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.31-development Name: nbdkit -Version: 1.31.6 +Version: 1.31.7 Release: 1%{?dist} Summary: NBD server @@ -1191,6 +1191,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Thu May 19 2022 Richard W.M. Jones - 1.31.7-1 +- New upstream development version 1.31.7 + * Sat May 14 2022 Richard W.M. Jones - 1.31.6-1 - New upstream development version 1.31.6 - New filter: scan diff --git a/sources b/sources index 958c820..69e6498 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.31.6.tar.gz) = 77967ca9a72655c0b0d31095becd48a0840e1e32cc19a62fb86cb6525e9f4a4c0f4b56021b2a278a235501d463b1f0f49d1be2a9bb5668ad942732b687d7d328 -SHA512 (nbdkit-1.31.6.tar.gz.sig) = 38598e17316b153f9317293b2475c4295142f3b765149f3f5918a7b23519c913d80aec7158c631a2c98a8e660318e2a9ea79be41bcb32ea9fbaf229f5ae67407 +SHA512 (nbdkit-1.31.7.tar.gz) = 53337b2ca393819e3ff1c7b63b2cc2dac75e5ba7678a08ff9c73c0060c60a967984f6f9e80c14ea16a3ae4f3815c12dd9f0b81ea0ef57c196a72642b3d13cb16 +SHA512 (nbdkit-1.31.7.tar.gz.sig) = 4c3ee476126e80dfec9583bb22d82fc8121111600d97699b7071d6d5b349d69b087a8c1d0125381648f49e4ba35d7f1a92af17063ef0fb4160f698e10e036bd0 From 12883bf410c457ec79f79818bdd6434ac7bfbfa8 Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Wed, 1 Jun 2022 11:55:30 +0200 Subject: [PATCH 093/298] Perl 5.36 rebuild --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 1236a49..da0fa4c 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -53,7 +53,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.31.7 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD @@ -1191,6 +1191,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Wed Jun 01 2022 Jitka Plesnikova - 1.31.7-2 +- Perl 5.36 rebuild + * Thu May 19 2022 Richard W.M. Jones - 1.31.7-1 - New upstream development version 1.31.7 From eccd2d265267be22de10d93597ecf61b43a0d7ff Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 9 Jun 2022 21:14:39 +0100 Subject: [PATCH 094/298] New upstream development version 1.31.8 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index da0fa4c..7a99fee 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,8 +52,8 @@ ExclusiveArch: x86_64 %global source_directory 1.31-development Name: nbdkit -Version: 1.31.7 -Release: 2%{?dist} +Version: 1.31.8 +Release: 1%{?dist} Summary: NBD server License: BSD @@ -1191,6 +1191,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Thu Jun 09 2022 Richard W.M. Jones - 1.31.8-1 +- New upstream development version 1.31.8 + * Wed Jun 01 2022 Jitka Plesnikova - 1.31.7-2 - Perl 5.36 rebuild diff --git a/sources b/sources index 69e6498..791f41b 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.31.7.tar.gz) = 53337b2ca393819e3ff1c7b63b2cc2dac75e5ba7678a08ff9c73c0060c60a967984f6f9e80c14ea16a3ae4f3815c12dd9f0b81ea0ef57c196a72642b3d13cb16 -SHA512 (nbdkit-1.31.7.tar.gz.sig) = 4c3ee476126e80dfec9583bb22d82fc8121111600d97699b7071d6d5b349d69b087a8c1d0125381648f49e4ba35d7f1a92af17063ef0fb4160f698e10e036bd0 +SHA512 (nbdkit-1.31.8.tar.gz) = 346bd534bf7482440755be191480d4eef8b6ebf05c09236b5bebbf147a9f1e6efd1e4d5306c26a8f2a41857608016346fc4df8eb71fe13ed70c104fd06b0785e +SHA512 (nbdkit-1.31.8.tar.gz.sig) = ad3a2260c61944a38b21318dac5dc3b576d2404aad212314e4ba7f36f9caf82a5ca18f687bd6eb5f3cfd19b61f3add9616eae68438271839d25fe496d3c1d2ad From 70e5aab9acf4549e81b582995b1d35ecce79a005 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 9 Jun 2022 21:23:06 +0100 Subject: [PATCH 095/298] Rename README file. --- nbdkit.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 7a99fee..c883d8a 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -802,7 +802,7 @@ export LIBGUESTFS_TRACE=1 %files server -%doc README +%doc README.md %license LICENSE %{_sbindir}/nbdkit %dir %{_libdir}/%{name} @@ -1193,6 +1193,7 @@ export LIBGUESTFS_TRACE=1 %changelog * Thu Jun 09 2022 Richard W.M. Jones - 1.31.8-1 - New upstream development version 1.31.8 +- Rename README file. * Wed Jun 01 2022 Jitka Plesnikova - 1.31.7-2 - Perl 5.36 rebuild From 70fc70e259eb45b73d56e86e3034dfd094c2cf6b Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 9 Jun 2022 21:23:06 +0100 Subject: [PATCH 096/298] Rename README file (fixed). --- nbdkit.spec | 56 ++++++++++++++++++++++++++--------------------------- 1 file changed, 28 insertions(+), 28 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index c883d8a..64e309f 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -822,7 +822,7 @@ export LIBGUESTFS_TRACE=1 %files basic-plugins -%doc README +%doc README.md %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-data-plugin.so %{_libdir}/%{name}/plugins/nbdkit-eval-plugin.so @@ -857,7 +857,7 @@ export LIBGUESTFS_TRACE=1 %files example-plugins -%doc README +%doc README.md %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-example*-plugin.so %if !0%{?rhel} @@ -868,7 +868,7 @@ export LIBGUESTFS_TRACE=1 %if !0%{?rhel} %files cc-plugin -%doc README +%doc README.md %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-cc-plugin.so %{_mandir}/man3/nbdkit-cc-plugin.3* @@ -877,7 +877,7 @@ export LIBGUESTFS_TRACE=1 %if !0%{?rhel} %files cdi-plugin -%doc README +%doc README.md %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-cdi-plugin.so %{_mandir}/man1/nbdkit-cdi-plugin.1* @@ -885,7 +885,7 @@ export LIBGUESTFS_TRACE=1 %files curl-plugin -%doc README +%doc README.md %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-curl-plugin.so %{_mandir}/man1/nbdkit-curl-plugin.1* @@ -893,7 +893,7 @@ export LIBGUESTFS_TRACE=1 %if !0%{?rhel} && 0%{?have_libguestfs} %files guestfs-plugin -%doc README +%doc README.md %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-guestfs-plugin.so %{_mandir}/man1/nbdkit-guestfs-plugin.1* @@ -902,7 +902,7 @@ export LIBGUESTFS_TRACE=1 %if !0%{?rhel} %files iso-plugin -%doc README +%doc README.md %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-iso-plugin.so %{_mandir}/man1/nbdkit-iso-plugin.1* @@ -911,7 +911,7 @@ export LIBGUESTFS_TRACE=1 %if !0%{?rhel} %files libvirt-plugin -%doc README +%doc README.md %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-libvirt-plugin.so %{_mandir}/man1/nbdkit-libvirt-plugin.1* @@ -919,7 +919,7 @@ export LIBGUESTFS_TRACE=1 %files linuxdisk-plugin -%doc README +%doc README.md %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-linuxdisk-plugin.so %{_mandir}/man1/nbdkit-linuxdisk-plugin.1* @@ -927,7 +927,7 @@ export LIBGUESTFS_TRACE=1 %if !0%{?rhel} %files lua-plugin -%doc README +%doc README.md %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-lua-plugin.so %{_mandir}/man3/nbdkit-lua-plugin.3* @@ -935,7 +935,7 @@ export LIBGUESTFS_TRACE=1 %files nbd-plugin -%doc README +%doc README.md %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-nbd-plugin.so %{_mandir}/man1/nbdkit-nbd-plugin.1* @@ -943,7 +943,7 @@ export LIBGUESTFS_TRACE=1 %if !0%{?rhel} && 0%{?have_ocaml} %files ocaml-plugin -%doc README +%doc README.md %license LICENSE %{_libdir}/libnbdkitocaml.so.* @@ -957,7 +957,7 @@ export LIBGUESTFS_TRACE=1 %if !0%{?rhel} %files perl-plugin -%doc README +%doc README.md %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-perl-plugin.so %{_mandir}/man3/nbdkit-perl-plugin.3* @@ -965,7 +965,7 @@ export LIBGUESTFS_TRACE=1 %files python-plugin -%doc README +%doc README.md %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-python-plugin.so %{_mandir}/man3/nbdkit-python-plugin.3* @@ -973,7 +973,7 @@ export LIBGUESTFS_TRACE=1 %if !0%{?rhel} %files ruby-plugin -%doc README +%doc README.md %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-ruby-plugin.so %{_mandir}/man3/nbdkit-ruby-plugin.3* @@ -982,7 +982,7 @@ export LIBGUESTFS_TRACE=1 %if !0%{?rhel} %files S3-plugin -%doc README +%doc README.md %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-S3-plugin %{_mandir}/man1/nbdkit-S3-plugin.1* @@ -990,7 +990,7 @@ export LIBGUESTFS_TRACE=1 %files ssh-plugin -%doc README +%doc README.md %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-ssh-plugin.so %{_mandir}/man1/nbdkit-ssh-plugin.1* @@ -998,7 +998,7 @@ export LIBGUESTFS_TRACE=1 %if !0%{?rhel} %files tcl-plugin -%doc README +%doc README.md %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-tcl-plugin.so %{_mandir}/man3/nbdkit-tcl-plugin.3* @@ -1006,7 +1006,7 @@ export LIBGUESTFS_TRACE=1 %files tmpdisk-plugin -%doc README +%doc README.md %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-tmpdisk-plugin.so %{_mandir}/man1/nbdkit-tmpdisk-plugin.1* @@ -1014,7 +1014,7 @@ export LIBGUESTFS_TRACE=1 %if !0%{?rhel} %files torrent-plugin -%doc README +%doc README.md %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-torrent-plugin.so %{_mandir}/man1/nbdkit-torrent-plugin.1* @@ -1023,7 +1023,7 @@ export LIBGUESTFS_TRACE=1 %ifarch x86_64 %files vddk-plugin -%doc README plugins/vddk/README.VDDK +%doc README.md plugins/vddk/README.VDDK %license LICENSE %{_libdir}/%{name}/plugins/nbdkit-vddk-plugin.so %{_mandir}/man1/nbdkit-vddk-plugin.1* @@ -1031,7 +1031,7 @@ export LIBGUESTFS_TRACE=1 %files basic-filters -%doc README +%doc README.md %license LICENSE %{_libdir}/%{name}/filters/nbdkit-blocksize-filter.so %{_libdir}/%{name}/filters/nbdkit-blocksize-policy-filter.so @@ -1109,7 +1109,7 @@ export LIBGUESTFS_TRACE=1 %if !0%{?rhel} %files ext2-filter -%doc README +%doc README.md %license LICENSE %{_libdir}/%{name}/filters/nbdkit-ext2-filter.so %{_mandir}/man1/nbdkit-ext2-filter.1* @@ -1117,35 +1117,35 @@ export LIBGUESTFS_TRACE=1 %files gzip-filter -%doc README +%doc README.md %license LICENSE %{_libdir}/%{name}/filters/nbdkit-gzip-filter.so %{_mandir}/man1/nbdkit-gzip-filter.1* %files stats-filter -%doc README +%doc README.md %license LICENSE %{_libdir}/%{name}/filters/nbdkit-stats-filter.so %{_mandir}/man1/nbdkit-stats-filter.1* %files tar-filter -%doc README +%doc README.md %license LICENSE %{_libdir}/%{name}/filters/nbdkit-tar-filter.so %{_mandir}/man1/nbdkit-tar-filter.1* %files xz-filter -%doc README +%doc README.md %license LICENSE %{_libdir}/%{name}/filters/nbdkit-xz-filter.so %{_mandir}/man1/nbdkit-xz-filter.1* %files devel -%doc BENCHMARKING OTHER_PLUGINS README SECURITY TODO +%doc BENCHMARKING OTHER_PLUGINS README.md SECURITY TODO %license LICENSE # Include the source of the example plugins in the documentation. %doc plugins/example*/*.c From c3073ea624092421279f972888bcce215ebcc23b Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 13 Jun 2022 13:08:05 +0100 Subject: [PATCH 097/298] New upstream development version 1.31.9 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 64e309f..73d91ca 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.31-development Name: nbdkit -Version: 1.31.8 +Version: 1.31.9 Release: 1%{?dist} Summary: NBD server @@ -1191,6 +1191,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Mon Jun 13 2022 Richard W.M. Jones - 1.31.9-1 +- New upstream development version 1.31.9 + * Thu Jun 09 2022 Richard W.M. Jones - 1.31.8-1 - New upstream development version 1.31.8 - Rename README file. diff --git a/sources b/sources index 791f41b..c47c983 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.31.8.tar.gz) = 346bd534bf7482440755be191480d4eef8b6ebf05c09236b5bebbf147a9f1e6efd1e4d5306c26a8f2a41857608016346fc4df8eb71fe13ed70c104fd06b0785e -SHA512 (nbdkit-1.31.8.tar.gz.sig) = ad3a2260c61944a38b21318dac5dc3b576d2404aad212314e4ba7f36f9caf82a5ca18f687bd6eb5f3cfd19b61f3add9616eae68438271839d25fe496d3c1d2ad +SHA512 (nbdkit-1.31.9.tar.gz) = b71231d6ed3816a8305f68550726de3442aa39d569e857600e8a1e4631adef3af67b72b122e21d848432d1b218f63854415a246dde262f9572aa4da6be216dc2 +SHA512 (nbdkit-1.31.9.tar.gz.sig) = 1b8fb270a21769b44162f6d7184ff342143c3cbbfe0dc36b41480d97723c386fe2e66df814ee0aa0496f8f3d613ac15ceedf114698a6f0ff39c022cf7875f1d5 From 2bdc26f44a8ff5325d4c5365d843dcf6b27701b3 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Mon, 13 Jun 2022 19:53:04 +0200 Subject: [PATCH 098/298] Rebuilt for Python 3.11 --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 73d91ca..40f6fd9 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -53,7 +53,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.31.9 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD @@ -1191,6 +1191,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Mon Jun 13 2022 Python Maint - 1.31.9-2 +- Rebuilt for Python 3.11 + * Mon Jun 13 2022 Richard W.M. Jones - 1.31.9-1 - New upstream development version 1.31.9 From 315d65fb3c8e639b55a7af179a692c3d896f6ad4 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 20 Jun 2022 12:18:40 +0100 Subject: [PATCH 099/298] OCaml 4.14.0 rebuild --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 40f6fd9..43b4bfe 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -53,7 +53,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.31.9 -Release: 2%{?dist} +Release: 3%{?dist} Summary: NBD server License: BSD @@ -1191,6 +1191,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Mon Jun 20 2022 Richard W.M. Jones - 1.31.9-3 +- OCaml 4.14.0 rebuild + * Mon Jun 13 2022 Python Maint - 1.31.9-2 - Rebuilt for Python 3.11 From 29df437fe558c30e7077aaddd187e820b8eabeb8 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 27 Jun 2022 15:23:29 +0100 Subject: [PATCH 100/298] New upstream development version 1.31.10 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 43b4bfe..3601066 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,8 +52,8 @@ ExclusiveArch: x86_64 %global source_directory 1.31-development Name: nbdkit -Version: 1.31.9 -Release: 3%{?dist} +Version: 1.31.10 +Release: 1%{?dist} Summary: NBD server License: BSD @@ -1191,6 +1191,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Mon Jun 27 2022 Richard W.M. Jones - 1.31.10-1 +- New upstream development version 1.31.10 + * Mon Jun 20 2022 Richard W.M. Jones - 1.31.9-3 - OCaml 4.14.0 rebuild diff --git a/sources b/sources index c47c983..c3e39ae 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.31.9.tar.gz) = b71231d6ed3816a8305f68550726de3442aa39d569e857600e8a1e4631adef3af67b72b122e21d848432d1b218f63854415a246dde262f9572aa4da6be216dc2 -SHA512 (nbdkit-1.31.9.tar.gz.sig) = 1b8fb270a21769b44162f6d7184ff342143c3cbbfe0dc36b41480d97723c386fe2e66df814ee0aa0496f8f3d613ac15ceedf114698a6f0ff39c022cf7875f1d5 +SHA512 (nbdkit-1.31.10.tar.gz) = b8c70bc737c95f80b2487eab4e5b8ee164ba6161c8276f5213fa360f111583fdba0710b5965810d427dea5c0fb23471ef6f2b9ae88f0150a1dc2e5ee9a1acfe2 +SHA512 (nbdkit-1.31.10.tar.gz.sig) = 36289367bcea4ae199c1ef5559a98df1e90fb0588eec27d96660db697c4947747ffaef0e73f20b23e07b3381bcf9d208a8a900a3162523ee22388acf861cb1fd From 542fa9b0ca5263160b47d7a7ca498ba0ea5583f0 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sun, 10 Jul 2022 13:04:43 +0100 Subject: [PATCH 101/298] New upstream development version 1.31.11 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 3601066..6cb9491 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.31-development Name: nbdkit -Version: 1.31.10 +Version: 1.31.11 Release: 1%{?dist} Summary: NBD server @@ -1191,6 +1191,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Sun Jul 10 2022 Richard W.M. Jones - 1.31.11-1 +- New upstream development version 1.31.11 + * Mon Jun 27 2022 Richard W.M. Jones - 1.31.10-1 - New upstream development version 1.31.10 diff --git a/sources b/sources index c3e39ae..bb87b3b 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.31.10.tar.gz) = b8c70bc737c95f80b2487eab4e5b8ee164ba6161c8276f5213fa360f111583fdba0710b5965810d427dea5c0fb23471ef6f2b9ae88f0150a1dc2e5ee9a1acfe2 -SHA512 (nbdkit-1.31.10.tar.gz.sig) = 36289367bcea4ae199c1ef5559a98df1e90fb0588eec27d96660db697c4947747ffaef0e73f20b23e07b3381bcf9d208a8a900a3162523ee22388acf861cb1fd +SHA512 (nbdkit-1.31.11.tar.gz) = bbec9e3b8c9b19ef6264ea51360d228e4afb059616ad3cc32aceda46005e8995583036cc0e40640c71c1af9349ec69583d741ce0c116e7d9e3f05a72d7b497a0 +SHA512 (nbdkit-1.31.11.tar.gz.sig) = 32eaf660ed18f0045cade4e71742a3d6c6c625d2c2e60a649c27f9124200f328f7bb6fc8ccf1758d45b26ff7c43a9cab716b336a61806900e5970b70d5326775 From 4488b6f852eca01c79d8e5d903b5e6e3bfc235de Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sun, 17 Jul 2022 20:17:39 +0100 Subject: [PATCH 102/298] New upstream development version 1.31.12 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 6cb9491..37fa04c 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.31-development Name: nbdkit -Version: 1.31.11 +Version: 1.31.12 Release: 1%{?dist} Summary: NBD server @@ -1191,6 +1191,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Sun Jul 17 2022 Richard W.M. Jones - 1.31.12-1 +- New upstream development version 1.31.12 + * Sun Jul 10 2022 Richard W.M. Jones - 1.31.11-1 - New upstream development version 1.31.11 diff --git a/sources b/sources index bb87b3b..292d415 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.31.11.tar.gz) = bbec9e3b8c9b19ef6264ea51360d228e4afb059616ad3cc32aceda46005e8995583036cc0e40640c71c1af9349ec69583d741ce0c116e7d9e3f05a72d7b497a0 -SHA512 (nbdkit-1.31.11.tar.gz.sig) = 32eaf660ed18f0045cade4e71742a3d6c6c625d2c2e60a649c27f9124200f328f7bb6fc8ccf1758d45b26ff7c43a9cab716b336a61806900e5970b70d5326775 +SHA512 (nbdkit-1.31.12.tar.gz) = fd2245361e44aaab525489bd949ee737492b546b2ca9101911ba151eb6928e0a99e0f602bd2fed0ea6bc1f4a563353cde87e5396c2f59a237f02ff79bc5fa048 +SHA512 (nbdkit-1.31.12.tar.gz.sig) = 4fe3616c1d7ff529265146bcd4e136cff51ae5505556d9976fcd4b47209ecd0068f82fe02195e0c90625059b04826eae05a8c477896a6899e8138fd4519af1c8 From 4591c18cb0fcc0e990891a27f76030304dbb8f0b Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 19 Jul 2022 11:23:36 +0100 Subject: [PATCH 103/298] New upstream development version 1.31.13 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 37fa04c..5c060d2 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.31-development Name: nbdkit -Version: 1.31.12 +Version: 1.31.13 Release: 1%{?dist} Summary: NBD server @@ -1191,6 +1191,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Jul 19 2022 Richard W.M. Jones - 1.31.13-1 +- New upstream development version 1.31.13 + * Sun Jul 17 2022 Richard W.M. Jones - 1.31.12-1 - New upstream development version 1.31.12 diff --git a/sources b/sources index 292d415..4ee4f47 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.31.12.tar.gz) = fd2245361e44aaab525489bd949ee737492b546b2ca9101911ba151eb6928e0a99e0f602bd2fed0ea6bc1f4a563353cde87e5396c2f59a237f02ff79bc5fa048 -SHA512 (nbdkit-1.31.12.tar.gz.sig) = 4fe3616c1d7ff529265146bcd4e136cff51ae5505556d9976fcd4b47209ecd0068f82fe02195e0c90625059b04826eae05a8c477896a6899e8138fd4519af1c8 +SHA512 (nbdkit-1.31.13.tar.gz) = f08bb7e5c111561edbe5798d16f4b223310dd21271116961bb3abe6315d3298c041ab8f0a12d487639899b6dc9d95806c068d1cd675d4f661c5c427b073858bc +SHA512 (nbdkit-1.31.13.tar.gz.sig) = 5388a764d6c643f80850d1ad822932641099252aa4d84a84670c32282e3abb98c7e3135e37a4071e0bf9a79a30784e16992299961020697d4180407248681695 From e84abd37b156dfeebb3c759e472da084cced71ee Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 22 Jul 2022 00:16:53 +0000 Subject: [PATCH 104/298] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 5c060d2..5084220 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -53,7 +53,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.31.13 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD @@ -1191,6 +1191,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Fri Jul 22 2022 Fedora Release Engineering - 1.31.13-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Tue Jul 19 2022 Richard W.M. Jones - 1.31.13-1 - New upstream development version 1.31.13 From ed637e12ee784c3f0aa6ac1d5488c3aab8b065ce Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sun, 24 Jul 2022 21:59:59 +0100 Subject: [PATCH 105/298] New upstream development version 1.31.14 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 5084220..3382ef6 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,8 +52,8 @@ ExclusiveArch: x86_64 %global source_directory 1.31-development Name: nbdkit -Version: 1.31.13 -Release: 2%{?dist} +Version: 1.31.14 +Release: 1%{?dist} Summary: NBD server License: BSD @@ -1191,6 +1191,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Sun Jul 24 2022 Richard W.M. Jones - 1.31.14-1 +- New upstream development version 1.31.14 + * Fri Jul 22 2022 Fedora Release Engineering - 1.31.13-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild diff --git a/sources b/sources index 4ee4f47..291832b 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.31.13.tar.gz) = f08bb7e5c111561edbe5798d16f4b223310dd21271116961bb3abe6315d3298c041ab8f0a12d487639899b6dc9d95806c068d1cd675d4f661c5c427b073858bc -SHA512 (nbdkit-1.31.13.tar.gz.sig) = 5388a764d6c643f80850d1ad822932641099252aa4d84a84670c32282e3abb98c7e3135e37a4071e0bf9a79a30784e16992299961020697d4180407248681695 +SHA512 (nbdkit-1.31.14.tar.gz) = dd89db0033b9f1f2f0e45ae833075d768706778cf99ba58f0c262d808472a2aa79cc49fd59c5486aae3ee50c81ac1bb247e0710e29e0757b22ba5879742c0a7b +SHA512 (nbdkit-1.31.14.tar.gz.sig) = 25e95c2705363cdeefb632633c3b9fd0943f33b7f78ce7e0546f2db9728bbaad2addbcdea1c0b92f37eba2c72eedfd6f137576d35a3707c0a0200e93fe00194d From c1bb9d54ecbdaf4f42481232fe0db23ce92901bb Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 29 Jul 2022 13:40:53 +0100 Subject: [PATCH 106/298] New upstream development version 1.31.15 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 3382ef6..f9b7e74 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.31-development Name: nbdkit -Version: 1.31.14 +Version: 1.31.15 Release: 1%{?dist} Summary: NBD server @@ -1191,6 +1191,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Fri Jul 29 2022 Richard W.M. Jones - 1.31.15-1 +- New upstream development version 1.31.15 + * Sun Jul 24 2022 Richard W.M. Jones - 1.31.14-1 - New upstream development version 1.31.14 diff --git a/sources b/sources index 291832b..794d55e 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.31.14.tar.gz) = dd89db0033b9f1f2f0e45ae833075d768706778cf99ba58f0c262d808472a2aa79cc49fd59c5486aae3ee50c81ac1bb247e0710e29e0757b22ba5879742c0a7b -SHA512 (nbdkit-1.31.14.tar.gz.sig) = 25e95c2705363cdeefb632633c3b9fd0943f33b7f78ce7e0546f2db9728bbaad2addbcdea1c0b92f37eba2c72eedfd6f137576d35a3707c0a0200e93fe00194d +SHA512 (nbdkit-1.31.15.tar.gz) = 61c9308e172553211f482efdb3bfc094a88be9108dacafc29dbb78265d348d9ab2ffc784ee8d0d3849135ed6ec65e29fd4dafb5eebf2bd3224e7e7c6eebb6827 +SHA512 (nbdkit-1.31.15.tar.gz.sig) = 8c96300e5e26e4691788a4a227a24790d2ad737abd053fc5fcbd0bbc43f9d9f7390653113566478bba83cf551a291508b2ae52cf2cc24be5fb40cc958e939146 From 5aceea57e4b341d89720986959419cc5733ed2ea Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 1 Aug 2022 17:19:06 +0100 Subject: [PATCH 107/298] New upstream stable version 1.32.0 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index f9b7e74..7b30296 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -49,10 +49,10 @@ ExclusiveArch: x86_64 %global patches_touch_autotools %{nil} # The source directory. -%global source_directory 1.31-development +%global source_directory 1.32-stable Name: nbdkit -Version: 1.31.15 +Version: 1.32.0 Release: 1%{?dist} Summary: NBD server @@ -1191,6 +1191,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Mon Aug 01 2022 Richard W.M. Jones - 1.32.0-1 +- New upstream stable version 1.32.0 + * Fri Jul 29 2022 Richard W.M. Jones - 1.31.15-1 - New upstream development version 1.31.15 diff --git a/sources b/sources index 794d55e..7d8d772 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.31.15.tar.gz) = 61c9308e172553211f482efdb3bfc094a88be9108dacafc29dbb78265d348d9ab2ffc784ee8d0d3849135ed6ec65e29fd4dafb5eebf2bd3224e7e7c6eebb6827 -SHA512 (nbdkit-1.31.15.tar.gz.sig) = 8c96300e5e26e4691788a4a227a24790d2ad737abd053fc5fcbd0bbc43f9d9f7390653113566478bba83cf551a291508b2ae52cf2cc24be5fb40cc958e939146 +SHA512 (nbdkit-1.32.0.tar.gz) = f991c09b05b0d567d8110b39268bd9d0d73ac39204e18fbc38977e8a396c8abcc311c6adf4d9f22bbb4464b5f9f76234849d60e366e5b95835bc62e9eef2dcf3 +SHA512 (nbdkit-1.32.0.tar.gz.sig) = b71a59ae5f116c28ed39e042d3a0d95b9a4694f271cd2c57f964641d98df37b0166b2c31c99e63a13ac380b1c9bf47e221b599b6d6159f318d6069ed8e37d5d2 From 46f18f9fc82cb42395008a78f4c9459db55b0a68 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 11 Aug 2022 13:25:21 +0100 Subject: [PATCH 108/298] New upstream stable version 1.32.1 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 7b30296..4aa227e 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.32-stable Name: nbdkit -Version: 1.32.0 +Version: 1.32.1 Release: 1%{?dist} Summary: NBD server @@ -1191,6 +1191,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Thu Aug 11 2022 Richard W.M. Jones - 1.32.1-1 +- New upstream stable version 1.32.1 + * Mon Aug 01 2022 Richard W.M. Jones - 1.32.0-1 - New upstream stable version 1.32.0 diff --git a/sources b/sources index 7d8d772..9b62daa 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.32.0.tar.gz) = f991c09b05b0d567d8110b39268bd9d0d73ac39204e18fbc38977e8a396c8abcc311c6adf4d9f22bbb4464b5f9f76234849d60e366e5b95835bc62e9eef2dcf3 -SHA512 (nbdkit-1.32.0.tar.gz.sig) = b71a59ae5f116c28ed39e042d3a0d95b9a4694f271cd2c57f964641d98df37b0166b2c31c99e63a13ac380b1c9bf47e221b599b6d6159f318d6069ed8e37d5d2 +SHA512 (nbdkit-1.32.1.tar.gz) = 01d4d653803491efa687c148ed01347c18856a4b1914c327960901a150fe6e33966c799365722b389e0501fdcfab3f29d4d988d55261f39913ab0f394ae61fee +SHA512 (nbdkit-1.32.1.tar.gz.sig) = 9357efd34e8e39238063d4ed26a15d95388fa1e1ff781b6dc1bc863f5e4fc00319be68040f18de9aca000800ee3f14de288c1889a6aea431536837ff551d0a12 From fc8fe6448bd379c0489bdf96c72bec11c21da658 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 18 Aug 2022 13:35:39 +0100 Subject: [PATCH 109/298] New upstream development version 1.33.1 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 4aa227e..f0747ac 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -49,10 +49,10 @@ ExclusiveArch: x86_64 %global patches_touch_autotools %{nil} # The source directory. -%global source_directory 1.32-stable +%global source_directory 1.33-development Name: nbdkit -Version: 1.32.1 +Version: 1.33.1 Release: 1%{?dist} Summary: NBD server @@ -1191,6 +1191,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Thu Aug 18 2022 Richard W.M. Jones - 1.33.1-1 +- New upstream development version 1.33.1 + * Thu Aug 11 2022 Richard W.M. Jones - 1.32.1-1 - New upstream stable version 1.32.1 diff --git a/sources b/sources index 9b62daa..e8bbfce 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.32.1.tar.gz) = 01d4d653803491efa687c148ed01347c18856a4b1914c327960901a150fe6e33966c799365722b389e0501fdcfab3f29d4d988d55261f39913ab0f394ae61fee -SHA512 (nbdkit-1.32.1.tar.gz.sig) = 9357efd34e8e39238063d4ed26a15d95388fa1e1ff781b6dc1bc863f5e4fc00319be68040f18de9aca000800ee3f14de288c1889a6aea431536837ff551d0a12 +SHA512 (nbdkit-1.33.1.tar.gz) = 9a92ebfa5afcbae392259e3e998673ca88d95e9dbed08f1ac9797d5b4e9db1c31d68f372512e7bfb4d398fb3d117b7f8a022209a4114e5aaaf7df0b78b36d6b3 +SHA512 (nbdkit-1.33.1.tar.gz.sig) = 04eddb5f9fa7ca97f72f4f75be59bb7421eb03da200867958262437027ad785038e0d9470ffacf49f381475c72782851e9fc4ed1754c08ef3a160959566015b4 From 3a38cf78bb213f86d072f153740e6d16bbd1175d Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 11 Oct 2022 16:47:39 +0100 Subject: [PATCH 110/298] New upstream development version 1.33.2 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index f0747ac..54b2b03 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.33-development Name: nbdkit -Version: 1.33.1 +Version: 1.33.2 Release: 1%{?dist} Summary: NBD server @@ -1191,6 +1191,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Oct 11 2022 Richard W.M. Jones - 1.33.2-1 +- New upstream development version 1.33.2 + * Thu Aug 18 2022 Richard W.M. Jones - 1.33.1-1 - New upstream development version 1.33.1 diff --git a/sources b/sources index e8bbfce..12bde56 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.33.1.tar.gz) = 9a92ebfa5afcbae392259e3e998673ca88d95e9dbed08f1ac9797d5b4e9db1c31d68f372512e7bfb4d398fb3d117b7f8a022209a4114e5aaaf7df0b78b36d6b3 -SHA512 (nbdkit-1.33.1.tar.gz.sig) = 04eddb5f9fa7ca97f72f4f75be59bb7421eb03da200867958262437027ad785038e0d9470ffacf49f381475c72782851e9fc4ed1754c08ef3a160959566015b4 +SHA512 (nbdkit-1.33.2.tar.gz) = 9f30c9f6582a20cf54cc6116b4e69c9fefe227f0ac12260a26cb1eb9201444a4285a282b1f327b40d6f8cc458f585d13893d367a1e301adbe1176cf0eee42077 +SHA512 (nbdkit-1.33.2.tar.gz.sig) = fbd2b02408676112dad35c9125e53589508c5764e51421df7b4fb2bc04a60de22256b23db49d7214d80edff7c6bd6ee748b896225440f3f41e3989a69298346e From 28c1fbe6eac0d6a61351b2f97a37cec5aeb9b661 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 18 Nov 2022 15:14:03 +0000 Subject: [PATCH 111/298] New upstream development version 1.33.3 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 54b2b03..c57e85c 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.33-development Name: nbdkit -Version: 1.33.2 +Version: 1.33.3 Release: 1%{?dist} Summary: NBD server @@ -1191,6 +1191,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Fri Nov 18 2022 Richard W.M. Jones - 1.33.3-1 +- New upstream development version 1.33.3 + * Tue Oct 11 2022 Richard W.M. Jones - 1.33.2-1 - New upstream development version 1.33.2 diff --git a/sources b/sources index 12bde56..21d649b 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.33.2.tar.gz) = 9f30c9f6582a20cf54cc6116b4e69c9fefe227f0ac12260a26cb1eb9201444a4285a282b1f327b40d6f8cc458f585d13893d367a1e301adbe1176cf0eee42077 -SHA512 (nbdkit-1.33.2.tar.gz.sig) = fbd2b02408676112dad35c9125e53589508c5764e51421df7b4fb2bc04a60de22256b23db49d7214d80edff7c6bd6ee748b896225440f3f41e3989a69298346e +SHA512 (nbdkit-1.33.3.tar.gz) = 6117cb9775fa2503df9701a3f70ee1ca8a5d3a6f99d0152233eb833d4d701a5962fed5bf1ba6746b190f5830ef76c8bd3117c3af67fb6e39385ee2bc213d1103 +SHA512 (nbdkit-1.33.3.tar.gz.sig) = 49d456414b58611872df22b7024cc0a8eae6dd9751fe03007306fef3786192e15b961ee17dae45bd46c6b785a61667cf8a93da0e33a6505ca0285def7b99b6bf From bd8134bd8d3c4174b28f8fdc342efe77ee836b0d Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 3 Dec 2022 21:01:09 +0000 Subject: [PATCH 112/298] New upstream development version 1.33.4 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index c57e85c..e95438a 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.33-development Name: nbdkit -Version: 1.33.3 +Version: 1.33.4 Release: 1%{?dist} Summary: NBD server @@ -1191,6 +1191,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Sat Dec 03 2022 Richard W.M. Jones - 1.33.4-1 +- New upstream development version 1.33.4 + * Fri Nov 18 2022 Richard W.M. Jones - 1.33.3-1 - New upstream development version 1.33.3 diff --git a/sources b/sources index 21d649b..2ea437d 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.33.3.tar.gz) = 6117cb9775fa2503df9701a3f70ee1ca8a5d3a6f99d0152233eb833d4d701a5962fed5bf1ba6746b190f5830ef76c8bd3117c3af67fb6e39385ee2bc213d1103 -SHA512 (nbdkit-1.33.3.tar.gz.sig) = 49d456414b58611872df22b7024cc0a8eae6dd9751fe03007306fef3786192e15b961ee17dae45bd46c6b785a61667cf8a93da0e33a6505ca0285def7b99b6bf +SHA512 (nbdkit-1.33.4.tar.gz) = 7366ba0f723746eadd2b1ca9e26ed475147d1e1fe21cd16c3a5478db140785ad2397c8db369f27a4b698b5b8a487a7f931754a82cb47c333c4fe3ba8f7508241 +SHA512 (nbdkit-1.33.4.tar.gz.sig) = dc779d8edcbfe7caa91666072e557b58e5313db38f4605625ca175d4ff116d9f2eec460d785e953fbb3bd5a5d661e2a7d91bd6889a7fe4a3f86e266d32ee114f From eb4065d4eed7d799823bbf705fbae1ca45a1e2cf Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sun, 4 Dec 2022 10:41:24 +0000 Subject: [PATCH 113/298] More thorough use of configure parameters Make sure we explicitly either --enable/--with or --disable/--without every possible feature. This ensures that plugins/features are not accidentally built or omitted. Explicitly enable or disable VDDK depending on architecture (although the configure script does this already so it's not really necessary). If we ever build VDDK for Arm then we will have to revisit this. We can now disable the torrent plugin through configure so we don't have to delete the plugin afterwards. --- nbdkit.spec | 36 ++++++++++++++++++++++++++++++++---- 1 file changed, 32 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index e95438a..f12ebe4 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -680,24 +680,52 @@ autoreconf -i # package into their vendor/ directory. export PYTHON=%{__python3} %configure \ - --with-extra='%{name}-%{version}-%{release}' \ --disable-static \ + --with-extra='%{name}-%{version}-%{release}' \ + --with-tls-priority=@NBDKIT,SYSTEM \ + --with-bash-completions \ + --with-curl \ + --with-gnutls \ + --with-liblzma \ + --with-libnbd \ + --with-manpages \ + --with-selinux \ + --with-ssh \ + --with-zlib \ + --enable-linuxdisk \ + --enable-python \ --disable-golang \ --disable-rust \ + --disable-valgrind \ %if !0%{?rhel} && 0%{?have_ocaml} --enable-ocaml \ %else --disable-ocaml \ %endif -%if 0%{?rhel} +%if !0%{?rhel} + --enable-lua \ + --enable-perl \ + --enable-ruby \ + --enable-tcl \ + --enable-torrent \ + --with-ext2 \ + --with-iso \ + --with-libvirt \ +%else --disable-lua \ --disable-perl \ --disable-ruby \ --disable-tcl \ + --disable-torrent \ --without-ext2 \ --without-iso \ --without-libvirt \ %endif +%ifarch x86_64 + --enable-vddk \ +%else + --disable-vddk \ +%endif %if !0%{?rhel} && 0%{?have_libguestfs} --with-libguestfs \ %else @@ -708,7 +736,7 @@ export PYTHON=%{__python3} %else --disable-libguestfs-tests \ %endif - --with-tls-priority=@NBDKIT,SYSTEM + %{nil} # Verify that it picked the correct version of Python # to avoid RHBZ#1404631 happening again silently. @@ -729,7 +757,7 @@ rm -f $RPM_BUILD_ROOT%{_mandir}/man3/nbdkit-rust-plugin.3* %if 0%{?rhel} # In RHEL, remove some plugins we cannot --disable. -for f in cc cdi torrent; do +for f in cc cdi ; do rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/nbdkit-$f-plugin.so rm -f $RPM_BUILD_ROOT%{_mandir}/man?/nbdkit-$f-plugin.* done From c5fbd4d47064e75a07edc701a631f50f3bbe1379 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sun, 4 Dec 2022 10:57:47 +0000 Subject: [PATCH 114/298] Don't enable libguestfs tests if we don't have libguestfs --- nbdkit.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index f12ebe4..227ff44 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -731,7 +731,7 @@ export PYTHON=%{__python3} %else --without-libguestfs \ %endif -%ifarch %{complete_test_arches} +%ifarch !0%{?rhel} && 0%{?have_libguestfs} && %{complete_test_arches} --enable-libguestfs-tests \ %else --disable-libguestfs-tests \ From 2dfd51a69868b49ff280610e2a5b4989f5a4e066 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 3 Jan 2023 13:32:35 +0000 Subject: [PATCH 115/298] New upstream development version 1.33.5 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 227ff44..b000412 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.33-development Name: nbdkit -Version: 1.33.4 +Version: 1.33.5 Release: 1%{?dist} Summary: NBD server @@ -1219,6 +1219,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Jan 03 2023 Richard W.M. Jones - 1.33.5-1 +- New upstream development version 1.33.5 + * Sat Dec 03 2022 Richard W.M. Jones - 1.33.4-1 - New upstream development version 1.33.4 diff --git a/sources b/sources index 2ea437d..651b89e 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.33.4.tar.gz) = 7366ba0f723746eadd2b1ca9e26ed475147d1e1fe21cd16c3a5478db140785ad2397c8db369f27a4b698b5b8a487a7f931754a82cb47c333c4fe3ba8f7508241 -SHA512 (nbdkit-1.33.4.tar.gz.sig) = dc779d8edcbfe7caa91666072e557b58e5313db38f4605625ca175d4ff116d9f2eec460d785e953fbb3bd5a5d661e2a7d91bd6889a7fe4a3f86e266d32ee114f +SHA512 (nbdkit-1.33.5.tar.gz) = 0b2562b35b059a0c218d27160af3eb0ff9465ce07caaba099e2f1c59c2672b7821f1d3fbebafbe2a419128779a64e2205807b8dd2f78c4196df649694422bbb6 +SHA512 (nbdkit-1.33.5.tar.gz.sig) = e3fe4e8cbee9d66b291d6f6a20442ec5a050fe88bc5084c07fd513a15f38db413ec1bddaffacc9fd2d30654d3b2c1f492f9ca329c8ec9e0c5a8628c1cacc8051 From 08b6cd1411c8abc28d30a98e45335b05bb057685 Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Wed, 4 Jan 2023 14:49:04 +0900 Subject: [PATCH 116/298] Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.2 --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index b000412..765cb34 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -53,7 +53,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.33.5 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD @@ -1219,6 +1219,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Wed Jan 04 2023 Mamoru TASAKA - 1.33.5-2 +- Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.2 + * Tue Jan 03 2023 Richard W.M. Jones - 1.33.5-1 - New upstream development version 1.33.5 From 05aae2b2159bd9e14cc66d2a020ee9c7412d637e Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 11 Jan 2023 13:52:36 +0000 Subject: [PATCH 117/298] New upstream development version 1.33.6 New plugin: nbdkit-blkio-plugin --- nbdkit.spec | 32 ++++++++++++++++++++++++++++++-- sources | 4 ++-- 2 files changed, 32 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 765cb34..6444ec8 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,8 +52,8 @@ ExclusiveArch: x86_64 %global source_directory 1.33-development Name: nbdkit -Version: 1.33.5 -Release: 2%{?dist} +Version: 1.33.6 +Release: 1%{?dist} Summary: NBD server License: BSD @@ -102,6 +102,7 @@ BuildRequires: e2fsprogs, e2fsprogs-devel %if !0%{?rhel} BuildRequires: xorriso BuildRequires: rb_libtorrent-devel +BuildRequires: libblkio-devel %endif BuildRequires: bash-completion BuildRequires: perl-devel @@ -260,6 +261,18 @@ This package contains example plugins for %{name}. # The plugins below have non-trivial dependencies are so are # packaged separately. +%if !0%{?rhel} +%package blkio-plugin +Summary: libblkio NVMe, vhost-user, vDPA, VFIO plugin for %{name} +License: BSD +Requires: %{name}-server%{?_isa} = %{version}-%{release} + +%description blkio-plugin +This package contains libblkio (NVMe, vhost-user, vDPA, VFIO) support +for %{name}. +%endif + + %if !0%{?rhel} %package cc-plugin Summary: Write small inline C plugins and scripts for %{name} @@ -708,6 +721,7 @@ export PYTHON=%{__python3} --enable-ruby \ --enable-tcl \ --enable-torrent \ + --with-libblkio \ --with-ext2 \ --with-iso \ --with-libvirt \ @@ -717,6 +731,7 @@ export PYTHON=%{__python3} --disable-ruby \ --disable-tcl \ --disable-torrent \ + --without-libblkio \ --without-ext2 \ --without-iso \ --without-libvirt \ @@ -894,6 +909,15 @@ export LIBGUESTFS_TRACE=1 %{_mandir}/man1/nbdkit-example*-plugin.1* +%if !0%{?rhel} +%files blkio-plugin +%doc README.md +%license LICENSE +%{_libdir}/%{name}/plugins/nbdkit-blkio-plugin.so +%{_mandir}/man1/nbdkit-blkio-plugin.1* +%endif + + %if !0%{?rhel} %files cc-plugin %doc README.md @@ -1219,6 +1243,10 @@ export LIBGUESTFS_TRACE=1 %changelog +* Wed Jan 11 2023 Richard W.M. Jones - 1.33.6-1 +- New upstream development version 1.33.6 +- New plugin: nbdkit-blkio-plugin + * Wed Jan 04 2023 Mamoru TASAKA - 1.33.5-2 - Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.2 diff --git a/sources b/sources index 651b89e..6b08f89 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.33.5.tar.gz) = 0b2562b35b059a0c218d27160af3eb0ff9465ce07caaba099e2f1c59c2672b7821f1d3fbebafbe2a419128779a64e2205807b8dd2f78c4196df649694422bbb6 -SHA512 (nbdkit-1.33.5.tar.gz.sig) = e3fe4e8cbee9d66b291d6f6a20442ec5a050fe88bc5084c07fd513a15f38db413ec1bddaffacc9fd2d30654d3b2c1f492f9ca329c8ec9e0c5a8628c1cacc8051 +SHA512 (nbdkit-1.33.6.tar.gz) = c5e8df85ba99526ece1cce73fa5eeb2f47c721c74743f38ed8c8f8b627f5590a5dc314d24a99d16347624a602902b43cda45389f9060d51c30ce46a91e3378ab +SHA512 (nbdkit-1.33.6.tar.gz.sig) = 81d00fd801374f4bc3110b6a46b65a57cfd4da6ef7c5694a3226a1aea69f27ca523cc7e38dceaf259d35c2626bfa06a362268c0d7b80b8fa62a31dd9b4597c80 From 45cd552218ae5e70c89c5122c9808487d27d968b Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 14 Jan 2023 15:43:56 +0000 Subject: [PATCH 118/298] New upstream development version 1.33.7 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 6444ec8..64cfde8 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.33-development Name: nbdkit -Version: 1.33.6 +Version: 1.33.7 Release: 1%{?dist} Summary: NBD server @@ -1243,6 +1243,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Sat Jan 14 2023 Richard W.M. Jones - 1.33.7-1 +- New upstream development version 1.33.7 + * Wed Jan 11 2023 Richard W.M. Jones - 1.33.6-1 - New upstream development version 1.33.6 - New plugin: nbdkit-blkio-plugin diff --git a/sources b/sources index 6b08f89..7172cec 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.33.6.tar.gz) = c5e8df85ba99526ece1cce73fa5eeb2f47c721c74743f38ed8c8f8b627f5590a5dc314d24a99d16347624a602902b43cda45389f9060d51c30ce46a91e3378ab -SHA512 (nbdkit-1.33.6.tar.gz.sig) = 81d00fd801374f4bc3110b6a46b65a57cfd4da6ef7c5694a3226a1aea69f27ca523cc7e38dceaf259d35c2626bfa06a362268c0d7b80b8fa62a31dd9b4597c80 +SHA512 (nbdkit-1.33.7.tar.gz) = 60dd4ca240a7e35864bc1d0f65c48e9b82e3dd147fabd92fa95f3e3f68bb3f67074146b3cc76989c9a2a653d674dfe37b2c62346e0797ef91efb16bc15f1ee92 +SHA512 (nbdkit-1.33.7.tar.gz.sig) = ce54fba3071cb707e19d961b4cc826fc4bc3e5c26d1de5d5ce77d6dc529ba73286591fa148e85b2b0d79a3577c9ce6bdc71cb47e7f7b52226672a4bde83333a8 From 5b29d280dd0b34bed1c65e257ef3817995d1b60d Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 19 Jan 2023 21:17:27 +0000 Subject: [PATCH 119/298] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 64cfde8..6a20607 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -53,7 +53,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.33.7 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD @@ -1243,6 +1243,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Thu Jan 19 2023 Fedora Release Engineering - 1.33.7-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Sat Jan 14 2023 Richard W.M. Jones - 1.33.7-1 - New upstream development version 1.33.7 From c98f3bea2b91daecbc5f2c3de5ae4ea6d1a679b3 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 24 Jan 2023 20:40:37 +0000 Subject: [PATCH 120/298] Rebuild OCaml packages for F38 --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 6a20607..c6198e6 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -53,7 +53,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.33.7 -Release: 2%{?dist} +Release: 3%{?dist} Summary: NBD server License: BSD @@ -1243,6 +1243,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Jan 24 2023 Richard W.M. Jones - 1.33.7-3 +- Rebuild OCaml packages for F38 + * Thu Jan 19 2023 Fedora Release Engineering - 1.33.7-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild From 951b6c1030f3b04780304e47cf050320c68854fd Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 7 Feb 2023 22:07:16 +0000 Subject: [PATCH 121/298] New upstream development version 1.33.8 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index c6198e6..4afba67 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,8 +52,8 @@ ExclusiveArch: x86_64 %global source_directory 1.33-development Name: nbdkit -Version: 1.33.7 -Release: 3%{?dist} +Version: 1.33.8 +Release: 1%{?dist} Summary: NBD server License: BSD @@ -1243,6 +1243,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Feb 07 2023 Richard W.M. Jones - 1.33.8-1 +- New upstream development version 1.33.8 + * Tue Jan 24 2023 Richard W.M. Jones - 1.33.7-3 - Rebuild OCaml packages for F38 diff --git a/sources b/sources index 7172cec..7a55998 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.33.7.tar.gz) = 60dd4ca240a7e35864bc1d0f65c48e9b82e3dd147fabd92fa95f3e3f68bb3f67074146b3cc76989c9a2a653d674dfe37b2c62346e0797ef91efb16bc15f1ee92 -SHA512 (nbdkit-1.33.7.tar.gz.sig) = ce54fba3071cb707e19d961b4cc826fc4bc3e5c26d1de5d5ce77d6dc529ba73286591fa148e85b2b0d79a3577c9ce6bdc71cb47e7f7b52226672a4bde83333a8 +SHA512 (nbdkit-1.33.8.tar.gz) = 17e3e94e15e23e2ce8226f942acf03128dac867d3cc619d58febb1e5c9627b3b05b2d954493fd50c0233b636a4f1b057e6c8af0b0528cc9bee667b7f1de84b8a +SHA512 (nbdkit-1.33.8.tar.gz.sig) = ad2825ccf82b14680c2a1e860b675c3bf0374e8941c5608ffbcd5ab66f8ef8f160b74921ac10e691221011b155f83f80a2587f2f84cbcfc908240421524658c1 From 7f63a272d0cb887f9cd2c8024153fcc77df9b7a8 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 25 Feb 2023 14:04:24 +0000 Subject: [PATCH 122/298] New upstream development version 1.33.9 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 4afba67..af553ad 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.33-development Name: nbdkit -Version: 1.33.8 +Version: 1.33.9 Release: 1%{?dist} Summary: NBD server @@ -1243,6 +1243,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Sat Feb 25 2023 Richard W.M. Jones - 1.33.9-1 +- New upstream development version 1.33.9 + * Tue Feb 07 2023 Richard W.M. Jones - 1.33.8-1 - New upstream development version 1.33.8 diff --git a/sources b/sources index 7a55998..4f6d7af 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.33.8.tar.gz) = 17e3e94e15e23e2ce8226f942acf03128dac867d3cc619d58febb1e5c9627b3b05b2d954493fd50c0233b636a4f1b057e6c8af0b0528cc9bee667b7f1de84b8a -SHA512 (nbdkit-1.33.8.tar.gz.sig) = ad2825ccf82b14680c2a1e860b675c3bf0374e8941c5608ffbcd5ab66f8ef8f160b74921ac10e691221011b155f83f80a2587f2f84cbcfc908240421524658c1 +SHA512 (nbdkit-1.33.9.tar.gz) = ec36b3b502ba625df9899080cd5425b0e47a4c520042d39fceaad39ea26dad2c2f399604f51efd5b5860c26e197687006629d1778b527d49362c3ddbdb2525f1 +SHA512 (nbdkit-1.33.9.tar.gz.sig) = 3025530f2fdf2d6c117c3856c0e5abd3bdbfe725aab923f31a9602db4f8af324b8ac7443aac6035e8592a6e75bb1656053865fe336c8a93b46061b9d6cbfdbac From b919ca15cf6231a8db18ca4e99b1fe1c95012b6a Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 28 Feb 2023 15:37:47 +0000 Subject: [PATCH 123/298] New upstream development version 1.33.10 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index af553ad..d2d1051 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.33-development Name: nbdkit -Version: 1.33.9 +Version: 1.33.10 Release: 1%{?dist} Summary: NBD server @@ -1243,6 +1243,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Feb 28 2023 Richard W.M. Jones - 1.33.10-1 +- New upstream development version 1.33.10 + * Sat Feb 25 2023 Richard W.M. Jones - 1.33.9-1 - New upstream development version 1.33.9 diff --git a/sources b/sources index 4f6d7af..39e15fe 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.33.9.tar.gz) = ec36b3b502ba625df9899080cd5425b0e47a4c520042d39fceaad39ea26dad2c2f399604f51efd5b5860c26e197687006629d1778b527d49362c3ddbdb2525f1 -SHA512 (nbdkit-1.33.9.tar.gz.sig) = 3025530f2fdf2d6c117c3856c0e5abd3bdbfe725aab923f31a9602db4f8af324b8ac7443aac6035e8592a6e75bb1656053865fe336c8a93b46061b9d6cbfdbac +SHA512 (nbdkit-1.33.10.tar.gz) = c2b28cff041f3f8739b159fa7201beb06f1c4afbb4b1a302b6bbf9dde0c3fab17b195f880f8bf5702e8ba0952fa687e91c9921625f090fb66ed85692d4f01d2d +SHA512 (nbdkit-1.33.10.tar.gz.sig) = 1b62c9e63cf9e4ff472a2802c8fb5b9c263c6aca3c7acf66bae44632a3272730dac706c8a3cd9abb2982bf0fa9dbc5cc6a135a5352232b5954d1d2d670339071 From 09307d24977de0279de0779caf6c59bbe2c75427 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 9 Mar 2023 11:18:57 +0000 Subject: [PATCH 124/298] New upstream development version 1.33.11 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index d2d1051..02d4a5d 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.33-development Name: nbdkit -Version: 1.33.10 +Version: 1.33.11 Release: 1%{?dist} Summary: NBD server @@ -1243,6 +1243,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Thu Mar 09 2023 Richard W.M. Jones - 1.33.11-1 +- New upstream development version 1.33.11 + * Tue Feb 28 2023 Richard W.M. Jones - 1.33.10-1 - New upstream development version 1.33.10 diff --git a/sources b/sources index 39e15fe..50fd7b6 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.33.10.tar.gz) = c2b28cff041f3f8739b159fa7201beb06f1c4afbb4b1a302b6bbf9dde0c3fab17b195f880f8bf5702e8ba0952fa687e91c9921625f090fb66ed85692d4f01d2d -SHA512 (nbdkit-1.33.10.tar.gz.sig) = 1b62c9e63cf9e4ff472a2802c8fb5b9c263c6aca3c7acf66bae44632a3272730dac706c8a3cd9abb2982bf0fa9dbc5cc6a135a5352232b5954d1d2d670339071 +SHA512 (nbdkit-1.33.11.tar.gz) = 6101563f7f7e9d60658b19f07a661eec5efe4d60d5c840c651988dc15a6199e0064ffa9f679f2f59cc687a87c203ebc6b2c9fbb0f72274dfd03c5ec34005e544 +SHA512 (nbdkit-1.33.11.tar.gz.sig) = 0f947660d684b024539f8cfb8c42ea0158d005ce972eaf3dc1c94c7c4260fb353d6fbd9ecfaf64f7b2630f726f75e5632bab4c3c6bf0e8eba8059a54ee95cd13 From 604cc65d68e24683129993b3a05268770c5bae35 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 13 Apr 2023 10:20:34 +0100 Subject: [PATCH 125/298] New upstream development version 1.33.12 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 02d4a5d..40bda8f 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.33-development Name: nbdkit -Version: 1.33.11 +Version: 1.33.12 Release: 1%{?dist} Summary: NBD server @@ -1243,6 +1243,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Thu Apr 13 2023 Richard W.M. Jones - 1.33.12-1 +- New upstream development version 1.33.12 + * Thu Mar 09 2023 Richard W.M. Jones - 1.33.11-1 - New upstream development version 1.33.11 diff --git a/sources b/sources index 50fd7b6..fbaa80a 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.33.11.tar.gz) = 6101563f7f7e9d60658b19f07a661eec5efe4d60d5c840c651988dc15a6199e0064ffa9f679f2f59cc687a87c203ebc6b2c9fbb0f72274dfd03c5ec34005e544 -SHA512 (nbdkit-1.33.11.tar.gz.sig) = 0f947660d684b024539f8cfb8c42ea0158d005ce972eaf3dc1c94c7c4260fb353d6fbd9ecfaf64f7b2630f726f75e5632bab4c3c6bf0e8eba8059a54ee95cd13 +SHA512 (nbdkit-1.33.12.tar.gz) = 8d74b2e015a1811feb07010a552034b088a2c65b4cba45822ed14e1f9c8e622ae2279e1b0ea14492a3d6782a1172df6faa077ac6e60e0b87d2158d9a250bb73f +SHA512 (nbdkit-1.33.12.tar.gz.sig) = 70b931e3d39cb87b7f7cb76a282b38377318527af812af0c5eaf5abab97da18e0fe430a335bca365328ab06bd61324f5df35e1613379a4089f64ac66e3f9eabb From 437316b6903226392bdde4f5306cb95e1dc2e6b5 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 14 Apr 2023 10:50:46 +0100 Subject: [PATCH 126/298] New upstream stable version 1.34.0 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 40bda8f..7917b85 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -49,10 +49,10 @@ ExclusiveArch: x86_64 %global patches_touch_autotools %{nil} # The source directory. -%global source_directory 1.33-development +%global source_directory 1.34-stable Name: nbdkit -Version: 1.33.12 +Version: 1.34.0 Release: 1%{?dist} Summary: NBD server @@ -1243,6 +1243,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Fri Apr 14 2023 Richard W.M. Jones - 1.34.0-1 +- New upstream stable version 1.34.0 + * Thu Apr 13 2023 Richard W.M. Jones - 1.33.12-1 - New upstream development version 1.33.12 diff --git a/sources b/sources index fbaa80a..1137953 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.33.12.tar.gz) = 8d74b2e015a1811feb07010a552034b088a2c65b4cba45822ed14e1f9c8e622ae2279e1b0ea14492a3d6782a1172df6faa077ac6e60e0b87d2158d9a250bb73f -SHA512 (nbdkit-1.33.12.tar.gz.sig) = 70b931e3d39cb87b7f7cb76a282b38377318527af812af0c5eaf5abab97da18e0fe430a335bca365328ab06bd61324f5df35e1613379a4089f64ac66e3f9eabb +SHA512 (nbdkit-1.34.0.tar.gz) = 5d78708652da2ea9c9330bdbed3aabcd159a1517eb02c32adfbecf6e65ecc2769d37c8c114b32a2502552188fabedcb24ab0c7c44897482efffd9f5653af98f0 +SHA512 (nbdkit-1.34.0.tar.gz.sig) = 7fe99502d59760a6ae6dc5cdcae35b6eb14720f654d667160892eec9d746817305afd82dbf7c1ecf164acbc6f1140039af1c10885fefeb380244d6e1bf2ead7c From 7665825cab2995ecd951b6e912ac9c83faa2e816 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 18 Apr 2023 13:00:30 +0100 Subject: [PATCH 127/298] New upstream stable version 1.34.1 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 7917b85..62561a2 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.34-stable Name: nbdkit -Version: 1.34.0 +Version: 1.34.1 Release: 1%{?dist} Summary: NBD server @@ -1243,6 +1243,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Apr 18 2023 Richard W.M. Jones - 1.34.1-1 +- New upstream stable version 1.34.1 + * Fri Apr 14 2023 Richard W.M. Jones - 1.34.0-1 - New upstream stable version 1.34.0 diff --git a/sources b/sources index 1137953..fc6a099 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.34.0.tar.gz) = 5d78708652da2ea9c9330bdbed3aabcd159a1517eb02c32adfbecf6e65ecc2769d37c8c114b32a2502552188fabedcb24ab0c7c44897482efffd9f5653af98f0 -SHA512 (nbdkit-1.34.0.tar.gz.sig) = 7fe99502d59760a6ae6dc5cdcae35b6eb14720f654d667160892eec9d746817305afd82dbf7c1ecf164acbc6f1140039af1c10885fefeb380244d6e1bf2ead7c +SHA512 (nbdkit-1.34.1.tar.gz) = 23d87f72046ea2ba5a315bfa85846a94f3557970e9db500d168ba45057d9835c0c51557b9ff6cdc3135bbdc6bb6e6dfed01f0640a08b576b5620c0476578d4ce +SHA512 (nbdkit-1.34.1.tar.gz.sig) = c25077362fb6459a83e1acbf1a683017c11edffb9760c9707c929ef4ab54583bdfa5bcfd845ce1f3e98fa46add7a4fba9536a7d4fb0cc072b6a41116489a957d From 389861ca942f057a782f9094c01b8e700f8c96aa Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 29 Apr 2023 12:45:05 +0100 Subject: [PATCH 128/298] New upstream development version 1.35.1 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 62561a2..8d11cf1 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -49,10 +49,10 @@ ExclusiveArch: x86_64 %global patches_touch_autotools %{nil} # The source directory. -%global source_directory 1.34-stable +%global source_directory 1.35-development Name: nbdkit -Version: 1.34.1 +Version: 1.35.1 Release: 1%{?dist} Summary: NBD server @@ -1243,6 +1243,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Sat Apr 29 2023 Richard W.M. Jones - 1.35.1-1 +- New upstream development version 1.35.1 + * Tue Apr 18 2023 Richard W.M. Jones - 1.34.1-1 - New upstream stable version 1.34.1 diff --git a/sources b/sources index fc6a099..18a8727 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.34.1.tar.gz) = 23d87f72046ea2ba5a315bfa85846a94f3557970e9db500d168ba45057d9835c0c51557b9ff6cdc3135bbdc6bb6e6dfed01f0640a08b576b5620c0476578d4ce -SHA512 (nbdkit-1.34.1.tar.gz.sig) = c25077362fb6459a83e1acbf1a683017c11edffb9760c9707c929ef4ab54583bdfa5bcfd845ce1f3e98fa46add7a4fba9536a7d4fb0cc072b6a41116489a957d +SHA512 (nbdkit-1.35.1.tar.gz) = e7d9dcee41858db25bdc47890196e6af7296a8052a1133cf4bf412881a3fc5a4acd751b61cf412c082567319a363b0c1a3a05f9bed6218ed25b659147db27df0 +SHA512 (nbdkit-1.35.1.tar.gz.sig) = 0f217678377a49035304ab952110a5f1d5e6c84db8bf750831aa3f2e22043bb6ee4ecf173b83f1f0e599a0a4066ab22d30acd357937c3ec76c9f6815f5aca661 From 07728d64a3344d9a35170615df0618b61a3ff89b Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 10 May 2023 10:45:50 +0100 Subject: [PATCH 129/298] New upstream development version 1.35.2 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 8d11cf1..724e707 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.35-development Name: nbdkit -Version: 1.35.1 +Version: 1.35.2 Release: 1%{?dist} Summary: NBD server @@ -1243,6 +1243,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Wed May 10 2023 Richard W.M. Jones - 1.35.2-1 +- New upstream development version 1.35.2 + * Sat Apr 29 2023 Richard W.M. Jones - 1.35.1-1 - New upstream development version 1.35.1 diff --git a/sources b/sources index 18a8727..a59ff2d 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.35.1.tar.gz) = e7d9dcee41858db25bdc47890196e6af7296a8052a1133cf4bf412881a3fc5a4acd751b61cf412c082567319a363b0c1a3a05f9bed6218ed25b659147db27df0 -SHA512 (nbdkit-1.35.1.tar.gz.sig) = 0f217678377a49035304ab952110a5f1d5e6c84db8bf750831aa3f2e22043bb6ee4ecf173b83f1f0e599a0a4066ab22d30acd357937c3ec76c9f6815f5aca661 +SHA512 (nbdkit-1.35.2.tar.gz) = 09fde258a14c1cd44440affd55623159721e84ec3fa01b13d73ea753200924650248583afb88ccd0d009533ce22554f3c3793035592f04614dabd0c56fc670ed +SHA512 (nbdkit-1.35.2.tar.gz.sig) = 47d295f8a7f003ccd23984f1a4fb462d1622c8fa2c69fcdf5e37bfb569404e5978858970213611865f70fd42c34900fec775d3c0bf9a13b2643e001b333d3fe2 From fd4ae2855524d5d54b40902024e0acbeb2c33a8b Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 18 May 2023 21:26:13 +0100 Subject: [PATCH 130/298] New upstream development version 1.35.3 New plugin: ones New filter: evil --- nbdkit.spec | 15 ++++++++++++++- sources | 4 ++-- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 724e707..4a14b67 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.35-development Name: nbdkit -Version: 1.35.2 +Version: 1.35.3 Release: 1%{?dist} Summary: NBD server @@ -230,6 +230,8 @@ nbdkit-memory-plugin A virtual memory plugin. nbdkit-ondemand-plugin Create filesystems on demand. +nbdkit-ones-plugin Fill disk with repeated 0xff or other bytes. + nbdkit-pattern-plugin Fixed test pattern. nbdkit-partitioning-plugin Create virtual disks from partitions. @@ -538,6 +540,8 @@ nbdkit-delay-filter Inject read and write delays. nbdkit-error-filter Inject errors. +nbdkit-evil-filter Add random data corruption to reads. + nbdkit-exitlast-filter Exit on last client connection. nbdkit-exitwhen-filter Exit gracefully when an event occurs. @@ -875,6 +879,7 @@ export LIBGUESTFS_TRACE=1 %{_libdir}/%{name}/plugins/nbdkit-info-plugin.so %{_libdir}/%{name}/plugins/nbdkit-memory-plugin.so %{_libdir}/%{name}/plugins/nbdkit-ondemand-plugin.so +%{_libdir}/%{name}/plugins/nbdkit-ones-plugin.so %{_libdir}/%{name}/plugins/nbdkit-partitioning-plugin.so %{_libdir}/%{name}/plugins/nbdkit-pattern-plugin.so %{_libdir}/%{name}/plugins/nbdkit-random-plugin.so @@ -890,6 +895,7 @@ export LIBGUESTFS_TRACE=1 %{_mandir}/man1/nbdkit-info-plugin.1* %{_mandir}/man1/nbdkit-memory-plugin.1* %{_mandir}/man1/nbdkit-ondemand-plugin.1* +%{_mandir}/man1/nbdkit-ones-plugin.1* %{_mandir}/man1/nbdkit-partitioning-plugin.1* %{_mandir}/man1/nbdkit-pattern-plugin.1* %{_mandir}/man1/nbdkit-random-plugin.1* @@ -1094,6 +1100,7 @@ export LIBGUESTFS_TRACE=1 %{_libdir}/%{name}/filters/nbdkit-ddrescue-filter.so %{_libdir}/%{name}/filters/nbdkit-delay-filter.so %{_libdir}/%{name}/filters/nbdkit-error-filter.so +%{_libdir}/%{name}/filters/nbdkit-evil-filter.so %{_libdir}/%{name}/filters/nbdkit-exitlast-filter.so %{_libdir}/%{name}/filters/nbdkit-exitwhen-filter.so %{_libdir}/%{name}/filters/nbdkit-exportname-filter.so @@ -1130,6 +1137,7 @@ export LIBGUESTFS_TRACE=1 %{_mandir}/man1/nbdkit-ddrescue-filter.1* %{_mandir}/man1/nbdkit-delay-filter.1* %{_mandir}/man1/nbdkit-error-filter.1* +%{_mandir}/man1/nbdkit-evil-filter.1* %{_mandir}/man1/nbdkit-exitlast-filter.1* %{_mandir}/man1/nbdkit-exitwhen-filter.1* %{_mandir}/man1/nbdkit-exportname-filter.1* @@ -1243,6 +1251,11 @@ export LIBGUESTFS_TRACE=1 %changelog +* Thu May 18 2023 Richard W.M. Jones - 1.35.3-1 +- New upstream development version 1.35.3 +- New plugin: ones +- New filter: evil + * Wed May 10 2023 Richard W.M. Jones - 1.35.2-1 - New upstream development version 1.35.2 diff --git a/sources b/sources index a59ff2d..b8c1193 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.35.2.tar.gz) = 09fde258a14c1cd44440affd55623159721e84ec3fa01b13d73ea753200924650248583afb88ccd0d009533ce22554f3c3793035592f04614dabd0c56fc670ed -SHA512 (nbdkit-1.35.2.tar.gz.sig) = 47d295f8a7f003ccd23984f1a4fb462d1622c8fa2c69fcdf5e37bfb569404e5978858970213611865f70fd42c34900fec775d3c0bf9a13b2643e001b333d3fe2 +SHA512 (nbdkit-1.35.3.tar.gz) = 67ef835b3f6ee0acf252b9d801ff28553f59a6bb129bb24a4f5de63f8d02d067f811fdd28fed31d8e0e9efc0f108ede9ff20be94f8b350db5f13ee620fea3aa9 +SHA512 (nbdkit-1.35.3.tar.gz.sig) = e51ecf330622da3ec7521c603a713bacb8f6ac67ace5b30d62a6fc2ed6ae0010548c989e3180ce043a4a06b034525ad241049a5d3587138841b6741121ea0559 From 08486052a03908970a6c76dcf802edb8ed4c6a98 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sun, 28 May 2023 17:44:15 +0100 Subject: [PATCH 131/298] New upstream development version 1.35.4 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 4a14b67..90013f4 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 %global source_directory 1.35-development Name: nbdkit -Version: 1.35.3 +Version: 1.35.4 Release: 1%{?dist} Summary: NBD server @@ -1251,6 +1251,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Sat May 28 2023 Richard W.M. Jones - 1.35.4-1 +- New upstream development version 1.35.4 + * Thu May 18 2023 Richard W.M. Jones - 1.35.3-1 - New upstream development version 1.35.3 - New plugin: ones diff --git a/sources b/sources index b8c1193..0dfd32d 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.35.3.tar.gz) = 67ef835b3f6ee0acf252b9d801ff28553f59a6bb129bb24a4f5de63f8d02d067f811fdd28fed31d8e0e9efc0f108ede9ff20be94f8b350db5f13ee620fea3aa9 -SHA512 (nbdkit-1.35.3.tar.gz.sig) = e51ecf330622da3ec7521c603a713bacb8f6ac67ace5b30d62a6fc2ed6ae0010548c989e3180ce043a4a06b034525ad241049a5d3587138841b6741121ea0559 +SHA512 (nbdkit-1.35.4.tar.gz) = 0a7f60eff375c6c435ea652da087eb2dda8470ab5996756b9f7e91b455cad25ffbbd153086dc339a6ffe68fe44e617248848b73d063d3c194bfa49e67679324e +SHA512 (nbdkit-1.35.4.tar.gz.sig) = ca228696cb57acc16c404fa71004ac6de1165fc92ee3c0a8467a6317aa615586e9add3d3b356285d90851173a113e7ebe274a71f4637dad919e25baff8dedbc0 From 109833d2f3f77b737c4b3c7ba087a4bb9e259fe9 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 5 Jun 2023 15:53:11 +0100 Subject: [PATCH 132/298] Migrated to SPDX license --- nbdkit.spec | 42 ++++++------------------------------------ 1 file changed, 6 insertions(+), 36 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 90013f4..509af3b 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -53,10 +53,10 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.35.4 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server -License: BSD +License: BSD-3-Clause URL: https://gitlab.com/nbdkit/nbdkit %if 0%{?rhel} >= 8 @@ -194,7 +194,6 @@ reading the nbdkit(1) and nbdkit-plugin(3) manual pages. %package server Summary: The %{name} server -License: BSD %description server This package contains the %{name} server with only the null plugin @@ -205,7 +204,6 @@ the metapackage "nbdkit". %package basic-plugins Summary: Basic plugins for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} @@ -249,7 +247,6 @@ nbdkit-zero-plugin Zero-length plugin for testing. %package example-plugins Summary: Example plugins for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} %if !0%{?rhel} # example4 is written in Perl. @@ -266,7 +263,6 @@ This package contains example plugins for %{name}. %if !0%{?rhel} %package blkio-plugin Summary: libblkio NVMe, vhost-user, vDPA, VFIO plugin for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} %description blkio-plugin @@ -278,7 +274,6 @@ for %{name}. %if !0%{?rhel} %package cc-plugin Summary: Write small inline C plugins and scripts for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} Requires: gcc Requires: %{_bindir}/cat @@ -293,7 +288,6 @@ in C, install %{name}-devel for that. %if !0%{?rhel} %package cdi-plugin Summary: Containerized Data Import plugin for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} Requires: jq Requires: podman @@ -305,7 +299,6 @@ This package contains Containerized Data Import support for %{name}. %package curl-plugin Summary: HTTP/FTP (cURL) plugin for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} %description curl-plugin @@ -315,7 +308,6 @@ This package contains cURL (HTTP/FTP) support for %{name}. %if !0%{?rhel} && 0%{?have_libguestfs} %package guestfs-plugin Summary: libguestfs plugin for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} %description guestfs-plugin @@ -326,7 +318,6 @@ This package is a libguestfs plugin for %{name}. %if !0%{?rhel} %package iso-plugin Summary: Virtual ISO 9660 plugin for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} Requires: xorriso @@ -338,7 +329,6 @@ This package is a virtual ISO 9660 (CD-ROM) plugin for %{name}. %if !0%{?rhel} %package libvirt-plugin Summary: Libvirt plugin for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} %description libvirt-plugin @@ -350,7 +340,6 @@ virDomainBlockPeek API. %package linuxdisk-plugin Summary: Virtual Linux disk plugin for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} # for mke2fs Requires: e2fsprogs @@ -362,7 +351,6 @@ This package is a virtual Linux disk plugin for %{name}. %if !0%{?rhel} %package lua-plugin Summary: Lua plugin for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} %description lua-plugin @@ -372,7 +360,6 @@ This package lets you write Lua plugins for %{name}. %package nbd-plugin Summary: NBD proxy / forward plugin for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} %description nbd-plugin @@ -383,7 +370,6 @@ to another NBD server. %if !0%{?rhel} && 0%{?have_ocaml} %package ocaml-plugin Summary: OCaml plugin for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} %description ocaml-plugin @@ -395,7 +381,6 @@ To compile OCaml plugins you will also need to install %package ocaml-plugin-devel Summary: OCaml development environment for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} Requires: %{name}-ocaml-plugin%{?_isa} = %{version}-%{release} @@ -407,7 +392,6 @@ This package lets you write OCaml plugins for %{name}. %if !0%{?rhel} %package perl-plugin Summary: Perl plugin for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} %description perl-plugin @@ -417,7 +401,6 @@ This package lets you write Perl plugins for %{name}. %package python-plugin Summary: Python 3 plugin for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} %description python-plugin @@ -427,7 +410,6 @@ This package lets you write Python 3 plugins for %{name}. %if !0%{?rhel} %package ruby-plugin Summary: Ruby plugin for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} %description ruby-plugin @@ -440,7 +422,6 @@ This package lets you write Ruby plugins for %{name}. # which varies across architectures, RPM does not allow this. %package S3-plugin Summary: Amazon S3 and Ceph plugin for %{name} -License: BSD Requires: %{name}-python-plugin >= 1.22 # XXX Should not need to add this. Requires: python3-boto3 @@ -453,7 +434,6 @@ or Ceph using %{name}. %package ssh-plugin Summary: SSH plugin for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} %description ssh-plugin @@ -463,7 +443,6 @@ This package contains SSH support for %{name}. %if !0%{?rhel} %package tcl-plugin Summary: Tcl plugin for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} %description tcl-plugin @@ -473,7 +452,6 @@ This package lets you write Tcl plugins for %{name}. %package tmpdisk-plugin Summary: Remote temporary filesystem disk plugin for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} # For mkfs and mke2fs (defaults). Requires: util-linux, e2fsprogs @@ -490,7 +468,6 @@ This package is a remote temporary filesystem disk plugin for %{name}. %if !0%{?rhel} %package torrent-plugin Summary: BitTorrent plugin for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} %description torrent-plugin @@ -501,7 +478,6 @@ This package is a BitTorrent plugin for %{name}. %ifarch x86_64 %package vddk-plugin Summary: VMware VDDK plugin for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} # https://bugzilla.redhat.com/show_bug.cgi?id=1931818 Requires: libxcrypt-compat @@ -514,7 +490,6 @@ VMware VDDK for accessing VMware disks and servers. %package basic-filters Summary: Basic filters for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} %description basic-filters @@ -600,7 +575,6 @@ nbdkit-truncate-filter Truncate, expand, round up or round down size. %if !0%{?rhel} %package ext2-filter Summary: ext2, ext3 and ext4 filesystem support for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} %description ext2-filter @@ -611,7 +585,6 @@ This package contains ext2, ext3 and ext4 filesystem support for %package gzip-filter Summary: GZip filter for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} %description gzip-filter @@ -620,7 +593,6 @@ This package is a gzip filter for %{name}. %package stats-filter Summary: Statistics filter for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} %description stats-filter @@ -629,7 +601,6 @@ Display statistics about operations. %package tar-filter Summary: Tar archive filter for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} Requires: tar Obsoletes: %{name}-tar-plugin < 1.23.9-3 @@ -640,7 +611,6 @@ This package is a tar archive filter for %{name}. %package xz-filter Summary: XZ filter for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} %description xz-filter @@ -649,7 +619,6 @@ This package is the xz filter for %{name}. %package devel Summary: Development files and documentation for %{name} -License: BSD Requires: %{name}-server%{?_isa} = %{version}-%{release} Requires: pkgconfig @@ -661,7 +630,6 @@ plugins for %{name}. %package srpm-macros Summary: RPM Provides rules for %{name} plugins and filters -License: BSD BuildArch: noarch %description srpm-macros @@ -671,7 +639,6 @@ for %{name} plugins and filters found in the plugins directory. %package bash-completion Summary: Bash tab-completion for %{name} -License: BSD BuildArch: noarch Requires: bash-completion >= 2.0 Requires: %{name}-server = %{version}-%{release} @@ -1251,7 +1218,10 @@ export LIBGUESTFS_TRACE=1 %changelog -* Sat May 28 2023 Richard W.M. Jones - 1.35.4-1 +* Mon Jun 05 2023 Richard W.M. Jones - 1.35.4-2 +- Migrated to SPDX license + +* Sun May 28 2023 Richard W.M. Jones - 1.35.4-1 - New upstream development version 1.35.4 * Thu May 18 2023 Richard W.M. Jones - 1.35.3-1 From 9f6c48148951dd913b160b54bd0dc7e41636ebae Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 12 Jun 2023 12:10:26 +0100 Subject: [PATCH 133/298] New upstream development version 1.35.5 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 509af3b..9fb091a 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,8 +52,8 @@ ExclusiveArch: x86_64 %global source_directory 1.35-development Name: nbdkit -Version: 1.35.4 -Release: 2%{?dist} +Version: 1.35.5 +Release: 1%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1218,6 +1218,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Mon Jun 12 2023 Richard W.M. Jones - 1.35.5-1 +- New upstream development version 1.35.5 + * Mon Jun 05 2023 Richard W.M. Jones - 1.35.4-2 - Migrated to SPDX license diff --git a/sources b/sources index 0dfd32d..a96756c 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.35.4.tar.gz) = 0a7f60eff375c6c435ea652da087eb2dda8470ab5996756b9f7e91b455cad25ffbbd153086dc339a6ffe68fe44e617248848b73d063d3c194bfa49e67679324e -SHA512 (nbdkit-1.35.4.tar.gz.sig) = ca228696cb57acc16c404fa71004ac6de1165fc92ee3c0a8467a6317aa615586e9add3d3b356285d90851173a113e7ebe274a71f4637dad919e25baff8dedbc0 +SHA512 (nbdkit-1.35.5.tar.gz) = aa0ddefa6073a20bda78bcc2a4295429a7f2ad98fe3bc3f0b7d6275878b3ec1ffb99e2a4cb0abc470d7c104179de627181ac1afacc991e37114f574f4da2b7d7 +SHA512 (nbdkit-1.35.5.tar.gz.sig) = 170e0d3d7d79811026ad313f1bb315685ba674319c76e42648c14bd0f300f28ec9304eae77e0e4489308229e73ac98469bfb0f2095ee091aa5b26e53f29a0ec0 From 58685c7530ced78b7aa1d9e261f6c3ae0cf9b34a Mon Sep 17 00:00:00 2001 From: Python Maint Date: Tue, 4 Jul 2023 11:42:56 +0200 Subject: [PATCH 134/298] Rebuilt for Python 3.12 --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 9fb091a..f26926e 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -53,7 +53,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.35.5 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1218,6 +1218,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Jul 04 2023 Python Maint - 1.35.5-2 +- Rebuilt for Python 3.12 + * Mon Jun 12 2023 Richard W.M. Jones - 1.35.5-1 - New upstream development version 1.35.5 From b95296db1f4a073d02166e19bed606c69d38d37c Mon Sep 17 00:00:00 2001 From: Jerry James Date: Mon, 10 Jul 2023 16:36:47 -0600 Subject: [PATCH 135/298] OCaml 5.0.0 rebuild --- nbdkit.spec | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index f26926e..a3454a9 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -1,4 +1,3 @@ -%undefine _package_note_flags %global _hardened_build 1 %ifarch %{kernel_arches} @@ -53,7 +52,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.35.5 -Release: 2%{?dist} +Release: 3%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1218,6 +1217,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Mon Jul 10 2023 Jerry James - 1.35.5-3 +- OCaml 5.0.0 rebuild + * Tue Jul 04 2023 Python Maint - 1.35.5-2 - Rebuilt for Python 3.12 From 7d3324c5fb2ff35d7f9cddc1c3152b2675b282ad Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Tue, 11 Jul 2023 15:55:16 +0200 Subject: [PATCH 136/298] Perl 5.38 rebuild --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index a3454a9..4793d7c 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.35.5 -Release: 3%{?dist} +Release: 4%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1217,6 +1217,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Jul 11 2023 Jitka Plesnikova - 1.35.5-4 +- Perl 5.38 rebuild + * Mon Jul 10 2023 Jerry James - 1.35.5-3 - OCaml 5.0.0 rebuild From 6f30fc0cb68268a9f06905df60a57b12837fbbdd Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 12 Jul 2023 15:01:29 +0100 Subject: [PATCH 137/298] OCaml 5.0 rebuild for Fedora 39 --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 4793d7c..e7dcb76 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.35.5 -Release: 4%{?dist} +Release: 5%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1217,6 +1217,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Wed Jul 12 2023 Richard W.M. Jones - 1.35.5-5 +- OCaml 5.0 rebuild for Fedora 39 + * Tue Jul 11 2023 Jitka Plesnikova - 1.35.5-4 - Perl 5.38 rebuild From 3fc58c8fb651c858cfb7555ec9353dddfb670f1e Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 12 Jul 2023 15:22:55 +0100 Subject: [PATCH 138/298] Add all upstream patches These are needed to get OCaml 5 to work. --- ...nfo-Remove-bogus-test-requires-of-gu.patch | 41 ++ ...-optional-tar-option-in-help-output-.patch | 43 ++ 0003-tar-Implement-tar-limit.patch | 193 ++++++++ ...sage-to-refer-to-xz-max-block-parame.patch | 40 ++ ...Recommend-using-g-with-OCAMLOPTFLAGS.patch | 27 + ..._plugin.ml-Print-a-message-when-test.patch | 32 ++ ...ml-Add-I-unix-before-using-unix.cmxa.patch | 124 +++++ ...ml_leave_blocking_section-with-caml_.patch | 468 ++++++++++++++++++ ...egister-the-global-root-and-free-the.patch | 65 +++ ...-Fix-thread-registration-for-OCaml-5.patch | 375 ++++++++++++++ ...aml.sh-Use-nbdkit-v-option-to-help-w.patch | 26 + ...s-Replace-SRCDIR-with-abs_top_srcdir.patch | 324 ++++++++++++ ...t-read-password-Remove-use-of-SRCDIR.patch | 55 ++ ...-tests-Stop-setting-SRCDIR-for-tests.patch | 28 ++ ...-add-L.-plugins-ocaml-.libs-to-find-.patch | 44 ++ nbdkit.spec | 20 +- 16 files changed, 1904 insertions(+), 1 deletion(-) create mode 100644 0001-tests-test-tar-info-Remove-bogus-test-requires-of-gu.patch create mode 100644 0002-tar-Document-the-optional-tar-option-in-help-output-.patch create mode 100644 0003-tar-Implement-tar-limit.patch create mode 100644 0004-xz-Fix-error-message-to-refer-to-xz-max-block-parame.patch create mode 100644 0005-configure-Recommend-using-g-with-OCAMLOPTFLAGS.patch create mode 100644 0006-tests-test_ocaml_plugin.ml-Print-a-message-when-test.patch create mode 100644 0007-ocaml-Add-I-unix-before-using-unix.cmxa.patch create mode 100644 0008-ocaml-Replace-caml_leave_blocking_section-with-caml_.patch create mode 100644 0009-ocaml-Always-unregister-the-global-root-and-free-the.patch create mode 100644 0010-ocaml-Fix-thread-registration-for-OCaml-5.patch create mode 100644 0011-tests-test-cc-ocaml.sh-Use-nbdkit-v-option-to-help-w.patch create mode 100644 0012-tests-Replace-SRCDIR-with-abs_top_srcdir.patch create mode 100644 0013-tests-test-read-password-Remove-use-of-SRCDIR.patch create mode 100644 0014-tests-Stop-setting-SRCDIR-for-tests.patch create mode 100644 0015-tests-Explicitly-add-L.-plugins-ocaml-.libs-to-find-.patch diff --git a/0001-tests-test-tar-info-Remove-bogus-test-requires-of-gu.patch b/0001-tests-test-tar-info-Remove-bogus-test-requires-of-gu.patch new file mode 100644 index 0000000..3047bcf --- /dev/null +++ b/0001-tests-test-tar-info-Remove-bogus-test-requires-of-gu.patch @@ -0,0 +1,41 @@ +From d2e335b2d05e68c1fc7ed9b507fd5cafc172a112 Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Tue, 13 Jun 2023 20:11:34 +0100 +Subject: [PATCH 01/15] tests/test-tar-info*: Remove bogus test requires of + guestfish + +These tests don't need guestfish so don't test for it. + +Fixes: commit 05b49f89dccb0ca3fd0919e9502c54dbcadf0b73 +--- + tests/test-tar-info-xz.sh | 1 - + tests/test-tar-info.sh | 1 - + 2 files changed, 2 deletions(-) + +diff --git a/tests/test-tar-info-xz.sh b/tests/test-tar-info-xz.sh +index 1f968e9b8..abd854974 100755 +--- a/tests/test-tar-info-xz.sh ++++ b/tests/test-tar-info-xz.sh +@@ -37,7 +37,6 @@ set -e + set -x + + requires test -f disk +-requires guestfish --version + requires tar --version + requires qemu-img --version + requires qemu-img info --output=json /dev/null +diff --git a/tests/test-tar-info.sh b/tests/test-tar-info.sh +index 572768b85..5c015d88e 100755 +--- a/tests/test-tar-info.sh ++++ b/tests/test-tar-info.sh +@@ -37,7 +37,6 @@ set -e + set -x + + requires test -f disk +-requires guestfish --version + requires tar --version + requires qemu-img --version + requires qemu-img info --output=json /dev/null +-- +2.41.0 + diff --git a/0002-tar-Document-the-optional-tar-option-in-help-output-.patch b/0002-tar-Document-the-optional-tar-option-in-help-output-.patch new file mode 100644 index 0000000..84be7bc --- /dev/null +++ b/0002-tar-Document-the-optional-tar-option-in-help-output-.patch @@ -0,0 +1,43 @@ +From eb44ca26a84c369a7908f19517c0a2f8f621d57f Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Tue, 13 Jun 2023 20:25:40 +0100 +Subject: [PATCH 02/15] tar: Document the optional tar option in --help output + and synopsis + +Fixes: commit 05b49f89dccb0ca3fd0919e9502c54dbcadf0b73 +--- + filters/tar/nbdkit-tar-filter.pod | 1 + + filters/tar/tar.c | 5 +++-- + 2 files changed, 4 insertions(+), 2 deletions(-) + +diff --git a/filters/tar/nbdkit-tar-filter.pod b/filters/tar/nbdkit-tar-filter.pod +index 96aba16d9..eb0cfd4ab 100644 +--- a/filters/tar/nbdkit-tar-filter.pod ++++ b/filters/tar/nbdkit-tar-filter.pod +@@ -5,6 +5,7 @@ nbdkit-tar-filter - read and write files inside tar files without unpacking + =head1 SYNOPSIS + + nbdkit file FILENAME.tar --filter=tar tar-entry=PATH_INSIDE_TAR ++ [tar=TAR_COMMAND] + + =head1 EXAMPLES + +diff --git a/filters/tar/tar.c b/filters/tar/tar.c +index c650a3499..f3adb2c46 100644 +--- a/filters/tar/tar.c ++++ b/filters/tar/tar.c +@@ -96,8 +96,9 @@ tar_config_complete (nbdkit_next_config_complete *next, + return next (nxdata); + } + +-#define tar_config_help \ +- "tar-entry= (required) The path inside the tar file to serve." ++#define tar_config_help \ ++ "tar-entry= (required) The path inside the tar file to serve.\n" \ ++ "tar= Path of the tar binary." + + static int + tar_thread_model (void) +-- +2.41.0 + diff --git a/0003-tar-Implement-tar-limit.patch b/0003-tar-Implement-tar-limit.patch new file mode 100644 index 0000000..cd54c95 --- /dev/null +++ b/0003-tar-Implement-tar-limit.patch @@ -0,0 +1,193 @@ +From ae3fb4def811f5bc42563128e8fae0a4288584d1 Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Tue, 13 Jun 2023 20:01:05 +0100 +Subject: [PATCH 03/15] tar: Implement tar-limit + +This can be used to ensure that the tar filter does not read +indefinite amounts of input when opening the tar file. + +See: https://github.com/kubevirt/containerized-data-importer/pull/2748#issuecomment-1589852102 +--- + filters/tar/nbdkit-tar-filter.pod | 24 +++++++++++- + tests/Makefile.am | 2 + + filters/tar/tar.c | 10 +++++ + tests/test-tar-limit.sh | 65 +++++++++++++++++++++++++++++++ + 4 files changed, 99 insertions(+), 2 deletions(-) + create mode 100755 tests/test-tar-limit.sh + +diff --git a/filters/tar/nbdkit-tar-filter.pod b/filters/tar/nbdkit-tar-filter.pod +index eb0cfd4ab..a3c2d1328 100644 +--- a/filters/tar/nbdkit-tar-filter.pod ++++ b/filters/tar/nbdkit-tar-filter.pod +@@ -4,8 +4,9 @@ nbdkit-tar-filter - read and write files inside tar files without unpacking + + =head1 SYNOPSIS + +- nbdkit file FILENAME.tar --filter=tar tar-entry=PATH_INSIDE_TAR +- [tar=TAR_COMMAND] ++ nbdkit file FILENAME.tar ++ --filter=tar tar-entry=PATH_INSIDE_TAR ++ [tar=TAR_COMMAND] [tar-limit=SIZE] + + =head1 EXAMPLES + +@@ -83,6 +84,25 @@ The path of the file inside the tarball to serve. This parameter is + required. It must exactly match the name stored in the tarball, so + use S> + ++=item [B]SIZE ++ ++When opening the tar file we have to locate the file (C) ++inside the tarball. Because tar files do not have a central index we ++must iterate over the tar file to find the entry, and that may be ++costly (especially with untrusted tar files). In the worst case where ++C starts near the end of the file we may have to iterate ++over the whole tar file. If this is a problem you may set ++C to some smaller value, eg: ++ ++ nbdkit -r curl https://example.com/file.tar \ ++ --filter=tar tar-entry=disk.img \ ++ tar-limit=10M ++ ++which ensures no more than 10 megabytes are read before we give up and ++reject the tar file (sending an error back to the NBD client). ++ ++The default is 0 meaning no limit. ++ + =item B + + =item B/PATH/TO/GTAR +diff --git a/tests/Makefile.am b/tests/Makefile.am +index 6694e409e..f2912aa93 100644 +--- a/tests/Makefile.am ++++ b/tests/Makefile.am +@@ -1957,11 +1957,13 @@ TESTS += \ + test-tar.sh \ + test-tar-info.sh \ + test-tar-info-xz.sh \ ++ test-tar-limit.sh \ + $(NULL) + EXTRA_DIST += \ + test-tar.sh \ + test-tar-info.sh \ + test-tar-info-xz.sh \ ++ test-tar-limit.sh \ + $(NULL) + + # truncate filter tests. +diff --git a/filters/tar/tar.c b/filters/tar/tar.c +index f3adb2c46..efe47684d 100644 +--- a/filters/tar/tar.c ++++ b/filters/tar/tar.c +@@ -53,6 +53,7 @@ + #include "utils.h" + + static const char *entry; /* File within tar (tar-entry=...) */ ++static int64_t tar_limit = 0; + static const char *tar_program = "tar"; + + /* Offset and size within tarball. +@@ -76,6 +77,12 @@ tar_config (nbdkit_next_config *next, nbdkit_backend *nxdata, + entry = value; + return 0; + } ++ else if (strcmp (key, "tar-limit") == 0) { ++ tar_limit = nbdkit_parse_size (value); ++ if (tar_limit == -1) ++ return -1; ++ return 0; ++ } + else if (strcmp (key, "tar") == 0) { + tar_program = value; + return 0; +@@ -98,6 +105,7 @@ tar_config_complete (nbdkit_next_config_complete *next, + + #define tar_config_help \ + "tar-entry= (required) The path inside the tar file to serve.\n" \ ++ "tar-limit=SIZE Limit on reading to find entry.\n" \ + "tar= Path of the tar binary." + + static int +@@ -197,6 +205,8 @@ calculate_offset_of_entry (nbdkit_next *next) + copysize = next->get_size (next); + if (copysize == -1) + return -1; ++ if (tar_limit > 0 && copysize > tar_limit) ++ copysize = tar_limit; + + /* Run the tar command. */ + nbdkit_debug ("%s", cmd); +diff --git a/tests/test-tar-limit.sh b/tests/test-tar-limit.sh +new file mode 100755 +index 000000000..168f2c497 +--- /dev/null ++++ b/tests/test-tar-limit.sh +@@ -0,0 +1,65 @@ ++#!/usr/bin/env bash ++# nbdkit ++# Copyright Red Hat ++# ++# Redistribution and use in source and binary forms, with or without ++# modification, are permitted provided that the following conditions are ++# met: ++# ++# * Redistributions of source code must retain the above copyright ++# notice, this list of conditions and the following disclaimer. ++# ++# * Redistributions in binary form must reproduce the above copyright ++# notice, this list of conditions and the following disclaimer in the ++# documentation and/or other materials provided with the distribution. ++# ++# * Neither the name of Red Hat nor the names of its contributors may be ++# used to endorse or promote products derived from this software without ++# specific prior written permission. ++# ++# THIS SOFTWARE IS PROVIDED BY RED HAT AND CONTRIBUTORS ''AS IS'' AND ++# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, ++# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A ++# PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL RED HAT OR ++# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ++# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ++# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF ++# USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ++# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, ++# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT ++# OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF ++# SUCH DAMAGE. ++ ++# Test the tar filter and tar-limit filter. ++ ++source ./functions.sh ++set -e ++set -x ++ ++requires test -f disk ++requires tar --version ++requires test -f disk ++requires_nbdinfo ++ ++tar_bad=tar-limit-bad.tar ++tar_good=tar-limit-good.tar ++tar_filler=tar-limit-filler.img ++files="$tar_bad $tar_good $tar_filler" ++rm -f $files ++cleanup_fn rm -f $files ++ ++# Create two tar files, one where the disk is located before an ++# arbitrary boundary and one after. ++truncate -s 1M $tar_filler ++tar cf $tar_good disk ++tar cf $tar_bad $tar_filler disk ++ ++# Check we can read the good disk and reject the bad disk. ++cmd="nbdkit -U - file --filter=tar tar-entry=disk tar-limit=131072" ++ ++$cmd $tar_good --run 'nbdinfo "$uri"' ++ ++if $cmd $tar_bad --run 'nbdinfo "$uri"' ; then ++ echo "ERROR: $0: expected $tar_bad to fail" ++ exit 1 ++fi +-- +2.41.0 + diff --git a/0004-xz-Fix-error-message-to-refer-to-xz-max-block-parame.patch b/0004-xz-Fix-error-message-to-refer-to-xz-max-block-parame.patch new file mode 100644 index 0000000..ed32847 --- /dev/null +++ b/0004-xz-Fix-error-message-to-refer-to-xz-max-block-parame.patch @@ -0,0 +1,40 @@ +From 35db543e38293808e910b291ff26b17284640ec9 Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Mon, 19 Jun 2023 13:53:09 +0100 +Subject: [PATCH 04/15] xz: Fix error message to refer to xz-max-block + parameter + +In the original xz plugin the parameter was called "maxblock", but +when we converted the plugin to a filter (commit c879d31047 "Rewrite +xz plugin as a filter.") we changed the parameter name to +"xz-max-block" but retained the old name in the error message. + +Fixes: commit c879d31047ae149cedabd5abbdb0a95e610f01c5 +--- + filters/xz/xz.c | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/filters/xz/xz.c b/filters/xz/xz.c +index 0c92cfff4..21e8993b5 100644 +--- a/filters/xz/xz.c ++++ b/filters/xz/xz.c +@@ -143,12 +143,12 @@ xz_prepare (nbdkit_next *next, void *handle, + return -1; + + if (maxblock < xzfile_max_uncompressed_block_size (h->xz)) { +- nbdkit_error ("xz file largest block is bigger than maxblock\n" ++ nbdkit_error ("xz file largest block is bigger than xz-max-block\n" + "Either recompress the xz file with smaller blocks " + "(see nbdkit-xz-filter(1))\n" +- "or make maxblock parameter bigger.\n" +- "maxblock = %" PRIu64 " (bytes)\n" +- "largest block in xz file = %" PRIu64 " (bytes)", ++ "or make xz-max-block parameter bigger.\n" ++ "Current xz-max-block = %" PRIu64 " (bytes)\n" ++ "Largest block in xz file = %" PRIu64 " (bytes)", + maxblock, + xzfile_max_uncompressed_block_size (h->xz)); + return -1; +-- +2.41.0 + diff --git a/0005-configure-Recommend-using-g-with-OCAMLOPTFLAGS.patch b/0005-configure-Recommend-using-g-with-OCAMLOPTFLAGS.patch new file mode 100644 index 0000000..6d419b0 --- /dev/null +++ b/0005-configure-Recommend-using-g-with-OCAMLOPTFLAGS.patch @@ -0,0 +1,27 @@ +From 4398b1871f8832109fcdbe25c70a1dd341ed5bd4 Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Wed, 21 Jun 2023 13:05:22 +0100 +Subject: [PATCH 05/15] configure: Recommend using -g with OCAMLOPTFLAGS + +--- + configure.ac | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index c1d83a568..39b58b44e 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -935,8 +935,8 @@ AC_SUBST([PYTHON_LDFLAGS]) + + dnl For the OCaml plugin, you can set OCAMLOPTFLAGS before running + dnl ./configure to specify any extra flags you want to pass to +-dnl ocamlopt. For example to enable OCaml warnings: +-dnl OCAMLOPTFLAGS="-warn-error +A-3" ++dnl ocamlopt. For example to enable debug symbols & warnings: ++dnl OCAMLOPTFLAGS="-g -warn-error +A-3" + AC_SUBST([OCAMLOPTFLAGS]) + + dnl Check for OCaml, for embedding in the ocaml plugin. +-- +2.41.0 + diff --git a/0006-tests-test_ocaml_plugin.ml-Print-a-message-when-test.patch b/0006-tests-test_ocaml_plugin.ml-Print-a-message-when-test.patch new file mode 100644 index 0000000..25fbbdb --- /dev/null +++ b/0006-tests-test_ocaml_plugin.ml-Print-a-message-when-test.patch @@ -0,0 +1,32 @@ +From b53b78e542fe8e49ce5c670e8ddc9d2be66f73cc Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Wed, 21 Jun 2023 18:47:40 +0100 +Subject: [PATCH 06/15] tests/test_ocaml_plugin.ml: Print a message when test + plugin initializes + +It's useful to have a message which is printed as the top level +statements in the plugin module are being initialized, for debugging +purposes. +--- + tests/test_ocaml_plugin.ml | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/tests/test_ocaml_plugin.ml b/tests/test_ocaml_plugin.ml +index 561a8690f..f8eed4f7f 100644 +--- a/tests/test_ocaml_plugin.ml ++++ b/tests/test_ocaml_plugin.ml +@@ -30,6 +30,11 @@ + * SUCH DAMAGE. + *) + ++(* Print something during module initialization, useful for debugging ++ * obscure OCaml startup issues. ++ *) ++let () = Printf.eprintf "test_ocaml_plugin.ml: module initializing\n%!" ++ + let sector_size = 512 + let nr_sectors = 2048 + +-- +2.41.0 + diff --git a/0007-ocaml-Add-I-unix-before-using-unix.cmxa.patch b/0007-ocaml-Add-I-unix-before-using-unix.cmxa.patch new file mode 100644 index 0000000..cb40bc2 --- /dev/null +++ b/0007-ocaml-Add-I-unix-before-using-unix.cmxa.patch @@ -0,0 +1,124 @@ +From b778c56443e11817d4974dcab5356e2d4065980b Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Wed, 21 Jun 2023 18:56:58 +0100 +Subject: [PATCH 07/15] ocaml: Add -I +unix before using unix.cmxa + +In OCaml 5.0 you will see this warning: + + Alert ocaml_deprecated_auto_include: + OCaml's lib directory layout changed in 5.0. The unix subdirectory has been + automatically added to the search path, but you should add -I +unix to the + command-line to silence this alert (e.g. by adding unix to the list of + libraries in your dune file, or adding use_unix to your _tags file for + ocamlbuild, or using -package unix for ocamlfind). + +Using -I +unix doesn't hurt earlier versions, as the directory is just +ignored if it doesn't exist, and anyway findlib adds the directory if +you're using that. +--- + plugins/cc/nbdkit-cc-plugin.pod | 4 ++-- + plugins/ocaml/nbdkit-ocaml-plugin.pod | 2 +- + plugins/ocaml/Makefile.am | 2 +- + tests/Makefile.am | 4 ++-- + tests/test-cc-ocaml.sh | 2 +- + tests/cc_shebang.ml | 2 +- + 6 files changed, 8 insertions(+), 8 deletions(-) + +diff --git a/plugins/cc/nbdkit-cc-plugin.pod b/plugins/cc/nbdkit-cc-plugin.pod +index 412233797..f55f74ab0 100644 +--- a/plugins/cc/nbdkit-cc-plugin.pod ++++ b/plugins/cc/nbdkit-cc-plugin.pod +@@ -89,7 +89,7 @@ C as a parameter to exec nbdkit. + =head2 Using this plugin with OCaml + + nbdkit cc CC=ocamlopt \ +- CFLAGS="-output-obj -runtime-variant _pic unix.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ ++ CFLAGS="-output-obj -runtime-variant _pic -I +unix unix.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ + source.ml + + OCaml plugin scripts can be created using this trick: +@@ -97,7 +97,7 @@ OCaml plugin scripts can be created using this trick: + (*/.)>/dev/null 2>&1 + exec nbdkit cc "$0" \ + CC=ocamlopt \ +- CFLAGS="-output-obj -runtime-variant _pic unix.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ ++ CFLAGS="-output-obj -runtime-variant _pic -I +unix unix.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ + "$@" + *) + (* followed by OCaml code for the plugin here *) +diff --git a/plugins/ocaml/nbdkit-ocaml-plugin.pod b/plugins/ocaml/nbdkit-ocaml-plugin.pod +index dc8260174..e4a8cf0b0 100644 +--- a/plugins/ocaml/nbdkit-ocaml-plugin.pod ++++ b/plugins/ocaml/nbdkit-ocaml-plugin.pod +@@ -53,7 +53,7 @@ using this command: + + ocamlopt.opt -output-obj -runtime-variant _pic \ + -o nbdkit-myplugin-plugin.so \ +- unix.cmxa NBDKit.cmx myplugin.ml \ ++ -I +unix unix.cmxa NBDKit.cmx myplugin.ml \ + -cclib -lnbdkitocaml + + You can then use C as an nbdkit plugin (see +diff --git a/plugins/ocaml/Makefile.am b/plugins/ocaml/Makefile.am +index da1b1ec96..e7faae506 100644 +--- a/plugins/ocaml/Makefile.am ++++ b/plugins/ocaml/Makefile.am +@@ -84,7 +84,7 @@ noinst_SCRIPTS = nbdkit-ocamlexample-plugin.so + nbdkit-ocamlexample-plugin.so: example.cmx libnbdkitocaml.la NBDKit.cmi NBDKit.cmx + $(OCAMLOPT) $(OCAMLOPTFLAGS) \ + -output-obj -runtime-variant _pic -o $@ \ +- unix.cmxa NBDKit.cmx $< \ ++ -I +unix unix.cmxa NBDKit.cmx $< \ + -cclib -L.libs -cclib -lnbdkitocaml + example.cmx: example.ml NBDKit.cmi NBDKit.cmx + $(OCAMLOPT) $(OCAMLOPTFLAGS) -c $< -o $@ +diff --git a/tests/Makefile.am b/tests/Makefile.am +index f2912aa93..d8a640e1e 100644 +--- a/tests/Makefile.am ++++ b/tests/Makefile.am +@@ -1185,7 +1185,7 @@ OCAML_PLUGIN_DEPS = \ + test-ocaml-plugin.so: test_ocaml_plugin.cmx $(OCAML_PLUGIN_DEPS) + $(OCAMLOPT) $(OCAMLOPTFLAGS) -I ../plugins/ocaml \ + -output-obj -runtime-variant _pic -o $@ \ +- unix.cmxa NBDKit.cmx $< \ ++ -I +unix unix.cmxa NBDKit.cmx $< \ + -cclib -L../plugins/ocaml/.libs -cclib -lnbdkitocaml + test_ocaml_plugin.cmx: test_ocaml_plugin.ml $(OCAML_PLUGIN_DEPS) + $(OCAMLOPT) $(OCAMLOPTFLAGS) -I ../plugins/ocaml -c $< -o $@ +@@ -1194,7 +1194,7 @@ test-ocaml-errorcodes-plugin.so: \ + test_ocaml_errorcodes_plugin.cmx $(OCAML_PLUGIN_DEPS) + $(OCAMLOPT) $(OCAMLOPTFLAGS) -I ../plugins/ocaml \ + -output-obj -runtime-variant _pic -o $@ \ +- unix.cmxa NBDKit.cmx $< \ ++ -I +unix unix.cmxa NBDKit.cmx $< \ + -cclib -L../plugins/ocaml/.libs -cclib -lnbdkitocaml + test_ocaml_errorcodes_plugin.cmx: \ + test_ocaml_errorcodes_plugin.ml $(OCAML_PLUGIN_DEPS) +diff --git a/tests/test-cc-ocaml.sh b/tests/test-cc-ocaml.sh +index 659fa195e..3b4f6a553 100755 +--- a/tests/test-cc-ocaml.sh ++++ b/tests/test-cc-ocaml.sh +@@ -61,6 +61,6 @@ cleanup_fn rm -f $out + rm -f $out + + nbdkit -U - cc $script a=1 b=2 c=3 d=4 \ +- CC="$OCAMLOPT" CFLAGS="-output-obj -runtime-variant _pic -I $SRCDIR/../plugins/ocaml unix.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ ++ CC="$OCAMLOPT" CFLAGS="-output-obj -runtime-variant _pic -I $SRCDIR/../plugins/ocaml -I +unix unix.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ + --run 'nbdinfo --size $uri' > $out + test "$(cat $out)" -eq $((512 * 2048)) +diff --git a/tests/cc_shebang.ml b/tests/cc_shebang.ml +index d78d76618..619b08bb5 100755 +--- a/tests/cc_shebang.ml ++++ b/tests/cc_shebang.ml +@@ -4,7 +4,7 @@ + # shell as an impossible command which is ignored. The line below is + # run by the shell and ignored by OCaml. + +-exec nbdkit cc "$0" CC=ocamlopt CFLAGS="-output-obj -runtime-variant _pic unix.cmxa NBDKit.cmx -cclib -lnbdkitocaml" "$@" ++exec nbdkit cc "$0" CC=ocamlopt CFLAGS="-output-obj -runtime-variant _pic -I +unix unix.cmxa NBDKit.cmx -cclib -lnbdkitocaml" "$@" + *) + + open Printf +-- +2.41.0 + diff --git a/0008-ocaml-Replace-caml_leave_blocking_section-with-caml_.patch b/0008-ocaml-Replace-caml_leave_blocking_section-with-caml_.patch new file mode 100644 index 0000000..f7ba249 --- /dev/null +++ b/0008-ocaml-Replace-caml_leave_blocking_section-with-caml_.patch @@ -0,0 +1,468 @@ +From f8b761c62f177176dfe154a95824576eef740827 Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Wed, 21 Jun 2023 19:07:00 +0100 +Subject: [PATCH 08/15] ocaml: Replace caml_leave_blocking_section with + caml_acquire_runtime_system + +Replace: + + caml_leave_blocking_section + ... + caml_enter_blocking_section + +with the more sensibly named (and equivalent): + + caml_acquire_runtime_system + ... + caml_release_runtime_system + +In addition we must release the runtime system just after caml_startup +and only acquire it around callbacks into OCaml code. (The reason for +this is only apparent in a later commit.) + +OCaml 5 is more strict than earlier versions of OCaml and actually +implements the locks using pthread_mutex_t. So in OCaml 5 you will +see a deadlock error: + + Fatal error: Fatal error during lock: Resource deadlock avoided + +which was caused by attempting to double lock (ie. trying to acquire +the lock, when we already held it from caml_startup). + +Also because of additional strictness we must acquire the lock even +before creating the stack frame with CAMLparam* functions. +--- + plugins/ocaml/plugin.h | 16 ++++----- + plugins/ocaml/plugin.c | 75 +++++++++++++++++++++++------------------- + 2 files changed, 49 insertions(+), 42 deletions(-) + +diff --git a/plugins/ocaml/plugin.h b/plugins/ocaml/plugin.h +index 572c43c04..3d6d27db1 100644 +--- a/plugins/ocaml/plugin.h ++++ b/plugins/ocaml/plugin.h +@@ -47,18 +47,18 @@ caml_alloc_initialized_string (mlsize_t len, const char *p) + #endif + + /* For functions which call into OCaml code, call +- * caml_leave_blocking_section() to prevent other threads running, +- * then caml_enter_blocking_section() on return to C code. This macro +- * ensures that the calls are paired properly. ++ * caml_acquire_runtime_system ... caml_release_runtime_system around ++ * the code. This prevents other threads in the same domain running. ++ * The macro ensures that the calls are paired properly. + */ +-#define LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE() \ +- __attribute__ ((unused, cleanup (cleanup_enter_blocking_section))) \ ++#define ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE() \ ++ __attribute__ ((unused, cleanup (cleanup_release_runtime_system))) \ + int _unused; \ +- caml_leave_blocking_section () ++ caml_acquire_runtime_system () + static inline void +-cleanup_enter_blocking_section (int *unused) ++cleanup_release_runtime_system (int *unused) + { +- caml_enter_blocking_section (); ++ caml_release_runtime_system (); + } + + #endif /* NBDKIT_OCAML_PLUGIN_H */ +diff --git a/plugins/ocaml/plugin.c b/plugins/ocaml/plugin.c +index 722b95e49..fe781f9af 100644 +--- a/plugins/ocaml/plugin.c ++++ b/plugins/ocaml/plugin.c +@@ -64,6 +64,12 @@ constructor (void) + + /* Initialize OCaml runtime. */ + caml_startup (argv); ++ ++ /* We need to release the runtime system here so other threads may ++ * use it. Before we call any OCaml callbacks we must acquire the ++ * runtime system again. ++ */ ++ caml_release_runtime_system (); + } + + /* Instead of using the NBDKIT_REGISTER_PLUGIN macro, we construct the +@@ -113,7 +119,7 @@ plugin_init (void) + static void + load_wrapper (void) + { +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + caml_callback (load_fn, Val_unit); + } + +@@ -123,8 +129,9 @@ load_wrapper (void) + static void + unload_wrapper (void) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); ++ + if (unload_fn) { +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + caml_callback (unload_fn, Val_unit); + } + +@@ -139,9 +146,9 @@ unload_wrapper (void) + static void + dump_plugin_wrapper (void) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + rv = caml_callback_exn (dump_plugin_fn, Val_unit); + if (Is_exception_result (rv)) +@@ -152,9 +159,9 @@ dump_plugin_wrapper (void) + static int + config_wrapper (const char *key, const char *val) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal3 (keyv, valv, rv); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + keyv = caml_copy_string (key); + valv = caml_copy_string (val); +@@ -171,9 +178,9 @@ config_wrapper (const char *key, const char *val) + static int + config_complete_wrapper (void) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + rv = caml_callback_exn (config_complete_fn, Val_unit); + if (Is_exception_result (rv)) { +@@ -187,9 +194,9 @@ config_complete_wrapper (void) + static int + thread_model_wrapper (void) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + rv = caml_callback_exn (thread_model_fn, Val_unit); + if (Is_exception_result (rv)) { +@@ -203,9 +210,9 @@ thread_model_wrapper (void) + static int + get_ready_wrapper (void) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + rv = caml_callback_exn (get_ready_fn, Val_unit); + if (Is_exception_result (rv)) { +@@ -219,9 +226,9 @@ get_ready_wrapper (void) + static int + after_fork_wrapper (void) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + rv = caml_callback_exn (after_fork_fn, Val_unit); + if (Is_exception_result (rv)) { +@@ -235,9 +242,9 @@ after_fork_wrapper (void) + static void + cleanup_wrapper (void) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + rv = caml_callback_exn (cleanup_fn, Val_unit); + if (Is_exception_result (rv)) { +@@ -251,9 +258,9 @@ cleanup_wrapper (void) + static int + preconnect_wrapper (int readonly) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + rv = caml_callback_exn (preconnect_fn, Val_bool (readonly)); + if (Is_exception_result (rv)) { +@@ -267,9 +274,9 @@ preconnect_wrapper (int readonly) + static int + list_exports_wrapper (int readonly, int is_tls, struct nbdkit_exports *exports) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal2 (rv, v); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + rv = caml_callback2_exn (list_exports_fn, Val_bool (readonly), + Val_bool (is_tls)); +@@ -299,10 +306,10 @@ list_exports_wrapper (int readonly, int is_tls, struct nbdkit_exports *exports) + static const char * + default_export_wrapper (int readonly, int is_tls) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); + const char *name; +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + rv = caml_callback2_exn (default_export_fn, Val_bool (readonly), + Val_bool (is_tls)); +@@ -318,10 +325,10 @@ default_export_wrapper (int readonly, int is_tls) + static void * + open_wrapper (int readonly) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); + value *ret; +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + rv = caml_callback_exn (open_fn, Val_bool (readonly)); + if (Is_exception_result (rv)) { +@@ -341,9 +348,9 @@ open_wrapper (int readonly) + static void + close_wrapper (void *h) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + rv = caml_callback_exn (close_fn, *(value *) h); + if (Is_exception_result (rv)) { +@@ -360,10 +367,10 @@ close_wrapper (void *h) + static const char * + export_description_wrapper (void *h) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); + const char *desc; +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + rv = caml_callback_exn (export_description_fn, *(value *) h); + if (Is_exception_result (rv)) { +@@ -378,10 +385,10 @@ export_description_wrapper (void *h) + static int64_t + get_size_wrapper (void *h) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); + int64_t r; +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + rv = caml_callback_exn (get_size_fn, *(value *) h); + if (Is_exception_result (rv)) { +@@ -397,11 +404,11 @@ static int + block_size_wrapper (void *h, + uint32_t *minimum, uint32_t *preferred, uint32_t *maximum) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); + int i; + int64_t i64; +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + rv = caml_callback_exn (block_size_fn, *(value *) h); + if (Is_exception_result (rv)) { +@@ -439,9 +446,9 @@ block_size_wrapper (void *h, + static int + can_write_wrapper (void *h) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + rv = caml_callback_exn (can_write_fn, *(value *) h); + if (Is_exception_result (rv)) { +@@ -455,9 +462,9 @@ can_write_wrapper (void *h) + static int + can_flush_wrapper (void *h) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + rv = caml_callback_exn (can_flush_fn, *(value *) h); + if (Is_exception_result (rv)) { +@@ -471,9 +478,9 @@ can_flush_wrapper (void *h) + static int + is_rotational_wrapper (void *h) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + rv = caml_callback_exn (is_rotational_fn, *(value *) h); + if (Is_exception_result (rv)) { +@@ -487,9 +494,9 @@ is_rotational_wrapper (void *h) + static int + can_trim_wrapper (void *h) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + rv = caml_callback_exn (can_trim_fn, *(value *) h); + if (Is_exception_result (rv)) { +@@ -503,9 +510,9 @@ can_trim_wrapper (void *h) + static int + can_zero_wrapper (void *h) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + rv = caml_callback_exn (can_zero_fn, *(value *) h); + if (Is_exception_result (rv)) { +@@ -519,9 +526,9 @@ can_zero_wrapper (void *h) + static int + can_fua_wrapper (void *h) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + rv = caml_callback_exn (can_fua_fn, *(value *) h); + if (Is_exception_result (rv)) { +@@ -535,9 +542,9 @@ can_fua_wrapper (void *h) + static int + can_fast_zero_wrapper (void *h) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + rv = caml_callback_exn (can_fast_zero_fn, *(value *) h); + if (Is_exception_result (rv)) { +@@ -551,9 +558,9 @@ can_fast_zero_wrapper (void *h) + static int + can_cache_wrapper (void *h) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + rv = caml_callback_exn (can_cache_fn, *(value *) h); + if (Is_exception_result (rv)) { +@@ -567,9 +574,9 @@ can_cache_wrapper (void *h) + static int + can_extents_wrapper (void *h) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + rv = caml_callback_exn (can_extents_fn, *(value *) h); + if (Is_exception_result (rv)) { +@@ -583,9 +590,9 @@ can_extents_wrapper (void *h) + static int + can_multi_conn_wrapper (void *h) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + rv = caml_callback_exn (can_multi_conn_fn, *(value *) h); + if (Is_exception_result (rv)) { +@@ -629,10 +636,10 @@ static int + pread_wrapper (void *h, void *buf, uint32_t count, uint64_t offset, + uint32_t flags) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal4 (rv, countv, offsetv, flagsv); + mlsize_t len; +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + countv = Val_int (count); + offsetv = caml_copy_int64 (offset); +@@ -659,9 +666,9 @@ static int + pwrite_wrapper (void *h, const void *buf, uint32_t count, uint64_t offset, + uint32_t flags) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal4 (rv, strv, offsetv, flagsv); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + strv = caml_alloc_initialized_string (count, buf); + offsetv = caml_copy_int64 (offset); +@@ -680,9 +687,9 @@ pwrite_wrapper (void *h, const void *buf, uint32_t count, uint64_t offset, + static int + flush_wrapper (void *h, uint32_t flags) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal2 (rv, flagsv); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + flagsv = Val_flags (flags); + +@@ -698,9 +705,9 @@ flush_wrapper (void *h, uint32_t flags) + static int + trim_wrapper (void *h, uint32_t count, uint64_t offset, uint32_t flags) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal4 (rv, countv, offsetv, flagsv); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + countv = caml_copy_int64 (count); + offsetv = caml_copy_int64 (offset); +@@ -719,9 +726,9 @@ trim_wrapper (void *h, uint32_t count, uint64_t offset, uint32_t flags) + static int + zero_wrapper (void *h, uint32_t count, uint64_t offset, uint32_t flags) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal4 (rv, countv, offsetv, flagsv); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + countv = caml_copy_int64 (count); + offsetv = caml_copy_int64 (offset); +@@ -741,9 +748,9 @@ static int + extents_wrapper (void *h, uint32_t count, uint64_t offset, uint32_t flags, + struct nbdkit_extents *extents) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal5 (rv, countv, offsetv, flagsv, v); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + countv = caml_copy_int64 (count); + offsetv = caml_copy_int64 (offset); +@@ -781,9 +788,9 @@ extents_wrapper (void *h, uint32_t count, uint64_t offset, uint32_t flags, + static int + cache_wrapper (void *h, uint32_t count, uint64_t offset, uint32_t flags) + { ++ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal4 (rv, countv, offsetv, flagsv); +- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); + + countv = caml_copy_int64 (count); + offsetv = caml_copy_int64 (offset); +-- +2.41.0 + diff --git a/0009-ocaml-Always-unregister-the-global-root-and-free-the.patch b/0009-ocaml-Always-unregister-the-global-root-and-free-the.patch new file mode 100644 index 0000000..2380388 --- /dev/null +++ b/0009-ocaml-Always-unregister-the-global-root-and-free-the.patch @@ -0,0 +1,65 @@ +From f4d5f179c9be6db3c39bc0752e36f262c3f87716 Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Wed, 21 Jun 2023 20:15:46 +0100 +Subject: [PATCH 09/15] ocaml: Always unregister the global root and free the + handle + +If the OCaml code did not provide a close method, we would never call +close_wrapper, and then we ended up leaking the global root and handle. +--- + plugins/ocaml/plugin.c | 18 ++++++++++++++---- + 1 file changed, 14 insertions(+), 4 deletions(-) + +diff --git a/plugins/ocaml/plugin.c b/plugins/ocaml/plugin.c +index fe781f9af..a4671d6ed 100644 +--- a/plugins/ocaml/plugin.c ++++ b/plugins/ocaml/plugin.c +@@ -76,6 +76,7 @@ constructor (void) + * nbdkit_plugin struct and return it from our own plugin_init + * function. + */ ++static void close_wrapper (void *h); + static void unload_wrapper (void); + static void free_strings (void); + static void remove_roots (void); +@@ -92,6 +93,10 @@ static struct nbdkit_plugin plugin = { + */ + .name = NULL, + ++ /* We always call these, even if the OCaml code does not provide a ++ * callback. ++ */ ++ .close = close_wrapper, + .unload = unload_wrapper, + }; + +@@ -345,6 +350,9 @@ open_wrapper (int readonly) + CAMLreturnT (void *, ret); + } + ++/* We always have a close function, since we need to unregister the ++ * global root and free the handle. ++ */ + static void + close_wrapper (void *h) + { +@@ -352,10 +360,12 @@ close_wrapper (void *h) + CAMLparam0 (); + CAMLlocal1 (rv); + +- rv = caml_callback_exn (close_fn, *(value *) h); +- if (Is_exception_result (rv)) { +- nbdkit_error ("%s", caml_format_exception (Extract_exception (rv))); +- /*FALLTHROUGH*/ ++ if (close_fn) { ++ rv = caml_callback_exn (close_fn, *(value *) h); ++ if (Is_exception_result (rv)) { ++ nbdkit_error ("%s", caml_format_exception (Extract_exception (rv))); ++ /*FALLTHROUGH*/ ++ } + } + + caml_remove_generational_global_root (h); +-- +2.41.0 + diff --git a/0010-ocaml-Fix-thread-registration-for-OCaml-5.patch b/0010-ocaml-Fix-thread-registration-for-OCaml-5.patch new file mode 100644 index 0000000..05982d0 --- /dev/null +++ b/0010-ocaml-Fix-thread-registration-for-OCaml-5.patch @@ -0,0 +1,375 @@ +From 9d4b87e0338d45456c0506fd2c25b80f7ef6b1e1 Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Wed, 21 Jun 2023 20:18:58 +0100 +Subject: [PATCH 10/15] ocaml: Fix thread registration for OCaml 5 + +OCaml 5 is strict about registering threads before calling OCaml heap +functions, and will abort the program with this error if you don't do +this correctly: + + Fatal error: no domain lock held + +Fix this as explained in the comment. + +Note (as it's not explained well in the documentation): Threads +created from C are placed in OCaml thread domain 0. In order to add +them to this domain, the main program must not hold on to the runtime +system lock (for domain 0, because that's what caml_startup gives +you). For this to work we must only hold this lock in the main +program briefly around calls to OCaml code, which means we must +release the runtime system after calling caml_startup as we did in an +earlier commit. +--- + plugins/cc/nbdkit-cc-plugin.pod | 4 +-- + plugins/ocaml/nbdkit-ocaml-plugin.pod | 3 +- + plugins/ocaml/Makefile.am | 2 +- + tests/Makefile.am | 4 +-- + plugins/ocaml/plugin.c | 52 +++++++++++++++++++++++++-- + tests/test-cc-ocaml.sh | 2 +- + tests/cc_shebang.ml | 2 +- + 7 files changed, 59 insertions(+), 10 deletions(-) + +diff --git a/plugins/cc/nbdkit-cc-plugin.pod b/plugins/cc/nbdkit-cc-plugin.pod +index f55f74ab0..e393457c4 100644 +--- a/plugins/cc/nbdkit-cc-plugin.pod ++++ b/plugins/cc/nbdkit-cc-plugin.pod +@@ -89,7 +89,7 @@ C as a parameter to exec nbdkit. + =head2 Using this plugin with OCaml + + nbdkit cc CC=ocamlopt \ +- CFLAGS="-output-obj -runtime-variant _pic -I +unix unix.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ ++ CFLAGS="-output-obj -runtime-variant _pic -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ + source.ml + + OCaml plugin scripts can be created using this trick: +@@ -97,7 +97,7 @@ OCaml plugin scripts can be created using this trick: + (*/.)>/dev/null 2>&1 + exec nbdkit cc "$0" \ + CC=ocamlopt \ +- CFLAGS="-output-obj -runtime-variant _pic -I +unix unix.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ ++ CFLAGS="-output-obj -runtime-variant _pic -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ + "$@" + *) + (* followed by OCaml code for the plugin here *) +diff --git a/plugins/ocaml/nbdkit-ocaml-plugin.pod b/plugins/ocaml/nbdkit-ocaml-plugin.pod +index e4a8cf0b0..f1e06d3e2 100644 +--- a/plugins/ocaml/nbdkit-ocaml-plugin.pod ++++ b/plugins/ocaml/nbdkit-ocaml-plugin.pod +@@ -53,7 +53,8 @@ using this command: + + ocamlopt.opt -output-obj -runtime-variant _pic \ + -o nbdkit-myplugin-plugin.so \ +- -I +unix unix.cmxa NBDKit.cmx myplugin.ml \ ++ -I +unix unix.cmxa -I +threads threads.cmxa \ ++ NBDKit.cmx myplugin.ml \ + -cclib -lnbdkitocaml + + You can then use C as an nbdkit plugin (see +diff --git a/plugins/ocaml/Makefile.am b/plugins/ocaml/Makefile.am +index e7faae506..a61550cb9 100644 +--- a/plugins/ocaml/Makefile.am ++++ b/plugins/ocaml/Makefile.am +@@ -84,7 +84,7 @@ noinst_SCRIPTS = nbdkit-ocamlexample-plugin.so + nbdkit-ocamlexample-plugin.so: example.cmx libnbdkitocaml.la NBDKit.cmi NBDKit.cmx + $(OCAMLOPT) $(OCAMLOPTFLAGS) \ + -output-obj -runtime-variant _pic -o $@ \ +- -I +unix unix.cmxa NBDKit.cmx $< \ ++ -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx $< \ + -cclib -L.libs -cclib -lnbdkitocaml + example.cmx: example.ml NBDKit.cmi NBDKit.cmx + $(OCAMLOPT) $(OCAMLOPTFLAGS) -c $< -o $@ +diff --git a/tests/Makefile.am b/tests/Makefile.am +index d8a640e1e..32ebb7002 100644 +--- a/tests/Makefile.am ++++ b/tests/Makefile.am +@@ -1185,7 +1185,7 @@ OCAML_PLUGIN_DEPS = \ + test-ocaml-plugin.so: test_ocaml_plugin.cmx $(OCAML_PLUGIN_DEPS) + $(OCAMLOPT) $(OCAMLOPTFLAGS) -I ../plugins/ocaml \ + -output-obj -runtime-variant _pic -o $@ \ +- -I +unix unix.cmxa NBDKit.cmx $< \ ++ -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx $< \ + -cclib -L../plugins/ocaml/.libs -cclib -lnbdkitocaml + test_ocaml_plugin.cmx: test_ocaml_plugin.ml $(OCAML_PLUGIN_DEPS) + $(OCAMLOPT) $(OCAMLOPTFLAGS) -I ../plugins/ocaml -c $< -o $@ +@@ -1194,7 +1194,7 @@ test-ocaml-errorcodes-plugin.so: \ + test_ocaml_errorcodes_plugin.cmx $(OCAML_PLUGIN_DEPS) + $(OCAMLOPT) $(OCAMLOPTFLAGS) -I ../plugins/ocaml \ + -output-obj -runtime-variant _pic -o $@ \ +- -I +unix unix.cmxa NBDKit.cmx $< \ ++ -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx $< \ + -cclib -L../plugins/ocaml/.libs -cclib -lnbdkitocaml + test_ocaml_errorcodes_plugin.cmx: \ + test_ocaml_errorcodes_plugin.ml $(OCAML_PLUGIN_DEPS) +diff --git a/plugins/ocaml/plugin.c b/plugins/ocaml/plugin.c +index a4671d6ed..eaa88a925 100644 +--- a/plugins/ocaml/plugin.c ++++ b/plugins/ocaml/plugin.c +@@ -260,9 +260,31 @@ cleanup_wrapper (void) + CAMLreturn0; + } + ++/* A note about nbdkit threads and OCaml: ++ * ++ * OCaml requires that all C threads are registered and unregistered. ++ * ++ * For the main thread callbacks like load, config, get_ready [above ++ * this comment] we don't need to do anything. ++ * ++ * For the connected callbacks [below this comment] nbdkit creates its ++ * own threads but does not provide a way to intercept thread creation ++ * or destruction. However we can register the current thread in ++ * every callback, and unregister the thread only call_wrapper. ++ * ++ * This is safe and cheap: Registering a thread is basically free if ++ * the thread is already registered (the OCaml code checks a ++ * thread-local variable to see if it needs to register). nbdkit will ++ * always call the .close method, which does not necessarily indicate ++ * that the thread is being destroyed, but if the thread is reused we ++ * will register the same thread again when .open or similar is called ++ * next time. ++ */ ++ + static int + preconnect_wrapper (int readonly) + { ++ caml_c_thread_register (); + ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +@@ -279,6 +301,7 @@ preconnect_wrapper (int readonly) + static int + list_exports_wrapper (int readonly, int is_tls, struct nbdkit_exports *exports) + { ++ caml_c_thread_register (); + ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal2 (rv, v); +@@ -311,6 +334,7 @@ list_exports_wrapper (int readonly, int is_tls, struct nbdkit_exports *exports) + static const char * + default_export_wrapper (int readonly, int is_tls) + { ++ caml_c_thread_register (); + ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +@@ -330,6 +354,7 @@ default_export_wrapper (int readonly, int is_tls) + static void * + open_wrapper (int readonly) + { ++ caml_c_thread_register (); + ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +@@ -351,12 +376,13 @@ open_wrapper (int readonly) + } + + /* We always have a close function, since we need to unregister the +- * global root and free the handle. ++ * global root, free the handle and unregister the thread. + */ + static void + close_wrapper (void *h) + { +- ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); ++ caml_c_thread_register (); ++ caml_acquire_runtime_system (); + CAMLparam0 (); + CAMLlocal1 (rv); + +@@ -370,6 +396,8 @@ close_wrapper (void *h) + + caml_remove_generational_global_root (h); + free (h); ++ caml_release_runtime_system (); ++ caml_c_thread_unregister (); + + CAMLreturn0; + } +@@ -377,6 +405,7 @@ close_wrapper (void *h) + static const char * + export_description_wrapper (void *h) + { ++ caml_c_thread_register (); + ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +@@ -395,6 +424,7 @@ export_description_wrapper (void *h) + static int64_t + get_size_wrapper (void *h) + { ++ caml_c_thread_register (); + ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +@@ -414,6 +444,7 @@ static int + block_size_wrapper (void *h, + uint32_t *minimum, uint32_t *preferred, uint32_t *maximum) + { ++ caml_c_thread_register (); + ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +@@ -456,6 +487,7 @@ block_size_wrapper (void *h, + static int + can_write_wrapper (void *h) + { ++ caml_c_thread_register (); + ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +@@ -472,6 +504,7 @@ can_write_wrapper (void *h) + static int + can_flush_wrapper (void *h) + { ++ caml_c_thread_register (); + ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +@@ -488,6 +521,7 @@ can_flush_wrapper (void *h) + static int + is_rotational_wrapper (void *h) + { ++ caml_c_thread_register (); + ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +@@ -504,6 +538,7 @@ is_rotational_wrapper (void *h) + static int + can_trim_wrapper (void *h) + { ++ caml_c_thread_register (); + ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +@@ -520,6 +555,7 @@ can_trim_wrapper (void *h) + static int + can_zero_wrapper (void *h) + { ++ caml_c_thread_register (); + ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +@@ -536,6 +572,7 @@ can_zero_wrapper (void *h) + static int + can_fua_wrapper (void *h) + { ++ caml_c_thread_register (); + ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +@@ -552,6 +589,7 @@ can_fua_wrapper (void *h) + static int + can_fast_zero_wrapper (void *h) + { ++ caml_c_thread_register (); + ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +@@ -568,6 +606,7 @@ can_fast_zero_wrapper (void *h) + static int + can_cache_wrapper (void *h) + { ++ caml_c_thread_register (); + ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +@@ -584,6 +623,7 @@ can_cache_wrapper (void *h) + static int + can_extents_wrapper (void *h) + { ++ caml_c_thread_register (); + ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +@@ -600,6 +640,7 @@ can_extents_wrapper (void *h) + static int + can_multi_conn_wrapper (void *h) + { ++ caml_c_thread_register (); + ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal1 (rv); +@@ -646,6 +687,7 @@ static int + pread_wrapper (void *h, void *buf, uint32_t count, uint64_t offset, + uint32_t flags) + { ++ caml_c_thread_register (); + ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal4 (rv, countv, offsetv, flagsv); +@@ -676,6 +718,7 @@ static int + pwrite_wrapper (void *h, const void *buf, uint32_t count, uint64_t offset, + uint32_t flags) + { ++ caml_c_thread_register (); + ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal4 (rv, strv, offsetv, flagsv); +@@ -697,6 +740,7 @@ pwrite_wrapper (void *h, const void *buf, uint32_t count, uint64_t offset, + static int + flush_wrapper (void *h, uint32_t flags) + { ++ caml_c_thread_register (); + ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal2 (rv, flagsv); +@@ -715,6 +759,7 @@ flush_wrapper (void *h, uint32_t flags) + static int + trim_wrapper (void *h, uint32_t count, uint64_t offset, uint32_t flags) + { ++ caml_c_thread_register (); + ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal4 (rv, countv, offsetv, flagsv); +@@ -736,6 +781,7 @@ trim_wrapper (void *h, uint32_t count, uint64_t offset, uint32_t flags) + static int + zero_wrapper (void *h, uint32_t count, uint64_t offset, uint32_t flags) + { ++ caml_c_thread_register (); + ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal4 (rv, countv, offsetv, flagsv); +@@ -758,6 +804,7 @@ static int + extents_wrapper (void *h, uint32_t count, uint64_t offset, uint32_t flags, + struct nbdkit_extents *extents) + { ++ caml_c_thread_register (); + ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal5 (rv, countv, offsetv, flagsv, v); +@@ -798,6 +845,7 @@ extents_wrapper (void *h, uint32_t count, uint64_t offset, uint32_t flags, + static int + cache_wrapper (void *h, uint32_t count, uint64_t offset, uint32_t flags) + { ++ caml_c_thread_register (); + ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); + CAMLparam0 (); + CAMLlocal4 (rv, countv, offsetv, flagsv); +diff --git a/tests/test-cc-ocaml.sh b/tests/test-cc-ocaml.sh +index 3b4f6a553..9458201a4 100755 +--- a/tests/test-cc-ocaml.sh ++++ b/tests/test-cc-ocaml.sh +@@ -61,6 +61,6 @@ cleanup_fn rm -f $out + rm -f $out + + nbdkit -U - cc $script a=1 b=2 c=3 d=4 \ +- CC="$OCAMLOPT" CFLAGS="-output-obj -runtime-variant _pic -I $SRCDIR/../plugins/ocaml -I +unix unix.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ ++ CC="$OCAMLOPT" CFLAGS="-output-obj -runtime-variant _pic -I $SRCDIR/../plugins/ocaml -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ + --run 'nbdinfo --size $uri' > $out + test "$(cat $out)" -eq $((512 * 2048)) +diff --git a/tests/cc_shebang.ml b/tests/cc_shebang.ml +index 619b08bb5..05ca77b64 100755 +--- a/tests/cc_shebang.ml ++++ b/tests/cc_shebang.ml +@@ -4,7 +4,7 @@ + # shell as an impossible command which is ignored. The line below is + # run by the shell and ignored by OCaml. + +-exec nbdkit cc "$0" CC=ocamlopt CFLAGS="-output-obj -runtime-variant _pic -I +unix unix.cmxa NBDKit.cmx -cclib -lnbdkitocaml" "$@" ++exec nbdkit cc "$0" CC=ocamlopt CFLAGS="-output-obj -runtime-variant _pic -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx -cclib -lnbdkitocaml" "$@" + *) + + open Printf +-- +2.41.0 + diff --git a/0011-tests-test-cc-ocaml.sh-Use-nbdkit-v-option-to-help-w.patch b/0011-tests-test-cc-ocaml.sh-Use-nbdkit-v-option-to-help-w.patch new file mode 100644 index 0000000..fc8045c --- /dev/null +++ b/0011-tests-test-cc-ocaml.sh-Use-nbdkit-v-option-to-help-w.patch @@ -0,0 +1,26 @@ +From c78266258709e2cbe6f0e869c866d09ad72c072c Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Thu, 22 Jun 2023 10:33:31 +0100 +Subject: [PATCH 11/15] tests/test-cc-ocaml.sh: Use nbdkit -v option to help + with debugging + +--- + tests/test-cc-ocaml.sh | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tests/test-cc-ocaml.sh b/tests/test-cc-ocaml.sh +index 9458201a4..fc1335591 100755 +--- a/tests/test-cc-ocaml.sh ++++ b/tests/test-cc-ocaml.sh +@@ -60,7 +60,7 @@ out=test-cc-ocaml.out + cleanup_fn rm -f $out + rm -f $out + +-nbdkit -U - cc $script a=1 b=2 c=3 d=4 \ ++nbdkit -v -U - cc $script a=1 b=2 c=3 d=4 \ + CC="$OCAMLOPT" CFLAGS="-output-obj -runtime-variant _pic -I $SRCDIR/../plugins/ocaml -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ + --run 'nbdinfo --size $uri' > $out + test "$(cat $out)" -eq $((512 * 2048)) +-- +2.41.0 + diff --git a/0012-tests-Replace-SRCDIR-with-abs_top_srcdir.patch b/0012-tests-Replace-SRCDIR-with-abs_top_srcdir.patch new file mode 100644 index 0000000..991b3a7 --- /dev/null +++ b/0012-tests-Replace-SRCDIR-with-abs_top_srcdir.patch @@ -0,0 +1,324 @@ +From d968c4858847388e515bc1ef84ff4479c18a414d Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Thu, 22 Jun 2023 10:44:10 +0100 +Subject: [PATCH 12/15] tests: Replace $SRCDIR with $abs_top_srcdir + +functions.sh defines $abs_top_srcdir so there's no need to use $SRCDIR +in any test scripts. +--- + tests/test-cc-cpp.sh | 9 ++------- + tests/test-cc-ocaml.sh | 9 ++------- + tests/test-cc.sh | 9 ++------- + tests/test-python-exception.sh | 12 +++++------- + tests/test-python-export-list.sh | 8 +++----- + tests/test-python-export-name.sh | 8 +++----- + tests/test-python-thread-model.sh | 13 +++++-------- + tests/test-read-password-interactive.sh | 2 +- + tests/test-read-password.sh | 2 +- + tests/test-shebang-cc-ocaml.sh | 3 +-- + tests/test-shebang-cc.sh | 5 ++--- + tests/test-shebang-perl.sh | 4 ++-- + tests/test-shebang-python.sh | 4 ++-- + 13 files changed, 31 insertions(+), 57 deletions(-) + +diff --git a/tests/test-cc-cpp.sh b/tests/test-cc-cpp.sh +index 9a4c16242..7c7bf6353 100755 +--- a/tests/test-cc-cpp.sh ++++ b/tests/test-cc-cpp.sh +@@ -37,12 +37,7 @@ source ./functions.sh + set -e + set -x + +-if test "$SRCDIR" = ""; then +- echo "$0: \$SRCDIR is not set" +- exit 1 +-fi +- +-script=$SRCDIR/test-cc-cpp.cpp ++script=$abs_top_srcdir/tests/test-cc-cpp.cpp + if test ! -f "$script"; then + echo "$0: could not locate test-cc-cpp.cpp" + exit 1 +@@ -59,6 +54,6 @@ rm -f $out + + nbdkit -U - cc $script \ + CC="$CXX" \ +- EXTRA_CFLAGS="-I$SRCDIR/../include" \ ++ EXTRA_CFLAGS="-I$abs_top_srcdir/include" \ + --run 'nbdinfo --size $uri' > $out + test "$(cat $out)" -eq $((100 * 1024 * 1024)) +diff --git a/tests/test-cc-ocaml.sh b/tests/test-cc-ocaml.sh +index fc1335591..db7d252cf 100755 +--- a/tests/test-cc-ocaml.sh ++++ b/tests/test-cc-ocaml.sh +@@ -37,12 +37,7 @@ source ./functions.sh + set -e + set -x + +-if test "$SRCDIR" = ""; then +- echo "$0: \$SRCDIR is not set" +- exit 1 +-fi +- +-script=$SRCDIR/test_ocaml_plugin.ml ++script=$abs_top_srcdir/tests/test_ocaml_plugin.ml + if test ! -f "$script"; then + echo "$0: could not locate test_ocaml_plugin.ml" + exit 1 +@@ -61,6 +56,6 @@ cleanup_fn rm -f $out + rm -f $out + + nbdkit -v -U - cc $script a=1 b=2 c=3 d=4 \ +- CC="$OCAMLOPT" CFLAGS="-output-obj -runtime-variant _pic -I $SRCDIR/../plugins/ocaml -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ ++ CC="$OCAMLOPT" CFLAGS="-output-obj -runtime-variant _pic -I $abs_top_srcdir/plugins/ocaml -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ + --run 'nbdinfo --size $uri' > $out + test "$(cat $out)" -eq $((512 * 2048)) +diff --git a/tests/test-cc.sh b/tests/test-cc.sh +index 2a719d314..5214327bd 100755 +--- a/tests/test-cc.sh ++++ b/tests/test-cc.sh +@@ -37,12 +37,7 @@ source ./functions.sh + set -e + set -x + +-if test "$SRCDIR" = ""; then +- echo "$0: \$SRCDIR is not set" +- exit 1 +-fi +- +-script=$SRCDIR/cc-shebang.c ++script=$abs_top_srcdir/tests/cc-shebang.c + if test ! -f "$script"; then + echo "$0: could not locate cc-shebang.c" + exit 1 +@@ -57,6 +52,6 @@ cleanup_fn rm -f $out + rm -f $out + + nbdkit -U - cc $script \ +- EXTRA_CFLAGS="-I$SRCDIR/../include" \ ++ EXTRA_CFLAGS="-I$abs_top_srcdir/include" \ + --run 'nbdinfo --size $uri' > $out + test "$(cat $out)" -eq $((100 * 1024 * 1024)) +diff --git a/tests/test-python-exception.sh b/tests/test-python-exception.sh +index a9fb146a6..54c29e66e 100755 +--- a/tests/test-python-exception.sh ++++ b/tests/test-python-exception.sh +@@ -34,23 +34,21 @@ source ./functions.sh + set -e + set -x + +-if test ! -d "$SRCDIR"; then +- echo "$0: could not locate python-exception.py" +- exit 1 +-fi +- + skip_if_valgrind "because Python code leaks memory" + ++script=$abs_top_srcdir/tests/python-exception.py ++test -f "$script" ++ + output=test-python-exception.out + rm -f $output + cleanup_fn rm -f $output + +-nbdkit -f -v python $SRCDIR/python-exception.py test=simple > $output 2>&1 ||: ++nbdkit -f -v python $script test=simple > $output 2>&1 ||: + cat $output + + grep 'this is the test string' $output + +-nbdkit -f -v python $SRCDIR/python-exception.py test=traceback > $output 2>&1 ||: ++nbdkit -f -v python $script test=traceback > $output 2>&1 ||: + cat $output + + grep 'raise_error1' $output +diff --git a/tests/test-python-export-list.sh b/tests/test-python-export-list.sh +index 49ca62e49..08774b9f3 100755 +--- a/tests/test-python-export-list.sh ++++ b/tests/test-python-export-list.sh +@@ -34,10 +34,8 @@ source ./functions.sh + set -e + set -x + +-if test ! -d "$SRCDIR"; then +- echo "$0: could not locate python-export-list.py" +- exit 1 +-fi ++script=$abs_top_srcdir/tests/python-export-list.py ++test -f "$script" + + skip_if_valgrind "because Python code leaks memory" + requires_nbdinfo +@@ -52,7 +50,7 @@ files="$pid $sock $out" + rm -f $files + cleanup_fn rm -f $files + +-start_nbdkit -P $pid -U $sock python $SRCDIR/python-export-list.py ++start_nbdkit -P $pid -U $sock python $script + + nbdinfo --list --json nbd+unix://\?socket=$sock > $out + cat $out +diff --git a/tests/test-python-export-name.sh b/tests/test-python-export-name.sh +index 99f292d2a..7680ae1e0 100755 +--- a/tests/test-python-export-name.sh ++++ b/tests/test-python-export-name.sh +@@ -34,10 +34,8 @@ source ./functions.sh + set -e + set -x + +-if test ! -d "$SRCDIR"; then +- echo "$0: could not locate python-export-name.py" +- exit 1 +-fi ++script=$abs_top_srcdir/tests/python-export-name.py ++test -f "$script" + + skip_if_valgrind "because Python code leaks memory" + requires nbdsh --version +@@ -48,7 +46,7 @@ files="$pid $sock" + rm -f $files + cleanup_fn rm -f $files + +-start_nbdkit -P $pid -U $sock python $SRCDIR/python-export-name.py ++start_nbdkit -P $pid -U $sock python $script + + # Try to read back various export names from the plugin. + for e in "" "test" "/" "//" " " "/ " "?" "テスト" "-n" '\\' $'\n' "%%" \ +diff --git a/tests/test-python-thread-model.sh b/tests/test-python-thread-model.sh +index 69b3d5c76..a0dea2386 100755 +--- a/tests/test-python-thread-model.sh ++++ b/tests/test-python-thread-model.sh +@@ -34,22 +34,19 @@ source ./functions.sh + set -e + set -x + +-SCRIPT="$SRCDIR/python-thread-model.py" +-if ! test -d "$SRCDIR" || ! test -f "$SCRIPT"; then +- echo "$0: could not locate python-thread-model.py" +- exit 1 +-fi ++script="$abs_top_srcdir/tests/python-thread-model.py" ++test -f "$script" + + skip_if_valgrind "because Python code leaks memory" + requires nbdsh --version + + # Check the plugin is loadable. +-nbdkit python $SCRIPT --dump-plugin ++nbdkit python $script --dump-plugin + + # This test only works on modern Linux (with pipe2, accept4 etc) where + # we are able to issue parallel requests. Other platforms have more + # restrictive thread models. +-requires sh -c "nbdkit python $SCRIPT --dump-plugin | ++requires sh -c "nbdkit python $script --dump-plugin | + grep '^thread_model=parallel'" + + pid=test-python-thread-model.pid +@@ -58,7 +55,7 @@ files="$out $pid $sock" + rm -f $files + cleanup_fn rm -f $files + +-start_nbdkit -P $pid -U $sock python $SCRIPT ++start_nbdkit -P $pid -U $sock python $script + + export sock + nbdsh -c ' +diff --git a/tests/test-read-password-interactive.sh b/tests/test-read-password-interactive.sh +index 7af48492b..ee345872e 100755 +--- a/tests/test-read-password-interactive.sh ++++ b/tests/test-read-password-interactive.sh +@@ -36,7 +36,7 @@ set -x + + # This is an executable C script using nbdkit-cc-plugin. + requires_plugin cc +-plugin=$SRCDIR/test-read-password-plugin.c ++plugin=$abs_top_srcdir/tests/test-read-password-plugin.c + requires test -x $plugin + + # expect on macOS does not work for unclear reasons, skip it. +diff --git a/tests/test-read-password.sh b/tests/test-read-password.sh +index 234162bc3..d0033dceb 100755 +--- a/tests/test-read-password.sh ++++ b/tests/test-read-password.sh +@@ -36,7 +36,7 @@ set -x + + # This is an executable C script using nbdkit-cc-plugin. + requires_plugin cc +-plugin=$SRCDIR/test-read-password-plugin.c ++plugin=$abs_top_srcdir/tests/test-read-password-plugin.c + requires test -x $plugin + + # Since we are matching on error messages. +diff --git a/tests/test-shebang-cc-ocaml.sh b/tests/test-shebang-cc-ocaml.sh +index 41e2f3db5..9eebcf07c 100755 +--- a/tests/test-shebang-cc-ocaml.sh ++++ b/tests/test-shebang-cc-ocaml.sh +@@ -32,8 +32,7 @@ + + source ./functions.sh + +-script=$SRCDIR/cc_shebang.ml +- ++script=$abs_top_srcdir/tests/cc_shebang.ml + if test ! -f "$script"; then + echo "$0: could not locate cc_shebang.ml" + exit 1 +diff --git a/tests/test-shebang-cc.sh b/tests/test-shebang-cc.sh +index 6ae75abed..a5e557648 100755 +--- a/tests/test-shebang-cc.sh ++++ b/tests/test-shebang-cc.sh +@@ -35,8 +35,7 @@ + + source ./functions.sh + +-script=$SRCDIR/cc-shebang.c +- ++script=$abs_top_srcdir/tests/cc-shebang.c + if test ! -f "$script"; then + echo "$0: could not locate cc-shebang.c" + exit 1 +@@ -46,7 +45,7 @@ requires_plugin cc + requires guestfish --version + + $script -fv -U - \ +- EXTRA_CFLAGS="-I$SRCDIR/../include" \ ++ EXTRA_CFLAGS="-I$abs_top_srcdir/include" \ + --run ' + guestfish \ + add "" protocol:nbd server:unix:$unixsocket : \ +diff --git a/tests/test-shebang-perl.sh b/tests/test-shebang-perl.sh +index 5f35d75b4..65bb7a403 100755 +--- a/tests/test-shebang-perl.sh ++++ b/tests/test-shebang-perl.sh +@@ -34,9 +34,9 @@ source ./functions.sh + + pidfile=shebang-perl.pid + sock=$(mktemp -u /tmp/nbdkit-test-sock.XXXXXX) +-script=$SRCDIR/shebang.pl ++script=$abs_top_srcdir/tests/shebang.pl + +-if test ! -d "$SRCDIR"; then ++if test ! -f "$script"; then + echo "$0: could not locate shebang.pl" + exit 1 + fi +diff --git a/tests/test-shebang-python.sh b/tests/test-shebang-python.sh +index fb851de94..8674f2fa1 100755 +--- a/tests/test-shebang-python.sh ++++ b/tests/test-shebang-python.sh +@@ -34,9 +34,9 @@ source ./functions.sh + + pidfile=shebang-python.pid + sock=$(mktemp -u /tmp/nbdkit-test-sock.XXXXXX) +-script=$SRCDIR/shebang.py ++script=$abs_top_srcdir/tests/shebang.py + +-if test ! -d "$SRCDIR"; then ++if test ! -f "$script"; then + echo "$0: could not locate shebang.py" + exit 1 + fi +-- +2.41.0 + diff --git a/0013-tests-test-read-password-Remove-use-of-SRCDIR.patch b/0013-tests-test-read-password-Remove-use-of-SRCDIR.patch new file mode 100644 index 0000000..6ef088e --- /dev/null +++ b/0013-tests-test-read-password-Remove-use-of-SRCDIR.patch @@ -0,0 +1,55 @@ +From 92ae65f93d8ebeb09500552d7ebfc1e8149ded6f Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Thu, 22 Jun 2023 10:48:51 +0100 +Subject: [PATCH 13/15] tests/test-read-password*: Remove use of $SRCDIR + +These tests required exporting $abs_top_srcdir so that the plugin +(which is a C script) can use it. +--- + tests/test-read-password-interactive.sh | 3 +++ + tests/test-read-password.sh | 3 +++ + tests/test-read-password-plugin.c | 2 +- + 3 files changed, 7 insertions(+), 1 deletion(-) + +diff --git a/tests/test-read-password-interactive.sh b/tests/test-read-password-interactive.sh +index ee345872e..2738922f4 100755 +--- a/tests/test-read-password-interactive.sh ++++ b/tests/test-read-password-interactive.sh +@@ -39,6 +39,9 @@ requires_plugin cc + plugin=$abs_top_srcdir/tests/test-read-password-plugin.c + requires test -x $plugin + ++# This variable is used by $plugin. ++export abs_top_srcdir ++ + # expect on macOS does not work for unclear reasons, skip it. + requires_not test "$(uname)" = "Darwin" + +diff --git a/tests/test-read-password.sh b/tests/test-read-password.sh +index d0033dceb..8243d5491 100755 +--- a/tests/test-read-password.sh ++++ b/tests/test-read-password.sh +@@ -39,6 +39,9 @@ requires_plugin cc + plugin=$abs_top_srcdir/tests/test-read-password-plugin.c + requires test -x $plugin + ++# This variable is used by $plugin. ++export abs_top_srcdir ++ + # Since we are matching on error messages. + export LANG=C + +diff --git a/tests/test-read-password-plugin.c b/tests/test-read-password-plugin.c +index d8faea4e3..397f69d72 100755 +--- a/tests/test-read-password-plugin.c ++++ b/tests/test-read-password-plugin.c +@@ -1,5 +1,5 @@ + #if 0 +-exec nbdkit cc "$0" "$@" EXTRA_CFLAGS="-I.. -I${SRCDIR:-.}/../include" ++exec nbdkit cc "$0" "$@" EXTRA_CFLAGS="-I.. -I$abs_top_srcdir/include" + #endif + /* nbdkit + * Copyright Red Hat +-- +2.41.0 + diff --git a/0014-tests-Stop-setting-SRCDIR-for-tests.patch b/0014-tests-Stop-setting-SRCDIR-for-tests.patch new file mode 100644 index 0000000..d61725d --- /dev/null +++ b/0014-tests-Stop-setting-SRCDIR-for-tests.patch @@ -0,0 +1,28 @@ +From 2e3dcb2a720e4258b54d04ffd081c5159783df8e Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Thu, 22 Jun 2023 10:50:17 +0100 +Subject: [PATCH 14/15] tests: Stop setting $SRCDIR for tests + +Since no tests use this variable any longer we can stop setting it. + +However note that make-psk.sh still uses the same-named (but not +connected) variable. +--- + tests/Makefile.am | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/tests/Makefile.am b/tests/Makefile.am +index 32ebb7002..2921076de 100644 +--- a/tests/Makefile.am ++++ b/tests/Makefile.am +@@ -63,7 +63,6 @@ EXTRA_PROGRAMS = + # Use the 'direct' backend, and ensure maximum libguestfs debugging. + # Enable libnbd debugging. + TESTS_ENVIRONMENT = \ +- SRCDIR=$(srcdir) \ + LIBGUESTFS_ATTACH_METHOD=appliance \ + LIBGUESTFS_DEBUG=1 \ + LIBGUESTFS_TRACE=1 \ +-- +2.41.0 + diff --git a/0015-tests-Explicitly-add-L.-plugins-ocaml-.libs-to-find-.patch b/0015-tests-Explicitly-add-L.-plugins-ocaml-.libs-to-find-.patch new file mode 100644 index 0000000..ca09a13 --- /dev/null +++ b/0015-tests-Explicitly-add-L.-plugins-ocaml-.libs-to-find-.patch @@ -0,0 +1,44 @@ +From 3e4c1b79a72970c17cb42b21070e61ec634a38bb Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Thu, 22 Jun 2023 11:15:27 +0100 +Subject: [PATCH 15/15] tests: Explicitly add -L../plugins/ocaml/.libs to find + -lnbdkitocaml + +The actual libnbdkitocaml.so library is located in +plugins/ocaml/.libs, but we were only specifying plugins/ocaml as the +search path. How did it ever work? Turns out using LD_LIBRARY_PATH +set in wrapper.c. It seems unreliable to rely on this, so set the +path properly, as we are already doing elsewhere. +--- + tests/test-cc-ocaml.sh | 2 +- + tests/cc_shebang.ml | 2 +- + 2 files changed, 2 insertions(+), 2 deletions(-) + +diff --git a/tests/test-cc-ocaml.sh b/tests/test-cc-ocaml.sh +index db7d252cf..97a1c89e3 100755 +--- a/tests/test-cc-ocaml.sh ++++ b/tests/test-cc-ocaml.sh +@@ -56,6 +56,6 @@ cleanup_fn rm -f $out + rm -f $out + + nbdkit -v -U - cc $script a=1 b=2 c=3 d=4 \ +- CC="$OCAMLOPT" CFLAGS="-output-obj -runtime-variant _pic -I $abs_top_srcdir/plugins/ocaml -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ ++ CC="$OCAMLOPT" CFLAGS="-output-obj -runtime-variant _pic -I $abs_top_srcdir/plugins/ocaml -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx -cclib -L../plugins/ocaml/.libs -cclib -lnbdkitocaml" \ + --run 'nbdinfo --size $uri' > $out + test "$(cat $out)" -eq $((512 * 2048)) +diff --git a/tests/cc_shebang.ml b/tests/cc_shebang.ml +index 05ca77b64..57ad85791 100755 +--- a/tests/cc_shebang.ml ++++ b/tests/cc_shebang.ml +@@ -4,7 +4,7 @@ + # shell as an impossible command which is ignored. The line below is + # run by the shell and ignored by OCaml. + +-exec nbdkit cc "$0" CC=ocamlopt CFLAGS="-output-obj -runtime-variant _pic -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx -cclib -lnbdkitocaml" "$@" ++exec nbdkit cc "$0" CC=ocamlopt CFLAGS="-output-obj -runtime-variant _pic -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx -cclib -L../plugins/ocaml/.libs -cclib -lnbdkitocaml" "$@" + *) + + open Printf +-- +2.41.0 + diff --git a/nbdkit.spec b/nbdkit.spec index e7dcb76..9e6c161 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -45,7 +45,7 @@ ExclusiveArch: x86_64 %global verify_tarball_signature 1 # If there are patches which touch autotools files, set this to 1. -%global patches_touch_autotools %{nil} +%global patches_touch_autotools 1 # The source directory. %global source_directory 1.35-development @@ -78,6 +78,24 @@ Source3: copy-patches.sh Source4: nbdkit.attr Source5: nbdkit-find-provides +# All upstream patches since 1.35.5 was released. These are needed +# to fix OCaml 5 builds. +Patch: 0001-tests-test-tar-info-Remove-bogus-test-requires-of-gu.patch +Patch: 0002-tar-Document-the-optional-tar-option-in-help-output-.patch +Patch: 0003-tar-Implement-tar-limit.patch +Patch: 0004-xz-Fix-error-message-to-refer-to-xz-max-block-parame.patch +Patch: 0005-configure-Recommend-using-g-with-OCAMLOPTFLAGS.patch +Patch: 0006-tests-test_ocaml_plugin.ml-Print-a-message-when-test.patch +Patch: 0007-ocaml-Add-I-unix-before-using-unix.cmxa.patch +Patch: 0008-ocaml-Replace-caml_leave_blocking_section-with-caml_.patch +Patch: 0009-ocaml-Always-unregister-the-global-root-and-free-the.patch +Patch: 0010-ocaml-Fix-thread-registration-for-OCaml-5.patch +Patch: 0011-tests-test-cc-ocaml.sh-Use-nbdkit-v-option-to-help-w.patch +Patch: 0012-tests-Replace-SRCDIR-with-abs_top_srcdir.patch +Patch: 0013-tests-test-read-password-Remove-use-of-SRCDIR.patch +Patch: 0014-tests-Stop-setting-SRCDIR-for-tests.patch +Patch: 0015-tests-Explicitly-add-L.-plugins-ocaml-.libs-to-find-.patch + BuildRequires: make %if 0%{patches_touch_autotools} BuildRequires: autoconf, automake, libtool From 9c9ed7bb59a1bf72c713af872f3509d413d1ceea Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Thu, 13 Jul 2023 08:07:15 +0200 Subject: [PATCH 139/298] Perl 5.38 re-rebuild updated packages --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 9e6c161..5a11bfa 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.35.5 -Release: 5%{?dist} +Release: 6%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1235,6 +1235,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Thu Jul 13 2023 Jitka Plesnikova - 1.35.5-6 +- Perl 5.38 re-rebuild updated packages + * Wed Jul 12 2023 Richard W.M. Jones - 1.35.5-5 - OCaml 5.0 rebuild for Fedora 39 From 97ad256c11729c902048f24899352122e8cbec3e Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 13 Jul 2023 12:05:26 +0100 Subject: [PATCH 140/298] Add patch to fix Perl 5.38 --- ...nfo-Remove-bogus-test-requires-of-gu.patch | 2 +- ...-optional-tar-option-in-help-output-.patch | 2 +- 0003-tar-Implement-tar-limit.patch | 2 +- ...sage-to-refer-to-xz-max-block-parame.patch | 2 +- ...Recommend-using-g-with-OCAMLOPTFLAGS.patch | 2 +- ..._plugin.ml-Print-a-message-when-test.patch | 2 +- ...ml-Add-I-unix-before-using-unix.cmxa.patch | 2 +- ...ml_leave_blocking_section-with-caml_.patch | 2 +- ...egister-the-global-root-and-free-the.patch | 2 +- ...-Fix-thread-registration-for-OCaml-5.patch | 2 +- ...aml.sh-Use-nbdkit-v-option-to-help-w.patch | 2 +- ...s-Replace-SRCDIR-with-abs_top_srcdir.patch | 2 +- ...t-read-password-Remove-use-of-SRCDIR.patch | 2 +- ...-tests-Stop-setting-SRCDIR-for-tests.patch | 2 +- ...-add-L.-plugins-ocaml-.libs-to-find-.patch | 2 +- ...l-PERL_SET_CONTEXT-from-.open-method.patch | 39 +++++++++++++++++++ nbdkit.spec | 1 + 17 files changed, 55 insertions(+), 15 deletions(-) create mode 100644 0016-perl-Call-PERL_SET_CONTEXT-from-.open-method.patch diff --git a/0001-tests-test-tar-info-Remove-bogus-test-requires-of-gu.patch b/0001-tests-test-tar-info-Remove-bogus-test-requires-of-gu.patch index 3047bcf..680bfc8 100644 --- a/0001-tests-test-tar-info-Remove-bogus-test-requires-of-gu.patch +++ b/0001-tests-test-tar-info-Remove-bogus-test-requires-of-gu.patch @@ -1,7 +1,7 @@ From d2e335b2d05e68c1fc7ed9b507fd5cafc172a112 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 13 Jun 2023 20:11:34 +0100 -Subject: [PATCH 01/15] tests/test-tar-info*: Remove bogus test requires of +Subject: [PATCH 01/16] tests/test-tar-info*: Remove bogus test requires of guestfish These tests don't need guestfish so don't test for it. diff --git a/0002-tar-Document-the-optional-tar-option-in-help-output-.patch b/0002-tar-Document-the-optional-tar-option-in-help-output-.patch index 84be7bc..f1b4059 100644 --- a/0002-tar-Document-the-optional-tar-option-in-help-output-.patch +++ b/0002-tar-Document-the-optional-tar-option-in-help-output-.patch @@ -1,7 +1,7 @@ From eb44ca26a84c369a7908f19517c0a2f8f621d57f Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 13 Jun 2023 20:25:40 +0100 -Subject: [PATCH 02/15] tar: Document the optional tar option in --help output +Subject: [PATCH 02/16] tar: Document the optional tar option in --help output and synopsis Fixes: commit 05b49f89dccb0ca3fd0919e9502c54dbcadf0b73 diff --git a/0003-tar-Implement-tar-limit.patch b/0003-tar-Implement-tar-limit.patch index cd54c95..be8003c 100644 --- a/0003-tar-Implement-tar-limit.patch +++ b/0003-tar-Implement-tar-limit.patch @@ -1,7 +1,7 @@ From ae3fb4def811f5bc42563128e8fae0a4288584d1 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 13 Jun 2023 20:01:05 +0100 -Subject: [PATCH 03/15] tar: Implement tar-limit +Subject: [PATCH 03/16] tar: Implement tar-limit This can be used to ensure that the tar filter does not read indefinite amounts of input when opening the tar file. diff --git a/0004-xz-Fix-error-message-to-refer-to-xz-max-block-parame.patch b/0004-xz-Fix-error-message-to-refer-to-xz-max-block-parame.patch index ed32847..cf99a97 100644 --- a/0004-xz-Fix-error-message-to-refer-to-xz-max-block-parame.patch +++ b/0004-xz-Fix-error-message-to-refer-to-xz-max-block-parame.patch @@ -1,7 +1,7 @@ From 35db543e38293808e910b291ff26b17284640ec9 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 19 Jun 2023 13:53:09 +0100 -Subject: [PATCH 04/15] xz: Fix error message to refer to xz-max-block +Subject: [PATCH 04/16] xz: Fix error message to refer to xz-max-block parameter In the original xz plugin the parameter was called "maxblock", but diff --git a/0005-configure-Recommend-using-g-with-OCAMLOPTFLAGS.patch b/0005-configure-Recommend-using-g-with-OCAMLOPTFLAGS.patch index 6d419b0..ec9999d 100644 --- a/0005-configure-Recommend-using-g-with-OCAMLOPTFLAGS.patch +++ b/0005-configure-Recommend-using-g-with-OCAMLOPTFLAGS.patch @@ -1,7 +1,7 @@ From 4398b1871f8832109fcdbe25c70a1dd341ed5bd4 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 21 Jun 2023 13:05:22 +0100 -Subject: [PATCH 05/15] configure: Recommend using -g with OCAMLOPTFLAGS +Subject: [PATCH 05/16] configure: Recommend using -g with OCAMLOPTFLAGS --- configure.ac | 4 ++-- diff --git a/0006-tests-test_ocaml_plugin.ml-Print-a-message-when-test.patch b/0006-tests-test_ocaml_plugin.ml-Print-a-message-when-test.patch index 25fbbdb..5c75615 100644 --- a/0006-tests-test_ocaml_plugin.ml-Print-a-message-when-test.patch +++ b/0006-tests-test_ocaml_plugin.ml-Print-a-message-when-test.patch @@ -1,7 +1,7 @@ From b53b78e542fe8e49ce5c670e8ddc9d2be66f73cc Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 21 Jun 2023 18:47:40 +0100 -Subject: [PATCH 06/15] tests/test_ocaml_plugin.ml: Print a message when test +Subject: [PATCH 06/16] tests/test_ocaml_plugin.ml: Print a message when test plugin initializes It's useful to have a message which is printed as the top level diff --git a/0007-ocaml-Add-I-unix-before-using-unix.cmxa.patch b/0007-ocaml-Add-I-unix-before-using-unix.cmxa.patch index cb40bc2..049cfb4 100644 --- a/0007-ocaml-Add-I-unix-before-using-unix.cmxa.patch +++ b/0007-ocaml-Add-I-unix-before-using-unix.cmxa.patch @@ -1,7 +1,7 @@ From b778c56443e11817d4974dcab5356e2d4065980b Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 21 Jun 2023 18:56:58 +0100 -Subject: [PATCH 07/15] ocaml: Add -I +unix before using unix.cmxa +Subject: [PATCH 07/16] ocaml: Add -I +unix before using unix.cmxa In OCaml 5.0 you will see this warning: diff --git a/0008-ocaml-Replace-caml_leave_blocking_section-with-caml_.patch b/0008-ocaml-Replace-caml_leave_blocking_section-with-caml_.patch index f7ba249..cb00591 100644 --- a/0008-ocaml-Replace-caml_leave_blocking_section-with-caml_.patch +++ b/0008-ocaml-Replace-caml_leave_blocking_section-with-caml_.patch @@ -1,7 +1,7 @@ From f8b761c62f177176dfe154a95824576eef740827 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 21 Jun 2023 19:07:00 +0100 -Subject: [PATCH 08/15] ocaml: Replace caml_leave_blocking_section with +Subject: [PATCH 08/16] ocaml: Replace caml_leave_blocking_section with caml_acquire_runtime_system Replace: diff --git a/0009-ocaml-Always-unregister-the-global-root-and-free-the.patch b/0009-ocaml-Always-unregister-the-global-root-and-free-the.patch index 2380388..acb9bc5 100644 --- a/0009-ocaml-Always-unregister-the-global-root-and-free-the.patch +++ b/0009-ocaml-Always-unregister-the-global-root-and-free-the.patch @@ -1,7 +1,7 @@ From f4d5f179c9be6db3c39bc0752e36f262c3f87716 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 21 Jun 2023 20:15:46 +0100 -Subject: [PATCH 09/15] ocaml: Always unregister the global root and free the +Subject: [PATCH 09/16] ocaml: Always unregister the global root and free the handle If the OCaml code did not provide a close method, we would never call diff --git a/0010-ocaml-Fix-thread-registration-for-OCaml-5.patch b/0010-ocaml-Fix-thread-registration-for-OCaml-5.patch index 05982d0..ebf111c 100644 --- a/0010-ocaml-Fix-thread-registration-for-OCaml-5.patch +++ b/0010-ocaml-Fix-thread-registration-for-OCaml-5.patch @@ -1,7 +1,7 @@ From 9d4b87e0338d45456c0506fd2c25b80f7ef6b1e1 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 21 Jun 2023 20:18:58 +0100 -Subject: [PATCH 10/15] ocaml: Fix thread registration for OCaml 5 +Subject: [PATCH 10/16] ocaml: Fix thread registration for OCaml 5 OCaml 5 is strict about registering threads before calling OCaml heap functions, and will abort the program with this error if you don't do diff --git a/0011-tests-test-cc-ocaml.sh-Use-nbdkit-v-option-to-help-w.patch b/0011-tests-test-cc-ocaml.sh-Use-nbdkit-v-option-to-help-w.patch index fc8045c..47186fb 100644 --- a/0011-tests-test-cc-ocaml.sh-Use-nbdkit-v-option-to-help-w.patch +++ b/0011-tests-test-cc-ocaml.sh-Use-nbdkit-v-option-to-help-w.patch @@ -1,7 +1,7 @@ From c78266258709e2cbe6f0e869c866d09ad72c072c Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 22 Jun 2023 10:33:31 +0100 -Subject: [PATCH 11/15] tests/test-cc-ocaml.sh: Use nbdkit -v option to help +Subject: [PATCH 11/16] tests/test-cc-ocaml.sh: Use nbdkit -v option to help with debugging --- diff --git a/0012-tests-Replace-SRCDIR-with-abs_top_srcdir.patch b/0012-tests-Replace-SRCDIR-with-abs_top_srcdir.patch index 991b3a7..2d783f0 100644 --- a/0012-tests-Replace-SRCDIR-with-abs_top_srcdir.patch +++ b/0012-tests-Replace-SRCDIR-with-abs_top_srcdir.patch @@ -1,7 +1,7 @@ From d968c4858847388e515bc1ef84ff4479c18a414d Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 22 Jun 2023 10:44:10 +0100 -Subject: [PATCH 12/15] tests: Replace $SRCDIR with $abs_top_srcdir +Subject: [PATCH 12/16] tests: Replace $SRCDIR with $abs_top_srcdir functions.sh defines $abs_top_srcdir so there's no need to use $SRCDIR in any test scripts. diff --git a/0013-tests-test-read-password-Remove-use-of-SRCDIR.patch b/0013-tests-test-read-password-Remove-use-of-SRCDIR.patch index 6ef088e..0d14568 100644 --- a/0013-tests-test-read-password-Remove-use-of-SRCDIR.patch +++ b/0013-tests-test-read-password-Remove-use-of-SRCDIR.patch @@ -1,7 +1,7 @@ From 92ae65f93d8ebeb09500552d7ebfc1e8149ded6f Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 22 Jun 2023 10:48:51 +0100 -Subject: [PATCH 13/15] tests/test-read-password*: Remove use of $SRCDIR +Subject: [PATCH 13/16] tests/test-read-password*: Remove use of $SRCDIR These tests required exporting $abs_top_srcdir so that the plugin (which is a C script) can use it. diff --git a/0014-tests-Stop-setting-SRCDIR-for-tests.patch b/0014-tests-Stop-setting-SRCDIR-for-tests.patch index d61725d..2ff84a2 100644 --- a/0014-tests-Stop-setting-SRCDIR-for-tests.patch +++ b/0014-tests-Stop-setting-SRCDIR-for-tests.patch @@ -1,7 +1,7 @@ From 2e3dcb2a720e4258b54d04ffd081c5159783df8e Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 22 Jun 2023 10:50:17 +0100 -Subject: [PATCH 14/15] tests: Stop setting $SRCDIR for tests +Subject: [PATCH 14/16] tests: Stop setting $SRCDIR for tests Since no tests use this variable any longer we can stop setting it. diff --git a/0015-tests-Explicitly-add-L.-plugins-ocaml-.libs-to-find-.patch b/0015-tests-Explicitly-add-L.-plugins-ocaml-.libs-to-find-.patch index ca09a13..e1b9e45 100644 --- a/0015-tests-Explicitly-add-L.-plugins-ocaml-.libs-to-find-.patch +++ b/0015-tests-Explicitly-add-L.-plugins-ocaml-.libs-to-find-.patch @@ -1,7 +1,7 @@ From 3e4c1b79a72970c17cb42b21070e61ec634a38bb Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 22 Jun 2023 11:15:27 +0100 -Subject: [PATCH 15/15] tests: Explicitly add -L../plugins/ocaml/.libs to find +Subject: [PATCH 15/16] tests: Explicitly add -L../plugins/ocaml/.libs to find -lnbdkitocaml The actual libnbdkitocaml.so library is located in diff --git a/0016-perl-Call-PERL_SET_CONTEXT-from-.open-method.patch b/0016-perl-Call-PERL_SET_CONTEXT-from-.open-method.patch new file mode 100644 index 0000000..0a12e96 --- /dev/null +++ b/0016-perl-Call-PERL_SET_CONTEXT-from-.open-method.patch @@ -0,0 +1,39 @@ +From 495708e9d1b396ff450df15d5789b4f6c51f6ebc Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Thu, 13 Jul 2023 11:50:02 +0100 +Subject: [PATCH 16/16] perl: Call PERL_SET_CONTEXT from .open method + +This appears to be necessary with Perl 5.38. +--- + plugins/perl/perl.c | 15 +++++++++++++++ + 1 file changed, 15 insertions(+) + +diff --git a/plugins/perl/perl.c b/plugins/perl/perl.c +index d3b7cede2..1d8d0c2b4 100644 +--- a/plugins/perl/perl.c ++++ b/plugins/perl/perl.c +@@ -339,6 +339,21 @@ perl_open (int readonly) + SV *sv; + dSP; + ++ /* ++ * From perlembed(1): ++ * ++ * "PERL_SET_CONTEXT(interp) should also be called whenever "interp" ++ * is used by a thread that did not create it (using either ++ * perl_alloc(), or the more esoteric perl_clone())." ++ * ++ * Since we may be called here from a new thread created within ++ * nbdkit, do this. This is necessary since Perl 5.38. It didn't ++ * seem to make a difference with earlier Perl, but doesn't break ++ * them either. ++ */ ++ ++ PERL_SET_CONTEXT (my_perl); ++ + /* We check in perl_config that this callback is defined. */ + ENTER; + SAVETMPS; +-- +2.41.0 + diff --git a/nbdkit.spec b/nbdkit.spec index 5a11bfa..f916994 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -95,6 +95,7 @@ Patch: 0012-tests-Replace-SRCDIR-with-abs_top_srcdir.patch Patch: 0013-tests-test-read-password-Remove-use-of-SRCDIR.patch Patch: 0014-tests-Stop-setting-SRCDIR-for-tests.patch Patch: 0015-tests-Explicitly-add-L.-plugins-ocaml-.libs-to-find-.patch +Patch: 0016-perl-Call-PERL_SET_CONTEXT-from-.open-method.patch BuildRequires: make %if 0%{patches_touch_autotools} From 8e2ee88371ad6d47b570115a201d510b5d9e1ad5 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 14 Jul 2023 15:12:38 +0100 Subject: [PATCH 141/298] New upstream development version 1.35.6 --- ...nfo-Remove-bogus-test-requires-of-gu.patch | 41 -- ...-optional-tar-option-in-help-output-.patch | 43 -- 0003-tar-Implement-tar-limit.patch | 193 -------- ...sage-to-refer-to-xz-max-block-parame.patch | 40 -- ...Recommend-using-g-with-OCAMLOPTFLAGS.patch | 27 - ..._plugin.ml-Print-a-message-when-test.patch | 32 -- ...ml-Add-I-unix-before-using-unix.cmxa.patch | 124 ----- ...ml_leave_blocking_section-with-caml_.patch | 468 ------------------ ...egister-the-global-root-and-free-the.patch | 65 --- ...-Fix-thread-registration-for-OCaml-5.patch | 375 -------------- ...aml.sh-Use-nbdkit-v-option-to-help-w.patch | 26 - ...s-Replace-SRCDIR-with-abs_top_srcdir.patch | 324 ------------ ...t-read-password-Remove-use-of-SRCDIR.patch | 55 -- ...-tests-Stop-setting-SRCDIR-for-tests.patch | 28 -- ...-add-L.-plugins-ocaml-.libs-to-find-.patch | 44 -- ...l-PERL_SET_CONTEXT-from-.open-method.patch | 39 -- nbdkit.spec | 28 +- sources | 4 +- 18 files changed, 8 insertions(+), 1948 deletions(-) delete mode 100644 0001-tests-test-tar-info-Remove-bogus-test-requires-of-gu.patch delete mode 100644 0002-tar-Document-the-optional-tar-option-in-help-output-.patch delete mode 100644 0003-tar-Implement-tar-limit.patch delete mode 100644 0004-xz-Fix-error-message-to-refer-to-xz-max-block-parame.patch delete mode 100644 0005-configure-Recommend-using-g-with-OCAMLOPTFLAGS.patch delete mode 100644 0006-tests-test_ocaml_plugin.ml-Print-a-message-when-test.patch delete mode 100644 0007-ocaml-Add-I-unix-before-using-unix.cmxa.patch delete mode 100644 0008-ocaml-Replace-caml_leave_blocking_section-with-caml_.patch delete mode 100644 0009-ocaml-Always-unregister-the-global-root-and-free-the.patch delete mode 100644 0010-ocaml-Fix-thread-registration-for-OCaml-5.patch delete mode 100644 0011-tests-test-cc-ocaml.sh-Use-nbdkit-v-option-to-help-w.patch delete mode 100644 0012-tests-Replace-SRCDIR-with-abs_top_srcdir.patch delete mode 100644 0013-tests-test-read-password-Remove-use-of-SRCDIR.patch delete mode 100644 0014-tests-Stop-setting-SRCDIR-for-tests.patch delete mode 100644 0015-tests-Explicitly-add-L.-plugins-ocaml-.libs-to-find-.patch delete mode 100644 0016-perl-Call-PERL_SET_CONTEXT-from-.open-method.patch diff --git a/0001-tests-test-tar-info-Remove-bogus-test-requires-of-gu.patch b/0001-tests-test-tar-info-Remove-bogus-test-requires-of-gu.patch deleted file mode 100644 index 680bfc8..0000000 --- a/0001-tests-test-tar-info-Remove-bogus-test-requires-of-gu.patch +++ /dev/null @@ -1,41 +0,0 @@ -From d2e335b2d05e68c1fc7ed9b507fd5cafc172a112 Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Tue, 13 Jun 2023 20:11:34 +0100 -Subject: [PATCH 01/16] tests/test-tar-info*: Remove bogus test requires of - guestfish - -These tests don't need guestfish so don't test for it. - -Fixes: commit 05b49f89dccb0ca3fd0919e9502c54dbcadf0b73 ---- - tests/test-tar-info-xz.sh | 1 - - tests/test-tar-info.sh | 1 - - 2 files changed, 2 deletions(-) - -diff --git a/tests/test-tar-info-xz.sh b/tests/test-tar-info-xz.sh -index 1f968e9b8..abd854974 100755 ---- a/tests/test-tar-info-xz.sh -+++ b/tests/test-tar-info-xz.sh -@@ -37,7 +37,6 @@ set -e - set -x - - requires test -f disk --requires guestfish --version - requires tar --version - requires qemu-img --version - requires qemu-img info --output=json /dev/null -diff --git a/tests/test-tar-info.sh b/tests/test-tar-info.sh -index 572768b85..5c015d88e 100755 ---- a/tests/test-tar-info.sh -+++ b/tests/test-tar-info.sh -@@ -37,7 +37,6 @@ set -e - set -x - - requires test -f disk --requires guestfish --version - requires tar --version - requires qemu-img --version - requires qemu-img info --output=json /dev/null --- -2.41.0 - diff --git a/0002-tar-Document-the-optional-tar-option-in-help-output-.patch b/0002-tar-Document-the-optional-tar-option-in-help-output-.patch deleted file mode 100644 index f1b4059..0000000 --- a/0002-tar-Document-the-optional-tar-option-in-help-output-.patch +++ /dev/null @@ -1,43 +0,0 @@ -From eb44ca26a84c369a7908f19517c0a2f8f621d57f Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Tue, 13 Jun 2023 20:25:40 +0100 -Subject: [PATCH 02/16] tar: Document the optional tar option in --help output - and synopsis - -Fixes: commit 05b49f89dccb0ca3fd0919e9502c54dbcadf0b73 ---- - filters/tar/nbdkit-tar-filter.pod | 1 + - filters/tar/tar.c | 5 +++-- - 2 files changed, 4 insertions(+), 2 deletions(-) - -diff --git a/filters/tar/nbdkit-tar-filter.pod b/filters/tar/nbdkit-tar-filter.pod -index 96aba16d9..eb0cfd4ab 100644 ---- a/filters/tar/nbdkit-tar-filter.pod -+++ b/filters/tar/nbdkit-tar-filter.pod -@@ -5,6 +5,7 @@ nbdkit-tar-filter - read and write files inside tar files without unpacking - =head1 SYNOPSIS - - nbdkit file FILENAME.tar --filter=tar tar-entry=PATH_INSIDE_TAR -+ [tar=TAR_COMMAND] - - =head1 EXAMPLES - -diff --git a/filters/tar/tar.c b/filters/tar/tar.c -index c650a3499..f3adb2c46 100644 ---- a/filters/tar/tar.c -+++ b/filters/tar/tar.c -@@ -96,8 +96,9 @@ tar_config_complete (nbdkit_next_config_complete *next, - return next (nxdata); - } - --#define tar_config_help \ -- "tar-entry= (required) The path inside the tar file to serve." -+#define tar_config_help \ -+ "tar-entry= (required) The path inside the tar file to serve.\n" \ -+ "tar= Path of the tar binary." - - static int - tar_thread_model (void) --- -2.41.0 - diff --git a/0003-tar-Implement-tar-limit.patch b/0003-tar-Implement-tar-limit.patch deleted file mode 100644 index be8003c..0000000 --- a/0003-tar-Implement-tar-limit.patch +++ /dev/null @@ -1,193 +0,0 @@ -From ae3fb4def811f5bc42563128e8fae0a4288584d1 Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Tue, 13 Jun 2023 20:01:05 +0100 -Subject: [PATCH 03/16] tar: Implement tar-limit - -This can be used to ensure that the tar filter does not read -indefinite amounts of input when opening the tar file. - -See: https://github.com/kubevirt/containerized-data-importer/pull/2748#issuecomment-1589852102 ---- - filters/tar/nbdkit-tar-filter.pod | 24 +++++++++++- - tests/Makefile.am | 2 + - filters/tar/tar.c | 10 +++++ - tests/test-tar-limit.sh | 65 +++++++++++++++++++++++++++++++ - 4 files changed, 99 insertions(+), 2 deletions(-) - create mode 100755 tests/test-tar-limit.sh - -diff --git a/filters/tar/nbdkit-tar-filter.pod b/filters/tar/nbdkit-tar-filter.pod -index eb0cfd4ab..a3c2d1328 100644 ---- a/filters/tar/nbdkit-tar-filter.pod -+++ b/filters/tar/nbdkit-tar-filter.pod -@@ -4,8 +4,9 @@ nbdkit-tar-filter - read and write files inside tar files without unpacking - - =head1 SYNOPSIS - -- nbdkit file FILENAME.tar --filter=tar tar-entry=PATH_INSIDE_TAR -- [tar=TAR_COMMAND] -+ nbdkit file FILENAME.tar -+ --filter=tar tar-entry=PATH_INSIDE_TAR -+ [tar=TAR_COMMAND] [tar-limit=SIZE] - - =head1 EXAMPLES - -@@ -83,6 +84,25 @@ The path of the file inside the tarball to serve. This parameter is - required. It must exactly match the name stored in the tarball, so - use S> - -+=item [B]SIZE -+ -+When opening the tar file we have to locate the file (C) -+inside the tarball. Because tar files do not have a central index we -+must iterate over the tar file to find the entry, and that may be -+costly (especially with untrusted tar files). In the worst case where -+C starts near the end of the file we may have to iterate -+over the whole tar file. If this is a problem you may set -+C to some smaller value, eg: -+ -+ nbdkit -r curl https://example.com/file.tar \ -+ --filter=tar tar-entry=disk.img \ -+ tar-limit=10M -+ -+which ensures no more than 10 megabytes are read before we give up and -+reject the tar file (sending an error back to the NBD client). -+ -+The default is 0 meaning no limit. -+ - =item B - - =item B/PATH/TO/GTAR -diff --git a/tests/Makefile.am b/tests/Makefile.am -index 6694e409e..f2912aa93 100644 ---- a/tests/Makefile.am -+++ b/tests/Makefile.am -@@ -1957,11 +1957,13 @@ TESTS += \ - test-tar.sh \ - test-tar-info.sh \ - test-tar-info-xz.sh \ -+ test-tar-limit.sh \ - $(NULL) - EXTRA_DIST += \ - test-tar.sh \ - test-tar-info.sh \ - test-tar-info-xz.sh \ -+ test-tar-limit.sh \ - $(NULL) - - # truncate filter tests. -diff --git a/filters/tar/tar.c b/filters/tar/tar.c -index f3adb2c46..efe47684d 100644 ---- a/filters/tar/tar.c -+++ b/filters/tar/tar.c -@@ -53,6 +53,7 @@ - #include "utils.h" - - static const char *entry; /* File within tar (tar-entry=...) */ -+static int64_t tar_limit = 0; - static const char *tar_program = "tar"; - - /* Offset and size within tarball. -@@ -76,6 +77,12 @@ tar_config (nbdkit_next_config *next, nbdkit_backend *nxdata, - entry = value; - return 0; - } -+ else if (strcmp (key, "tar-limit") == 0) { -+ tar_limit = nbdkit_parse_size (value); -+ if (tar_limit == -1) -+ return -1; -+ return 0; -+ } - else if (strcmp (key, "tar") == 0) { - tar_program = value; - return 0; -@@ -98,6 +105,7 @@ tar_config_complete (nbdkit_next_config_complete *next, - - #define tar_config_help \ - "tar-entry= (required) The path inside the tar file to serve.\n" \ -+ "tar-limit=SIZE Limit on reading to find entry.\n" \ - "tar= Path of the tar binary." - - static int -@@ -197,6 +205,8 @@ calculate_offset_of_entry (nbdkit_next *next) - copysize = next->get_size (next); - if (copysize == -1) - return -1; -+ if (tar_limit > 0 && copysize > tar_limit) -+ copysize = tar_limit; - - /* Run the tar command. */ - nbdkit_debug ("%s", cmd); -diff --git a/tests/test-tar-limit.sh b/tests/test-tar-limit.sh -new file mode 100755 -index 000000000..168f2c497 ---- /dev/null -+++ b/tests/test-tar-limit.sh -@@ -0,0 +1,65 @@ -+#!/usr/bin/env bash -+# nbdkit -+# Copyright Red Hat -+# -+# Redistribution and use in source and binary forms, with or without -+# modification, are permitted provided that the following conditions are -+# met: -+# -+# * Redistributions of source code must retain the above copyright -+# notice, this list of conditions and the following disclaimer. -+# -+# * Redistributions in binary form must reproduce the above copyright -+# notice, this list of conditions and the following disclaimer in the -+# documentation and/or other materials provided with the distribution. -+# -+# * Neither the name of Red Hat nor the names of its contributors may be -+# used to endorse or promote products derived from this software without -+# specific prior written permission. -+# -+# THIS SOFTWARE IS PROVIDED BY RED HAT AND CONTRIBUTORS ''AS IS'' AND -+# ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, -+# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -+# PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL RED HAT OR -+# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -+# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF -+# USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -+# ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -+# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT -+# OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -+# SUCH DAMAGE. -+ -+# Test the tar filter and tar-limit filter. -+ -+source ./functions.sh -+set -e -+set -x -+ -+requires test -f disk -+requires tar --version -+requires test -f disk -+requires_nbdinfo -+ -+tar_bad=tar-limit-bad.tar -+tar_good=tar-limit-good.tar -+tar_filler=tar-limit-filler.img -+files="$tar_bad $tar_good $tar_filler" -+rm -f $files -+cleanup_fn rm -f $files -+ -+# Create two tar files, one where the disk is located before an -+# arbitrary boundary and one after. -+truncate -s 1M $tar_filler -+tar cf $tar_good disk -+tar cf $tar_bad $tar_filler disk -+ -+# Check we can read the good disk and reject the bad disk. -+cmd="nbdkit -U - file --filter=tar tar-entry=disk tar-limit=131072" -+ -+$cmd $tar_good --run 'nbdinfo "$uri"' -+ -+if $cmd $tar_bad --run 'nbdinfo "$uri"' ; then -+ echo "ERROR: $0: expected $tar_bad to fail" -+ exit 1 -+fi --- -2.41.0 - diff --git a/0004-xz-Fix-error-message-to-refer-to-xz-max-block-parame.patch b/0004-xz-Fix-error-message-to-refer-to-xz-max-block-parame.patch deleted file mode 100644 index cf99a97..0000000 --- a/0004-xz-Fix-error-message-to-refer-to-xz-max-block-parame.patch +++ /dev/null @@ -1,40 +0,0 @@ -From 35db543e38293808e910b291ff26b17284640ec9 Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Mon, 19 Jun 2023 13:53:09 +0100 -Subject: [PATCH 04/16] xz: Fix error message to refer to xz-max-block - parameter - -In the original xz plugin the parameter was called "maxblock", but -when we converted the plugin to a filter (commit c879d31047 "Rewrite -xz plugin as a filter.") we changed the parameter name to -"xz-max-block" but retained the old name in the error message. - -Fixes: commit c879d31047ae149cedabd5abbdb0a95e610f01c5 ---- - filters/xz/xz.c | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/filters/xz/xz.c b/filters/xz/xz.c -index 0c92cfff4..21e8993b5 100644 ---- a/filters/xz/xz.c -+++ b/filters/xz/xz.c -@@ -143,12 +143,12 @@ xz_prepare (nbdkit_next *next, void *handle, - return -1; - - if (maxblock < xzfile_max_uncompressed_block_size (h->xz)) { -- nbdkit_error ("xz file largest block is bigger than maxblock\n" -+ nbdkit_error ("xz file largest block is bigger than xz-max-block\n" - "Either recompress the xz file with smaller blocks " - "(see nbdkit-xz-filter(1))\n" -- "or make maxblock parameter bigger.\n" -- "maxblock = %" PRIu64 " (bytes)\n" -- "largest block in xz file = %" PRIu64 " (bytes)", -+ "or make xz-max-block parameter bigger.\n" -+ "Current xz-max-block = %" PRIu64 " (bytes)\n" -+ "Largest block in xz file = %" PRIu64 " (bytes)", - maxblock, - xzfile_max_uncompressed_block_size (h->xz)); - return -1; --- -2.41.0 - diff --git a/0005-configure-Recommend-using-g-with-OCAMLOPTFLAGS.patch b/0005-configure-Recommend-using-g-with-OCAMLOPTFLAGS.patch deleted file mode 100644 index ec9999d..0000000 --- a/0005-configure-Recommend-using-g-with-OCAMLOPTFLAGS.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 4398b1871f8832109fcdbe25c70a1dd341ed5bd4 Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Wed, 21 Jun 2023 13:05:22 +0100 -Subject: [PATCH 05/16] configure: Recommend using -g with OCAMLOPTFLAGS - ---- - configure.ac | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/configure.ac b/configure.ac -index c1d83a568..39b58b44e 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -935,8 +935,8 @@ AC_SUBST([PYTHON_LDFLAGS]) - - dnl For the OCaml plugin, you can set OCAMLOPTFLAGS before running - dnl ./configure to specify any extra flags you want to pass to --dnl ocamlopt. For example to enable OCaml warnings: --dnl OCAMLOPTFLAGS="-warn-error +A-3" -+dnl ocamlopt. For example to enable debug symbols & warnings: -+dnl OCAMLOPTFLAGS="-g -warn-error +A-3" - AC_SUBST([OCAMLOPTFLAGS]) - - dnl Check for OCaml, for embedding in the ocaml plugin. --- -2.41.0 - diff --git a/0006-tests-test_ocaml_plugin.ml-Print-a-message-when-test.patch b/0006-tests-test_ocaml_plugin.ml-Print-a-message-when-test.patch deleted file mode 100644 index 5c75615..0000000 --- a/0006-tests-test_ocaml_plugin.ml-Print-a-message-when-test.patch +++ /dev/null @@ -1,32 +0,0 @@ -From b53b78e542fe8e49ce5c670e8ddc9d2be66f73cc Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Wed, 21 Jun 2023 18:47:40 +0100 -Subject: [PATCH 06/16] tests/test_ocaml_plugin.ml: Print a message when test - plugin initializes - -It's useful to have a message which is printed as the top level -statements in the plugin module are being initialized, for debugging -purposes. ---- - tests/test_ocaml_plugin.ml | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/tests/test_ocaml_plugin.ml b/tests/test_ocaml_plugin.ml -index 561a8690f..f8eed4f7f 100644 ---- a/tests/test_ocaml_plugin.ml -+++ b/tests/test_ocaml_plugin.ml -@@ -30,6 +30,11 @@ - * SUCH DAMAGE. - *) - -+(* Print something during module initialization, useful for debugging -+ * obscure OCaml startup issues. -+ *) -+let () = Printf.eprintf "test_ocaml_plugin.ml: module initializing\n%!" -+ - let sector_size = 512 - let nr_sectors = 2048 - --- -2.41.0 - diff --git a/0007-ocaml-Add-I-unix-before-using-unix.cmxa.patch b/0007-ocaml-Add-I-unix-before-using-unix.cmxa.patch deleted file mode 100644 index 049cfb4..0000000 --- a/0007-ocaml-Add-I-unix-before-using-unix.cmxa.patch +++ /dev/null @@ -1,124 +0,0 @@ -From b778c56443e11817d4974dcab5356e2d4065980b Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Wed, 21 Jun 2023 18:56:58 +0100 -Subject: [PATCH 07/16] ocaml: Add -I +unix before using unix.cmxa - -In OCaml 5.0 you will see this warning: - - Alert ocaml_deprecated_auto_include: - OCaml's lib directory layout changed in 5.0. The unix subdirectory has been - automatically added to the search path, but you should add -I +unix to the - command-line to silence this alert (e.g. by adding unix to the list of - libraries in your dune file, or adding use_unix to your _tags file for - ocamlbuild, or using -package unix for ocamlfind). - -Using -I +unix doesn't hurt earlier versions, as the directory is just -ignored if it doesn't exist, and anyway findlib adds the directory if -you're using that. ---- - plugins/cc/nbdkit-cc-plugin.pod | 4 ++-- - plugins/ocaml/nbdkit-ocaml-plugin.pod | 2 +- - plugins/ocaml/Makefile.am | 2 +- - tests/Makefile.am | 4 ++-- - tests/test-cc-ocaml.sh | 2 +- - tests/cc_shebang.ml | 2 +- - 6 files changed, 8 insertions(+), 8 deletions(-) - -diff --git a/plugins/cc/nbdkit-cc-plugin.pod b/plugins/cc/nbdkit-cc-plugin.pod -index 412233797..f55f74ab0 100644 ---- a/plugins/cc/nbdkit-cc-plugin.pod -+++ b/plugins/cc/nbdkit-cc-plugin.pod -@@ -89,7 +89,7 @@ C as a parameter to exec nbdkit. - =head2 Using this plugin with OCaml - - nbdkit cc CC=ocamlopt \ -- CFLAGS="-output-obj -runtime-variant _pic unix.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ -+ CFLAGS="-output-obj -runtime-variant _pic -I +unix unix.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ - source.ml - - OCaml plugin scripts can be created using this trick: -@@ -97,7 +97,7 @@ OCaml plugin scripts can be created using this trick: - (*/.)>/dev/null 2>&1 - exec nbdkit cc "$0" \ - CC=ocamlopt \ -- CFLAGS="-output-obj -runtime-variant _pic unix.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ -+ CFLAGS="-output-obj -runtime-variant _pic -I +unix unix.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ - "$@" - *) - (* followed by OCaml code for the plugin here *) -diff --git a/plugins/ocaml/nbdkit-ocaml-plugin.pod b/plugins/ocaml/nbdkit-ocaml-plugin.pod -index dc8260174..e4a8cf0b0 100644 ---- a/plugins/ocaml/nbdkit-ocaml-plugin.pod -+++ b/plugins/ocaml/nbdkit-ocaml-plugin.pod -@@ -53,7 +53,7 @@ using this command: - - ocamlopt.opt -output-obj -runtime-variant _pic \ - -o nbdkit-myplugin-plugin.so \ -- unix.cmxa NBDKit.cmx myplugin.ml \ -+ -I +unix unix.cmxa NBDKit.cmx myplugin.ml \ - -cclib -lnbdkitocaml - - You can then use C as an nbdkit plugin (see -diff --git a/plugins/ocaml/Makefile.am b/plugins/ocaml/Makefile.am -index da1b1ec96..e7faae506 100644 ---- a/plugins/ocaml/Makefile.am -+++ b/plugins/ocaml/Makefile.am -@@ -84,7 +84,7 @@ noinst_SCRIPTS = nbdkit-ocamlexample-plugin.so - nbdkit-ocamlexample-plugin.so: example.cmx libnbdkitocaml.la NBDKit.cmi NBDKit.cmx - $(OCAMLOPT) $(OCAMLOPTFLAGS) \ - -output-obj -runtime-variant _pic -o $@ \ -- unix.cmxa NBDKit.cmx $< \ -+ -I +unix unix.cmxa NBDKit.cmx $< \ - -cclib -L.libs -cclib -lnbdkitocaml - example.cmx: example.ml NBDKit.cmi NBDKit.cmx - $(OCAMLOPT) $(OCAMLOPTFLAGS) -c $< -o $@ -diff --git a/tests/Makefile.am b/tests/Makefile.am -index f2912aa93..d8a640e1e 100644 ---- a/tests/Makefile.am -+++ b/tests/Makefile.am -@@ -1185,7 +1185,7 @@ OCAML_PLUGIN_DEPS = \ - test-ocaml-plugin.so: test_ocaml_plugin.cmx $(OCAML_PLUGIN_DEPS) - $(OCAMLOPT) $(OCAMLOPTFLAGS) -I ../plugins/ocaml \ - -output-obj -runtime-variant _pic -o $@ \ -- unix.cmxa NBDKit.cmx $< \ -+ -I +unix unix.cmxa NBDKit.cmx $< \ - -cclib -L../plugins/ocaml/.libs -cclib -lnbdkitocaml - test_ocaml_plugin.cmx: test_ocaml_plugin.ml $(OCAML_PLUGIN_DEPS) - $(OCAMLOPT) $(OCAMLOPTFLAGS) -I ../plugins/ocaml -c $< -o $@ -@@ -1194,7 +1194,7 @@ test-ocaml-errorcodes-plugin.so: \ - test_ocaml_errorcodes_plugin.cmx $(OCAML_PLUGIN_DEPS) - $(OCAMLOPT) $(OCAMLOPTFLAGS) -I ../plugins/ocaml \ - -output-obj -runtime-variant _pic -o $@ \ -- unix.cmxa NBDKit.cmx $< \ -+ -I +unix unix.cmxa NBDKit.cmx $< \ - -cclib -L../plugins/ocaml/.libs -cclib -lnbdkitocaml - test_ocaml_errorcodes_plugin.cmx: \ - test_ocaml_errorcodes_plugin.ml $(OCAML_PLUGIN_DEPS) -diff --git a/tests/test-cc-ocaml.sh b/tests/test-cc-ocaml.sh -index 659fa195e..3b4f6a553 100755 ---- a/tests/test-cc-ocaml.sh -+++ b/tests/test-cc-ocaml.sh -@@ -61,6 +61,6 @@ cleanup_fn rm -f $out - rm -f $out - - nbdkit -U - cc $script a=1 b=2 c=3 d=4 \ -- CC="$OCAMLOPT" CFLAGS="-output-obj -runtime-variant _pic -I $SRCDIR/../plugins/ocaml unix.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ -+ CC="$OCAMLOPT" CFLAGS="-output-obj -runtime-variant _pic -I $SRCDIR/../plugins/ocaml -I +unix unix.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ - --run 'nbdinfo --size $uri' > $out - test "$(cat $out)" -eq $((512 * 2048)) -diff --git a/tests/cc_shebang.ml b/tests/cc_shebang.ml -index d78d76618..619b08bb5 100755 ---- a/tests/cc_shebang.ml -+++ b/tests/cc_shebang.ml -@@ -4,7 +4,7 @@ - # shell as an impossible command which is ignored. The line below is - # run by the shell and ignored by OCaml. - --exec nbdkit cc "$0" CC=ocamlopt CFLAGS="-output-obj -runtime-variant _pic unix.cmxa NBDKit.cmx -cclib -lnbdkitocaml" "$@" -+exec nbdkit cc "$0" CC=ocamlopt CFLAGS="-output-obj -runtime-variant _pic -I +unix unix.cmxa NBDKit.cmx -cclib -lnbdkitocaml" "$@" - *) - - open Printf --- -2.41.0 - diff --git a/0008-ocaml-Replace-caml_leave_blocking_section-with-caml_.patch b/0008-ocaml-Replace-caml_leave_blocking_section-with-caml_.patch deleted file mode 100644 index cb00591..0000000 --- a/0008-ocaml-Replace-caml_leave_blocking_section-with-caml_.patch +++ /dev/null @@ -1,468 +0,0 @@ -From f8b761c62f177176dfe154a95824576eef740827 Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Wed, 21 Jun 2023 19:07:00 +0100 -Subject: [PATCH 08/16] ocaml: Replace caml_leave_blocking_section with - caml_acquire_runtime_system - -Replace: - - caml_leave_blocking_section - ... - caml_enter_blocking_section - -with the more sensibly named (and equivalent): - - caml_acquire_runtime_system - ... - caml_release_runtime_system - -In addition we must release the runtime system just after caml_startup -and only acquire it around callbacks into OCaml code. (The reason for -this is only apparent in a later commit.) - -OCaml 5 is more strict than earlier versions of OCaml and actually -implements the locks using pthread_mutex_t. So in OCaml 5 you will -see a deadlock error: - - Fatal error: Fatal error during lock: Resource deadlock avoided - -which was caused by attempting to double lock (ie. trying to acquire -the lock, when we already held it from caml_startup). - -Also because of additional strictness we must acquire the lock even -before creating the stack frame with CAMLparam* functions. ---- - plugins/ocaml/plugin.h | 16 ++++----- - plugins/ocaml/plugin.c | 75 +++++++++++++++++++++++------------------- - 2 files changed, 49 insertions(+), 42 deletions(-) - -diff --git a/plugins/ocaml/plugin.h b/plugins/ocaml/plugin.h -index 572c43c04..3d6d27db1 100644 ---- a/plugins/ocaml/plugin.h -+++ b/plugins/ocaml/plugin.h -@@ -47,18 +47,18 @@ caml_alloc_initialized_string (mlsize_t len, const char *p) - #endif - - /* For functions which call into OCaml code, call -- * caml_leave_blocking_section() to prevent other threads running, -- * then caml_enter_blocking_section() on return to C code. This macro -- * ensures that the calls are paired properly. -+ * caml_acquire_runtime_system ... caml_release_runtime_system around -+ * the code. This prevents other threads in the same domain running. -+ * The macro ensures that the calls are paired properly. - */ --#define LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE() \ -- __attribute__ ((unused, cleanup (cleanup_enter_blocking_section))) \ -+#define ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE() \ -+ __attribute__ ((unused, cleanup (cleanup_release_runtime_system))) \ - int _unused; \ -- caml_leave_blocking_section () -+ caml_acquire_runtime_system () - static inline void --cleanup_enter_blocking_section (int *unused) -+cleanup_release_runtime_system (int *unused) - { -- caml_enter_blocking_section (); -+ caml_release_runtime_system (); - } - - #endif /* NBDKIT_OCAML_PLUGIN_H */ -diff --git a/plugins/ocaml/plugin.c b/plugins/ocaml/plugin.c -index 722b95e49..fe781f9af 100644 ---- a/plugins/ocaml/plugin.c -+++ b/plugins/ocaml/plugin.c -@@ -64,6 +64,12 @@ constructor (void) - - /* Initialize OCaml runtime. */ - caml_startup (argv); -+ -+ /* We need to release the runtime system here so other threads may -+ * use it. Before we call any OCaml callbacks we must acquire the -+ * runtime system again. -+ */ -+ caml_release_runtime_system (); - } - - /* Instead of using the NBDKIT_REGISTER_PLUGIN macro, we construct the -@@ -113,7 +119,7 @@ plugin_init (void) - static void - load_wrapper (void) - { -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - caml_callback (load_fn, Val_unit); - } - -@@ -123,8 +129,9 @@ load_wrapper (void) - static void - unload_wrapper (void) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); -+ - if (unload_fn) { -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - caml_callback (unload_fn, Val_unit); - } - -@@ -139,9 +146,9 @@ unload_wrapper (void) - static void - dump_plugin_wrapper (void) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - rv = caml_callback_exn (dump_plugin_fn, Val_unit); - if (Is_exception_result (rv)) -@@ -152,9 +159,9 @@ dump_plugin_wrapper (void) - static int - config_wrapper (const char *key, const char *val) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal3 (keyv, valv, rv); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - keyv = caml_copy_string (key); - valv = caml_copy_string (val); -@@ -171,9 +178,9 @@ config_wrapper (const char *key, const char *val) - static int - config_complete_wrapper (void) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - rv = caml_callback_exn (config_complete_fn, Val_unit); - if (Is_exception_result (rv)) { -@@ -187,9 +194,9 @@ config_complete_wrapper (void) - static int - thread_model_wrapper (void) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - rv = caml_callback_exn (thread_model_fn, Val_unit); - if (Is_exception_result (rv)) { -@@ -203,9 +210,9 @@ thread_model_wrapper (void) - static int - get_ready_wrapper (void) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - rv = caml_callback_exn (get_ready_fn, Val_unit); - if (Is_exception_result (rv)) { -@@ -219,9 +226,9 @@ get_ready_wrapper (void) - static int - after_fork_wrapper (void) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - rv = caml_callback_exn (after_fork_fn, Val_unit); - if (Is_exception_result (rv)) { -@@ -235,9 +242,9 @@ after_fork_wrapper (void) - static void - cleanup_wrapper (void) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - rv = caml_callback_exn (cleanup_fn, Val_unit); - if (Is_exception_result (rv)) { -@@ -251,9 +258,9 @@ cleanup_wrapper (void) - static int - preconnect_wrapper (int readonly) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - rv = caml_callback_exn (preconnect_fn, Val_bool (readonly)); - if (Is_exception_result (rv)) { -@@ -267,9 +274,9 @@ preconnect_wrapper (int readonly) - static int - list_exports_wrapper (int readonly, int is_tls, struct nbdkit_exports *exports) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal2 (rv, v); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - rv = caml_callback2_exn (list_exports_fn, Val_bool (readonly), - Val_bool (is_tls)); -@@ -299,10 +306,10 @@ list_exports_wrapper (int readonly, int is_tls, struct nbdkit_exports *exports) - static const char * - default_export_wrapper (int readonly, int is_tls) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); - const char *name; -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - rv = caml_callback2_exn (default_export_fn, Val_bool (readonly), - Val_bool (is_tls)); -@@ -318,10 +325,10 @@ default_export_wrapper (int readonly, int is_tls) - static void * - open_wrapper (int readonly) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); - value *ret; -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - rv = caml_callback_exn (open_fn, Val_bool (readonly)); - if (Is_exception_result (rv)) { -@@ -341,9 +348,9 @@ open_wrapper (int readonly) - static void - close_wrapper (void *h) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - rv = caml_callback_exn (close_fn, *(value *) h); - if (Is_exception_result (rv)) { -@@ -360,10 +367,10 @@ close_wrapper (void *h) - static const char * - export_description_wrapper (void *h) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); - const char *desc; -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - rv = caml_callback_exn (export_description_fn, *(value *) h); - if (Is_exception_result (rv)) { -@@ -378,10 +385,10 @@ export_description_wrapper (void *h) - static int64_t - get_size_wrapper (void *h) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); - int64_t r; -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - rv = caml_callback_exn (get_size_fn, *(value *) h); - if (Is_exception_result (rv)) { -@@ -397,11 +404,11 @@ static int - block_size_wrapper (void *h, - uint32_t *minimum, uint32_t *preferred, uint32_t *maximum) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); - int i; - int64_t i64; -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - rv = caml_callback_exn (block_size_fn, *(value *) h); - if (Is_exception_result (rv)) { -@@ -439,9 +446,9 @@ block_size_wrapper (void *h, - static int - can_write_wrapper (void *h) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - rv = caml_callback_exn (can_write_fn, *(value *) h); - if (Is_exception_result (rv)) { -@@ -455,9 +462,9 @@ can_write_wrapper (void *h) - static int - can_flush_wrapper (void *h) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - rv = caml_callback_exn (can_flush_fn, *(value *) h); - if (Is_exception_result (rv)) { -@@ -471,9 +478,9 @@ can_flush_wrapper (void *h) - static int - is_rotational_wrapper (void *h) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - rv = caml_callback_exn (is_rotational_fn, *(value *) h); - if (Is_exception_result (rv)) { -@@ -487,9 +494,9 @@ is_rotational_wrapper (void *h) - static int - can_trim_wrapper (void *h) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - rv = caml_callback_exn (can_trim_fn, *(value *) h); - if (Is_exception_result (rv)) { -@@ -503,9 +510,9 @@ can_trim_wrapper (void *h) - static int - can_zero_wrapper (void *h) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - rv = caml_callback_exn (can_zero_fn, *(value *) h); - if (Is_exception_result (rv)) { -@@ -519,9 +526,9 @@ can_zero_wrapper (void *h) - static int - can_fua_wrapper (void *h) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - rv = caml_callback_exn (can_fua_fn, *(value *) h); - if (Is_exception_result (rv)) { -@@ -535,9 +542,9 @@ can_fua_wrapper (void *h) - static int - can_fast_zero_wrapper (void *h) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - rv = caml_callback_exn (can_fast_zero_fn, *(value *) h); - if (Is_exception_result (rv)) { -@@ -551,9 +558,9 @@ can_fast_zero_wrapper (void *h) - static int - can_cache_wrapper (void *h) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - rv = caml_callback_exn (can_cache_fn, *(value *) h); - if (Is_exception_result (rv)) { -@@ -567,9 +574,9 @@ can_cache_wrapper (void *h) - static int - can_extents_wrapper (void *h) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - rv = caml_callback_exn (can_extents_fn, *(value *) h); - if (Is_exception_result (rv)) { -@@ -583,9 +590,9 @@ can_extents_wrapper (void *h) - static int - can_multi_conn_wrapper (void *h) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - rv = caml_callback_exn (can_multi_conn_fn, *(value *) h); - if (Is_exception_result (rv)) { -@@ -629,10 +636,10 @@ static int - pread_wrapper (void *h, void *buf, uint32_t count, uint64_t offset, - uint32_t flags) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal4 (rv, countv, offsetv, flagsv); - mlsize_t len; -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - countv = Val_int (count); - offsetv = caml_copy_int64 (offset); -@@ -659,9 +666,9 @@ static int - pwrite_wrapper (void *h, const void *buf, uint32_t count, uint64_t offset, - uint32_t flags) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal4 (rv, strv, offsetv, flagsv); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - strv = caml_alloc_initialized_string (count, buf); - offsetv = caml_copy_int64 (offset); -@@ -680,9 +687,9 @@ pwrite_wrapper (void *h, const void *buf, uint32_t count, uint64_t offset, - static int - flush_wrapper (void *h, uint32_t flags) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal2 (rv, flagsv); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - flagsv = Val_flags (flags); - -@@ -698,9 +705,9 @@ flush_wrapper (void *h, uint32_t flags) - static int - trim_wrapper (void *h, uint32_t count, uint64_t offset, uint32_t flags) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal4 (rv, countv, offsetv, flagsv); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - countv = caml_copy_int64 (count); - offsetv = caml_copy_int64 (offset); -@@ -719,9 +726,9 @@ trim_wrapper (void *h, uint32_t count, uint64_t offset, uint32_t flags) - static int - zero_wrapper (void *h, uint32_t count, uint64_t offset, uint32_t flags) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal4 (rv, countv, offsetv, flagsv); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - countv = caml_copy_int64 (count); - offsetv = caml_copy_int64 (offset); -@@ -741,9 +748,9 @@ static int - extents_wrapper (void *h, uint32_t count, uint64_t offset, uint32_t flags, - struct nbdkit_extents *extents) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal5 (rv, countv, offsetv, flagsv, v); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - countv = caml_copy_int64 (count); - offsetv = caml_copy_int64 (offset); -@@ -781,9 +788,9 @@ extents_wrapper (void *h, uint32_t count, uint64_t offset, uint32_t flags, - static int - cache_wrapper (void *h, uint32_t count, uint64_t offset, uint32_t flags) - { -+ ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal4 (rv, countv, offsetv, flagsv); -- LEAVE_BLOCKING_SECTION_FOR_CURRENT_SCOPE (); - - countv = caml_copy_int64 (count); - offsetv = caml_copy_int64 (offset); --- -2.41.0 - diff --git a/0009-ocaml-Always-unregister-the-global-root-and-free-the.patch b/0009-ocaml-Always-unregister-the-global-root-and-free-the.patch deleted file mode 100644 index acb9bc5..0000000 --- a/0009-ocaml-Always-unregister-the-global-root-and-free-the.patch +++ /dev/null @@ -1,65 +0,0 @@ -From f4d5f179c9be6db3c39bc0752e36f262c3f87716 Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Wed, 21 Jun 2023 20:15:46 +0100 -Subject: [PATCH 09/16] ocaml: Always unregister the global root and free the - handle - -If the OCaml code did not provide a close method, we would never call -close_wrapper, and then we ended up leaking the global root and handle. ---- - plugins/ocaml/plugin.c | 18 ++++++++++++++---- - 1 file changed, 14 insertions(+), 4 deletions(-) - -diff --git a/plugins/ocaml/plugin.c b/plugins/ocaml/plugin.c -index fe781f9af..a4671d6ed 100644 ---- a/plugins/ocaml/plugin.c -+++ b/plugins/ocaml/plugin.c -@@ -76,6 +76,7 @@ constructor (void) - * nbdkit_plugin struct and return it from our own plugin_init - * function. - */ -+static void close_wrapper (void *h); - static void unload_wrapper (void); - static void free_strings (void); - static void remove_roots (void); -@@ -92,6 +93,10 @@ static struct nbdkit_plugin plugin = { - */ - .name = NULL, - -+ /* We always call these, even if the OCaml code does not provide a -+ * callback. -+ */ -+ .close = close_wrapper, - .unload = unload_wrapper, - }; - -@@ -345,6 +350,9 @@ open_wrapper (int readonly) - CAMLreturnT (void *, ret); - } - -+/* We always have a close function, since we need to unregister the -+ * global root and free the handle. -+ */ - static void - close_wrapper (void *h) - { -@@ -352,10 +360,12 @@ close_wrapper (void *h) - CAMLparam0 (); - CAMLlocal1 (rv); - -- rv = caml_callback_exn (close_fn, *(value *) h); -- if (Is_exception_result (rv)) { -- nbdkit_error ("%s", caml_format_exception (Extract_exception (rv))); -- /*FALLTHROUGH*/ -+ if (close_fn) { -+ rv = caml_callback_exn (close_fn, *(value *) h); -+ if (Is_exception_result (rv)) { -+ nbdkit_error ("%s", caml_format_exception (Extract_exception (rv))); -+ /*FALLTHROUGH*/ -+ } - } - - caml_remove_generational_global_root (h); --- -2.41.0 - diff --git a/0010-ocaml-Fix-thread-registration-for-OCaml-5.patch b/0010-ocaml-Fix-thread-registration-for-OCaml-5.patch deleted file mode 100644 index ebf111c..0000000 --- a/0010-ocaml-Fix-thread-registration-for-OCaml-5.patch +++ /dev/null @@ -1,375 +0,0 @@ -From 9d4b87e0338d45456c0506fd2c25b80f7ef6b1e1 Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Wed, 21 Jun 2023 20:18:58 +0100 -Subject: [PATCH 10/16] ocaml: Fix thread registration for OCaml 5 - -OCaml 5 is strict about registering threads before calling OCaml heap -functions, and will abort the program with this error if you don't do -this correctly: - - Fatal error: no domain lock held - -Fix this as explained in the comment. - -Note (as it's not explained well in the documentation): Threads -created from C are placed in OCaml thread domain 0. In order to add -them to this domain, the main program must not hold on to the runtime -system lock (for domain 0, because that's what caml_startup gives -you). For this to work we must only hold this lock in the main -program briefly around calls to OCaml code, which means we must -release the runtime system after calling caml_startup as we did in an -earlier commit. ---- - plugins/cc/nbdkit-cc-plugin.pod | 4 +-- - plugins/ocaml/nbdkit-ocaml-plugin.pod | 3 +- - plugins/ocaml/Makefile.am | 2 +- - tests/Makefile.am | 4 +-- - plugins/ocaml/plugin.c | 52 +++++++++++++++++++++++++-- - tests/test-cc-ocaml.sh | 2 +- - tests/cc_shebang.ml | 2 +- - 7 files changed, 59 insertions(+), 10 deletions(-) - -diff --git a/plugins/cc/nbdkit-cc-plugin.pod b/plugins/cc/nbdkit-cc-plugin.pod -index f55f74ab0..e393457c4 100644 ---- a/plugins/cc/nbdkit-cc-plugin.pod -+++ b/plugins/cc/nbdkit-cc-plugin.pod -@@ -89,7 +89,7 @@ C as a parameter to exec nbdkit. - =head2 Using this plugin with OCaml - - nbdkit cc CC=ocamlopt \ -- CFLAGS="-output-obj -runtime-variant _pic -I +unix unix.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ -+ CFLAGS="-output-obj -runtime-variant _pic -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ - source.ml - - OCaml plugin scripts can be created using this trick: -@@ -97,7 +97,7 @@ OCaml plugin scripts can be created using this trick: - (*/.)>/dev/null 2>&1 - exec nbdkit cc "$0" \ - CC=ocamlopt \ -- CFLAGS="-output-obj -runtime-variant _pic -I +unix unix.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ -+ CFLAGS="-output-obj -runtime-variant _pic -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ - "$@" - *) - (* followed by OCaml code for the plugin here *) -diff --git a/plugins/ocaml/nbdkit-ocaml-plugin.pod b/plugins/ocaml/nbdkit-ocaml-plugin.pod -index e4a8cf0b0..f1e06d3e2 100644 ---- a/plugins/ocaml/nbdkit-ocaml-plugin.pod -+++ b/plugins/ocaml/nbdkit-ocaml-plugin.pod -@@ -53,7 +53,8 @@ using this command: - - ocamlopt.opt -output-obj -runtime-variant _pic \ - -o nbdkit-myplugin-plugin.so \ -- -I +unix unix.cmxa NBDKit.cmx myplugin.ml \ -+ -I +unix unix.cmxa -I +threads threads.cmxa \ -+ NBDKit.cmx myplugin.ml \ - -cclib -lnbdkitocaml - - You can then use C as an nbdkit plugin (see -diff --git a/plugins/ocaml/Makefile.am b/plugins/ocaml/Makefile.am -index e7faae506..a61550cb9 100644 ---- a/plugins/ocaml/Makefile.am -+++ b/plugins/ocaml/Makefile.am -@@ -84,7 +84,7 @@ noinst_SCRIPTS = nbdkit-ocamlexample-plugin.so - nbdkit-ocamlexample-plugin.so: example.cmx libnbdkitocaml.la NBDKit.cmi NBDKit.cmx - $(OCAMLOPT) $(OCAMLOPTFLAGS) \ - -output-obj -runtime-variant _pic -o $@ \ -- -I +unix unix.cmxa NBDKit.cmx $< \ -+ -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx $< \ - -cclib -L.libs -cclib -lnbdkitocaml - example.cmx: example.ml NBDKit.cmi NBDKit.cmx - $(OCAMLOPT) $(OCAMLOPTFLAGS) -c $< -o $@ -diff --git a/tests/Makefile.am b/tests/Makefile.am -index d8a640e1e..32ebb7002 100644 ---- a/tests/Makefile.am -+++ b/tests/Makefile.am -@@ -1185,7 +1185,7 @@ OCAML_PLUGIN_DEPS = \ - test-ocaml-plugin.so: test_ocaml_plugin.cmx $(OCAML_PLUGIN_DEPS) - $(OCAMLOPT) $(OCAMLOPTFLAGS) -I ../plugins/ocaml \ - -output-obj -runtime-variant _pic -o $@ \ -- -I +unix unix.cmxa NBDKit.cmx $< \ -+ -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx $< \ - -cclib -L../plugins/ocaml/.libs -cclib -lnbdkitocaml - test_ocaml_plugin.cmx: test_ocaml_plugin.ml $(OCAML_PLUGIN_DEPS) - $(OCAMLOPT) $(OCAMLOPTFLAGS) -I ../plugins/ocaml -c $< -o $@ -@@ -1194,7 +1194,7 @@ test-ocaml-errorcodes-plugin.so: \ - test_ocaml_errorcodes_plugin.cmx $(OCAML_PLUGIN_DEPS) - $(OCAMLOPT) $(OCAMLOPTFLAGS) -I ../plugins/ocaml \ - -output-obj -runtime-variant _pic -o $@ \ -- -I +unix unix.cmxa NBDKit.cmx $< \ -+ -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx $< \ - -cclib -L../plugins/ocaml/.libs -cclib -lnbdkitocaml - test_ocaml_errorcodes_plugin.cmx: \ - test_ocaml_errorcodes_plugin.ml $(OCAML_PLUGIN_DEPS) -diff --git a/plugins/ocaml/plugin.c b/plugins/ocaml/plugin.c -index a4671d6ed..eaa88a925 100644 ---- a/plugins/ocaml/plugin.c -+++ b/plugins/ocaml/plugin.c -@@ -260,9 +260,31 @@ cleanup_wrapper (void) - CAMLreturn0; - } - -+/* A note about nbdkit threads and OCaml: -+ * -+ * OCaml requires that all C threads are registered and unregistered. -+ * -+ * For the main thread callbacks like load, config, get_ready [above -+ * this comment] we don't need to do anything. -+ * -+ * For the connected callbacks [below this comment] nbdkit creates its -+ * own threads but does not provide a way to intercept thread creation -+ * or destruction. However we can register the current thread in -+ * every callback, and unregister the thread only call_wrapper. -+ * -+ * This is safe and cheap: Registering a thread is basically free if -+ * the thread is already registered (the OCaml code checks a -+ * thread-local variable to see if it needs to register). nbdkit will -+ * always call the .close method, which does not necessarily indicate -+ * that the thread is being destroyed, but if the thread is reused we -+ * will register the same thread again when .open or similar is called -+ * next time. -+ */ -+ - static int - preconnect_wrapper (int readonly) - { -+ caml_c_thread_register (); - ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -@@ -279,6 +301,7 @@ preconnect_wrapper (int readonly) - static int - list_exports_wrapper (int readonly, int is_tls, struct nbdkit_exports *exports) - { -+ caml_c_thread_register (); - ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal2 (rv, v); -@@ -311,6 +334,7 @@ list_exports_wrapper (int readonly, int is_tls, struct nbdkit_exports *exports) - static const char * - default_export_wrapper (int readonly, int is_tls) - { -+ caml_c_thread_register (); - ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -@@ -330,6 +354,7 @@ default_export_wrapper (int readonly, int is_tls) - static void * - open_wrapper (int readonly) - { -+ caml_c_thread_register (); - ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -@@ -351,12 +376,13 @@ open_wrapper (int readonly) - } - - /* We always have a close function, since we need to unregister the -- * global root and free the handle. -+ * global root, free the handle and unregister the thread. - */ - static void - close_wrapper (void *h) - { -- ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); -+ caml_c_thread_register (); -+ caml_acquire_runtime_system (); - CAMLparam0 (); - CAMLlocal1 (rv); - -@@ -370,6 +396,8 @@ close_wrapper (void *h) - - caml_remove_generational_global_root (h); - free (h); -+ caml_release_runtime_system (); -+ caml_c_thread_unregister (); - - CAMLreturn0; - } -@@ -377,6 +405,7 @@ close_wrapper (void *h) - static const char * - export_description_wrapper (void *h) - { -+ caml_c_thread_register (); - ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -@@ -395,6 +424,7 @@ export_description_wrapper (void *h) - static int64_t - get_size_wrapper (void *h) - { -+ caml_c_thread_register (); - ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -@@ -414,6 +444,7 @@ static int - block_size_wrapper (void *h, - uint32_t *minimum, uint32_t *preferred, uint32_t *maximum) - { -+ caml_c_thread_register (); - ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -@@ -456,6 +487,7 @@ block_size_wrapper (void *h, - static int - can_write_wrapper (void *h) - { -+ caml_c_thread_register (); - ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -@@ -472,6 +504,7 @@ can_write_wrapper (void *h) - static int - can_flush_wrapper (void *h) - { -+ caml_c_thread_register (); - ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -@@ -488,6 +521,7 @@ can_flush_wrapper (void *h) - static int - is_rotational_wrapper (void *h) - { -+ caml_c_thread_register (); - ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -@@ -504,6 +538,7 @@ is_rotational_wrapper (void *h) - static int - can_trim_wrapper (void *h) - { -+ caml_c_thread_register (); - ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -@@ -520,6 +555,7 @@ can_trim_wrapper (void *h) - static int - can_zero_wrapper (void *h) - { -+ caml_c_thread_register (); - ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -@@ -536,6 +572,7 @@ can_zero_wrapper (void *h) - static int - can_fua_wrapper (void *h) - { -+ caml_c_thread_register (); - ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -@@ -552,6 +589,7 @@ can_fua_wrapper (void *h) - static int - can_fast_zero_wrapper (void *h) - { -+ caml_c_thread_register (); - ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -@@ -568,6 +606,7 @@ can_fast_zero_wrapper (void *h) - static int - can_cache_wrapper (void *h) - { -+ caml_c_thread_register (); - ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -@@ -584,6 +623,7 @@ can_cache_wrapper (void *h) - static int - can_extents_wrapper (void *h) - { -+ caml_c_thread_register (); - ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -@@ -600,6 +640,7 @@ can_extents_wrapper (void *h) - static int - can_multi_conn_wrapper (void *h) - { -+ caml_c_thread_register (); - ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal1 (rv); -@@ -646,6 +687,7 @@ static int - pread_wrapper (void *h, void *buf, uint32_t count, uint64_t offset, - uint32_t flags) - { -+ caml_c_thread_register (); - ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal4 (rv, countv, offsetv, flagsv); -@@ -676,6 +718,7 @@ static int - pwrite_wrapper (void *h, const void *buf, uint32_t count, uint64_t offset, - uint32_t flags) - { -+ caml_c_thread_register (); - ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal4 (rv, strv, offsetv, flagsv); -@@ -697,6 +740,7 @@ pwrite_wrapper (void *h, const void *buf, uint32_t count, uint64_t offset, - static int - flush_wrapper (void *h, uint32_t flags) - { -+ caml_c_thread_register (); - ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal2 (rv, flagsv); -@@ -715,6 +759,7 @@ flush_wrapper (void *h, uint32_t flags) - static int - trim_wrapper (void *h, uint32_t count, uint64_t offset, uint32_t flags) - { -+ caml_c_thread_register (); - ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal4 (rv, countv, offsetv, flagsv); -@@ -736,6 +781,7 @@ trim_wrapper (void *h, uint32_t count, uint64_t offset, uint32_t flags) - static int - zero_wrapper (void *h, uint32_t count, uint64_t offset, uint32_t flags) - { -+ caml_c_thread_register (); - ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal4 (rv, countv, offsetv, flagsv); -@@ -758,6 +804,7 @@ static int - extents_wrapper (void *h, uint32_t count, uint64_t offset, uint32_t flags, - struct nbdkit_extents *extents) - { -+ caml_c_thread_register (); - ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal5 (rv, countv, offsetv, flagsv, v); -@@ -798,6 +845,7 @@ extents_wrapper (void *h, uint32_t count, uint64_t offset, uint32_t flags, - static int - cache_wrapper (void *h, uint32_t count, uint64_t offset, uint32_t flags) - { -+ caml_c_thread_register (); - ACQUIRE_RUNTIME_FOR_CURRENT_SCOPE (); - CAMLparam0 (); - CAMLlocal4 (rv, countv, offsetv, flagsv); -diff --git a/tests/test-cc-ocaml.sh b/tests/test-cc-ocaml.sh -index 3b4f6a553..9458201a4 100755 ---- a/tests/test-cc-ocaml.sh -+++ b/tests/test-cc-ocaml.sh -@@ -61,6 +61,6 @@ cleanup_fn rm -f $out - rm -f $out - - nbdkit -U - cc $script a=1 b=2 c=3 d=4 \ -- CC="$OCAMLOPT" CFLAGS="-output-obj -runtime-variant _pic -I $SRCDIR/../plugins/ocaml -I +unix unix.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ -+ CC="$OCAMLOPT" CFLAGS="-output-obj -runtime-variant _pic -I $SRCDIR/../plugins/ocaml -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ - --run 'nbdinfo --size $uri' > $out - test "$(cat $out)" -eq $((512 * 2048)) -diff --git a/tests/cc_shebang.ml b/tests/cc_shebang.ml -index 619b08bb5..05ca77b64 100755 ---- a/tests/cc_shebang.ml -+++ b/tests/cc_shebang.ml -@@ -4,7 +4,7 @@ - # shell as an impossible command which is ignored. The line below is - # run by the shell and ignored by OCaml. - --exec nbdkit cc "$0" CC=ocamlopt CFLAGS="-output-obj -runtime-variant _pic -I +unix unix.cmxa NBDKit.cmx -cclib -lnbdkitocaml" "$@" -+exec nbdkit cc "$0" CC=ocamlopt CFLAGS="-output-obj -runtime-variant _pic -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx -cclib -lnbdkitocaml" "$@" - *) - - open Printf --- -2.41.0 - diff --git a/0011-tests-test-cc-ocaml.sh-Use-nbdkit-v-option-to-help-w.patch b/0011-tests-test-cc-ocaml.sh-Use-nbdkit-v-option-to-help-w.patch deleted file mode 100644 index 47186fb..0000000 --- a/0011-tests-test-cc-ocaml.sh-Use-nbdkit-v-option-to-help-w.patch +++ /dev/null @@ -1,26 +0,0 @@ -From c78266258709e2cbe6f0e869c866d09ad72c072c Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Thu, 22 Jun 2023 10:33:31 +0100 -Subject: [PATCH 11/16] tests/test-cc-ocaml.sh: Use nbdkit -v option to help - with debugging - ---- - tests/test-cc-ocaml.sh | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/tests/test-cc-ocaml.sh b/tests/test-cc-ocaml.sh -index 9458201a4..fc1335591 100755 ---- a/tests/test-cc-ocaml.sh -+++ b/tests/test-cc-ocaml.sh -@@ -60,7 +60,7 @@ out=test-cc-ocaml.out - cleanup_fn rm -f $out - rm -f $out - --nbdkit -U - cc $script a=1 b=2 c=3 d=4 \ -+nbdkit -v -U - cc $script a=1 b=2 c=3 d=4 \ - CC="$OCAMLOPT" CFLAGS="-output-obj -runtime-variant _pic -I $SRCDIR/../plugins/ocaml -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ - --run 'nbdinfo --size $uri' > $out - test "$(cat $out)" -eq $((512 * 2048)) --- -2.41.0 - diff --git a/0012-tests-Replace-SRCDIR-with-abs_top_srcdir.patch b/0012-tests-Replace-SRCDIR-with-abs_top_srcdir.patch deleted file mode 100644 index 2d783f0..0000000 --- a/0012-tests-Replace-SRCDIR-with-abs_top_srcdir.patch +++ /dev/null @@ -1,324 +0,0 @@ -From d968c4858847388e515bc1ef84ff4479c18a414d Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Thu, 22 Jun 2023 10:44:10 +0100 -Subject: [PATCH 12/16] tests: Replace $SRCDIR with $abs_top_srcdir - -functions.sh defines $abs_top_srcdir so there's no need to use $SRCDIR -in any test scripts. ---- - tests/test-cc-cpp.sh | 9 ++------- - tests/test-cc-ocaml.sh | 9 ++------- - tests/test-cc.sh | 9 ++------- - tests/test-python-exception.sh | 12 +++++------- - tests/test-python-export-list.sh | 8 +++----- - tests/test-python-export-name.sh | 8 +++----- - tests/test-python-thread-model.sh | 13 +++++-------- - tests/test-read-password-interactive.sh | 2 +- - tests/test-read-password.sh | 2 +- - tests/test-shebang-cc-ocaml.sh | 3 +-- - tests/test-shebang-cc.sh | 5 ++--- - tests/test-shebang-perl.sh | 4 ++-- - tests/test-shebang-python.sh | 4 ++-- - 13 files changed, 31 insertions(+), 57 deletions(-) - -diff --git a/tests/test-cc-cpp.sh b/tests/test-cc-cpp.sh -index 9a4c16242..7c7bf6353 100755 ---- a/tests/test-cc-cpp.sh -+++ b/tests/test-cc-cpp.sh -@@ -37,12 +37,7 @@ source ./functions.sh - set -e - set -x - --if test "$SRCDIR" = ""; then -- echo "$0: \$SRCDIR is not set" -- exit 1 --fi -- --script=$SRCDIR/test-cc-cpp.cpp -+script=$abs_top_srcdir/tests/test-cc-cpp.cpp - if test ! -f "$script"; then - echo "$0: could not locate test-cc-cpp.cpp" - exit 1 -@@ -59,6 +54,6 @@ rm -f $out - - nbdkit -U - cc $script \ - CC="$CXX" \ -- EXTRA_CFLAGS="-I$SRCDIR/../include" \ -+ EXTRA_CFLAGS="-I$abs_top_srcdir/include" \ - --run 'nbdinfo --size $uri' > $out - test "$(cat $out)" -eq $((100 * 1024 * 1024)) -diff --git a/tests/test-cc-ocaml.sh b/tests/test-cc-ocaml.sh -index fc1335591..db7d252cf 100755 ---- a/tests/test-cc-ocaml.sh -+++ b/tests/test-cc-ocaml.sh -@@ -37,12 +37,7 @@ source ./functions.sh - set -e - set -x - --if test "$SRCDIR" = ""; then -- echo "$0: \$SRCDIR is not set" -- exit 1 --fi -- --script=$SRCDIR/test_ocaml_plugin.ml -+script=$abs_top_srcdir/tests/test_ocaml_plugin.ml - if test ! -f "$script"; then - echo "$0: could not locate test_ocaml_plugin.ml" - exit 1 -@@ -61,6 +56,6 @@ cleanup_fn rm -f $out - rm -f $out - - nbdkit -v -U - cc $script a=1 b=2 c=3 d=4 \ -- CC="$OCAMLOPT" CFLAGS="-output-obj -runtime-variant _pic -I $SRCDIR/../plugins/ocaml -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ -+ CC="$OCAMLOPT" CFLAGS="-output-obj -runtime-variant _pic -I $abs_top_srcdir/plugins/ocaml -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ - --run 'nbdinfo --size $uri' > $out - test "$(cat $out)" -eq $((512 * 2048)) -diff --git a/tests/test-cc.sh b/tests/test-cc.sh -index 2a719d314..5214327bd 100755 ---- a/tests/test-cc.sh -+++ b/tests/test-cc.sh -@@ -37,12 +37,7 @@ source ./functions.sh - set -e - set -x - --if test "$SRCDIR" = ""; then -- echo "$0: \$SRCDIR is not set" -- exit 1 --fi -- --script=$SRCDIR/cc-shebang.c -+script=$abs_top_srcdir/tests/cc-shebang.c - if test ! -f "$script"; then - echo "$0: could not locate cc-shebang.c" - exit 1 -@@ -57,6 +52,6 @@ cleanup_fn rm -f $out - rm -f $out - - nbdkit -U - cc $script \ -- EXTRA_CFLAGS="-I$SRCDIR/../include" \ -+ EXTRA_CFLAGS="-I$abs_top_srcdir/include" \ - --run 'nbdinfo --size $uri' > $out - test "$(cat $out)" -eq $((100 * 1024 * 1024)) -diff --git a/tests/test-python-exception.sh b/tests/test-python-exception.sh -index a9fb146a6..54c29e66e 100755 ---- a/tests/test-python-exception.sh -+++ b/tests/test-python-exception.sh -@@ -34,23 +34,21 @@ source ./functions.sh - set -e - set -x - --if test ! -d "$SRCDIR"; then -- echo "$0: could not locate python-exception.py" -- exit 1 --fi -- - skip_if_valgrind "because Python code leaks memory" - -+script=$abs_top_srcdir/tests/python-exception.py -+test -f "$script" -+ - output=test-python-exception.out - rm -f $output - cleanup_fn rm -f $output - --nbdkit -f -v python $SRCDIR/python-exception.py test=simple > $output 2>&1 ||: -+nbdkit -f -v python $script test=simple > $output 2>&1 ||: - cat $output - - grep 'this is the test string' $output - --nbdkit -f -v python $SRCDIR/python-exception.py test=traceback > $output 2>&1 ||: -+nbdkit -f -v python $script test=traceback > $output 2>&1 ||: - cat $output - - grep 'raise_error1' $output -diff --git a/tests/test-python-export-list.sh b/tests/test-python-export-list.sh -index 49ca62e49..08774b9f3 100755 ---- a/tests/test-python-export-list.sh -+++ b/tests/test-python-export-list.sh -@@ -34,10 +34,8 @@ source ./functions.sh - set -e - set -x - --if test ! -d "$SRCDIR"; then -- echo "$0: could not locate python-export-list.py" -- exit 1 --fi -+script=$abs_top_srcdir/tests/python-export-list.py -+test -f "$script" - - skip_if_valgrind "because Python code leaks memory" - requires_nbdinfo -@@ -52,7 +50,7 @@ files="$pid $sock $out" - rm -f $files - cleanup_fn rm -f $files - --start_nbdkit -P $pid -U $sock python $SRCDIR/python-export-list.py -+start_nbdkit -P $pid -U $sock python $script - - nbdinfo --list --json nbd+unix://\?socket=$sock > $out - cat $out -diff --git a/tests/test-python-export-name.sh b/tests/test-python-export-name.sh -index 99f292d2a..7680ae1e0 100755 ---- a/tests/test-python-export-name.sh -+++ b/tests/test-python-export-name.sh -@@ -34,10 +34,8 @@ source ./functions.sh - set -e - set -x - --if test ! -d "$SRCDIR"; then -- echo "$0: could not locate python-export-name.py" -- exit 1 --fi -+script=$abs_top_srcdir/tests/python-export-name.py -+test -f "$script" - - skip_if_valgrind "because Python code leaks memory" - requires nbdsh --version -@@ -48,7 +46,7 @@ files="$pid $sock" - rm -f $files - cleanup_fn rm -f $files - --start_nbdkit -P $pid -U $sock python $SRCDIR/python-export-name.py -+start_nbdkit -P $pid -U $sock python $script - - # Try to read back various export names from the plugin. - for e in "" "test" "/" "//" " " "/ " "?" "テスト" "-n" '\\' $'\n' "%%" \ -diff --git a/tests/test-python-thread-model.sh b/tests/test-python-thread-model.sh -index 69b3d5c76..a0dea2386 100755 ---- a/tests/test-python-thread-model.sh -+++ b/tests/test-python-thread-model.sh -@@ -34,22 +34,19 @@ source ./functions.sh - set -e - set -x - --SCRIPT="$SRCDIR/python-thread-model.py" --if ! test -d "$SRCDIR" || ! test -f "$SCRIPT"; then -- echo "$0: could not locate python-thread-model.py" -- exit 1 --fi -+script="$abs_top_srcdir/tests/python-thread-model.py" -+test -f "$script" - - skip_if_valgrind "because Python code leaks memory" - requires nbdsh --version - - # Check the plugin is loadable. --nbdkit python $SCRIPT --dump-plugin -+nbdkit python $script --dump-plugin - - # This test only works on modern Linux (with pipe2, accept4 etc) where - # we are able to issue parallel requests. Other platforms have more - # restrictive thread models. --requires sh -c "nbdkit python $SCRIPT --dump-plugin | -+requires sh -c "nbdkit python $script --dump-plugin | - grep '^thread_model=parallel'" - - pid=test-python-thread-model.pid -@@ -58,7 +55,7 @@ files="$out $pid $sock" - rm -f $files - cleanup_fn rm -f $files - --start_nbdkit -P $pid -U $sock python $SCRIPT -+start_nbdkit -P $pid -U $sock python $script - - export sock - nbdsh -c ' -diff --git a/tests/test-read-password-interactive.sh b/tests/test-read-password-interactive.sh -index 7af48492b..ee345872e 100755 ---- a/tests/test-read-password-interactive.sh -+++ b/tests/test-read-password-interactive.sh -@@ -36,7 +36,7 @@ set -x - - # This is an executable C script using nbdkit-cc-plugin. - requires_plugin cc --plugin=$SRCDIR/test-read-password-plugin.c -+plugin=$abs_top_srcdir/tests/test-read-password-plugin.c - requires test -x $plugin - - # expect on macOS does not work for unclear reasons, skip it. -diff --git a/tests/test-read-password.sh b/tests/test-read-password.sh -index 234162bc3..d0033dceb 100755 ---- a/tests/test-read-password.sh -+++ b/tests/test-read-password.sh -@@ -36,7 +36,7 @@ set -x - - # This is an executable C script using nbdkit-cc-plugin. - requires_plugin cc --plugin=$SRCDIR/test-read-password-plugin.c -+plugin=$abs_top_srcdir/tests/test-read-password-plugin.c - requires test -x $plugin - - # Since we are matching on error messages. -diff --git a/tests/test-shebang-cc-ocaml.sh b/tests/test-shebang-cc-ocaml.sh -index 41e2f3db5..9eebcf07c 100755 ---- a/tests/test-shebang-cc-ocaml.sh -+++ b/tests/test-shebang-cc-ocaml.sh -@@ -32,8 +32,7 @@ - - source ./functions.sh - --script=$SRCDIR/cc_shebang.ml -- -+script=$abs_top_srcdir/tests/cc_shebang.ml - if test ! -f "$script"; then - echo "$0: could not locate cc_shebang.ml" - exit 1 -diff --git a/tests/test-shebang-cc.sh b/tests/test-shebang-cc.sh -index 6ae75abed..a5e557648 100755 ---- a/tests/test-shebang-cc.sh -+++ b/tests/test-shebang-cc.sh -@@ -35,8 +35,7 @@ - - source ./functions.sh - --script=$SRCDIR/cc-shebang.c -- -+script=$abs_top_srcdir/tests/cc-shebang.c - if test ! -f "$script"; then - echo "$0: could not locate cc-shebang.c" - exit 1 -@@ -46,7 +45,7 @@ requires_plugin cc - requires guestfish --version - - $script -fv -U - \ -- EXTRA_CFLAGS="-I$SRCDIR/../include" \ -+ EXTRA_CFLAGS="-I$abs_top_srcdir/include" \ - --run ' - guestfish \ - add "" protocol:nbd server:unix:$unixsocket : \ -diff --git a/tests/test-shebang-perl.sh b/tests/test-shebang-perl.sh -index 5f35d75b4..65bb7a403 100755 ---- a/tests/test-shebang-perl.sh -+++ b/tests/test-shebang-perl.sh -@@ -34,9 +34,9 @@ source ./functions.sh - - pidfile=shebang-perl.pid - sock=$(mktemp -u /tmp/nbdkit-test-sock.XXXXXX) --script=$SRCDIR/shebang.pl -+script=$abs_top_srcdir/tests/shebang.pl - --if test ! -d "$SRCDIR"; then -+if test ! -f "$script"; then - echo "$0: could not locate shebang.pl" - exit 1 - fi -diff --git a/tests/test-shebang-python.sh b/tests/test-shebang-python.sh -index fb851de94..8674f2fa1 100755 ---- a/tests/test-shebang-python.sh -+++ b/tests/test-shebang-python.sh -@@ -34,9 +34,9 @@ source ./functions.sh - - pidfile=shebang-python.pid - sock=$(mktemp -u /tmp/nbdkit-test-sock.XXXXXX) --script=$SRCDIR/shebang.py -+script=$abs_top_srcdir/tests/shebang.py - --if test ! -d "$SRCDIR"; then -+if test ! -f "$script"; then - echo "$0: could not locate shebang.py" - exit 1 - fi --- -2.41.0 - diff --git a/0013-tests-test-read-password-Remove-use-of-SRCDIR.patch b/0013-tests-test-read-password-Remove-use-of-SRCDIR.patch deleted file mode 100644 index 0d14568..0000000 --- a/0013-tests-test-read-password-Remove-use-of-SRCDIR.patch +++ /dev/null @@ -1,55 +0,0 @@ -From 92ae65f93d8ebeb09500552d7ebfc1e8149ded6f Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Thu, 22 Jun 2023 10:48:51 +0100 -Subject: [PATCH 13/16] tests/test-read-password*: Remove use of $SRCDIR - -These tests required exporting $abs_top_srcdir so that the plugin -(which is a C script) can use it. ---- - tests/test-read-password-interactive.sh | 3 +++ - tests/test-read-password.sh | 3 +++ - tests/test-read-password-plugin.c | 2 +- - 3 files changed, 7 insertions(+), 1 deletion(-) - -diff --git a/tests/test-read-password-interactive.sh b/tests/test-read-password-interactive.sh -index ee345872e..2738922f4 100755 ---- a/tests/test-read-password-interactive.sh -+++ b/tests/test-read-password-interactive.sh -@@ -39,6 +39,9 @@ requires_plugin cc - plugin=$abs_top_srcdir/tests/test-read-password-plugin.c - requires test -x $plugin - -+# This variable is used by $plugin. -+export abs_top_srcdir -+ - # expect on macOS does not work for unclear reasons, skip it. - requires_not test "$(uname)" = "Darwin" - -diff --git a/tests/test-read-password.sh b/tests/test-read-password.sh -index d0033dceb..8243d5491 100755 ---- a/tests/test-read-password.sh -+++ b/tests/test-read-password.sh -@@ -39,6 +39,9 @@ requires_plugin cc - plugin=$abs_top_srcdir/tests/test-read-password-plugin.c - requires test -x $plugin - -+# This variable is used by $plugin. -+export abs_top_srcdir -+ - # Since we are matching on error messages. - export LANG=C - -diff --git a/tests/test-read-password-plugin.c b/tests/test-read-password-plugin.c -index d8faea4e3..397f69d72 100755 ---- a/tests/test-read-password-plugin.c -+++ b/tests/test-read-password-plugin.c -@@ -1,5 +1,5 @@ - #if 0 --exec nbdkit cc "$0" "$@" EXTRA_CFLAGS="-I.. -I${SRCDIR:-.}/../include" -+exec nbdkit cc "$0" "$@" EXTRA_CFLAGS="-I.. -I$abs_top_srcdir/include" - #endif - /* nbdkit - * Copyright Red Hat --- -2.41.0 - diff --git a/0014-tests-Stop-setting-SRCDIR-for-tests.patch b/0014-tests-Stop-setting-SRCDIR-for-tests.patch deleted file mode 100644 index 2ff84a2..0000000 --- a/0014-tests-Stop-setting-SRCDIR-for-tests.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 2e3dcb2a720e4258b54d04ffd081c5159783df8e Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Thu, 22 Jun 2023 10:50:17 +0100 -Subject: [PATCH 14/16] tests: Stop setting $SRCDIR for tests - -Since no tests use this variable any longer we can stop setting it. - -However note that make-psk.sh still uses the same-named (but not -connected) variable. ---- - tests/Makefile.am | 1 - - 1 file changed, 1 deletion(-) - -diff --git a/tests/Makefile.am b/tests/Makefile.am -index 32ebb7002..2921076de 100644 ---- a/tests/Makefile.am -+++ b/tests/Makefile.am -@@ -63,7 +63,6 @@ EXTRA_PROGRAMS = - # Use the 'direct' backend, and ensure maximum libguestfs debugging. - # Enable libnbd debugging. - TESTS_ENVIRONMENT = \ -- SRCDIR=$(srcdir) \ - LIBGUESTFS_ATTACH_METHOD=appliance \ - LIBGUESTFS_DEBUG=1 \ - LIBGUESTFS_TRACE=1 \ --- -2.41.0 - diff --git a/0015-tests-Explicitly-add-L.-plugins-ocaml-.libs-to-find-.patch b/0015-tests-Explicitly-add-L.-plugins-ocaml-.libs-to-find-.patch deleted file mode 100644 index e1b9e45..0000000 --- a/0015-tests-Explicitly-add-L.-plugins-ocaml-.libs-to-find-.patch +++ /dev/null @@ -1,44 +0,0 @@ -From 3e4c1b79a72970c17cb42b21070e61ec634a38bb Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Thu, 22 Jun 2023 11:15:27 +0100 -Subject: [PATCH 15/16] tests: Explicitly add -L../plugins/ocaml/.libs to find - -lnbdkitocaml - -The actual libnbdkitocaml.so library is located in -plugins/ocaml/.libs, but we were only specifying plugins/ocaml as the -search path. How did it ever work? Turns out using LD_LIBRARY_PATH -set in wrapper.c. It seems unreliable to rely on this, so set the -path properly, as we are already doing elsewhere. ---- - tests/test-cc-ocaml.sh | 2 +- - tests/cc_shebang.ml | 2 +- - 2 files changed, 2 insertions(+), 2 deletions(-) - -diff --git a/tests/test-cc-ocaml.sh b/tests/test-cc-ocaml.sh -index db7d252cf..97a1c89e3 100755 ---- a/tests/test-cc-ocaml.sh -+++ b/tests/test-cc-ocaml.sh -@@ -56,6 +56,6 @@ cleanup_fn rm -f $out - rm -f $out - - nbdkit -v -U - cc $script a=1 b=2 c=3 d=4 \ -- CC="$OCAMLOPT" CFLAGS="-output-obj -runtime-variant _pic -I $abs_top_srcdir/plugins/ocaml -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx -cclib -lnbdkitocaml" \ -+ CC="$OCAMLOPT" CFLAGS="-output-obj -runtime-variant _pic -I $abs_top_srcdir/plugins/ocaml -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx -cclib -L../plugins/ocaml/.libs -cclib -lnbdkitocaml" \ - --run 'nbdinfo --size $uri' > $out - test "$(cat $out)" -eq $((512 * 2048)) -diff --git a/tests/cc_shebang.ml b/tests/cc_shebang.ml -index 05ca77b64..57ad85791 100755 ---- a/tests/cc_shebang.ml -+++ b/tests/cc_shebang.ml -@@ -4,7 +4,7 @@ - # shell as an impossible command which is ignored. The line below is - # run by the shell and ignored by OCaml. - --exec nbdkit cc "$0" CC=ocamlopt CFLAGS="-output-obj -runtime-variant _pic -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx -cclib -lnbdkitocaml" "$@" -+exec nbdkit cc "$0" CC=ocamlopt CFLAGS="-output-obj -runtime-variant _pic -I +unix unix.cmxa -I +threads threads.cmxa NBDKit.cmx -cclib -L../plugins/ocaml/.libs -cclib -lnbdkitocaml" "$@" - *) - - open Printf --- -2.41.0 - diff --git a/0016-perl-Call-PERL_SET_CONTEXT-from-.open-method.patch b/0016-perl-Call-PERL_SET_CONTEXT-from-.open-method.patch deleted file mode 100644 index 0a12e96..0000000 --- a/0016-perl-Call-PERL_SET_CONTEXT-from-.open-method.patch +++ /dev/null @@ -1,39 +0,0 @@ -From 495708e9d1b396ff450df15d5789b4f6c51f6ebc Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Thu, 13 Jul 2023 11:50:02 +0100 -Subject: [PATCH 16/16] perl: Call PERL_SET_CONTEXT from .open method - -This appears to be necessary with Perl 5.38. ---- - plugins/perl/perl.c | 15 +++++++++++++++ - 1 file changed, 15 insertions(+) - -diff --git a/plugins/perl/perl.c b/plugins/perl/perl.c -index d3b7cede2..1d8d0c2b4 100644 ---- a/plugins/perl/perl.c -+++ b/plugins/perl/perl.c -@@ -339,6 +339,21 @@ perl_open (int readonly) - SV *sv; - dSP; - -+ /* -+ * From perlembed(1): -+ * -+ * "PERL_SET_CONTEXT(interp) should also be called whenever "interp" -+ * is used by a thread that did not create it (using either -+ * perl_alloc(), or the more esoteric perl_clone())." -+ * -+ * Since we may be called here from a new thread created within -+ * nbdkit, do this. This is necessary since Perl 5.38. It didn't -+ * seem to make a difference with earlier Perl, but doesn't break -+ * them either. -+ */ -+ -+ PERL_SET_CONTEXT (my_perl); -+ - /* We check in perl_config that this callback is defined. */ - ENTER; - SAVETMPS; --- -2.41.0 - diff --git a/nbdkit.spec b/nbdkit.spec index f916994..d47cae7 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -45,14 +45,14 @@ ExclusiveArch: x86_64 %global verify_tarball_signature 1 # If there are patches which touch autotools files, set this to 1. -%global patches_touch_autotools 1 +%global patches_touch_autotools %{nil} # The source directory. %global source_directory 1.35-development Name: nbdkit -Version: 1.35.5 -Release: 6%{?dist} +Version: 1.35.6 +Release: 1%{?dist} Summary: NBD server License: BSD-3-Clause @@ -78,25 +78,6 @@ Source3: copy-patches.sh Source4: nbdkit.attr Source5: nbdkit-find-provides -# All upstream patches since 1.35.5 was released. These are needed -# to fix OCaml 5 builds. -Patch: 0001-tests-test-tar-info-Remove-bogus-test-requires-of-gu.patch -Patch: 0002-tar-Document-the-optional-tar-option-in-help-output-.patch -Patch: 0003-tar-Implement-tar-limit.patch -Patch: 0004-xz-Fix-error-message-to-refer-to-xz-max-block-parame.patch -Patch: 0005-configure-Recommend-using-g-with-OCAMLOPTFLAGS.patch -Patch: 0006-tests-test_ocaml_plugin.ml-Print-a-message-when-test.patch -Patch: 0007-ocaml-Add-I-unix-before-using-unix.cmxa.patch -Patch: 0008-ocaml-Replace-caml_leave_blocking_section-with-caml_.patch -Patch: 0009-ocaml-Always-unregister-the-global-root-and-free-the.patch -Patch: 0010-ocaml-Fix-thread-registration-for-OCaml-5.patch -Patch: 0011-tests-test-cc-ocaml.sh-Use-nbdkit-v-option-to-help-w.patch -Patch: 0012-tests-Replace-SRCDIR-with-abs_top_srcdir.patch -Patch: 0013-tests-test-read-password-Remove-use-of-SRCDIR.patch -Patch: 0014-tests-Stop-setting-SRCDIR-for-tests.patch -Patch: 0015-tests-Explicitly-add-L.-plugins-ocaml-.libs-to-find-.patch -Patch: 0016-perl-Call-PERL_SET_CONTEXT-from-.open-method.patch - BuildRequires: make %if 0%{patches_touch_autotools} BuildRequires: autoconf, automake, libtool @@ -1236,6 +1217,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Fri Jul 14 2023 Richard W.M. Jones - 1.35.6-1 +- New upstream development version 1.35.6 + * Thu Jul 13 2023 Jitka Plesnikova - 1.35.5-6 - Perl 5.38 re-rebuild updated packages diff --git a/sources b/sources index a96756c..c6f5d88 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.35.5.tar.gz) = aa0ddefa6073a20bda78bcc2a4295429a7f2ad98fe3bc3f0b7d6275878b3ec1ffb99e2a4cb0abc470d7c104179de627181ac1afacc991e37114f574f4da2b7d7 -SHA512 (nbdkit-1.35.5.tar.gz.sig) = 170e0d3d7d79811026ad313f1bb315685ba674319c76e42648c14bd0f300f28ec9304eae77e0e4489308229e73ac98469bfb0f2095ee091aa5b26e53f29a0ec0 +SHA512 (nbdkit-1.35.6.tar.gz) = f174429708bf5db232cdb60c6e2f0ec95274af8d28c0db9593c1ff56aa9c56f7fe11ecc298049b6a61b7e49dc2daa1287b5facd2fe364471c8f01640f07251e9 +SHA512 (nbdkit-1.35.6.tar.gz.sig) = baf455715cd446793fb385cc950632e7e33a3d1af6e0cfeb5a23050f2d99b93e2c97a8ad116186ff763c73ac236c10ebcd5befb731bde9c78e3915138cf34a47 From 862741709130efe88f549440ba00b037f507eb48 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 20 Jul 2023 16:21:30 +0000 Subject: [PATCH 142/298] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index d47cae7..b9fbaad 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.35.6 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1217,6 +1217,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Thu Jul 20 2023 Fedora Release Engineering - 1.35.6-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Fri Jul 14 2023 Richard W.M. Jones - 1.35.6-1 - New upstream development version 1.35.6 From 1d8d0cb3a29b647dee2bc95998baecaee6297da4 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sun, 23 Jul 2023 12:47:39 +0100 Subject: [PATCH 143/298] New upstream development version 1.35.7 New nbdkit-qcow2dec-filter. --- nbdkit.spec | 22 +++++++++++++++++++--- sources | 4 ++-- 2 files changed, 21 insertions(+), 5 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index b9fbaad..9bf0272 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,8 +51,8 @@ ExclusiveArch: x86_64 %global source_directory 1.35-development Name: nbdkit -Version: 1.35.6 -Release: 2%{?dist} +Version: 1.35.7 +Release: 1%{?dist} Summary: NBD server License: BSD-3-Clause @@ -554,6 +554,10 @@ nbdkit-pause-filter Pause NBD requests. nbdkit-protect-filter Write-protect parts of a plugin. +%if !0%{?rhel} +nbdkit-qcow2dec-filter Decode qcow2 files. + +%endif nbdkit-rate-filter Limit bandwidth by connection or server. nbdkit-readahead-filter Prefetch data when reading sequentially. @@ -741,13 +745,15 @@ find $RPM_BUILD_ROOT -name '*.la' -delete rm -f $RPM_BUILD_ROOT%{_mandir}/man3/nbdkit-rust-plugin.3* %if 0%{?rhel} -# In RHEL, remove some plugins we cannot --disable. +# In RHEL, remove some plugins and filters we cannot --disable. for f in cc cdi ; do rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/nbdkit-$f-plugin.so rm -f $RPM_BUILD_ROOT%{_mandir}/man?/nbdkit-$f-plugin.* done rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/nbdkit-S3-plugin rm -f $RPM_BUILD_ROOT%{_mandir}/man1/nbdkit-S3-plugin.1* +rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/filters/nbdkit-qcow2dec-filter.so +rm -f $RPM_BUILD_ROOT%{_mandir}/man1/nbdkit-qcow2dec-filter.so %endif # Install RPM dependency generator. @@ -1086,6 +1092,9 @@ export LIBGUESTFS_TRACE=1 %{_libdir}/%{name}/filters/nbdkit-partition-filter.so %{_libdir}/%{name}/filters/nbdkit-pause-filter.so %{_libdir}/%{name}/filters/nbdkit-protect-filter.so +%if !0%{?rhel} +%{_libdir}/%{name}/filters/nbdkit-qcow2dec-filter.so +%endif %{_libdir}/%{name}/filters/nbdkit-rate-filter.so %{_libdir}/%{name}/filters/nbdkit-readahead-filter.so %{_libdir}/%{name}/filters/nbdkit-retry-filter.so @@ -1123,6 +1132,9 @@ export LIBGUESTFS_TRACE=1 %{_mandir}/man1/nbdkit-partition-filter.1* %{_mandir}/man1/nbdkit-pause-filter.1* %{_mandir}/man1/nbdkit-protect-filter.1* +%if !0%{?rhel} +%{_mandir}/man1/nbdkit-qcow2dec-filter.1* +%endif %{_mandir}/man1/nbdkit-rate-filter.1* %{_mandir}/man1/nbdkit-readahead-filter.1* %{_mandir}/man1/nbdkit-retry-filter.1* @@ -1217,6 +1229,10 @@ export LIBGUESTFS_TRACE=1 %changelog +* Sun Jul 23 2023 Richard W.M. Jones - 1.35.7-1 +- New upstream development version 1.35.7 +- New nbdkit-qcow2dec-filter. + * Thu Jul 20 2023 Fedora Release Engineering - 1.35.6-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild diff --git a/sources b/sources index c6f5d88..14fab60 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.35.6.tar.gz) = f174429708bf5db232cdb60c6e2f0ec95274af8d28c0db9593c1ff56aa9c56f7fe11ecc298049b6a61b7e49dc2daa1287b5facd2fe364471c8f01640f07251e9 -SHA512 (nbdkit-1.35.6.tar.gz.sig) = baf455715cd446793fb385cc950632e7e33a3d1af6e0cfeb5a23050f2d99b93e2c97a8ad116186ff763c73ac236c10ebcd5befb731bde9c78e3915138cf34a47 +SHA512 (nbdkit-1.35.7.tar.gz) = cea70ac04b0a2af051c23b48e04c4790d61b73546a006556e82cae72789d044fe4f40874fd0dc37fc693e3c42c57f13a184e2edb359cd3793547a90486017ed7 +SHA512 (nbdkit-1.35.7.tar.gz.sig) = c05ca3ed253f42d8c046cd21eab905a8ab86d070fd0a97eedf21dd05be72caeb7934df23a04e6084980917b7246a06f50550bcf1a9ed7f5049fa8e01f7056f0f From 6152bf0661eceab18092d1d5d1e323e316dba9c9 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sun, 23 Jul 2023 14:48:11 +0100 Subject: [PATCH 144/298] Remove correct file for ELN builds --- nbdkit.spec | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 9bf0272..08b5728 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -52,7 +52,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.35.7 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD-3-Clause @@ -753,7 +753,7 @@ done rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/nbdkit-S3-plugin rm -f $RPM_BUILD_ROOT%{_mandir}/man1/nbdkit-S3-plugin.1* rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/filters/nbdkit-qcow2dec-filter.so -rm -f $RPM_BUILD_ROOT%{_mandir}/man1/nbdkit-qcow2dec-filter.so +rm -f $RPM_BUILD_ROOT%{_mandir}/man1/nbdkit-qcow2dec-filter.1* %endif # Install RPM dependency generator. @@ -1229,7 +1229,7 @@ export LIBGUESTFS_TRACE=1 %changelog -* Sun Jul 23 2023 Richard W.M. Jones - 1.35.7-1 +* Sun Jul 23 2023 Richard W.M. Jones - 1.35.7-2 - New upstream development version 1.35.7 - New nbdkit-qcow2dec-filter. From d284db54e9190d3444335d62d9ca404d7b75ff2d Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 1 Aug 2023 11:18:13 +0100 Subject: [PATCH 145/298] New upstream development version 1.35.8 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 08b5728..0a8a1d8 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,8 +51,8 @@ ExclusiveArch: x86_64 %global source_directory 1.35-development Name: nbdkit -Version: 1.35.7 -Release: 2%{?dist} +Version: 1.35.8 +Release: 1%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1229,6 +1229,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Tue Aug 01 2023 Richard W.M. Jones - 1.35.8-1 +- New upstream development version 1.35.8 + * Sun Jul 23 2023 Richard W.M. Jones - 1.35.7-2 - New upstream development version 1.35.7 - New nbdkit-qcow2dec-filter. diff --git a/sources b/sources index 14fab60..e2799bc 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.35.7.tar.gz) = cea70ac04b0a2af051c23b48e04c4790d61b73546a006556e82cae72789d044fe4f40874fd0dc37fc693e3c42c57f13a184e2edb359cd3793547a90486017ed7 -SHA512 (nbdkit-1.35.7.tar.gz.sig) = c05ca3ed253f42d8c046cd21eab905a8ab86d070fd0a97eedf21dd05be72caeb7934df23a04e6084980917b7246a06f50550bcf1a9ed7f5049fa8e01f7056f0f +SHA512 (nbdkit-1.35.8.tar.gz) = 94963547f7ea421cf909ff758deae3a3fb45652ed7e5d7b3d7b85cbcfe4831b5d8552b780d4390690cff364d3459e0d350a33274332f08ba2a242a7a4c2efcc9 +SHA512 (nbdkit-1.35.8.tar.gz.sig) = ac387049563347a7d4af80a22dbc46ea6fa48114006c110dd2eab84e5bca4c3c8198e1fd6b16f0c0edc80d3d3b5d69f5204c35bc081c271738f2302ca18094e6 From 192bd7dee05a4b497469a4c7f266681b83bf88d1 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 5 Aug 2023 11:24:09 +0100 Subject: [PATCH 146/298] New upstream development version 1.35.9 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 0a8a1d8..549bb1e 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,7 +51,7 @@ ExclusiveArch: x86_64 %global source_directory 1.35-development Name: nbdkit -Version: 1.35.8 +Version: 1.35.9 Release: 1%{?dist} Summary: NBD server @@ -1229,6 +1229,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Sat Aug 05 2023 Richard W.M. Jones - 1.35.9-1 +- New upstream development version 1.35.9 + * Tue Aug 01 2023 Richard W.M. Jones - 1.35.8-1 - New upstream development version 1.35.8 diff --git a/sources b/sources index e2799bc..f73fee0 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.35.8.tar.gz) = 94963547f7ea421cf909ff758deae3a3fb45652ed7e5d7b3d7b85cbcfe4831b5d8552b780d4390690cff364d3459e0d350a33274332f08ba2a242a7a4c2efcc9 -SHA512 (nbdkit-1.35.8.tar.gz.sig) = ac387049563347a7d4af80a22dbc46ea6fa48114006c110dd2eab84e5bca4c3c8198e1fd6b16f0c0edc80d3d3b5d69f5204c35bc081c271738f2302ca18094e6 +SHA512 (nbdkit-1.35.9.tar.gz) = ba9ad07eed2b0e9fe61c31885cb7e282f943f0c6d661c9125cfb264a910aca9a4f0bf865bb17103187666c909f8bab682aeb1f7188760e63ccafacc40c4612b1 +SHA512 (nbdkit-1.35.9.tar.gz.sig) = c18ffdbe1f9a879fc3bc16bf4912d345b1ef3301b9a286b9da771809bc6c51d57407753ffd5935e8201100c6ec3be3de6bd013a4086a7f86164d1e8831f1d613 From cba3facac0ceda17003e9d28de080337d10ae95a Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 5 Aug 2023 12:25:38 +0100 Subject: [PATCH 147/298] Disable libblkio on i686 (RHBZ#2229372) --- nbdkit.spec | 22 ++++++++++++++++++---- 1 file changed, 18 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 549bb1e..eafe14b 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -21,6 +21,14 @@ %global have_ocaml 1 %endif +# We don't yet have libblkio on RHEL. +# libblkio is broken on i686: https://bugzilla.redhat.com/2229372 +%if !0%{?rhel} +%ifnarch %{ix86} +%global have_blkio 1 +%endif +%endif + # Architectures where we run the complete test suite including # the libguestfs tests. # @@ -101,6 +109,8 @@ BuildRequires: e2fsprogs, e2fsprogs-devel %if !0%{?rhel} BuildRequires: xorriso BuildRequires: rb_libtorrent-devel +%endif +%if 0%{?have_blkio} BuildRequires: libblkio-devel %endif BuildRequires: bash-completion @@ -259,7 +269,7 @@ This package contains example plugins for %{name}. # The plugins below have non-trivial dependencies are so are # packaged separately. -%if !0%{?rhel} +%if 0%{?have_blkio} %package blkio-plugin Summary: libblkio NVMe, vhost-user, vDPA, VFIO plugin for %{name} Requires: %{name}-server%{?_isa} = %{version}-%{release} @@ -695,7 +705,6 @@ export PYTHON=%{__python3} --enable-ruby \ --enable-tcl \ --enable-torrent \ - --with-libblkio \ --with-ext2 \ --with-iso \ --with-libvirt \ @@ -705,11 +714,15 @@ export PYTHON=%{__python3} --disable-ruby \ --disable-tcl \ --disable-torrent \ - --without-libblkio \ --without-ext2 \ --without-iso \ --without-libvirt \ %endif +%if 0%{?have_blkio} + --with-libblkio \ +%else + --without-libblkio \ +%endif %ifarch x86_64 --enable-vddk \ %else @@ -887,7 +900,7 @@ export LIBGUESTFS_TRACE=1 %{_mandir}/man1/nbdkit-example*-plugin.1* -%if !0%{?rhel} +%if 0%{?have_blkio} %files blkio-plugin %doc README.md %license LICENSE @@ -1231,6 +1244,7 @@ export LIBGUESTFS_TRACE=1 %changelog * Sat Aug 05 2023 Richard W.M. Jones - 1.35.9-1 - New upstream development version 1.35.9 +- Disable libblkio on i686 (RHBZ#2229372) * Tue Aug 01 2023 Richard W.M. Jones - 1.35.8-1 - New upstream development version 1.35.8 From 6bc107126658f95ac78c6fcf9b48be63dbb8594c Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 12 Aug 2023 12:16:58 +0100 Subject: [PATCH 148/298] New upstream development version 1.35.10 Use zlib-ng on Fedora but not RHEL. --- nbdkit.spec | 14 +++++++++++++- sources | 4 ++-- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index eafe14b..13ea127 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -59,7 +59,7 @@ ExclusiveArch: x86_64 %global source_directory 1.35-development Name: nbdkit -Version: 1.35.9 +Version: 1.35.10 Release: 1%{?dist} Summary: NBD server @@ -101,6 +101,9 @@ BuildRequires: libguestfs-devel BuildRequires: libvirt-devel BuildRequires: xz-devel BuildRequires: zlib-devel +%if !0%{?rhel} +BuildRequires: zlib-ng-devel +%endif BuildRequires: libzstd-devel BuildRequires: libcurl-devel BuildRequires: libnbd-devel >= 1.3.11 @@ -689,6 +692,11 @@ export PYTHON=%{__python3} --with-selinux \ --with-ssh \ --with-zlib \ +%if !0%{?rhel} + --with-zlib-ng \ +%else + --without-zlib-ng \ +%endif --enable-linuxdisk \ --enable-python \ --disable-golang \ @@ -1242,6 +1250,10 @@ export LIBGUESTFS_TRACE=1 %changelog +* Sat Aug 12 2023 Richard W.M. Jones - 1.35.10-1 +- New upstream development version 1.35.10 +- Use zlib-ng on Fedora but not RHEL. + * Sat Aug 05 2023 Richard W.M. Jones - 1.35.9-1 - New upstream development version 1.35.9 - Disable libblkio on i686 (RHBZ#2229372) diff --git a/sources b/sources index f73fee0..8f81ae0 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.35.9.tar.gz) = ba9ad07eed2b0e9fe61c31885cb7e282f943f0c6d661c9125cfb264a910aca9a4f0bf865bb17103187666c909f8bab682aeb1f7188760e63ccafacc40c4612b1 -SHA512 (nbdkit-1.35.9.tar.gz.sig) = c18ffdbe1f9a879fc3bc16bf4912d345b1ef3301b9a286b9da771809bc6c51d57407753ffd5935e8201100c6ec3be3de6bd013a4086a7f86164d1e8831f1d613 +SHA512 (nbdkit-1.35.10.tar.gz) = da70b970518efe27b06fe1da3b695fadac47d15113b5be944a8c795f8b2fd6e2f7f2d3df1634939fd7756fb3f082c963e341b1e3f764a67a5c15eb529436aa92 +SHA512 (nbdkit-1.35.10.tar.gz.sig) = 215f8bedd0de30db410e4f5254b9c82982050469e1211b659dab9a81f490218e0dd1cf7ebf05046b08286a51ce3121c8529c4f4a890d02a9297777f73c73439c From f72cb5c449d9cbe61f08a6e32c14e12ee6752c15 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 30 Aug 2023 15:03:57 +0100 Subject: [PATCH 149/298] New upstream development version 1.35.11 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 13ea127..dae9619 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -59,7 +59,7 @@ ExclusiveArch: x86_64 %global source_directory 1.35-development Name: nbdkit -Version: 1.35.10 +Version: 1.35.11 Release: 1%{?dist} Summary: NBD server @@ -1250,6 +1250,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Wed Aug 30 2023 Richard W.M. Jones - 1.35.11-1 +- New upstream development version 1.35.11 + * Sat Aug 12 2023 Richard W.M. Jones - 1.35.10-1 - New upstream development version 1.35.10 - Use zlib-ng on Fedora but not RHEL. diff --git a/sources b/sources index 8f81ae0..99604f0 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.35.10.tar.gz) = da70b970518efe27b06fe1da3b695fadac47d15113b5be944a8c795f8b2fd6e2f7f2d3df1634939fd7756fb3f082c963e341b1e3f764a67a5c15eb529436aa92 -SHA512 (nbdkit-1.35.10.tar.gz.sig) = 215f8bedd0de30db410e4f5254b9c82982050469e1211b659dab9a81f490218e0dd1cf7ebf05046b08286a51ce3121c8529c4f4a890d02a9297777f73c73439c +SHA512 (nbdkit-1.35.11.tar.gz) = ab1db494592aa62fe3f9362e3fcfde74a246aa4e120bbebefb9ade6a5d81ae31080d8e3db09971b06f2a34400f1419f42750d5beddbba3b1802f124ab9a083da +SHA512 (nbdkit-1.35.11.tar.gz.sig) = 7e6af76a90faa59e11101b4f567c2f943bf7c9e6241d29023142846fe65b76eb5ef555907bab591816bceaea0c0798c8d570b26b953f728c38f3eca7682a339e From bbec0865fbe61982aac1a8e93fd0be2810f2396a Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 30 Aug 2023 16:59:00 +0100 Subject: [PATCH 150/298] Add upstream patch to fix partition filter on s390x --- ...e-swap-partition_entries_lba-in-test.patch | 37 +++++++++++++++++++ nbdkit.spec | 7 +++- 2 files changed, 42 insertions(+), 2 deletions(-) create mode 100644 0001-partition-Byte-swap-partition_entries_lba-in-test.patch diff --git a/0001-partition-Byte-swap-partition_entries_lba-in-test.patch b/0001-partition-Byte-swap-partition_entries_lba-in-test.patch new file mode 100644 index 0000000..e26718e --- /dev/null +++ b/0001-partition-Byte-swap-partition_entries_lba-in-test.patch @@ -0,0 +1,37 @@ +From 47aebc247e6553ffb593512b65296b4e2a8eac0a Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Wed, 30 Aug 2023 15:53:16 +0000 +Subject: [PATCH] partition: Byte-swap partition_entries_lba in test + +Fixes: commit 7b9301a4c569456a4f96784229a2cd48e8957662 +Fixes: https://gitlab.com/nbdkit/nbdkit/-/merge_requests/38#note_1535695896 +--- + filters/partition/partition-gpt.c | 12 ++++++------ + 1 file changed, 6 insertions(+), 6 deletions(-) + +diff --git a/filters/partition/partition-gpt.c b/filters/partition/partition-gpt.c +index ea02e504c..80acddb44 100644 +--- a/filters/partition/partition-gpt.c ++++ b/filters/partition/partition-gpt.c +@@ -59,12 +59,12 @@ get_gpt_header (uint8_t *sector, + * the header, rather than looking in the header to see what LBA + * they actually start at. Let's at least check for that now. + */ +- if (header->partition_entries_lba != 2) { +- nbdkit_error ("non-standard GPT layout: " +- "partition entries are not adjacent to header"); +- return -1; +- } +- return 0; ++ if (le64toh (header->partition_entries_lba) != 2) { ++ nbdkit_error ("non-standard GPT layout: " ++ "partition entries are not adjacent to header"); ++ return -1; ++ } ++ return 0; + } + + static void +-- +2.41.0 + diff --git a/nbdkit.spec b/nbdkit.spec index dae9619..d3efc68 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -60,7 +60,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.35.11 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD-3-Clause @@ -86,6 +86,9 @@ Source3: copy-patches.sh Source4: nbdkit.attr Source5: nbdkit-find-provides +# Upstream patch to fix partition filter on s390x +Patch1: 0001-partition-Byte-swap-partition_entries_lba-in-test.patch + BuildRequires: make %if 0%{patches_touch_autotools} BuildRequires: autoconf, automake, libtool @@ -1250,7 +1253,7 @@ export LIBGUESTFS_TRACE=1 %changelog -* Wed Aug 30 2023 Richard W.M. Jones - 1.35.11-1 +* Wed Aug 30 2023 Richard W.M. Jones - 1.35.11-2 - New upstream development version 1.35.11 * Sat Aug 12 2023 Richard W.M. Jones - 1.35.10-1 From 57aa128eb060215f5de2e31060f75c10737aceec Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 8 Sep 2023 11:09:19 +0100 Subject: [PATCH 151/298] New upstream development version 1.35.12 --- ...e-swap-partition_entries_lba-in-test.patch | 37 ------------------- nbdkit.spec | 10 ++--- sources | 4 +- 3 files changed, 7 insertions(+), 44 deletions(-) delete mode 100644 0001-partition-Byte-swap-partition_entries_lba-in-test.patch diff --git a/0001-partition-Byte-swap-partition_entries_lba-in-test.patch b/0001-partition-Byte-swap-partition_entries_lba-in-test.patch deleted file mode 100644 index e26718e..0000000 --- a/0001-partition-Byte-swap-partition_entries_lba-in-test.patch +++ /dev/null @@ -1,37 +0,0 @@ -From 47aebc247e6553ffb593512b65296b4e2a8eac0a Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Wed, 30 Aug 2023 15:53:16 +0000 -Subject: [PATCH] partition: Byte-swap partition_entries_lba in test - -Fixes: commit 7b9301a4c569456a4f96784229a2cd48e8957662 -Fixes: https://gitlab.com/nbdkit/nbdkit/-/merge_requests/38#note_1535695896 ---- - filters/partition/partition-gpt.c | 12 ++++++------ - 1 file changed, 6 insertions(+), 6 deletions(-) - -diff --git a/filters/partition/partition-gpt.c b/filters/partition/partition-gpt.c -index ea02e504c..80acddb44 100644 ---- a/filters/partition/partition-gpt.c -+++ b/filters/partition/partition-gpt.c -@@ -59,12 +59,12 @@ get_gpt_header (uint8_t *sector, - * the header, rather than looking in the header to see what LBA - * they actually start at. Let's at least check for that now. - */ -- if (header->partition_entries_lba != 2) { -- nbdkit_error ("non-standard GPT layout: " -- "partition entries are not adjacent to header"); -- return -1; -- } -- return 0; -+ if (le64toh (header->partition_entries_lba) != 2) { -+ nbdkit_error ("non-standard GPT layout: " -+ "partition entries are not adjacent to header"); -+ return -1; -+ } -+ return 0; - } - - static void --- -2.41.0 - diff --git a/nbdkit.spec b/nbdkit.spec index d3efc68..bfe33c8 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -59,8 +59,8 @@ ExclusiveArch: x86_64 %global source_directory 1.35-development Name: nbdkit -Version: 1.35.11 -Release: 2%{?dist} +Version: 1.35.12 +Release: 1%{?dist} Summary: NBD server License: BSD-3-Clause @@ -86,9 +86,6 @@ Source3: copy-patches.sh Source4: nbdkit.attr Source5: nbdkit-find-provides -# Upstream patch to fix partition filter on s390x -Patch1: 0001-partition-Byte-swap-partition_entries_lba-in-test.patch - BuildRequires: make %if 0%{patches_touch_autotools} BuildRequires: autoconf, automake, libtool @@ -1253,6 +1250,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Fri Sep 08 2023 Richard W.M. Jones - 1.35.12-1 +- New upstream development version 1.35.12 + * Wed Aug 30 2023 Richard W.M. Jones - 1.35.11-2 - New upstream development version 1.35.11 diff --git a/sources b/sources index 99604f0..07bfabb 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.35.11.tar.gz) = ab1db494592aa62fe3f9362e3fcfde74a246aa4e120bbebefb9ade6a5d81ae31080d8e3db09971b06f2a34400f1419f42750d5beddbba3b1802f124ab9a083da -SHA512 (nbdkit-1.35.11.tar.gz.sig) = 7e6af76a90faa59e11101b4f567c2f943bf7c9e6241d29023142846fe65b76eb5ef555907bab591816bceaea0c0798c8d570b26b953f728c38f3eca7682a339e +SHA512 (nbdkit-1.35.12.tar.gz) = 2c0beb53952d1c569c48be6fdb8457410821498fdf9fc33038b6b3ce90fd81015d7b1639bcc474aadaaec7520099dd2812b03f152112a3fd57ac77bf212311bf +SHA512 (nbdkit-1.35.12.tar.gz.sig) = 2aa61b49200ecbb531d2004574378bb4bd663ac002c166750d554d7c3ac0c3fea29b657e78470cd6be34e07470168a369c199d701be7ab64fbb3c23be3088f17 From e7d01e8072b2e892eaaf93bbb49661eb159bf7e3 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 11 Sep 2023 17:53:16 +0100 Subject: [PATCH 152/298] New upstream development version 1.35.13 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index bfe33c8..123e965 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -59,7 +59,7 @@ ExclusiveArch: x86_64 %global source_directory 1.35-development Name: nbdkit -Version: 1.35.12 +Version: 1.35.13 Release: 1%{?dist} Summary: NBD server @@ -1250,6 +1250,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Mon Sep 11 2023 Richard W.M. Jones - 1.35.13-1 +- New upstream development version 1.35.13 + * Fri Sep 08 2023 Richard W.M. Jones - 1.35.12-1 - New upstream development version 1.35.12 diff --git a/sources b/sources index 07bfabb..b954442 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.35.12.tar.gz) = 2c0beb53952d1c569c48be6fdb8457410821498fdf9fc33038b6b3ce90fd81015d7b1639bcc474aadaaec7520099dd2812b03f152112a3fd57ac77bf212311bf -SHA512 (nbdkit-1.35.12.tar.gz.sig) = 2aa61b49200ecbb531d2004574378bb4bd663ac002c166750d554d7c3ac0c3fea29b657e78470cd6be34e07470168a369c199d701be7ab64fbb3c23be3088f17 +SHA512 (nbdkit-1.35.13.tar.gz) = 36706c37f857f9ec2caaa102023b152a683f60f7dff958a6d3f617f1299834db7a4176075b3159d1ba5ec853c1e9c8a5b2e47c87838ea80fa37d45bfe2530ba1 +SHA512 (nbdkit-1.35.13.tar.gz.sig) = 612b92af3134cbc4539bef5c80f3e43879148d43dba7af2f9e0eb62bc7f5c241a62ae59f6c9b3914838f79424b11b4d7322294a9a190e21338c6ca615ab0c8ce From 28d997d6453ab7fb7a230eb74b328219b31d93da Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 27 Sep 2023 11:50:20 +0100 Subject: [PATCH 153/298] New upstream development version 1.36.0 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 123e965..2e4f8a6 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -56,10 +56,10 @@ ExclusiveArch: x86_64 %global patches_touch_autotools %{nil} # The source directory. -%global source_directory 1.35-development +%global source_directory 1.36-stable Name: nbdkit -Version: 1.35.13 +Version: 1.36.0 Release: 1%{?dist} Summary: NBD server @@ -1250,6 +1250,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Wed Sep 27 2023 Richard W.M. Jones - 1.36.0-1 +- New upstream development version 1.36.0 + * Mon Sep 11 2023 Richard W.M. Jones - 1.35.13-1 - New upstream development version 1.35.13 diff --git a/sources b/sources index b954442..38585e9 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.35.13.tar.gz) = 36706c37f857f9ec2caaa102023b152a683f60f7dff958a6d3f617f1299834db7a4176075b3159d1ba5ec853c1e9c8a5b2e47c87838ea80fa37d45bfe2530ba1 -SHA512 (nbdkit-1.35.13.tar.gz.sig) = 612b92af3134cbc4539bef5c80f3e43879148d43dba7af2f9e0eb62bc7f5c241a62ae59f6c9b3914838f79424b11b4d7322294a9a190e21338c6ca615ab0c8ce +SHA512 (nbdkit-1.36.0.tar.gz) = 4c753e09853c1fa41311f3f7c86e4b9af9be69a984854142612a0bc9ad915e2811d4be4e29f263a6887277ece4204dd931807fe65e4fda8b4b9eab6dc3645c7b +SHA512 (nbdkit-1.36.0.tar.gz.sig) = 0c1f2f7799e83c23ee2a52d362e5ae02cfb3ce5bd0cc0eacd06324990d9a4a95d14b8b4d182821b3e0185bd3464ff88684894bc79472b349404b54d901446088 From 288a60632345c645e984aada35dbcf4c0108ee55 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 27 Sep 2023 15:45:24 +0100 Subject: [PATCH 154/298] Enable blkio support again on Fedora i686. --- nbdkit.spec | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 2e4f8a6..582a25a 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -22,12 +22,11 @@ %endif # We don't yet have libblkio on RHEL. -# libblkio is broken on i686: https://bugzilla.redhat.com/2229372 +# libblkio was broken on i686: https://bugzilla.redhat.com/2229372 +# but somehow "fixed itself", keep an eye on it. %if !0%{?rhel} -%ifnarch %{ix86} %global have_blkio 1 %endif -%endif # Architectures where we run the complete test suite including # the libguestfs tests. @@ -60,7 +59,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.36.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1250,8 +1249,9 @@ export LIBGUESTFS_TRACE=1 %changelog -* Wed Sep 27 2023 Richard W.M. Jones - 1.36.0-1 +* Wed Sep 27 2023 Richard W.M. Jones - 1.36.0-2 - New upstream development version 1.36.0 +- Enable blkio support again on Fedora i686. * Mon Sep 11 2023 Richard W.M. Jones - 1.35.13-1 - New upstream development version 1.35.13 From c97cf0c593b3755b29d7770b67a85aa3a2d0a2c4 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 6 Oct 2023 08:46:03 +0100 Subject: [PATCH 155/298] OCaml 5.1 rebuild for Fedora 40 --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 582a25a..aa8eac0 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -59,7 +59,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.36.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1249,6 +1249,9 @@ export LIBGUESTFS_TRACE=1 %changelog +* Fri Oct 06 2023 Richard W.M. Jones - 1.36.0-3 +- OCaml 5.1 rebuild for Fedora 40 + * Wed Sep 27 2023 Richard W.M. Jones - 1.36.0-2 - New upstream development version 1.36.0 - Enable blkio support again on Fedora i686. From 3b31d6392a36a81f00438f2c06877efeaf7c6972 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 23 Oct 2023 16:49:43 +0100 Subject: [PATCH 156/298] New upstream development version 1.37.1 --- nbdkit.spec | 11 +++++++---- sources | 4 ++-- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index aa8eac0..3205782 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,11 +55,11 @@ ExclusiveArch: x86_64 %global patches_touch_autotools %{nil} # The source directory. -%global source_directory 1.36-stable +%global source_directory 1.37-development Name: nbdkit -Version: 1.36.0 -Release: 3%{?dist} +Version: 1.37.1 +Release: 1%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1249,11 +1249,14 @@ export LIBGUESTFS_TRACE=1 %changelog +* Mon Oct 23 2023 Richard W.M. Jones - 1.37.1-1 +- New upstream development version 1.37.1 + * Fri Oct 06 2023 Richard W.M. Jones - 1.36.0-3 - OCaml 5.1 rebuild for Fedora 40 * Wed Sep 27 2023 Richard W.M. Jones - 1.36.0-2 -- New upstream development version 1.36.0 +- New upstream stable version 1.36.0 - Enable blkio support again on Fedora i686. * Mon Sep 11 2023 Richard W.M. Jones - 1.35.13-1 diff --git a/sources b/sources index 38585e9..ebf9e10 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.36.0.tar.gz) = 4c753e09853c1fa41311f3f7c86e4b9af9be69a984854142612a0bc9ad915e2811d4be4e29f263a6887277ece4204dd931807fe65e4fda8b4b9eab6dc3645c7b -SHA512 (nbdkit-1.36.0.tar.gz.sig) = 0c1f2f7799e83c23ee2a52d362e5ae02cfb3ce5bd0cc0eacd06324990d9a4a95d14b8b4d182821b3e0185bd3464ff88684894bc79472b349404b54d901446088 +SHA512 (nbdkit-1.37.1.tar.gz) = be5272a75014fbdfea5959d28f85ae9c769f1621678a194e8f53b2014cbac57228a77cf070b03ea0b14db29c19e279c62097c61173caee58ea80eec1db978007 +SHA512 (nbdkit-1.37.1.tar.gz.sig) = d8e39ca5879a3908f51a9868e4753368cc8e528307b0a28eddc7637be7a34fa6a52988a2036ba61e56a7db1ca91fcd156f260c0ab6b78ae10dfa4da4a550e2aa From 63aafd271314d63d5b8ba18ff4286441c5c959d9 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 31 Oct 2023 09:13:46 +0000 Subject: [PATCH 157/298] We are going to try to enable libblkio support everywhere --- nbdkit.spec | 3 --- 1 file changed, 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 3205782..1d74532 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -21,12 +21,9 @@ %global have_ocaml 1 %endif -# We don't yet have libblkio on RHEL. # libblkio was broken on i686: https://bugzilla.redhat.com/2229372 # but somehow "fixed itself", keep an eye on it. -%if !0%{?rhel} %global have_blkio 1 -%endif # Architectures where we run the complete test suite including # the libguestfs tests. From 0b975b05a5c0a69464222547e7a7377a98e1e0cf Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 1 Nov 2023 10:14:04 +0000 Subject: [PATCH 158/298] Add experimental SELinux support (RHEL-5174) --- nbdkit.fc | 3 + nbdkit.if | 207 ++++++++++++++++++++++++++++++++++++++++++++++++++++ nbdkit.spec | 81 +++++++++++++++++++- nbdkit.te | 100 +++++++++++++++++++++++++ 4 files changed, 390 insertions(+), 1 deletion(-) create mode 100644 nbdkit.fc create mode 100644 nbdkit.if create mode 100644 nbdkit.te diff --git a/nbdkit.fc b/nbdkit.fc new file mode 100644 index 0000000..4877736 --- /dev/null +++ b/nbdkit.fc @@ -0,0 +1,3 @@ +/usr/sbin/nbdkit -- gen_context(system_u:object_r:nbdkit_exec_t,s0) + +/usr/lib/systemd/system/nbdkit.* gen_context(system_u:object_r:nbdkit_unit_file_t,s0) diff --git a/nbdkit.if b/nbdkit.if new file mode 100644 index 0000000..315fead --- /dev/null +++ b/nbdkit.if @@ -0,0 +1,207 @@ +## policy for nbdkit + +######################################## +## +## Execute nbdkit_exec_t in the nbdkit domain. +## +## +## +## Domain allowed to transition. +## +## +# +interface(`nbdkit_domtrans',` + gen_require(` + type nbdkit_t, nbdkit_exec_t; + ') + + corecmd_search_bin($1) + domtrans_pattern($1, nbdkit_exec_t, nbdkit_t) +') + +###################################### +## +## Execute nbdkit in the caller domain. +## +## +## +## Domain allowed access. +## +## +# +interface(`nbdkit_exec',` + gen_require(` + type nbdkit_exec_t; + ') + + corecmd_search_bin($1) + can_exec($1, nbdkit_exec_t) +') + +######################################## +## +## Execute nbdkit in the nbdkit domain, and +## allow the specified role the nbdkit domain. +## +## +## +## Domain allowed to transition +## +## +## +## +## The role to be allowed the nbdkit domain. +## +## +# +interface(`nbdkit_run',` + gen_require(` + type nbdkit_t; + attribute_role nbdkit_roles; + ') + + nbdkit_domtrans($1) + roleattribute $2 nbdkit_roles; +') + +######################################## +## +## Role access for nbdkit +## +## +## +## Role allowed access +## +## +## +## +## User domain for the role +## +## +# +interface(`nbdkit_role',` + gen_require(` + type nbdkit_t; + attribute_role nbdkit_roles; + ') + + roleattribute $1 nbdkit_roles; + + nbdkit_domtrans($2) + + ps_process_pattern($2, nbdkit_t) + allow $2 nbdkit_t:process { signull signal sigkill }; +') + +######################################## +## +## Allow attempts to connect to nbdkit +## with a unix stream socket. +## +## +## +## Domain to not audit. +## +## +# +interface(`nbdkit_stream_connect',` + gen_require(` + type nbdkit_t; + ') + + allow $1 nbdkit_t:unix_stream_socket connectto; +') + +######################################## +## +## Allow nbdkit_exec_t to be an entrypoint +## of the specified domain +## +## +## +## Domain allowed access. +## +## +## +# +interface(`nbdkit_entrypoint',` + gen_require(` + type nbdkit_exec_t; + ') + allow $1 nbdkit_exec_t:file entrypoint; +') + +# ---------------------------------------------------------------------- +# RWMJ: See: +# https://issues.redhat.com/browse/RHEL-5174?focusedId=23387259&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-23387259 +# Remove this when virt.if gets updated. + +######################################## +# +# Interface compatibility blocks +# +# The following definitions ensure compatibility with distribution policy +# versions that do not contain given interfaces (epel, or older Fedora +# releases). +# Each block tests for existence of given interface and defines it if needed. +# + +######################################## +## +## Read and write to svirt_image dirs. +## +## +## +## Domain allowed access. +## +## +# +ifndef(`virt_rw_svirt_image_dirs',` + interface(`virt_rw_svirt_image_dirs',` + gen_require(` + type svirt_image_t; + ') + + allow $1 svirt_image_t:dir rw_dir_perms; + ') +') + +######################################## +## +## Create svirt_image sock_files. +## +## +## +## Domain allowed access. +## +## +# +ifndef(`virt_create_svirt_image_sock_files',` + interface(`virt_create_svirt_image_sock_files',` + gen_require(` + type svirt_image_t; + ') + + allow $1 svirt_image_t:sock_file create_sock_file_perms; + ') +') + +######################################## +## +## Read and write virtlogd pipes. +## +## +## +## Domain allowed access. +## +## +# +ifndef(`virtlogd_rw_pipes',` + interface(`virtlogd_rw_pipes',` + gen_require(` + type virtlogd_t; + ') + + allow $1 virtlogd_t:fifo_file rw_fifo_file_perms; + ') +') diff --git a/nbdkit.spec b/nbdkit.spec index 1d74532..2b6e004 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -25,6 +25,11 @@ # but somehow "fixed itself", keep an eye on it. %global have_blkio 1 +# Enable nbdkit-selinux package. +%global with_selinux 1 +%global modulename nbdkit +%global selinuxtype targeted + # Architectures where we run the complete test suite including # the libguestfs tests. # @@ -56,7 +61,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.37.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD-3-Clause @@ -82,6 +87,11 @@ Source3: copy-patches.sh Source4: nbdkit.attr Source5: nbdkit-find-provides +# For nbdkit-selinux package: +Source6: %{modulename}.te +Source7: %{modulename}.if +Source8: %{modulename}.fc + BuildRequires: make %if 0%{patches_touch_autotools} BuildRequires: autoconf, automake, libtool @@ -168,6 +178,13 @@ Requires: nbdkit-server%{?_isa} = %{version}-%{release} Requires: nbdkit-basic-plugins%{?_isa} = %{version}-%{release} Requires: nbdkit-basic-filters%{?_isa} = %{version}-%{release} +%if 0%{?with_selinux} +# This ensures that the nbdkit-selinux package and all its +# dependencies are not pulled into containers and other systems that +# do not use SELinux. +Requires: (%{name}-selinux if selinux-policy-%{selinuxtype}) +%endif + %description NBD is a protocol for accessing block devices (hard disks and @@ -660,6 +677,20 @@ Install this package if you want intelligent bash tab-completion for %{name}. +%if 0%{?with_selinux} +%package selinux +Summary: %{name} SELinux policy +BuildArch: noarch +Requires: selinux-policy-%{selinuxtype} +Requires(post):selinux-policy-%{selinuxtype} +BuildRequires: selinux-policy-devel +%{?selinux_requires} + +%description selinux +%{nbdkit} SELinux policy module. +%endif + + %prep %if 0%{verify_tarball_signature} %{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}' @@ -750,6 +781,18 @@ grep '^PYTHON_VERSION = 3' Makefile %make_build +%if 0%{?with_selinux} +# SELinux policy (originally from selinux-policy-contrib) +# this policy module will override the production module +mkdir selinux +cp -p %{SOURCE6} selinux/ +cp -p %{SOURCE7} selinux/ +cp -p %{SOURCE8} selinux/ + +make -f %{_datadir}/selinux/devel/Makefile %{modulename}.pp +bzip2 -9 %{modulename}.pp +%endif + %install %make_install @@ -778,6 +821,11 @@ mkdir -p $RPM_BUILD_ROOT%{_rpmconfigdir}/fileattrs/ install -m 0644 %{SOURCE4} $RPM_BUILD_ROOT%{_rpmconfigdir}/fileattrs/ install -m 0755 %{SOURCE5} $RPM_BUILD_ROOT%{_rpmconfigdir}/ +%if 0%{?with_selinux} +install -D -m 0644 %{modulename}.pp.bz2 $RPM_BUILD_ROOT%{_datadir}/selinux/packages/%{selinuxtype}/%{modulename}.pp.bz2 +install -D -p -m 0644 selinux/%{modulename}.if $RPM_BUILD_ROOT%{_datadir}/selinux/devel/include/distributed/%{modulename}.if +%endif + %check %ifnarch %{broken_test_arches} @@ -833,6 +881,26 @@ export LIBGUESTFS_TRACE=1 %endif +%if 0%{?with_selinux} +# SELinux contexts are saved so that only affected files can be +# relabeled after the policy module installation +%pre selinux +%selinux_relabel_pre -s %{selinuxtype} + +%post selinux +%selinux_modules_install -s %{selinuxtype} %{_datadir}/selinux/packages/%{selinuxtype}/%{modulename}.pp.bz2 + +%postun selinux +if [ $1 -eq 0 ]; then + %selinux_modules_uninstall -s %{selinuxtype} %{modulename} +fi + +%posttrans selinux +%selinux_relabel_post -s %{selinuxtype} +# if with_selinux +%endif + + %files # metapackage so empty @@ -1245,7 +1313,18 @@ export LIBGUESTFS_TRACE=1 %{_datadir}/bash-completion/completions/nbdkit +%if 0%{?with_selinux} +%files selinux +%{_datadir}/selinux/packages/%{selinuxtype}/%{modulename}.pp.* +%{_datadir}/selinux/devel/include/distributed/%{modulename}.if +%ghost %verify(not md5 size mode mtime) %{_sharedstatedir}/selinux/%{selinuxtype}/active/modules/200/%{modulename} +%endif + + %changelog +* Wed Nov 01 2023 Richard W.M. Jones - 1.37.1-2 +- Add experimental SELinux support (RHEL-5174) + * Mon Oct 23 2023 Richard W.M. Jones - 1.37.1-1 - New upstream development version 1.37.1 diff --git a/nbdkit.te b/nbdkit.te new file mode 100644 index 0000000..dbc518e --- /dev/null +++ b/nbdkit.te @@ -0,0 +1,100 @@ +policy_module(nbdkit, 1.0.0) + +######################################## +# +# Declarations +# + +gen_require(` + type unconfined_t; +') + +type nbdkit_t; +type nbdkit_exec_t; +application_domain(nbdkit_t, nbdkit_exec_t) +mcs_constrained(nbdkit_t) +role system_r types nbdkit_t; + +type nbdkit_home_t; +userdom_user_home_content(nbdkit_home_t) + +type nbdkit_tmp_t; +files_tmp_file(nbdkit_tmp_t) + +type nbdkit_unit_file_t; +systemd_unit_file(nbdkit_unit_file_t) + +permissive nbdkit_t; + +######################################## +# +# nbdkit local policy +# +allow nbdkit_t self:capability { setgid setuid }; +allow nbdkit_t self:fifo_file rw_fifo_file_perms; +allow nbdkit_t self:netlink_route_socket rw_netlink_socket_perms; +allow nbdkit_t self:process { fork setsockcreate signal_perms }; +allow nbdkit_t self:tcp_socket create_stream_socket_perms; +allow nbdkit_t self:udp_socket create_socket_perms; + +manage_dirs_pattern(nbdkit_t, nbdkit_tmp_t, nbdkit_tmp_t) +manage_files_pattern(nbdkit_t, nbdkit_tmp_t, nbdkit_tmp_t) +userdom_user_tmp_filetrans(nbdkit_t, nbdkit_tmp_t, { dir file }) + +manage_dirs_pattern(nbdkit_t, nbdkit_home_t, nbdkit_home_t) +manage_files_pattern(nbdkit_t, nbdkit_home_t, nbdkit_home_t) +userdom_user_home_dir_filetrans(nbdkit_t, nbdkit_home_t, { dir file }) + +corenet_tcp_connect_http_port(nbdkit_t) +corenet_tcp_connect_ssh_port(nbdkit_t) +corenet_tcp_connect_tftp_port(nbdkit_t) +corenet_tcp_bind_generic_port(nbdkit_t) +corenet_tcp_bind_generic_node(nbdkit_t) + +domain_use_interactive_fds(nbdkit_t) + +files_read_etc_files(nbdkit_t) + +init_abstract_socket_activation(nbdkit_t) +init_ioctl_stream_sockets(nbdkit_t) +init_rw_stream_sockets(nbdkit_t) + +optional_policy(` + auth_use_nsswitch(nbdkit_t) +') + +optional_policy(` + logging_send_syslog_msg(nbdkit_t) +') + +optional_policy(` + miscfiles_read_localization(nbdkit_t) + miscfiles_read_generic_certs(nbdkit_t) +') + +optional_policy(` + sysnet_dns_name_resolve(nbdkit_t) + sysnet_read_config(nbdkit_t) +') + +optional_policy(` + userdom_read_user_home_content_files(nbdkit_t) + userdom_use_inherited_user_ptys(nbdkit_t) +') + +optional_policy(` + virt_create_svirt_image_sock_files(nbdkit_t) + virt_read_qemu_pid_files(nbdkit_t) + virtlogd_rw_pipes(nbdkit_t) + virt_rw_svirt_image(nbdkit_t) + virt_rw_svirt_image_dirs(nbdkit_t) + virt_search_lib(nbdkit_t) + virt_stream_connect_svirt(nbdkit_t) +') + + +# FIXME: It would be nice to allow libvirt to transition nbdkit_exec_t to +# nbdkit_t when libvirtd was started manually from the commandline (i.e. in +# unconfined_t), but we don't want this transition to happen automatically +# when starting directly from the shell. I'm not sure how to achieve this... +#nbdkit_domtrans(unconfined_t, nbdkit_exec_t, nbdkit_t) From 153951488400f89c71595a936f9985a7eb274277 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 7 Nov 2023 19:41:30 +0000 Subject: [PATCH 159/298] New upstream development version 1.37.2 New nbdkit-readonly-filter. --- nbdkit.spec | 12 ++++++++++-- sources | 4 ++-- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 2b6e004..b916608 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -60,8 +60,8 @@ ExclusiveArch: x86_64 %global source_directory 1.37-development Name: nbdkit -Version: 1.37.1 -Release: 2%{?dist} +Version: 1.37.2 +Release: 1%{?dist} Summary: NBD server License: BSD-3-Clause @@ -588,6 +588,8 @@ nbdkit-rate-filter Limit bandwidth by connection or server. nbdkit-readahead-filter Prefetch data when reading sequentially. +nbdkit-readonly-filter Switch a plugin between read-only and writable. + nbdkit-retry-filter Reopen connection on error. nbdkit-retry-request-filter Retry single requests on error. @@ -1182,6 +1184,7 @@ fi %endif %{_libdir}/%{name}/filters/nbdkit-rate-filter.so %{_libdir}/%{name}/filters/nbdkit-readahead-filter.so +%{_libdir}/%{name}/filters/nbdkit-readonly-filter.so %{_libdir}/%{name}/filters/nbdkit-retry-filter.so %{_libdir}/%{name}/filters/nbdkit-retry-request-filter.so %{_libdir}/%{name}/filters/nbdkit-scan-filter.so @@ -1222,6 +1225,7 @@ fi %endif %{_mandir}/man1/nbdkit-rate-filter.1* %{_mandir}/man1/nbdkit-readahead-filter.1* +%{_mandir}/man1/nbdkit-readonly-filter.1* %{_mandir}/man1/nbdkit-retry-filter.1* %{_mandir}/man1/nbdkit-retry-request-filter.1* %{_mandir}/man1/nbdkit-scan-filter.1* @@ -1322,6 +1326,10 @@ fi %changelog +* Tue Nov 07 2023 Richard W.M. Jones - 1.37.2-1 +- New upstream development version 1.37.2 +- New nbdkit-readonly-filter. + * Wed Nov 01 2023 Richard W.M. Jones - 1.37.1-2 - Add experimental SELinux support (RHEL-5174) diff --git a/sources b/sources index ebf9e10..d242fcf 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.37.1.tar.gz) = be5272a75014fbdfea5959d28f85ae9c769f1621678a194e8f53b2014cbac57228a77cf070b03ea0b14db29c19e279c62097c61173caee58ea80eec1db978007 -SHA512 (nbdkit-1.37.1.tar.gz.sig) = d8e39ca5879a3908f51a9868e4753368cc8e528307b0a28eddc7637be7a34fa6a52988a2036ba61e56a7db1ca91fcd156f260c0ab6b78ae10dfa4da4a550e2aa +SHA512 (nbdkit-1.37.2.tar.gz) = 2e410ed7be75ddbca111be3a54a8f7246042233c8ac922634b5a2fdbe8781ba89c93cf4655bb0737e175fbb6a1846e3faad3523adb49925a886cca914a0a5f67 +SHA512 (nbdkit-1.37.2.tar.gz.sig) = 9eb2f18e7a2234090394ec7ab17cbe413b633c5eadd182a70a88f430b4948d4b02b7468f95b6347de961a99117c169930bb25f95a9e1735aa7627cc72e3298f6 From b9a4b125ca125df1ee41cf43478fb3f0b48f4285 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sun, 26 Nov 2023 10:34:57 +0000 Subject: [PATCH 160/298] New upstream development version 1.37.3 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index b916608..feb6fec 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -60,7 +60,7 @@ ExclusiveArch: x86_64 %global source_directory 1.37-development Name: nbdkit -Version: 1.37.2 +Version: 1.37.3 Release: 1%{?dist} Summary: NBD server @@ -1326,6 +1326,9 @@ fi %changelog +* Sun Nov 26 2023 Richard W.M. Jones - 1.37.3-1 +- New upstream development version 1.37.3 + * Tue Nov 07 2023 Richard W.M. Jones - 1.37.2-1 - New upstream development version 1.37.2 - New nbdkit-readonly-filter. diff --git a/sources b/sources index d242fcf..50adcc8 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.37.2.tar.gz) = 2e410ed7be75ddbca111be3a54a8f7246042233c8ac922634b5a2fdbe8781ba89c93cf4655bb0737e175fbb6a1846e3faad3523adb49925a886cca914a0a5f67 -SHA512 (nbdkit-1.37.2.tar.gz.sig) = 9eb2f18e7a2234090394ec7ab17cbe413b633c5eadd182a70a88f430b4948d4b02b7468f95b6347de961a99117c169930bb25f95a9e1735aa7627cc72e3298f6 +SHA512 (nbdkit-1.36.2.tar.gz) = a776808c6e7ab488b109e993fed5a6174e6fc35f894dace74b18cef9f8e0f640fb90bd4fd74183fc025da1f607c8907ee438369146bfbb2a48f6753748b9cf04 +SHA512 (nbdkit-1.36.2.tar.gz.sig) = 04ef71b3fae7bf126333a8f02f6498db0b615057c942071502606b45ae5da1eafb15378a444a5388e3a3da67768687d4c151c259f9bd23ba583554cd54c054db From 01508263882941a0eed9fe24d451b6ea7279bf53 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sun, 26 Nov 2023 12:16:33 +0000 Subject: [PATCH 161/298] Use the correct sources for this branch --- sources | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sources b/sources index 50adcc8..8e6df75 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.36.2.tar.gz) = a776808c6e7ab488b109e993fed5a6174e6fc35f894dace74b18cef9f8e0f640fb90bd4fd74183fc025da1f607c8907ee438369146bfbb2a48f6753748b9cf04 -SHA512 (nbdkit-1.36.2.tar.gz.sig) = 04ef71b3fae7bf126333a8f02f6498db0b615057c942071502606b45ae5da1eafb15378a444a5388e3a3da67768687d4c151c259f9bd23ba583554cd54c054db +SHA512 (nbdkit-1.37.3.tar.gz) = 6f3a78e24a93776623a3209cf4c2e4824c8ab78c761186d13964be7af06ffaab34a550d89be5ea297b1d25c81b3646e8ff2d42389d1b1a0281577fa5bf319445 +SHA512 (nbdkit-1.37.3.tar.gz.sig) = b1c833b46c0eb488dfc831f1b554c094dd63f1f8aad97eaa054c61579ed5262a674370e46ca21b4d3843d8f24c6d713c956842d7217bb7949097f58168a205c2 From 6debad82d3b543e9b44d2d06fd84f98687faa521 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 4 Dec 2023 13:29:52 +0000 Subject: [PATCH 162/298] Add upstream fix for GCC 14 --- ...itialization-from-incompatible-point.patch | 43 +++++++++++++++++++ nbdkit.spec | 10 ++++- 2 files changed, 51 insertions(+), 2 deletions(-) create mode 100644 0001-configure-Fix-initialization-from-incompatible-point.patch diff --git a/0001-configure-Fix-initialization-from-incompatible-point.patch b/0001-configure-Fix-initialization-from-incompatible-point.patch new file mode 100644 index 0000000..bc4aa1e --- /dev/null +++ b/0001-configure-Fix-initialization-from-incompatible-point.patch @@ -0,0 +1,43 @@ +From 32a9ee6650654469cd591a3ae26842c54f898392 Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Mon, 4 Dec 2023 10:23:29 +0000 +Subject: [PATCH] configure: Fix initialization from incompatible pointer type + +With GCC 14: + + configure:20816: checking if environ is declared in header files + configure:20833: gcc -c -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grec +ord-gcc-switches -pipe -Wall -Werror=format-security +-Werror=implicit-function-declaration -Werror=implicit-int +-Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS +-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong +-specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic +-fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection +-fno-omit-frame-pointer -mno-omit-leaf-frame-pointer conftest.c >&5 + conftest.c: In function 'test': + conftest.c:62:22: error: initialization of 'const char **' from incompatible p +ointer type 'char **' + 62 | const char **env = environ; + | ^~~~~~~ + +Thanks: Florian Weimer +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index 602cdc5cb..e7d58dcc8 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -336,7 +336,7 @@ AC_LANG_SOURCE([[ + static int + test (void) + { +- const char **env = environ; ++ char **env = environ; + return env ? 1 : 0; // this just forces env to be used + } + ]]) +-- +2.43.0 + diff --git a/nbdkit.spec b/nbdkit.spec index feb6fec..4ffb66a 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,14 +54,14 @@ ExclusiveArch: x86_64 %global verify_tarball_signature 1 # If there are patches which touch autotools files, set this to 1. -%global patches_touch_autotools %{nil} +%global patches_touch_autotools 1 # The source directory. %global source_directory 1.37-development Name: nbdkit Version: 1.37.3 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD-3-Clause @@ -92,6 +92,9 @@ Source6: %{modulename}.te Source7: %{modulename}.if Source8: %{modulename}.fc +# Upstream fix for GCC 14 +Patch: 0001-configure-Fix-initialization-from-incompatible-point.patch + BuildRequires: make %if 0%{patches_touch_autotools} BuildRequires: autoconf, automake, libtool @@ -1326,6 +1329,9 @@ fi %changelog +* Mon Dec 04 2023 Richard W.M. Jones - 1.37.3-2 +- Add upstream fix for GCC 14 + * Sun Nov 26 2023 Richard W.M. Jones - 1.37.3-1 - New upstream development version 1.37.3 From 95f0a9b7ba6cfc5a424ce5100560361f851e719d Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 14 Dec 2023 09:14:13 +0000 Subject: [PATCH 163/298] OCaml 5.1.1 rebuild for Fedora 40 --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 4ffb66a..41445fa 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -61,7 +61,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.37.3 -Release: 2%{?dist} +Release: 3%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1329,6 +1329,9 @@ fi %changelog +* Thu Dec 14 2023 Richard W.M. Jones - 1.37.3-3 +- OCaml 5.1.1 rebuild for Fedora 40 + * Mon Dec 04 2023 Richard W.M. Jones - 1.37.3-2 - Add upstream fix for GCC 14 From 4a474632286815effb8471fe0b4e30d4f514caa3 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 18 Dec 2023 16:02:50 +0000 Subject: [PATCH 164/298] OCaml 5.1.1 + s390x code gen fix for Fedora 40 --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 41445fa..accd8ce 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -61,7 +61,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.37.3 -Release: 3%{?dist} +Release: 4%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1329,6 +1329,9 @@ fi %changelog +* Mon Dec 18 2023 Richard W.M. Jones - 1.37.3-4 +- OCaml 5.1.1 + s390x code gen fix for Fedora 40 + * Thu Dec 14 2023 Richard W.M. Jones - 1.37.3-3 - OCaml 5.1.1 rebuild for Fedora 40 From 0d1a9e2d82d6a091f74ff4da27a79b04db3b0447 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 19 Dec 2023 15:55:39 +0000 Subject: [PATCH 165/298] New upstream development version 1.37.4 --- ...itialization-from-incompatible-point.patch | 43 ------------------- nbdkit.spec | 12 +++--- sources | 4 +- 3 files changed, 8 insertions(+), 51 deletions(-) delete mode 100644 0001-configure-Fix-initialization-from-incompatible-point.patch diff --git a/0001-configure-Fix-initialization-from-incompatible-point.patch b/0001-configure-Fix-initialization-from-incompatible-point.patch deleted file mode 100644 index bc4aa1e..0000000 --- a/0001-configure-Fix-initialization-from-incompatible-point.patch +++ /dev/null @@ -1,43 +0,0 @@ -From 32a9ee6650654469cd591a3ae26842c54f898392 Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Mon, 4 Dec 2023 10:23:29 +0000 -Subject: [PATCH] configure: Fix initialization from incompatible pointer type - -With GCC 14: - - configure:20816: checking if environ is declared in header files - configure:20833: gcc -c -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grec -ord-gcc-switches -pipe -Wall -Werror=format-security --Werror=implicit-function-declaration -Werror=implicit-int --Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS --specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong --specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic --fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection --fno-omit-frame-pointer -mno-omit-leaf-frame-pointer conftest.c >&5 - conftest.c: In function 'test': - conftest.c:62:22: error: initialization of 'const char **' from incompatible p -ointer type 'char **' - 62 | const char **env = environ; - | ^~~~~~~ - -Thanks: Florian Weimer ---- - configure.ac | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/configure.ac b/configure.ac -index 602cdc5cb..e7d58dcc8 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -336,7 +336,7 @@ AC_LANG_SOURCE([[ - static int - test (void) - { -- const char **env = environ; -+ char **env = environ; - return env ? 1 : 0; // this just forces env to be used - } - ]]) --- -2.43.0 - diff --git a/nbdkit.spec b/nbdkit.spec index accd8ce..af8d5cf 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,14 +54,14 @@ ExclusiveArch: x86_64 %global verify_tarball_signature 1 # If there are patches which touch autotools files, set this to 1. -%global patches_touch_autotools 1 +%global patches_touch_autotools %{nil} # The source directory. %global source_directory 1.37-development Name: nbdkit -Version: 1.37.3 -Release: 4%{?dist} +Version: 1.37.4 +Release: 1%{?dist} Summary: NBD server License: BSD-3-Clause @@ -92,9 +92,6 @@ Source6: %{modulename}.te Source7: %{modulename}.if Source8: %{modulename}.fc -# Upstream fix for GCC 14 -Patch: 0001-configure-Fix-initialization-from-incompatible-point.patch - BuildRequires: make %if 0%{patches_touch_autotools} BuildRequires: autoconf, automake, libtool @@ -1329,6 +1326,9 @@ fi %changelog +* Tue Dec 19 2023 Richard W.M. Jones - 1.37.4-1 +- New upstream development version 1.37.4 + * Mon Dec 18 2023 Richard W.M. Jones - 1.37.3-4 - OCaml 5.1.1 + s390x code gen fix for Fedora 40 diff --git a/sources b/sources index 8e6df75..236f94a 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.37.3.tar.gz) = 6f3a78e24a93776623a3209cf4c2e4824c8ab78c761186d13964be7af06ffaab34a550d89be5ea297b1d25c81b3646e8ff2d42389d1b1a0281577fa5bf319445 -SHA512 (nbdkit-1.37.3.tar.gz.sig) = b1c833b46c0eb488dfc831f1b554c094dd63f1f8aad97eaa054c61579ed5262a674370e46ca21b4d3843d8f24c6d713c956842d7217bb7949097f58168a205c2 +SHA512 (nbdkit-1.37.4.tar.gz) = 6acc7afd7733744d8cfdaff6e76fc3184fc06369d70ee2aee9f4e2b8b42f01509a230ec65b7d7df5bfa31fe9008d3b879593f02a3a88bcb8d7958f0829ca1429 +SHA512 (nbdkit-1.37.4.tar.gz.sig) = 1f0a0a2d38383d33b23ed32f3dd4301bb17a659113cc31f9f86c046b6b5e2c38cb439ed0abfad61ab0f33db11e50576593fc438cc464b3abd5c3eef5a6e60a89 From de42188bf3c5e326eae0eb62291e55751643733e Mon Sep 17 00:00:00 2001 From: Mamoru TASAKA Date: Wed, 3 Jan 2024 23:34:13 +0900 Subject: [PATCH 166/298] Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.3 --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index af8d5cf..37697da 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -61,7 +61,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.37.4 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1326,6 +1326,9 @@ fi %changelog +* Wed Jan 03 2024 Mamoru TASAKA - 1.37.4-2 +- Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.3 + * Tue Dec 19 2023 Richard W.M. Jones - 1.37.4-1 - New upstream development version 1.37.4 From 63cf2b755e2639574a4f9a014ec0138fee60bb94 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 16 Jan 2024 12:55:14 +0000 Subject: [PATCH 167/298] New upstream development version 1.37.5 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 37697da..39110b0 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -60,8 +60,8 @@ ExclusiveArch: x86_64 %global source_directory 1.37-development Name: nbdkit -Version: 1.37.4 -Release: 2%{?dist} +Version: 1.37.5 +Release: 1%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1326,6 +1326,9 @@ fi %changelog +* Tue Jan 16 2024 Richard W.M. Jones - 1.37.5-1 +- New upstream development version 1.37.5 + * Wed Jan 03 2024 Mamoru TASAKA - 1.37.4-2 - Rebuild for https://fedoraproject.org/wiki/Changes/Ruby_3.3 diff --git a/sources b/sources index 236f94a..6deff94 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.37.4.tar.gz) = 6acc7afd7733744d8cfdaff6e76fc3184fc06369d70ee2aee9f4e2b8b42f01509a230ec65b7d7df5bfa31fe9008d3b879593f02a3a88bcb8d7958f0829ca1429 -SHA512 (nbdkit-1.37.4.tar.gz.sig) = 1f0a0a2d38383d33b23ed32f3dd4301bb17a659113cc31f9f86c046b6b5e2c38cb439ed0abfad61ab0f33db11e50576593fc438cc464b3abd5c3eef5a6e60a89 +SHA512 (nbdkit-1.37.5.tar.gz) = 7f246fe0665a30d04641c8181d408d50859bf96c251dceb37c797057f2c32316174e7d293d2090d3b9979ff28edf337cedf4f5305e901054eebe7b97a0804e67 +SHA512 (nbdkit-1.37.5.tar.gz.sig) = 78be5c0f05ef20d4a651416799faeec180a3c48aeea547bb174bebf1b87dadac927e99faf8dcfdb27998f1747c6f7519d96e8d6f895f448ff9120b74a8a3e121 From d3338b004bc6512f32b6a942a89fcaf6981c0c71 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sun, 21 Jan 2024 09:18:09 +0000 Subject: [PATCH 168/298] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 39110b0..b79dd6d 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -61,7 +61,7 @@ ExclusiveArch: x86_64 Name: nbdkit Version: 1.37.5 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1326,6 +1326,9 @@ fi %changelog +* Sun Jan 21 2024 Fedora Release Engineering - 1.37.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Tue Jan 16 2024 Richard W.M. Jones - 1.37.5-1 - New upstream development version 1.37.5 From fb41373acca2aa51cb42289a1bca4b57cba1ddd9 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 23 Jan 2024 11:00:54 +0000 Subject: [PATCH 169/298] Remove support for RHEL 7 RHEL 7 is now in EUS phase, we don't need to keep support around for it here. --- nbdkit.spec | 8 -------- 1 file changed, 8 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index b79dd6d..2bec7ab 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -42,14 +42,6 @@ # it as a bug and add it to this list. %global broken_test_arches NONE -%if 0%{?rhel} == 7 -# On RHEL 7, nothing in the virt stack is shipped on aarch64 and -# libguestfs was not shipped on POWER (fixed in 7.5). We could in -# theory make all of this work by having lots more conditionals, but -# for now limit this package to x86_64 on RHEL. -ExclusiveArch: x86_64 -%endif - # If we should verify tarball signature with GPGv2. %global verify_tarball_signature 1 From 8233ecfd32c6d215940b85100dcc8c72ee557be1 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 23 Jan 2024 14:16:56 +0000 Subject: [PATCH 170/298] Build into a subdirectory rather than the package source directory This requires some upstream fixes for srcdir != builddir. --- ...tmaps-Fix-tests-when-srcdir-builddir.patch | 24 ++ ...x-tests-to-work-with-srcdir-builddir.patch | 284 ++++++++++++++++++ nbdkit.spec | 18 +- 3 files changed, 324 insertions(+), 2 deletions(-) create mode 100644 0001-common-bitmaps-Fix-tests-when-srcdir-builddir.patch create mode 100644 0002-tests-Fix-tests-to-work-with-srcdir-builddir.patch diff --git a/0001-common-bitmaps-Fix-tests-when-srcdir-builddir.patch b/0001-common-bitmaps-Fix-tests-when-srcdir-builddir.patch new file mode 100644 index 0000000..0263951 --- /dev/null +++ b/0001-common-bitmaps-Fix-tests-when-srcdir-builddir.patch @@ -0,0 +1,24 @@ +From 93a1538808ac7f9788336a7e35168d851e8b2c72 Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Tue, 23 Jan 2024 13:24:48 +0000 +Subject: [PATCH 1/2] common/bitmaps: Fix tests when srcdir != builddir + +--- + common/bitmap/Makefile.am | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/common/bitmap/Makefile.am b/common/bitmap/Makefile.am +index 3b7f4b44f..93ca1ee43 100644 +--- a/common/bitmap/Makefile.am ++++ b/common/bitmap/Makefile.am +@@ -52,6 +52,7 @@ check_PROGRAMS = test-bitmap + test_bitmap_SOURCES = test-bitmap.c bitmap.c bitmap.h + test_bitmap_CPPFLAGS = \ + -I$(top_srcdir)/include \ ++ -I$(top_builddir)/include \ + -I$(top_srcdir)/common/include \ + $(NULL) + test_bitmap_CFLAGS = $(WARNINGS_CFLAGS) +-- +2.43.0 + diff --git a/0002-tests-Fix-tests-to-work-with-srcdir-builddir.patch b/0002-tests-Fix-tests-to-work-with-srcdir-builddir.patch new file mode 100644 index 0000000..feb49e8 --- /dev/null +++ b/0002-tests-Fix-tests-to-work-with-srcdir-builddir.patch @@ -0,0 +1,284 @@ +From ac60163ceba1b951e1d2f0625552e6a45d85f666 Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Tue, 23 Jan 2024 13:35:02 +0000 +Subject: [PATCH 2/2] tests: Fix tests to work with srcdir != builddir + +--- + tests/test-cc-cpp.sh | 2 +- + tests/test-cc-ocaml.sh | 2 +- + tests/test-cc.sh | 2 +- + tests/test-curl-header-script-fail.sh | 2 +- + tests/test-linuxdisk-copy-out.sh | 4 ++-- + tests/test-multi-conn-name.sh | 6 ++++-- + tests/test-multi-conn.sh | 20 +++++++++++--------- + tests/test-plugin-docs.sh | 2 +- + tests/test-shebang-cc.sh | 3 +++ + tests/test-tar.sh | 2 +- + tests/cc-shebang.c | 4 +++- + tests/test-read-password-plugin.c | 4 +++- + 12 files changed, 32 insertions(+), 21 deletions(-) + +diff --git a/tests/test-cc-cpp.sh b/tests/test-cc-cpp.sh +index ebbdab31d..dd9bf58d8 100755 +--- a/tests/test-cc-cpp.sh ++++ b/tests/test-cc-cpp.sh +@@ -55,6 +55,6 @@ rm -f $out + + nbdkit cc $script \ + CC="$CXX" \ +- EXTRA_CFLAGS="-I$abs_top_srcdir/include" \ ++ EXTRA_CFLAGS="-I$abs_top_srcdir/include -I../include" \ + --run 'nbdinfo --size $uri' > $out + test "$(cat $out)" -eq $((100 * 1024 * 1024)) +diff --git a/tests/test-cc-ocaml.sh b/tests/test-cc-ocaml.sh +index 68972fce0..79eb678df 100755 +--- a/tests/test-cc-ocaml.sh ++++ b/tests/test-cc-ocaml.sh +@@ -57,6 +57,6 @@ cleanup_fn rm -f $out + rm -f $out + + nbdkit -v cc $script a=1 b=2 c=3 d=4 \ +- CC="$OCAMLOPT" CFLAGS="-output-obj -runtime-variant _pic -I $abs_top_srcdir/plugins/ocaml $OCAML_PLUGIN_LIBRARIES NBDKit.cmx -cclib -L../plugins/ocaml/.libs -cclib -lnbdkitocaml" \ ++ CC="$OCAMLOPT" CFLAGS="-output-obj -runtime-variant _pic -I $abs_top_srcdir/plugins/ocaml -I ../plugins/ocaml $OCAML_PLUGIN_LIBRARIES NBDKit.cmx -cclib -L../plugins/ocaml/.libs -cclib -lnbdkitocaml" \ + --run 'nbdinfo --size $uri' > $out + test "$(cat $out)" -eq $((512 * 2048)) +diff --git a/tests/test-cc.sh b/tests/test-cc.sh +index 2646704be..5c1db8b96 100755 +--- a/tests/test-cc.sh ++++ b/tests/test-cc.sh +@@ -53,6 +53,6 @@ cleanup_fn rm -f $out + rm -f $out + + nbdkit cc $script \ +- EXTRA_CFLAGS="-I$abs_top_srcdir/include" \ ++ EXTRA_CFLAGS="-I$abs_top_srcdir/include -I../include" \ + --run 'nbdinfo --size $uri' > $out + test "$(cat $out)" -eq $((100 * 1024 * 1024)) +diff --git a/tests/test-curl-header-script-fail.sh b/tests/test-curl-header-script-fail.sh +index cf9614f96..282e0ddf0 100755 +--- a/tests/test-curl-header-script-fail.sh ++++ b/tests/test-curl-header-script-fail.sh +@@ -50,7 +50,7 @@ cleanup_fn rm -f $errors + # This command is expected to fail. + nbdkit -rfv \ + curl file:$PWD/disk protocols=file \ +- header-script=$PWD/test-curl-header-script-fail.script \ ++ header-script=$abs_top_srcdir/tests/test-curl-header-script-fail.script \ + --run 'nbdinfo --no-content $uri' >$errors 2>&1 ||: + + cat $errors +diff --git a/tests/test-linuxdisk-copy-out.sh b/tests/test-linuxdisk-copy-out.sh +index 8c2f44bad..81b5b7439 100755 +--- a/tests/test-linuxdisk-copy-out.sh ++++ b/tests/test-linuxdisk-copy-out.sh +@@ -65,14 +65,14 @@ guestfish --ro -a linuxdisk-copy-out.img -m /dev/sda </dev/null + + # Download some files and compare to local copies. +- download /Makefile linuxdisk-copy-out.test1 ++ download /virtual-disk.c linuxdisk-copy-out.test1 + download /Makefile.am linuxdisk-copy-out.test2 + download /nbdkit-linuxdisk-plugin.pod linuxdisk-copy-out.test3 + download /filesystem.c linuxdisk-copy-out.test4 + EOF + + # Compare downloaded files to local versions. +-cmp linuxdisk-copy-out.test1 $srcdir/../plugins/linuxdisk/Makefile ++cmp linuxdisk-copy-out.test1 $srcdir/../plugins/linuxdisk/virtual-disk.c + cmp linuxdisk-copy-out.test2 $srcdir/../plugins/linuxdisk/Makefile.am + cmp linuxdisk-copy-out.test3 $srcdir/../plugins/linuxdisk/nbdkit-linuxdisk-plugin.pod + cmp linuxdisk-copy-out.test4 $srcdir/../plugins/linuxdisk/filesystem.c +diff --git a/tests/test-multi-conn-name.sh b/tests/test-multi-conn-name.sh +index 6a180db72..2d2072925 100755 +--- a/tests/test-multi-conn-name.sh ++++ b/tests/test-multi-conn-name.sh +@@ -42,6 +42,8 @@ requires_nbdsh_uri + requires nbdsh -c 'print(h.set_opt_mode)' + requires dd iflag=count_bytes test-multi-conn-name.out || fail=1 + diff -u <(cat <<\EOF + b'A' +@@ -77,7 +79,7 @@ b'B' + EOF + ) test-multi-conn-name.out || fail=1 + # But with the knob, our flush is specific to the correct export +-nbdkit -vf sh test-multi-conn-plugin.sh --filter=multi-conn \ ++nbdkit -vf sh $plugin --filter=multi-conn \ + multi-conn-exportname=true \ + --run 'export uri; nbdsh -c "$script"' > test-multi-conn-name.out || fail=1 + diff -u <(cat <<\EOF +diff --git a/tests/test-multi-conn.sh b/tests/test-multi-conn.sh +index 3383cd246..eec225c2a 100755 +--- a/tests/test-multi-conn.sh ++++ b/tests/test-multi-conn.sh +@@ -41,6 +41,8 @@ requires_plugin sh + requires_nbdsh_uri + requires dd iflag=count_bytes test-multi-conn.out || fail=1 +@@ -208,7 +210,7 @@ for level in off connection fast; do + plugin 'plugin --filter=cache'; do + echo "setup: $level $mode" >> test-multi-conn.stat + # Flush with no activity +- nbdkit -vf sh test-multi-conn-plugin.sh --filter=multi-conn \ ++ nbdkit -vf sh $plugin --filter=multi-conn \ + --filter=stats statsfile=test-multi-conn.stat statsappend=true \ + multi-conn-track-dirty=$level multi-conn-mode=$mode \ + --run 'nbdsh -c "$preamble" -c " +@@ -217,7 +219,7 @@ h[0].pread(1, 0) + h[0].flush() + "' > test-multi-conn.out || fail=1 + # Client that flushes assuming multi-conn semantics +- nbdkit -vf sh test-multi-conn-plugin.sh --filter=multi-conn \ ++ nbdkit -vf sh $plugin --filter=multi-conn \ + --filter=stats statsfile=test-multi-conn.stat statsappend=true \ + multi-conn-track-dirty=$level multi-conn-mode=$mode \ + --run 'handles=4 nbdsh -c "$preamble" -c " +@@ -230,7 +232,7 @@ h[3].flush() + h[3].flush() + "' > test-multi-conn.out || fail=1 + # Client that flushes assuming inconsistent semantics +- nbdkit -vf sh test-multi-conn-plugin.sh --filter=multi-conn \ ++ nbdkit -vf sh $plugin --filter=multi-conn \ + --filter=stats statsfile=test-multi-conn.stat statsappend=true \ + multi-conn-track-dirty=$level multi-conn-mode=$mode \ + --run 'nbdsh -c "$preamble" -c " +diff --git a/tests/test-plugin-docs.sh b/tests/test-plugin-docs.sh +index 772cfff07..e329035da 100755 +--- a/tests/test-plugin-docs.sh ++++ b/tests/test-plugin-docs.sh +@@ -59,7 +59,7 @@ run_test () + { + plugin="$1" + +- pod=../plugins/$plugin/nbdkit-$plugin-plugin.pod ++ pod=$srcdir/../plugins/$plugin/nbdkit-$plugin-plugin.pod + test -f "$pod" + + # Get the key=value lines from the help output. +diff --git a/tests/test-shebang-cc.sh b/tests/test-shebang-cc.sh +index b25b789f7..674d0fcef 100755 +--- a/tests/test-shebang-cc.sh ++++ b/tests/test-shebang-cc.sh +@@ -45,6 +45,9 @@ requires_run + requires_plugin cc + requires guestfish --version + ++# This variable is used by $script. ++export abs_top_srcdir ++ + $script -fv \ + EXTRA_CFLAGS="-I$abs_top_srcdir/include" \ + --run ' +diff --git a/tests/test-tar.sh b/tests/test-tar.sh +index 9c9b3974f..d1a602b99 100755 +--- a/tests/test-tar.sh ++++ b/tests/test-tar.sh +@@ -45,7 +45,7 @@ cleanup_fn rm -f $files + + # Create a tar file containing the disk image plus some other random + # files that hopefully will be ignored. +-tar cf tar.tar test-tar.sh Makefile disk Makefile.am ++tar cf tar.tar Makefile disk functions.sh + tar tvvf tar.tar + + # Run nbdkit. +diff --git a/tests/cc-shebang.c b/tests/cc-shebang.c +index de2730f67..882fa2c1c 100755 +--- a/tests/cc-shebang.c ++++ b/tests/cc-shebang.c +@@ -1,5 +1,7 @@ + #if 0 +-exec nbdkit cc "$0" "$@" ++exec nbdkit cc "$0" "$@" \ ++ EXTRA_CFLAGS="-I.. -I../include \ ++ -I$abs_top_srcdir/include" + #endif + #include + #include +diff --git a/tests/test-read-password-plugin.c b/tests/test-read-password-plugin.c +index 3f0a95153..703fc724d 100755 +--- a/tests/test-read-password-plugin.c ++++ b/tests/test-read-password-plugin.c +@@ -1,5 +1,7 @@ + #if 0 +-exec nbdkit cc "$0" "$@" EXTRA_CFLAGS="-I.. -I$abs_top_srcdir/include" ++exec nbdkit cc "$0" "$@" \ ++ EXTRA_CFLAGS="-I.. -I../include \ ++ -I$abs_top_srcdir/include" + #endif + /* nbdkit + * Copyright Red Hat +-- +2.43.0 + diff --git a/nbdkit.spec b/nbdkit.spec index 2bec7ab..797ed0c 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -46,7 +46,7 @@ %global verify_tarball_signature 1 # If there are patches which touch autotools files, set this to 1. -%global patches_touch_autotools %{nil} +%global patches_touch_autotools 1 # The source directory. %global source_directory 1.37-development @@ -84,6 +84,10 @@ Source6: %{modulename}.te Source7: %{modulename}.if Source8: %{modulename}.fc +# Upstream patches to fix srcdir != builddir +Patch: 0001-common-bitmaps-Fix-tests-when-srcdir-builddir.patch +Patch: 0002-tests-Fix-tests-to-work-with-srcdir-builddir.patch + BuildRequires: make %if 0%{patches_touch_autotools} BuildRequires: autoconf, automake, libtool @@ -696,6 +700,10 @@ autoreconf -i %build +mkdir build_native +pushd build_native +%global _configure ../configure + # Golang bindings are not enabled in the build since they don't # need to be. Most people would use them by copying the upstream # package into their vendor/ directory. @@ -787,8 +795,11 @@ make -f %{_datadir}/selinux/devel/Makefile %{modulename}.pp bzip2 -9 %{modulename}.pp %endif +popd + %install +pushd build_native %make_install # Delete libtool crap. @@ -819,10 +830,12 @@ install -m 0755 %{SOURCE5} $RPM_BUILD_ROOT%{_rpmconfigdir}/ install -D -m 0644 %{modulename}.pp.bz2 $RPM_BUILD_ROOT%{_datadir}/selinux/packages/%{selinuxtype}/%{modulename}.pp.bz2 install -D -p -m 0644 selinux/%{modulename}.if $RPM_BUILD_ROOT%{_datadir}/selinux/devel/include/distributed/%{modulename}.if %endif +popd %check %ifnarch %{broken_test_arches} +pushd build_native function skip_test () { for f in "$@"; do @@ -867,6 +880,7 @@ export LIBGUESTFS_TRACE=1 cat tests/test-suite.log exit 1 } +popd %endif @@ -1269,7 +1283,7 @@ fi # Include the source of the example plugins in the documentation. %doc plugins/example*/*.c %if !0%{?rhel} -%doc plugins/example4/nbdkit-example4-plugin +%doc build_native/plugins/example4/nbdkit-example4-plugin %doc plugins/lua/example.lua %endif %if !0%{?rhel} && 0%{?have_ocaml} From 348c2fe9f4e69a801aafb477d6a38760215f0d14 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 23 Jan 2024 14:17:52 +0000 Subject: [PATCH 171/298] Add mingw{32,64}-nbdkit subpackages --- nbdkit.spec | 140 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 140 insertions(+) diff --git a/nbdkit.spec b/nbdkit.spec index 797ed0c..67ea91f 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -25,6 +25,11 @@ # but somehow "fixed itself", keep an eye on it. %global have_blkio 1 +# Enable mingw subpackage on Fedora only. +%if 0%{?fedora} +%global have_mingw 1 +%endif + # Enable nbdkit-selinux package. %global with_selinux 1 %global modulename nbdkit @@ -168,6 +173,25 @@ BuildRequires: %{_bindir}/stat # itself, but it's a simple noarch package so easy to install. BuildRequires: nbdkit-srpm-macros >= 1.30.0 +%if 0%{?have_mingw} +BuildRequires: mingw32-filesystem +BuildRequires: mingw64-filesystem +BuildRequires: mingw32-gcc +BuildRequires: mingw64-gcc +BuildRequires: mingw32-gcc-c++ +BuildRequires: mingw64-gcc-c++ +BuildRequires: mingw32-dlfcn +BuildRequires: mingw64-dlfcn +BuildRequires: mingw32-gnutls +BuildRequires: mingw64-gnutls +BuildRequires: mingw32-winpthreads +BuildRequires: mingw64-winpthreads +BuildRequires: mingw32-xz +BuildRequires: mingw64-xz +BuildRequires: mingw32-zlib +BuildRequires: mingw64-zlib +%endif + # nbdkit is a metapackage pulling the server and a useful subset # of the plugins and filters. Requires: nbdkit-server%{?_isa} = %{version}-%{release} @@ -689,6 +713,43 @@ BuildRequires: selinux-policy-devel %endif +%if 0%{?have_mingw} +%package -n mingw32-%{name} +Summary: nbdkit binary, plugins, filters, development files for Windows +BuildArch: noarch +Requires: mingw32-filesystem +Requires: pkgconfig + +%description -n mingw32-%{name} +NBD is a protocol for accessing block devices (hard disks and +disk-like things) over the network. + +nbdkit is a toolkit for creating NBD servers. + +This package contains the nbdkit binary, plugins, filters and +development kit for 32 bit versions of Windows. + + +%package -n mingw64-%{name} +Summary: nbdkit binary, plugins, filters, development files for Windows +BuildArch: noarch +Requires: mingw64-filesystem +Requires: pkgconfig + +%description -n mingw64-%{name} +NBD is a protocol for accessing block devices (hard disks and +disk-like things) over the network. + +nbdkit is a toolkit for creating NBD servers. + +This package contains the nbdkit binary, plugins, filters and +development kit for 64 bit versions of Windows. + + +%{?mingw_debug_package} +%endif + + %prep %if 0%{verify_tarball_signature} %{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}' @@ -797,6 +858,44 @@ bzip2 -9 %{modulename}.pp popd +%if 0%{?have_mingw} +%mingw_configure \ + --disable-static \ + --enable-shared \ + --with-extra='%{name}-%{version}-%{release}' \ + --with-tls-priority=@NBDKIT,SYSTEM \ + --disable-golang \ + --disable-libguestfs-tests \ + --disable-linuxdisk \ + --disable-lua \ + --disable-ocaml \ + --disable-perl \ + --disable-python \ + --disable-ruby \ + --disable-rust \ + --disable-tcl \ + --disable-torrent \ + --disable-valgrind \ + --disable-vddk \ + --without-bash-completions \ + --without-curl \ + --without-ext2 \ + --with-gnutls \ + --without-iso \ + --without-libblkio \ + --without-libguestfs \ + --without-libnbd \ + --without-libvirt \ + --with-liblzma \ + --without-manpages \ + --without-selinux \ + --without-ssh \ + --with-zlib \ + %{nil} + +%mingw_make %{?_smp_mflags} +%endif + %install pushd build_native @@ -832,6 +931,24 @@ install -D -p -m 0644 selinux/%{modulename}.if $RPM_BUILD_ROOT%{_datadir}/selinu %endif popd +%if 0%{?have_mingw} +%mingw_make_install + +# Remove .la files +rm -f $RPM_BUILD_ROOT%{mingw32_libdir}/*.la +rm -f $RPM_BUILD_ROOT%{mingw64_libdir}/*.la + +# The .def files aren't interesting for other binaries +rm -f $RPM_BUILD_ROOT%{mingw32_bindir}/*.def +rm -f $RPM_BUILD_ROOT%{mingw64_bindir}/*.def + +# Remove man pages which duplicate stuff in Fedora already. +rm -rf $RPM_BUILD_ROOT%{mingw32_mandir} +rm -rf $RPM_BUILD_ROOT%{mingw64_mandir} + +%mingw_debug_install_post +%endif + %check %ifnarch %{broken_test_arches} @@ -1331,7 +1448,30 @@ fi %endif +%if 0%{?have_mingw} +%files -n mingw32-%{name} +%license LICENSE +%{mingw32_sbindir}/nbdkit.exe +%{mingw32_libdir}/%{name}/ +%{mingw32_libdir}/libnbdkit.a +%{mingw32_libdir}/pkgconfig/%{name}.pc +%{mingw32_includedir}/*.h + + +%files -n mingw64-%{name} +%license LICENSE +%{mingw64_sbindir}/nbdkit.exe +%{mingw64_libdir}/%{name}/ +%{mingw64_libdir}/libnbdkit.a +%{mingw64_libdir}/pkgconfig/%{name}.pc +%{mingw64_includedir}/*.h +%endif + + %changelog +* Tue Jan 23 2024 Richard W.M. Jones - 1.37.5-2 +- Add mingw{32,64}-nbdkit subpackages + * Sun Jan 21 2024 Fedora Release Engineering - 1.37.5-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From cf7389fcdd7ecd1ae699fe29c6393b7ca6c3c7c9 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 23 Jan 2024 17:55:20 +0000 Subject: [PATCH 172/298] Bump release for rebuild --- nbdkit.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 67ea91f..72eb510 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -58,7 +58,7 @@ Name: nbdkit Version: 1.37.5 -Release: 2%{?dist} +Release: 3%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1469,7 +1469,7 @@ fi %changelog -* Tue Jan 23 2024 Richard W.M. Jones - 1.37.5-2 +* Tue Jan 23 2024 Richard W.M. Jones - 1.37.5-3 - Add mingw{32,64}-nbdkit subpackages * Sun Jan 21 2024 Fedora Release Engineering - 1.37.5-2 From 2fd0615d12091053ed596b604bc93f2b649adf96 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 23 Jan 2024 18:12:47 +0000 Subject: [PATCH 173/298] Potential fix for parallel builds failure of mingw subpackage --- ...tmaps-Fix-tests-when-srcdir-builddir.patch | 2 +- ...x-tests-to-work-with-srcdir-builddir.patch | 2 +- ...nts-win32-Only-build-nbdkit-cat.mc-d.patch | 48 +++++++++++++++++++ nbdkit.spec | 1 + 4 files changed, 51 insertions(+), 2 deletions(-) create mode 100644 0003-common-replacements-win32-Only-build-nbdkit-cat.mc-d.patch diff --git a/0001-common-bitmaps-Fix-tests-when-srcdir-builddir.patch b/0001-common-bitmaps-Fix-tests-when-srcdir-builddir.patch index 0263951..ea7acc2 100644 --- a/0001-common-bitmaps-Fix-tests-when-srcdir-builddir.patch +++ b/0001-common-bitmaps-Fix-tests-when-srcdir-builddir.patch @@ -1,7 +1,7 @@ From 93a1538808ac7f9788336a7e35168d851e8b2c72 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 23 Jan 2024 13:24:48 +0000 -Subject: [PATCH 1/2] common/bitmaps: Fix tests when srcdir != builddir +Subject: [PATCH 1/3] common/bitmaps: Fix tests when srcdir != builddir --- common/bitmap/Makefile.am | 1 + diff --git a/0002-tests-Fix-tests-to-work-with-srcdir-builddir.patch b/0002-tests-Fix-tests-to-work-with-srcdir-builddir.patch index feb49e8..93d28f8 100644 --- a/0002-tests-Fix-tests-to-work-with-srcdir-builddir.patch +++ b/0002-tests-Fix-tests-to-work-with-srcdir-builddir.patch @@ -1,7 +1,7 @@ From ac60163ceba1b951e1d2f0625552e6a45d85f666 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 23 Jan 2024 13:35:02 +0000 -Subject: [PATCH 2/2] tests: Fix tests to work with srcdir != builddir +Subject: [PATCH 2/3] tests: Fix tests to work with srcdir != builddir --- tests/test-cc-cpp.sh | 2 +- diff --git a/0003-common-replacements-win32-Only-build-nbdkit-cat.mc-d.patch b/0003-common-replacements-win32-Only-build-nbdkit-cat.mc-d.patch new file mode 100644 index 0000000..b9f8ae0 --- /dev/null +++ b/0003-common-replacements-win32-Only-build-nbdkit-cat.mc-d.patch @@ -0,0 +1,48 @@ +From 774465bb9e3444f23709deabeb39cc91490001a5 Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Tue, 23 Jan 2024 18:08:12 +0000 +Subject: [PATCH 3/3] common/replacements/win32: Only build nbdkit-cat.mc + derived files once + +Previously parallel builds caused multiple instances of windmc to run. +Use a stamp file to avoid this. +--- + common/replacements/win32/Makefile.am | 9 +++++++-- + .gitignore | 1 + + 2 files changed, 8 insertions(+), 2 deletions(-) + +diff --git a/common/replacements/win32/Makefile.am b/common/replacements/win32/Makefile.am +index 9b5a68db0..b8c7c639e 100644 +--- a/common/replacements/win32/Makefile.am ++++ b/common/replacements/win32/Makefile.am +@@ -38,8 +38,13 @@ if IS_WINDOWS + # Build the message catalog. + noinst_DATA = MSG00001.bin nbdkit-cat.h nbdkit-cat.rc + +-$(noinst_DATA): nbdkit-cat.mc +- rm -f $@ ++CLEANFILES += stamp-data ++ ++$(noinst_DATA): stamp-data ++ ++stamp-data: nbdkit-cat.mc ++ rm -f $@ $(noinst_DATA) + $(MC) $< ++ touch $@ + + endif +diff --git a/.gitignore b/.gitignore +index 04fdcd723..14f816c93 100644 +--- a/.gitignore ++++ b/.gitignore +@@ -55,6 +55,7 @@ plugins/*/*.3 + /common/replacements/win32/MSG00001.bin + /common/replacements/win32/nbdkit-cat.h + /common/replacements/win32/nbdkit-cat.rc ++/common/replacements/win32/stamp-data + /common/utils/test-quotes + /common/utils/test-vector + /common/utils/windows-errors.c +-- +2.43.0 + diff --git a/nbdkit.spec b/nbdkit.spec index 72eb510..019f681 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -92,6 +92,7 @@ Source8: %{modulename}.fc # Upstream patches to fix srcdir != builddir Patch: 0001-common-bitmaps-Fix-tests-when-srcdir-builddir.patch Patch: 0002-tests-Fix-tests-to-work-with-srcdir-builddir.patch +Patch: 0003-common-replacements-win32-Only-build-nbdkit-cat.mc-d.patch BuildRequires: make %if 0%{patches_touch_autotools} From d89cffce88b1c4da4944fa85951166e4f5cbbbad Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 24 Jan 2024 10:58:07 +0000 Subject: [PATCH 174/298] Temporary workaround for binutils bug https://sourceware.org/bugzilla/show_bug.cgi?id=31283 Use git to apply the patches since patch 0004 contains a binary patch. --- ...tmaps-Fix-tests-when-srcdir-builddir.patch | 2 +- ...x-tests-to-work-with-srcdir-builddir.patch | 2 +- ...nts-win32-Only-build-nbdkit-cat.mc-d.patch | 2 +- ...ents-win32-Make-windmc-tool-optional.patch | 192 ++++++++++++++++++ nbdkit.spec | 12 +- 5 files changed, 205 insertions(+), 5 deletions(-) create mode 100644 0004-common-replacements-win32-Make-windmc-tool-optional.patch diff --git a/0001-common-bitmaps-Fix-tests-when-srcdir-builddir.patch b/0001-common-bitmaps-Fix-tests-when-srcdir-builddir.patch index ea7acc2..4f98f9b 100644 --- a/0001-common-bitmaps-Fix-tests-when-srcdir-builddir.patch +++ b/0001-common-bitmaps-Fix-tests-when-srcdir-builddir.patch @@ -1,7 +1,7 @@ From 93a1538808ac7f9788336a7e35168d851e8b2c72 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 23 Jan 2024 13:24:48 +0000 -Subject: [PATCH 1/3] common/bitmaps: Fix tests when srcdir != builddir +Subject: [PATCH 1/4] common/bitmaps: Fix tests when srcdir != builddir --- common/bitmap/Makefile.am | 1 + diff --git a/0002-tests-Fix-tests-to-work-with-srcdir-builddir.patch b/0002-tests-Fix-tests-to-work-with-srcdir-builddir.patch index 93d28f8..7461254 100644 --- a/0002-tests-Fix-tests-to-work-with-srcdir-builddir.patch +++ b/0002-tests-Fix-tests-to-work-with-srcdir-builddir.patch @@ -1,7 +1,7 @@ From ac60163ceba1b951e1d2f0625552e6a45d85f666 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 23 Jan 2024 13:35:02 +0000 -Subject: [PATCH 2/3] tests: Fix tests to work with srcdir != builddir +Subject: [PATCH 2/4] tests: Fix tests to work with srcdir != builddir --- tests/test-cc-cpp.sh | 2 +- diff --git a/0003-common-replacements-win32-Only-build-nbdkit-cat.mc-d.patch b/0003-common-replacements-win32-Only-build-nbdkit-cat.mc-d.patch index b9f8ae0..28c0ccb 100644 --- a/0003-common-replacements-win32-Only-build-nbdkit-cat.mc-d.patch +++ b/0003-common-replacements-win32-Only-build-nbdkit-cat.mc-d.patch @@ -1,7 +1,7 @@ From 774465bb9e3444f23709deabeb39cc91490001a5 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 23 Jan 2024 18:08:12 +0000 -Subject: [PATCH 3/3] common/replacements/win32: Only build nbdkit-cat.mc +Subject: [PATCH 3/4] common/replacements/win32: Only build nbdkit-cat.mc derived files once Previously parallel builds caused multiple instances of windmc to run. diff --git a/0004-common-replacements-win32-Make-windmc-tool-optional.patch b/0004-common-replacements-win32-Make-windmc-tool-optional.patch new file mode 100644 index 0000000..de45bd0 --- /dev/null +++ b/0004-common-replacements-win32-Make-windmc-tool-optional.patch @@ -0,0 +1,192 @@ +From 617f950de1d18d5ddd146c32d700afd81470a284 Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Wed, 24 Jan 2024 10:46:26 +0000 +Subject: [PATCH 4/4] common/replacements/win32: Make windmc tool optional + +Make the windmc (mc.exe) tool option even on Windows. + +Distribute the generated message catalogs, but regenerate them if +windmc is found at compile time. + +I also changed mc -> mc.exe since "mc" on Linux is a program called +Midnight Commander and mc.exe would only be the name when compiling on +Windows. (If there's any confusion here, you can always define the +right binary to use by doing: ./configure MC=/path/to/mc.exe) +--- + configure.ac | 10 ++-- + common/replacements/win32/Makefile.am | 13 +++-- + common/replacements/win32/nbdkit-cat.h | 68 ++++++++++++++++++++++++ + common/replacements/win32/MSG00001.bin | Bin 0 -> 28 bytes + common/replacements/win32/nbdkit-cat.rc | 9 ++++ + .gitignore | 3 -- + 6 files changed, 89 insertions(+), 14 deletions(-) + create mode 100644 common/replacements/win32/nbdkit-cat.h + create mode 100644 common/replacements/win32/MSG00001.bin + create mode 100644 common/replacements/win32/nbdkit-cat.rc + +diff --git a/configure.ac b/configure.ac +index 08ba6287c..03c655638 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -584,13 +584,11 @@ AC_DEFINE_UNQUOTED([DIR_SEPARATOR_STR],["$DIR_SEPARATOR_STR"], + [String that separates path elements.]) + AM_CONDITIONAL([IS_WINDOWS],[test "x$is_windows" = "xyes"]) + ++dnl Look for the mc/windmc utility (optional). ++AC_CHECK_TOOLS([MC],[windmc mc.exe],[no]) ++AM_CONDITIONAL([HAVE_MC],[test "x$MC" != "xno"]) ++ + AS_IF([test "x$is_windows" = "xyes"],[ +- dnl For Windows, look for the mc/windmc utility. +- dnl XXX Do we need to check for mc.exe as well? +- AC_CHECK_TOOLS([MC],[windmc mc],[no]) +- AS_IF([test "x$MC" = "xno"], +- [AC_MSG_ERROR([mc/windmc utility must be available when compiling for Windows])]) +- + dnl On Windows look for dlltool. + AC_CHECK_TOOLS([DLLTOOL],[dlltool],[no]) + AS_IF([test "x$DLLTOOL" = "xno"], +diff --git a/common/replacements/win32/Makefile.am b/common/replacements/win32/Makefile.am +index b8c7c639e..45dcd6ac2 100644 +--- a/common/replacements/win32/Makefile.am ++++ b/common/replacements/win32/Makefile.am +@@ -29,15 +29,18 @@ + # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + # SUCH DAMAGE. + ++# The Windows message catalog. ++ + include $(top_srcdir)/common-rules.mk + +-EXTRA_DIST = nbdkit-cat.mc +- +-if IS_WINDOWS +- +-# Build the message catalog. + noinst_DATA = MSG00001.bin nbdkit-cat.h nbdkit-cat.rc + ++# We distribute the generated message catalog files to save people ++# needing to install the windmc tool, but they are regenerated (below) ++# if windmc is found at configure time. ++EXTRA_DIST = nbdkit-cat.mc $(noinst_DATA) ++ ++if HAVE_MC + CLEANFILES += stamp-data + + $(noinst_DATA): stamp-data +diff --git a/common/replacements/win32/nbdkit-cat.h b/common/replacements/win32/nbdkit-cat.h +new file mode 100644 +index 000000000..8081e453d +--- /dev/null ++++ b/common/replacements/win32/nbdkit-cat.h +@@ -0,0 +1,68 @@ ++/* Do not edit this file manually. ++ This file is autogenerated by windmc. */ ++ ++// ++// The values are 32 bit layed out as follows: ++// ++// 3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 ++// 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 ++// +---+-+-+-----------------------+-------------------------------+ ++// |Sev|C|R| Facility | Code | ++// +---+-+-+-----------------------+-------------------------------+ ++// ++// where ++// ++// C - is the Customer code flag ++// ++// R - is a reserved bit ++// ++// Code - is the facility's status code ++// ++// Sev - is the severity code ++// ++// Success - 00 ++// Informational - 01 ++// Warning - 02 ++// Error - 03 ++// ++// Facility - is the facility code ++// ++// System - 00ff ++// Application - 0fff ++// ++ ++// nbdkit ++// Copyright Red Hat ++// ++// Redistribution and use in source and binary forms, with or without ++// modification, are permitted provided that the following conditions are ++// met: ++// ++// * Redistributions of source code must retain the above copyright ++// notice, this list of conditions and the following disclaimer. ++// ++// * Redistributions in binary form must reproduce the above copyright ++// notice, this list of conditions and the following disclaimer in the ++// documentation and/or other materials provided with the distribution. ++// ++// * Neither the name of Red Hat nor the names of its contributors may be ++// used to endorse or promote products derived from this software without ++// specific prior written permission. ++// ++// THIS SOFTWARE IS PROVIDED BY RED HAT AND CONTRIBUTORS ''AS IS'' AND ++// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, ++// THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A ++// PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL RED HAT OR ++// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ++// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ++// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF ++// USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ++// ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, ++// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT ++// OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF ++// SUCH DAMAGE. ++// ++// MessageId: NBDKIT_SYSLOG_ERROR ++// ++#define NBDKIT_SYSLOG_ERROR 0xc0000001 ++ +diff --git a/common/replacements/win32/MSG00001.bin b/common/replacements/win32/MSG00001.bin +new file mode 100644 +index 0000000000000000000000000000000000000000..f642ff3a4079b4b8b3b60b9ecefebe7c136a404b +GIT binary patch +literal 28 +dcmZQ%U|?WmU^oE60zftokf+LE$iM|;0{|fO0s#O3 + +literal 0 +HcmV?d00001 + +diff --git a/common/replacements/win32/nbdkit-cat.rc b/common/replacements/win32/nbdkit-cat.rc +new file mode 100644 +index 000000000..6f6ce3344 +--- /dev/null ++++ b/common/replacements/win32/nbdkit-cat.rc +@@ -0,0 +1,9 @@ ++/* Do not edit this file manually. ++ This file is autogenerated by windmc. */ ++ ++ ++// Country: United States ++// Language: English ++#pragma code_page(1252) ++LANGUAGE 0x9, 0x1 ++1 MESSAGETABLE "MSG00001.bin" +diff --git a/.gitignore b/.gitignore +index 14f816c93..cce2de79b 100644 +--- a/.gitignore ++++ b/.gitignore +@@ -52,9 +52,6 @@ plugins/*/*.3 + /common/protocol/protostrings.c + /common/replacements/libcompat.a + /common/replacements/test-current-dir-name +-/common/replacements/win32/MSG00001.bin +-/common/replacements/win32/nbdkit-cat.h +-/common/replacements/win32/nbdkit-cat.rc + /common/replacements/win32/stamp-data + /common/utils/test-quotes + /common/utils/test-vector +-- +2.43.0 + diff --git a/nbdkit.spec b/nbdkit.spec index 019f681..a8d25ae 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -92,13 +92,18 @@ Source8: %{modulename}.fc # Upstream patches to fix srcdir != builddir Patch: 0001-common-bitmaps-Fix-tests-when-srcdir-builddir.patch Patch: 0002-tests-Fix-tests-to-work-with-srcdir-builddir.patch +# Upstream patches to fix mingw builds Patch: 0003-common-replacements-win32-Only-build-nbdkit-cat.mc-d.patch +Patch: 0004-common-replacements-win32-Make-windmc-tool-optional.patch + +# For applying the patches: +BuildRequires: git -BuildRequires: make %if 0%{patches_touch_autotools} BuildRequires: autoconf, automake, libtool %endif +BuildRequires: make BuildRequires: gcc, gcc-c++ BuildRequires: %{_bindir}/pod2man BuildRequires: gnutls-devel @@ -755,7 +760,7 @@ development kit for 64 bit versions of Windows. %if 0%{verify_tarball_signature} %{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}' %endif -%autosetup -p1 +%autosetup -p1 -S git %if 0%{patches_touch_autotools} autoreconf -i %endif @@ -860,7 +865,10 @@ bzip2 -9 %{modulename}.pp popd %if 0%{?have_mingw} +# MC=no is a temporary hack until this bug is fixed in binutils: +# https://sourceware.org/bugzilla/show_bug.cgi?id=31283 %mingw_configure \ + MC=no \ --disable-static \ --enable-shared \ --with-extra='%{name}-%{version}-%{release}' \ From 5f12965c1ff5ccbdcbeefd765e61cff3d80efb67 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 1 Feb 2024 21:50:19 +0000 Subject: [PATCH 175/298] New upstream development version 1.37.6 --- ...tmaps-Fix-tests-when-srcdir-builddir.patch | 24 -- ...x-tests-to-work-with-srcdir-builddir.patch | 284 ------------------ ...nts-win32-Only-build-nbdkit-cat.mc-d.patch | 48 --- ...ents-win32-Make-windmc-tool-optional.patch | 192 ------------ nbdkit.spec | 14 +- sources | 4 +- 6 files changed, 7 insertions(+), 559 deletions(-) delete mode 100644 0001-common-bitmaps-Fix-tests-when-srcdir-builddir.patch delete mode 100644 0002-tests-Fix-tests-to-work-with-srcdir-builddir.patch delete mode 100644 0003-common-replacements-win32-Only-build-nbdkit-cat.mc-d.patch delete mode 100644 0004-common-replacements-win32-Make-windmc-tool-optional.patch diff --git a/0001-common-bitmaps-Fix-tests-when-srcdir-builddir.patch b/0001-common-bitmaps-Fix-tests-when-srcdir-builddir.patch deleted file mode 100644 index 4f98f9b..0000000 --- a/0001-common-bitmaps-Fix-tests-when-srcdir-builddir.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 93a1538808ac7f9788336a7e35168d851e8b2c72 Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Tue, 23 Jan 2024 13:24:48 +0000 -Subject: [PATCH 1/4] common/bitmaps: Fix tests when srcdir != builddir - ---- - common/bitmap/Makefile.am | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/common/bitmap/Makefile.am b/common/bitmap/Makefile.am -index 3b7f4b44f..93ca1ee43 100644 ---- a/common/bitmap/Makefile.am -+++ b/common/bitmap/Makefile.am -@@ -52,6 +52,7 @@ check_PROGRAMS = test-bitmap - test_bitmap_SOURCES = test-bitmap.c bitmap.c bitmap.h - test_bitmap_CPPFLAGS = \ - -I$(top_srcdir)/include \ -+ -I$(top_builddir)/include \ - -I$(top_srcdir)/common/include \ - $(NULL) - test_bitmap_CFLAGS = $(WARNINGS_CFLAGS) --- -2.43.0 - diff --git a/0002-tests-Fix-tests-to-work-with-srcdir-builddir.patch b/0002-tests-Fix-tests-to-work-with-srcdir-builddir.patch deleted file mode 100644 index 7461254..0000000 --- a/0002-tests-Fix-tests-to-work-with-srcdir-builddir.patch +++ /dev/null @@ -1,284 +0,0 @@ -From ac60163ceba1b951e1d2f0625552e6a45d85f666 Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Tue, 23 Jan 2024 13:35:02 +0000 -Subject: [PATCH 2/4] tests: Fix tests to work with srcdir != builddir - ---- - tests/test-cc-cpp.sh | 2 +- - tests/test-cc-ocaml.sh | 2 +- - tests/test-cc.sh | 2 +- - tests/test-curl-header-script-fail.sh | 2 +- - tests/test-linuxdisk-copy-out.sh | 4 ++-- - tests/test-multi-conn-name.sh | 6 ++++-- - tests/test-multi-conn.sh | 20 +++++++++++--------- - tests/test-plugin-docs.sh | 2 +- - tests/test-shebang-cc.sh | 3 +++ - tests/test-tar.sh | 2 +- - tests/cc-shebang.c | 4 +++- - tests/test-read-password-plugin.c | 4 +++- - 12 files changed, 32 insertions(+), 21 deletions(-) - -diff --git a/tests/test-cc-cpp.sh b/tests/test-cc-cpp.sh -index ebbdab31d..dd9bf58d8 100755 ---- a/tests/test-cc-cpp.sh -+++ b/tests/test-cc-cpp.sh -@@ -55,6 +55,6 @@ rm -f $out - - nbdkit cc $script \ - CC="$CXX" \ -- EXTRA_CFLAGS="-I$abs_top_srcdir/include" \ -+ EXTRA_CFLAGS="-I$abs_top_srcdir/include -I../include" \ - --run 'nbdinfo --size $uri' > $out - test "$(cat $out)" -eq $((100 * 1024 * 1024)) -diff --git a/tests/test-cc-ocaml.sh b/tests/test-cc-ocaml.sh -index 68972fce0..79eb678df 100755 ---- a/tests/test-cc-ocaml.sh -+++ b/tests/test-cc-ocaml.sh -@@ -57,6 +57,6 @@ cleanup_fn rm -f $out - rm -f $out - - nbdkit -v cc $script a=1 b=2 c=3 d=4 \ -- CC="$OCAMLOPT" CFLAGS="-output-obj -runtime-variant _pic -I $abs_top_srcdir/plugins/ocaml $OCAML_PLUGIN_LIBRARIES NBDKit.cmx -cclib -L../plugins/ocaml/.libs -cclib -lnbdkitocaml" \ -+ CC="$OCAMLOPT" CFLAGS="-output-obj -runtime-variant _pic -I $abs_top_srcdir/plugins/ocaml -I ../plugins/ocaml $OCAML_PLUGIN_LIBRARIES NBDKit.cmx -cclib -L../plugins/ocaml/.libs -cclib -lnbdkitocaml" \ - --run 'nbdinfo --size $uri' > $out - test "$(cat $out)" -eq $((512 * 2048)) -diff --git a/tests/test-cc.sh b/tests/test-cc.sh -index 2646704be..5c1db8b96 100755 ---- a/tests/test-cc.sh -+++ b/tests/test-cc.sh -@@ -53,6 +53,6 @@ cleanup_fn rm -f $out - rm -f $out - - nbdkit cc $script \ -- EXTRA_CFLAGS="-I$abs_top_srcdir/include" \ -+ EXTRA_CFLAGS="-I$abs_top_srcdir/include -I../include" \ - --run 'nbdinfo --size $uri' > $out - test "$(cat $out)" -eq $((100 * 1024 * 1024)) -diff --git a/tests/test-curl-header-script-fail.sh b/tests/test-curl-header-script-fail.sh -index cf9614f96..282e0ddf0 100755 ---- a/tests/test-curl-header-script-fail.sh -+++ b/tests/test-curl-header-script-fail.sh -@@ -50,7 +50,7 @@ cleanup_fn rm -f $errors - # This command is expected to fail. - nbdkit -rfv \ - curl file:$PWD/disk protocols=file \ -- header-script=$PWD/test-curl-header-script-fail.script \ -+ header-script=$abs_top_srcdir/tests/test-curl-header-script-fail.script \ - --run 'nbdinfo --no-content $uri' >$errors 2>&1 ||: - - cat $errors -diff --git a/tests/test-linuxdisk-copy-out.sh b/tests/test-linuxdisk-copy-out.sh -index 8c2f44bad..81b5b7439 100755 ---- a/tests/test-linuxdisk-copy-out.sh -+++ b/tests/test-linuxdisk-copy-out.sh -@@ -65,14 +65,14 @@ guestfish --ro -a linuxdisk-copy-out.img -m /dev/sda </dev/null - - # Download some files and compare to local copies. -- download /Makefile linuxdisk-copy-out.test1 -+ download /virtual-disk.c linuxdisk-copy-out.test1 - download /Makefile.am linuxdisk-copy-out.test2 - download /nbdkit-linuxdisk-plugin.pod linuxdisk-copy-out.test3 - download /filesystem.c linuxdisk-copy-out.test4 - EOF - - # Compare downloaded files to local versions. --cmp linuxdisk-copy-out.test1 $srcdir/../plugins/linuxdisk/Makefile -+cmp linuxdisk-copy-out.test1 $srcdir/../plugins/linuxdisk/virtual-disk.c - cmp linuxdisk-copy-out.test2 $srcdir/../plugins/linuxdisk/Makefile.am - cmp linuxdisk-copy-out.test3 $srcdir/../plugins/linuxdisk/nbdkit-linuxdisk-plugin.pod - cmp linuxdisk-copy-out.test4 $srcdir/../plugins/linuxdisk/filesystem.c -diff --git a/tests/test-multi-conn-name.sh b/tests/test-multi-conn-name.sh -index 6a180db72..2d2072925 100755 ---- a/tests/test-multi-conn-name.sh -+++ b/tests/test-multi-conn-name.sh -@@ -42,6 +42,8 @@ requires_nbdsh_uri - requires nbdsh -c 'print(h.set_opt_mode)' - requires dd iflag=count_bytes test-multi-conn-name.out || fail=1 - diff -u <(cat <<\EOF - b'A' -@@ -77,7 +79,7 @@ b'B' - EOF - ) test-multi-conn-name.out || fail=1 - # But with the knob, our flush is specific to the correct export --nbdkit -vf sh test-multi-conn-plugin.sh --filter=multi-conn \ -+nbdkit -vf sh $plugin --filter=multi-conn \ - multi-conn-exportname=true \ - --run 'export uri; nbdsh -c "$script"' > test-multi-conn-name.out || fail=1 - diff -u <(cat <<\EOF -diff --git a/tests/test-multi-conn.sh b/tests/test-multi-conn.sh -index 3383cd246..eec225c2a 100755 ---- a/tests/test-multi-conn.sh -+++ b/tests/test-multi-conn.sh -@@ -41,6 +41,8 @@ requires_plugin sh - requires_nbdsh_uri - requires dd iflag=count_bytes test-multi-conn.out || fail=1 -@@ -208,7 +210,7 @@ for level in off connection fast; do - plugin 'plugin --filter=cache'; do - echo "setup: $level $mode" >> test-multi-conn.stat - # Flush with no activity -- nbdkit -vf sh test-multi-conn-plugin.sh --filter=multi-conn \ -+ nbdkit -vf sh $plugin --filter=multi-conn \ - --filter=stats statsfile=test-multi-conn.stat statsappend=true \ - multi-conn-track-dirty=$level multi-conn-mode=$mode \ - --run 'nbdsh -c "$preamble" -c " -@@ -217,7 +219,7 @@ h[0].pread(1, 0) - h[0].flush() - "' > test-multi-conn.out || fail=1 - # Client that flushes assuming multi-conn semantics -- nbdkit -vf sh test-multi-conn-plugin.sh --filter=multi-conn \ -+ nbdkit -vf sh $plugin --filter=multi-conn \ - --filter=stats statsfile=test-multi-conn.stat statsappend=true \ - multi-conn-track-dirty=$level multi-conn-mode=$mode \ - --run 'handles=4 nbdsh -c "$preamble" -c " -@@ -230,7 +232,7 @@ h[3].flush() - h[3].flush() - "' > test-multi-conn.out || fail=1 - # Client that flushes assuming inconsistent semantics -- nbdkit -vf sh test-multi-conn-plugin.sh --filter=multi-conn \ -+ nbdkit -vf sh $plugin --filter=multi-conn \ - --filter=stats statsfile=test-multi-conn.stat statsappend=true \ - multi-conn-track-dirty=$level multi-conn-mode=$mode \ - --run 'nbdsh -c "$preamble" -c " -diff --git a/tests/test-plugin-docs.sh b/tests/test-plugin-docs.sh -index 772cfff07..e329035da 100755 ---- a/tests/test-plugin-docs.sh -+++ b/tests/test-plugin-docs.sh -@@ -59,7 +59,7 @@ run_test () - { - plugin="$1" - -- pod=../plugins/$plugin/nbdkit-$plugin-plugin.pod -+ pod=$srcdir/../plugins/$plugin/nbdkit-$plugin-plugin.pod - test -f "$pod" - - # Get the key=value lines from the help output. -diff --git a/tests/test-shebang-cc.sh b/tests/test-shebang-cc.sh -index b25b789f7..674d0fcef 100755 ---- a/tests/test-shebang-cc.sh -+++ b/tests/test-shebang-cc.sh -@@ -45,6 +45,9 @@ requires_run - requires_plugin cc - requires guestfish --version - -+# This variable is used by $script. -+export abs_top_srcdir -+ - $script -fv \ - EXTRA_CFLAGS="-I$abs_top_srcdir/include" \ - --run ' -diff --git a/tests/test-tar.sh b/tests/test-tar.sh -index 9c9b3974f..d1a602b99 100755 ---- a/tests/test-tar.sh -+++ b/tests/test-tar.sh -@@ -45,7 +45,7 @@ cleanup_fn rm -f $files - - # Create a tar file containing the disk image plus some other random - # files that hopefully will be ignored. --tar cf tar.tar test-tar.sh Makefile disk Makefile.am -+tar cf tar.tar Makefile disk functions.sh - tar tvvf tar.tar - - # Run nbdkit. -diff --git a/tests/cc-shebang.c b/tests/cc-shebang.c -index de2730f67..882fa2c1c 100755 ---- a/tests/cc-shebang.c -+++ b/tests/cc-shebang.c -@@ -1,5 +1,7 @@ - #if 0 --exec nbdkit cc "$0" "$@" -+exec nbdkit cc "$0" "$@" \ -+ EXTRA_CFLAGS="-I.. -I../include \ -+ -I$abs_top_srcdir/include" - #endif - #include - #include -diff --git a/tests/test-read-password-plugin.c b/tests/test-read-password-plugin.c -index 3f0a95153..703fc724d 100755 ---- a/tests/test-read-password-plugin.c -+++ b/tests/test-read-password-plugin.c -@@ -1,5 +1,7 @@ - #if 0 --exec nbdkit cc "$0" "$@" EXTRA_CFLAGS="-I.. -I$abs_top_srcdir/include" -+exec nbdkit cc "$0" "$@" \ -+ EXTRA_CFLAGS="-I.. -I../include \ -+ -I$abs_top_srcdir/include" - #endif - /* nbdkit - * Copyright Red Hat --- -2.43.0 - diff --git a/0003-common-replacements-win32-Only-build-nbdkit-cat.mc-d.patch b/0003-common-replacements-win32-Only-build-nbdkit-cat.mc-d.patch deleted file mode 100644 index 28c0ccb..0000000 --- a/0003-common-replacements-win32-Only-build-nbdkit-cat.mc-d.patch +++ /dev/null @@ -1,48 +0,0 @@ -From 774465bb9e3444f23709deabeb39cc91490001a5 Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Tue, 23 Jan 2024 18:08:12 +0000 -Subject: [PATCH 3/4] common/replacements/win32: Only build nbdkit-cat.mc - derived files once - -Previously parallel builds caused multiple instances of windmc to run. -Use a stamp file to avoid this. ---- - common/replacements/win32/Makefile.am | 9 +++++++-- - .gitignore | 1 + - 2 files changed, 8 insertions(+), 2 deletions(-) - -diff --git a/common/replacements/win32/Makefile.am b/common/replacements/win32/Makefile.am -index 9b5a68db0..b8c7c639e 100644 ---- a/common/replacements/win32/Makefile.am -+++ b/common/replacements/win32/Makefile.am -@@ -38,8 +38,13 @@ if IS_WINDOWS - # Build the message catalog. - noinst_DATA = MSG00001.bin nbdkit-cat.h nbdkit-cat.rc - --$(noinst_DATA): nbdkit-cat.mc -- rm -f $@ -+CLEANFILES += stamp-data -+ -+$(noinst_DATA): stamp-data -+ -+stamp-data: nbdkit-cat.mc -+ rm -f $@ $(noinst_DATA) - $(MC) $< -+ touch $@ - - endif -diff --git a/.gitignore b/.gitignore -index 04fdcd723..14f816c93 100644 ---- a/.gitignore -+++ b/.gitignore -@@ -55,6 +55,7 @@ plugins/*/*.3 - /common/replacements/win32/MSG00001.bin - /common/replacements/win32/nbdkit-cat.h - /common/replacements/win32/nbdkit-cat.rc -+/common/replacements/win32/stamp-data - /common/utils/test-quotes - /common/utils/test-vector - /common/utils/windows-errors.c --- -2.43.0 - diff --git a/0004-common-replacements-win32-Make-windmc-tool-optional.patch b/0004-common-replacements-win32-Make-windmc-tool-optional.patch deleted file mode 100644 index de45bd0..0000000 --- a/0004-common-replacements-win32-Make-windmc-tool-optional.patch +++ /dev/null @@ -1,192 +0,0 @@ -From 617f950de1d18d5ddd146c32d700afd81470a284 Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Wed, 24 Jan 2024 10:46:26 +0000 -Subject: [PATCH 4/4] common/replacements/win32: Make windmc tool optional - -Make the windmc (mc.exe) tool option even on Windows. - -Distribute the generated message catalogs, but regenerate them if -windmc is found at compile time. - -I also changed mc -> mc.exe since "mc" on Linux is a program called -Midnight Commander and mc.exe would only be the name when compiling on -Windows. (If there's any confusion here, you can always define the -right binary to use by doing: ./configure MC=/path/to/mc.exe) ---- - configure.ac | 10 ++-- - common/replacements/win32/Makefile.am | 13 +++-- - common/replacements/win32/nbdkit-cat.h | 68 ++++++++++++++++++++++++ - common/replacements/win32/MSG00001.bin | Bin 0 -> 28 bytes - common/replacements/win32/nbdkit-cat.rc | 9 ++++ - .gitignore | 3 -- - 6 files changed, 89 insertions(+), 14 deletions(-) - create mode 100644 common/replacements/win32/nbdkit-cat.h - create mode 100644 common/replacements/win32/MSG00001.bin - create mode 100644 common/replacements/win32/nbdkit-cat.rc - -diff --git a/configure.ac b/configure.ac -index 08ba6287c..03c655638 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -584,13 +584,11 @@ AC_DEFINE_UNQUOTED([DIR_SEPARATOR_STR],["$DIR_SEPARATOR_STR"], - [String that separates path elements.]) - AM_CONDITIONAL([IS_WINDOWS],[test "x$is_windows" = "xyes"]) - -+dnl Look for the mc/windmc utility (optional). -+AC_CHECK_TOOLS([MC],[windmc mc.exe],[no]) -+AM_CONDITIONAL([HAVE_MC],[test "x$MC" != "xno"]) -+ - AS_IF([test "x$is_windows" = "xyes"],[ -- dnl For Windows, look for the mc/windmc utility. -- dnl XXX Do we need to check for mc.exe as well? -- AC_CHECK_TOOLS([MC],[windmc mc],[no]) -- AS_IF([test "x$MC" = "xno"], -- [AC_MSG_ERROR([mc/windmc utility must be available when compiling for Windows])]) -- - dnl On Windows look for dlltool. - AC_CHECK_TOOLS([DLLTOOL],[dlltool],[no]) - AS_IF([test "x$DLLTOOL" = "xno"], -diff --git a/common/replacements/win32/Makefile.am b/common/replacements/win32/Makefile.am -index b8c7c639e..45dcd6ac2 100644 ---- a/common/replacements/win32/Makefile.am -+++ b/common/replacements/win32/Makefile.am -@@ -29,15 +29,18 @@ - # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - # SUCH DAMAGE. - -+# The Windows message catalog. -+ - include $(top_srcdir)/common-rules.mk - --EXTRA_DIST = nbdkit-cat.mc -- --if IS_WINDOWS -- --# Build the message catalog. - noinst_DATA = MSG00001.bin nbdkit-cat.h nbdkit-cat.rc - -+# We distribute the generated message catalog files to save people -+# needing to install the windmc tool, but they are regenerated (below) -+# if windmc is found at configure time. -+EXTRA_DIST = nbdkit-cat.mc $(noinst_DATA) -+ -+if HAVE_MC - CLEANFILES += stamp-data - - $(noinst_DATA): stamp-data -diff --git a/common/replacements/win32/nbdkit-cat.h b/common/replacements/win32/nbdkit-cat.h -new file mode 100644 -index 000000000..8081e453d ---- /dev/null -+++ b/common/replacements/win32/nbdkit-cat.h -@@ -0,0 +1,68 @@ -+/* Do not edit this file manually. -+ This file is autogenerated by windmc. */ -+ -+// -+// The values are 32 bit layed out as follows: -+// -+// 3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1 -+// 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 -+// +---+-+-+-----------------------+-------------------------------+ -+// |Sev|C|R| Facility | Code | -+// +---+-+-+-----------------------+-------------------------------+ -+// -+// where -+// -+// C - is the Customer code flag -+// -+// R - is a reserved bit -+// -+// Code - is the facility's status code -+// -+// Sev - is the severity code -+// -+// Success - 00 -+// Informational - 01 -+// Warning - 02 -+// Error - 03 -+// -+// Facility - is the facility code -+// -+// System - 00ff -+// Application - 0fff -+// -+ -+// nbdkit -+// Copyright Red Hat -+// -+// Redistribution and use in source and binary forms, with or without -+// modification, are permitted provided that the following conditions are -+// met: -+// -+// * Redistributions of source code must retain the above copyright -+// notice, this list of conditions and the following disclaimer. -+// -+// * Redistributions in binary form must reproduce the above copyright -+// notice, this list of conditions and the following disclaimer in the -+// documentation and/or other materials provided with the distribution. -+// -+// * Neither the name of Red Hat nor the names of its contributors may be -+// used to endorse or promote products derived from this software without -+// specific prior written permission. -+// -+// THIS SOFTWARE IS PROVIDED BY RED HAT AND CONTRIBUTORS ''AS IS'' AND -+// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, -+// THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -+// PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL RED HAT OR -+// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, -+// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT -+// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF -+// USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND -+// ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -+// OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT -+// OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF -+// SUCH DAMAGE. -+// -+// MessageId: NBDKIT_SYSLOG_ERROR -+// -+#define NBDKIT_SYSLOG_ERROR 0xc0000001 -+ -diff --git a/common/replacements/win32/MSG00001.bin b/common/replacements/win32/MSG00001.bin -new file mode 100644 -index 0000000000000000000000000000000000000000..f642ff3a4079b4b8b3b60b9ecefebe7c136a404b -GIT binary patch -literal 28 -dcmZQ%U|?WmU^oE60zftokf+LE$iM|;0{|fO0s#O3 - -literal 0 -HcmV?d00001 - -diff --git a/common/replacements/win32/nbdkit-cat.rc b/common/replacements/win32/nbdkit-cat.rc -new file mode 100644 -index 000000000..6f6ce3344 ---- /dev/null -+++ b/common/replacements/win32/nbdkit-cat.rc -@@ -0,0 +1,9 @@ -+/* Do not edit this file manually. -+ This file is autogenerated by windmc. */ -+ -+ -+// Country: United States -+// Language: English -+#pragma code_page(1252) -+LANGUAGE 0x9, 0x1 -+1 MESSAGETABLE "MSG00001.bin" -diff --git a/.gitignore b/.gitignore -index 14f816c93..cce2de79b 100644 ---- a/.gitignore -+++ b/.gitignore -@@ -52,9 +52,6 @@ plugins/*/*.3 - /common/protocol/protostrings.c - /common/replacements/libcompat.a - /common/replacements/test-current-dir-name --/common/replacements/win32/MSG00001.bin --/common/replacements/win32/nbdkit-cat.h --/common/replacements/win32/nbdkit-cat.rc - /common/replacements/win32/stamp-data - /common/utils/test-quotes - /common/utils/test-vector --- -2.43.0 - diff --git a/nbdkit.spec b/nbdkit.spec index a8d25ae..360a009 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -57,8 +57,8 @@ %global source_directory 1.37-development Name: nbdkit -Version: 1.37.5 -Release: 3%{?dist} +Version: 1.37.6 +Release: 1%{?dist} Summary: NBD server License: BSD-3-Clause @@ -89,13 +89,6 @@ Source6: %{modulename}.te Source7: %{modulename}.if Source8: %{modulename}.fc -# Upstream patches to fix srcdir != builddir -Patch: 0001-common-bitmaps-Fix-tests-when-srcdir-builddir.patch -Patch: 0002-tests-Fix-tests-to-work-with-srcdir-builddir.patch -# Upstream patches to fix mingw builds -Patch: 0003-common-replacements-win32-Only-build-nbdkit-cat.mc-d.patch -Patch: 0004-common-replacements-win32-Make-windmc-tool-optional.patch - # For applying the patches: BuildRequires: git @@ -1478,6 +1471,9 @@ fi %changelog +* Thu Feb 01 2024 Richard W.M. Jones - 1.37.6-1 +- New upstream development version 1.37.6 + * Tue Jan 23 2024 Richard W.M. Jones - 1.37.5-3 - Add mingw{32,64}-nbdkit subpackages diff --git a/sources b/sources index 6deff94..a6ef3f6 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.37.5.tar.gz) = 7f246fe0665a30d04641c8181d408d50859bf96c251dceb37c797057f2c32316174e7d293d2090d3b9979ff28edf337cedf4f5305e901054eebe7b97a0804e67 -SHA512 (nbdkit-1.37.5.tar.gz.sig) = 78be5c0f05ef20d4a651416799faeec180a3c48aeea547bb174bebf1b87dadac927e99faf8dcfdb27998f1747c6f7519d96e8d6f895f448ff9120b74a8a3e121 +SHA512 (nbdkit-1.37.6.tar.gz) = 3f16d523a76b50db0cfdd48bb07271d0588d04807600ee6d5eebe8e91a96611f12fd8ab2ffce161f0334ed26c51a33053a7c2edbaed9610194445bbdc5e27280 +SHA512 (nbdkit-1.37.6.tar.gz.sig) = 894e73e55cefb7d71337f40300230dab3b32d938ca5d9f44b50a6f15d108e07e58537776c4faeab4ce9f1b3e2722cd319bb795695f9cf92d844ccd2fd8d75873 From 4a2343b4a3754ca7e9078189ac4642f2f9acf847 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sun, 11 Feb 2024 18:29:20 +0000 Subject: [PATCH 176/298] New upstream development version 1.37.7 New nbdkit-gcs-plugin for Google Cloud Storage --- nbdkit.spec | 36 +++++++++++++++++++++++++++++++++--- sources | 4 ++-- 2 files changed, 35 insertions(+), 5 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 360a009..fb606dc 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -57,7 +57,7 @@ %global source_directory 1.37-development Name: nbdkit -Version: 1.37.6 +Version: 1.37.7 Release: 1%{?dist} Summary: NBD server @@ -349,6 +349,21 @@ Requires: %{name}-server%{?_isa} = %{version}-%{release} This package contains cURL (HTTP/FTP) support for %{name}. +%if !0%{?rhel} +# In theory this is noarch, but because plugins are placed in _libdir +# which varies across architectures, RPM does not allow this. +%package gcs-plugin +Summary: Gooogle Cloud Storage plugin %{name} +Requires: %{name}-python-plugin >= 1.38 +# XXX Should not need to add this. +Requires: python3-google-cloud-storage + +%description gcs-plugin +This package lets you open disk images stored in Google +Cloud Storage using %{name}. +%endif + + %if !0%{?rhel} && 0%{?have_libguestfs} %package guestfs-plugin Summary: libguestfs plugin for %{name} @@ -916,8 +931,10 @@ for f in cc cdi ; do rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/nbdkit-$f-plugin.so rm -f $RPM_BUILD_ROOT%{_mandir}/man?/nbdkit-$f-plugin.* done -rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/nbdkit-S3-plugin -rm -f $RPM_BUILD_ROOT%{_mandir}/man1/nbdkit-S3-plugin.1* +for f in gcs S3 ; do + rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/plugins/nbdkit-$f-plugin + rm -f $RPM_BUILD_ROOT%{_mandir}/man1/nbdkit-$f-plugin.1* +done rm -f $RPM_BUILD_ROOT%{_libdir}/%{name}/filters/nbdkit-qcow2dec-filter.so rm -f $RPM_BUILD_ROOT%{_mandir}/man1/nbdkit-qcow2dec-filter.1* %endif @@ -1133,6 +1150,15 @@ fi %{_mandir}/man1/nbdkit-curl-plugin.1* +%if !0%{?rhel} +%files gcs-plugin +%doc README.md +%license LICENSE +%{_libdir}/%{name}/plugins/nbdkit-gcs-plugin +%{_mandir}/man1/nbdkit-gcs-plugin.1* +%endif + + %if !0%{?rhel} && 0%{?have_libguestfs} %files guestfs-plugin %doc README.md @@ -1471,6 +1497,10 @@ fi %changelog +* Sun Feb 11 2024 Richard W.M. Jones - 1.37.7-1 +- New upstream development version 1.37.7 +- New nbdkit-gcs-plugin for Google Cloud Storage + * Thu Feb 01 2024 Richard W.M. Jones - 1.37.6-1 - New upstream development version 1.37.6 diff --git a/sources b/sources index a6ef3f6..e18e411 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.37.6.tar.gz) = 3f16d523a76b50db0cfdd48bb07271d0588d04807600ee6d5eebe8e91a96611f12fd8ab2ffce161f0334ed26c51a33053a7c2edbaed9610194445bbdc5e27280 -SHA512 (nbdkit-1.37.6.tar.gz.sig) = 894e73e55cefb7d71337f40300230dab3b32d938ca5d9f44b50a6f15d108e07e58537776c4faeab4ce9f1b3e2722cd319bb795695f9cf92d844ccd2fd8d75873 +SHA512 (nbdkit-1.37.7.tar.gz) = b219562c00da1acaa6f9e5cd69f8e18971093d12662747551ac141459a43b4e5732e58fea1f47fd9d299968d5bc1295889339ceb3b2f595d36d57ed394c34118 +SHA512 (nbdkit-1.37.7.tar.gz.sig) = 05fdd89f2639f0c1cbd6bf134219a0158a503ef207ccd35eb87f1cf63918bec95a83e0a0a5bc8b57aafea0435c416f4d628bfa53f57fbad4cce1f155a60ae687 From 13f3d0d720a06dcde5fc76574399c127f1ce8ba1 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 14 Feb 2024 21:11:06 +0000 Subject: [PATCH 177/298] Fix gcs & S3 plugin requirements Make them require the exact version of nbdkit-server and nbdkit-python-plugin. This avoids any sort of unintentional mismatch in case we add a feature to the server or python plugin and then immediately use it in the gcs / S3 plugin. Also use %{?_isa} for the python plugin since it is arch-specific. Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=2264258 Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=2264266 --- nbdkit.spec | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index fb606dc..0d6051f 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -58,7 +58,7 @@ Name: nbdkit Version: 1.37.7 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD-3-Clause @@ -354,7 +354,8 @@ This package contains cURL (HTTP/FTP) support for %{name}. # which varies across architectures, RPM does not allow this. %package gcs-plugin Summary: Gooogle Cloud Storage plugin %{name} -Requires: %{name}-python-plugin >= 1.38 +Requires: %{name}-python-plugin%{?_isa} = %{version}-%{release} +Requires: %{name}-server%{?_isa} = %{version}-%{release} # XXX Should not need to add this. Requires: python3-google-cloud-storage @@ -481,7 +482,8 @@ This package lets you write Ruby plugins for %{name}. # which varies across architectures, RPM does not allow this. %package S3-plugin Summary: Amazon S3 and Ceph plugin for %{name} -Requires: %{name}-python-plugin >= 1.22 +Requires: %{name}-python-plugin%{?_isa} = %{version}-%{release} +Requires: %{name}-server%{?_isa} = %{version}-%{release} # XXX Should not need to add this. Requires: python3-boto3 @@ -1497,6 +1499,9 @@ fi %changelog +* Wed Feb 14 2024 Richard W.M. Jones - 1.37.7-2 +- Fix gcs & S3 plugin requirements + * Sun Feb 11 2024 Richard W.M. Jones - 1.37.7-1 - New upstream development version 1.37.7 - New nbdkit-gcs-plugin for Google Cloud Storage From c2426d55fd553fbee92e689825de6d9cf50e42e2 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 17 Feb 2024 11:00:34 +0000 Subject: [PATCH 178/298] New upstream development version 1.37.8 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 0d6051f..79ae30b 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -57,8 +57,8 @@ %global source_directory 1.37-development Name: nbdkit -Version: 1.37.7 -Release: 2%{?dist} +Version: 1.37.8 +Release: 1%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1499,6 +1499,9 @@ fi %changelog +* Sat Feb 17 2024 Richard W.M. Jones - 1.37.8-1 +- New upstream development version 1.37.8 + * Wed Feb 14 2024 Richard W.M. Jones - 1.37.7-2 - Fix gcs & S3 plugin requirements diff --git a/sources b/sources index e18e411..59b5780 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.37.7.tar.gz) = b219562c00da1acaa6f9e5cd69f8e18971093d12662747551ac141459a43b4e5732e58fea1f47fd9d299968d5bc1295889339ceb3b2f595d36d57ed394c34118 -SHA512 (nbdkit-1.37.7.tar.gz.sig) = 05fdd89f2639f0c1cbd6bf134219a0158a503ef207ccd35eb87f1cf63918bec95a83e0a0a5bc8b57aafea0435c416f4d628bfa53f57fbad4cce1f155a60ae687 +SHA512 (nbdkit-1.37.8.tar.gz) = c8bd2998ef99207a9d5098514774c833ad72e78b26f94319c078c5df8ce87bc694c60046c9ffef8878d65da3fb47b9714786dd0f6a9a9fe63ce87c27d17ed11b +SHA512 (nbdkit-1.37.8.tar.gz.sig) = d4a2355118f2bc332b82e7cff89c0473793f63362327fdaa10c25215ae20e068f64d0fd3531ef11d03af1f21fd63d5f2d28c27ca76a106728e928a3dc53e0296 From d38d28e5e0203df12f84736067f227373096e068 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 17 Feb 2024 11:15:02 +0000 Subject: [PATCH 179/298] +BR bash-completion-devel The bash-completion.pc file moved in Rawhide: $ rpm -qf /usr/share/pkgconfig/bash-completion.pc bash-completion-devel-2.11-15.fc41.noarch (https://src.fedoraproject.org/rpms/bash-completion/c/d1f5dc48c0440cc68efdd519b78fccca416cad94?branch=rawhide) --- nbdkit.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 79ae30b..dd97ea3 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -122,7 +122,7 @@ BuildRequires: rb_libtorrent-devel %if 0%{?have_blkio} BuildRequires: libblkio-devel %endif -BuildRequires: bash-completion +BuildRequires: bash-completion, bash-completion-devel BuildRequires: perl-devel BuildRequires: perl(ExtUtils::Embed) %if 0%{?rhel} == 8 From 1bcb9f8bdba33178b2d5326dafc5506e477d2df2 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 22 Feb 2024 10:51:25 +0000 Subject: [PATCH 180/298] New upstream development version 1.37.9 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index dd97ea3..6b11f84 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -57,7 +57,7 @@ %global source_directory 1.37-development Name: nbdkit -Version: 1.37.8 +Version: 1.37.9 Release: 1%{?dist} Summary: NBD server @@ -1499,6 +1499,9 @@ fi %changelog +* Thu Feb 22 2024 Richard W.M. Jones - 1.37.9-1 +- New upstream development version 1.37.9 + * Sat Feb 17 2024 Richard W.M. Jones - 1.37.8-1 - New upstream development version 1.37.8 diff --git a/sources b/sources index 59b5780..4f880ab 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.37.8.tar.gz) = c8bd2998ef99207a9d5098514774c833ad72e78b26f94319c078c5df8ce87bc694c60046c9ffef8878d65da3fb47b9714786dd0f6a9a9fe63ce87c27d17ed11b -SHA512 (nbdkit-1.37.8.tar.gz.sig) = d4a2355118f2bc332b82e7cff89c0473793f63362327fdaa10c25215ae20e068f64d0fd3531ef11d03af1f21fd63d5f2d28c27ca76a106728e928a3dc53e0296 +SHA512 (nbdkit-1.37.9.tar.gz) = f1d9f2b3ebf18a433e905e8874bc473773a04fd19f530ebcccdd0c3f842b02513979d33d22e14dd3d35a08b36381994c9b0730bb2a87b5030cf4e6f0164301a8 +SHA512 (nbdkit-1.37.9.tar.gz.sig) = 4bfee2977e3d8d2f72fb273f756c2510be33db5a58087a09edaa772f9e28bae734b33cba9dbb2a1e8bd69d470a48db62a017f470676d0c3a99a6b85dbf0c6807 From 5a952a21a25587fbaf133374238fc936f86e1af1 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 4 Mar 2024 18:30:28 +0000 Subject: [PATCH 181/298] New upstream development version 1.37.10 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 6b11f84..7f183b8 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -57,7 +57,7 @@ %global source_directory 1.37-development Name: nbdkit -Version: 1.37.9 +Version: 1.37.10 Release: 1%{?dist} Summary: NBD server @@ -1499,6 +1499,9 @@ fi %changelog +* Mon Mar 04 2024 Richard W.M. Jones - 1.37.10-1 +- New upstream development version 1.37.10 + * Thu Feb 22 2024 Richard W.M. Jones - 1.37.9-1 - New upstream development version 1.37.9 diff --git a/sources b/sources index 4f880ab..caf462b 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.37.9.tar.gz) = f1d9f2b3ebf18a433e905e8874bc473773a04fd19f530ebcccdd0c3f842b02513979d33d22e14dd3d35a08b36381994c9b0730bb2a87b5030cf4e6f0164301a8 -SHA512 (nbdkit-1.37.9.tar.gz.sig) = 4bfee2977e3d8d2f72fb273f756c2510be33db5a58087a09edaa772f9e28bae734b33cba9dbb2a1e8bd69d470a48db62a017f470676d0c3a99a6b85dbf0c6807 +SHA512 (nbdkit-1.37.10.tar.gz) = 81fd05dca2f21b1ac4d1b794f40583f097f4d0fb0d30303da7861ba76a387e6f24da3035ea5c235963f1abcfff198313293be22ee88bdab1dfffd5730ae1dd73 +SHA512 (nbdkit-1.37.10.tar.gz.sig) = 2bd17f45ed1780577f432485ef52efe44f817be4084963f7df57c9bb658d719dfe970c1d6da70a848b48b9649ea29ee0d9957c7d014c6616f814a88fe84c6887 From 24b68458fe706c5f2fb5dcb9f74c9fa4f3fcd61f Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 11 Mar 2024 10:38:28 +0000 Subject: [PATCH 182/298] New upstream development version 1.37.11 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 7f183b8..7bc90b0 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -57,7 +57,7 @@ %global source_directory 1.37-development Name: nbdkit -Version: 1.37.10 +Version: 1.37.11 Release: 1%{?dist} Summary: NBD server @@ -1499,6 +1499,9 @@ fi %changelog +* Mon Mar 11 2024 Richard W.M. Jones - 1.37.11-1 +- New upstream development version 1.37.11 + * Mon Mar 04 2024 Richard W.M. Jones - 1.37.10-1 - New upstream development version 1.37.10 diff --git a/sources b/sources index caf462b..01b517b 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.37.10.tar.gz) = 81fd05dca2f21b1ac4d1b794f40583f097f4d0fb0d30303da7861ba76a387e6f24da3035ea5c235963f1abcfff198313293be22ee88bdab1dfffd5730ae1dd73 -SHA512 (nbdkit-1.37.10.tar.gz.sig) = 2bd17f45ed1780577f432485ef52efe44f817be4084963f7df57c9bb658d719dfe970c1d6da70a848b48b9649ea29ee0d9957c7d014c6616f814a88fe84c6887 +SHA512 (nbdkit-1.37.11.tar.gz) = bbbe40ee970c994b1fbd6ca495e8f178e4c67d710081b07fb89bb9acb86d82dc0f7dbd9e4beb57c6a5d6a851f6206362d82dcda34b199852f8d5dd5e4ad34e33 +SHA512 (nbdkit-1.37.11.tar.gz.sig) = 5ab1fe3eca97b5f95812ff8b49fd55505807aedd581ccd0005f3fb31de135a1b24549fa58f5eb6e67a4cf2cae1f1c20dcfaa916096945114fb7863e3269e22f8 From c1f286012b47977c439168570cee61c397f1e674 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 15 Mar 2024 09:44:47 +0000 Subject: [PATCH 183/298] New upstream development version 1.37.12 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 7bc90b0..afa1fe6 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -57,7 +57,7 @@ %global source_directory 1.37-development Name: nbdkit -Version: 1.37.11 +Version: 1.37.12 Release: 1%{?dist} Summary: NBD server @@ -1499,6 +1499,9 @@ fi %changelog +* Fri Mar 15 2024 Richard W.M. Jones - 1.37.12-1 +- New upstream development version 1.37.12 + * Mon Mar 11 2024 Richard W.M. Jones - 1.37.11-1 - New upstream development version 1.37.11 diff --git a/sources b/sources index 01b517b..5f9b377 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.37.11.tar.gz) = bbbe40ee970c994b1fbd6ca495e8f178e4c67d710081b07fb89bb9acb86d82dc0f7dbd9e4beb57c6a5d6a851f6206362d82dcda34b199852f8d5dd5e4ad34e33 -SHA512 (nbdkit-1.37.11.tar.gz.sig) = 5ab1fe3eca97b5f95812ff8b49fd55505807aedd581ccd0005f3fb31de135a1b24549fa58f5eb6e67a4cf2cae1f1c20dcfaa916096945114fb7863e3269e22f8 +SHA512 (nbdkit-1.37.12.tar.gz) = 56aed08aef7af1162135b5ea51ef1e9f85a32e34488891e4895f10b0476c37e49971f66f1108d3b42f1caab1186a2c0d17fd23cc11f4813413f63a03d3dc0ab1 +SHA512 (nbdkit-1.37.12.tar.gz.sig) = 18fbd0cc4e3ec271db90cae71156088bce0f84a38899b099c3e2b716c9b350b269b6ae6433f76f1780c2acb9601b648466d2cb51d60d6fa0d2e8e638de1d8b21 From d16125b3411faee609bdc1e2e6bd26829a6e4113 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 18 Mar 2024 17:33:56 +0000 Subject: [PATCH 184/298] New upstream development version 1.37.13 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index afa1fe6..fb48b4a 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -57,7 +57,7 @@ %global source_directory 1.37-development Name: nbdkit -Version: 1.37.12 +Version: 1.37.13 Release: 1%{?dist} Summary: NBD server @@ -1499,6 +1499,9 @@ fi %changelog +* Mon Mar 18 2024 Richard W.M. Jones - 1.37.13-1 +- New upstream development version 1.37.13 + * Fri Mar 15 2024 Richard W.M. Jones - 1.37.12-1 - New upstream development version 1.37.12 diff --git a/sources b/sources index 5f9b377..cf752b4 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.37.12.tar.gz) = 56aed08aef7af1162135b5ea51ef1e9f85a32e34488891e4895f10b0476c37e49971f66f1108d3b42f1caab1186a2c0d17fd23cc11f4813413f63a03d3dc0ab1 -SHA512 (nbdkit-1.37.12.tar.gz.sig) = 18fbd0cc4e3ec271db90cae71156088bce0f84a38899b099c3e2b716c9b350b269b6ae6433f76f1780c2acb9601b648466d2cb51d60d6fa0d2e8e638de1d8b21 +SHA512 (nbdkit-1.37.13.tar.gz) = 0b0d4f1ae23f5c3531b39ec4efd8d4cd66caf90a66c1f54378bcd128545478273a363dda9db0b079c9abb0c93ef387f4025bc3ae02f0c23e166169d7d376b313 +SHA512 (nbdkit-1.37.13.tar.gz.sig) = ef76767f88075307eb5cb51cadb0c43c3772424d973a1778afbccc7dfe37d8894a58e7732755fc442bf37f068fd4de58479a02b14f0dc4ff28a5a120da0d5682 From 4591027291fadecdf9494e0787b1153185a4eeda Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 25 Mar 2024 11:22:36 +0000 Subject: [PATCH 185/298] Use %{bash_completions_dir} macro --- nbdkit.spec | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index fb48b4a..6e3d8fa 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -58,7 +58,7 @@ Name: nbdkit Version: 1.37.13 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1466,8 +1466,8 @@ fi %files bash-completion %license LICENSE -%dir %{_datadir}/bash-completion/completions -%{_datadir}/bash-completion/completions/nbdkit +%dir %{bash_completions_dir} +%{bash_completions_dir}/nbdkit %if 0%{?with_selinux} @@ -1499,6 +1499,9 @@ fi %changelog +* Mon Mar 25 2024 Richard W.M. Jones - 1.37.13-2 +- Use %%{bash_completions_dir} macro + * Mon Mar 18 2024 Richard W.M. Jones - 1.37.13-1 - New upstream development version 1.37.13 From 8de2617c9f8b2fad9d47840f5fc017c01a9c0666 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 4 Apr 2024 21:23:56 +0100 Subject: [PATCH 186/298] Rebuild autoconf cruft unconditionally (cherry picked from libnbd commit 11a78d929de957995cf127e70c2762326132a263) --- nbdkit.spec | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 6e3d8fa..7b4b844 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -50,9 +50,6 @@ # If we should verify tarball signature with GPGv2. %global verify_tarball_signature 1 -# If there are patches which touch autotools files, set this to 1. -%global patches_touch_autotools 1 - # The source directory. %global source_directory 1.37-development @@ -92,9 +89,8 @@ Source8: %{modulename}.fc # For applying the patches: BuildRequires: git -%if 0%{patches_touch_autotools} +# For rebuilding autoconf cruft: BuildRequires: autoconf, automake, libtool -%endif BuildRequires: make BuildRequires: gcc, gcc-c++ @@ -771,9 +767,7 @@ development kit for 64 bit versions of Windows. %{gpgverify} --keyring='%{SOURCE2}' --signature='%{SOURCE1}' --data='%{SOURCE0}' %endif %autosetup -p1 -S git -%if 0%{patches_touch_autotools} autoreconf -i -%endif %build From a673158b38238b86d7ab4a0f9b26e6055d0b6770 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 4 Apr 2024 21:29:09 +0100 Subject: [PATCH 187/298] New stable branch version 1.38.0 --- nbdkit.spec | 10 +++++++--- sources | 4 ++-- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 7b4b844..c0778d4 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,11 +51,11 @@ %global verify_tarball_signature 1 # The source directory. -%global source_directory 1.37-development +%global source_directory 1.38-stable Name: nbdkit -Version: 1.37.13 -Release: 2%{?dist} +Version: 1.38.0 +Release: 1%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1493,6 +1493,10 @@ fi %changelog +* Thu Apr 4 2024 Richard W.M. Jones - 1.38.0-1 +- New stable branch version 1.38.0 +- Rebuild autoconf cruft unconditionally. + * Mon Mar 25 2024 Richard W.M. Jones - 1.37.13-2 - Use %%{bash_completions_dir} macro diff --git a/sources b/sources index cf752b4..3b095a3 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.37.13.tar.gz) = 0b0d4f1ae23f5c3531b39ec4efd8d4cd66caf90a66c1f54378bcd128545478273a363dda9db0b079c9abb0c93ef387f4025bc3ae02f0c23e166169d7d376b313 -SHA512 (nbdkit-1.37.13.tar.gz.sig) = ef76767f88075307eb5cb51cadb0c43c3772424d973a1778afbccc7dfe37d8894a58e7732755fc442bf37f068fd4de58479a02b14f0dc4ff28a5a120da0d5682 +SHA512 (nbdkit-1.38.0.tar.gz) = 7817ab29f2c4821237ac9114e820186b6fcbe5658fb702ecd41941fc70ffd060294c3d71fbcb37176f4609d3e25996ea71e20ea58d0aee2c8bf6b4b30254d074 +SHA512 (nbdkit-1.38.0.tar.gz.sig) = e81960962737f57c586bbf4dea9b2f7f208bb7258919ddd808006d4d14582ebd8e6b7d0e9f64ed48176c74c8c6ec00f042060be6a91ac0d8db20a1d936a53b42 From ac48373716cd00ab7c65d19247e42192abb3a1c8 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sun, 7 Apr 2024 21:25:17 +0100 Subject: [PATCH 188/298] New upstream development version 1.39.1 New filters: rotational, spinning --- nbdkit.spec | 16 ++++++++++++++-- sources | 4 ++-- 2 files changed, 16 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index c0778d4..c2d7d3b 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,10 +51,10 @@ %global verify_tarball_signature 1 # The source directory. -%global source_directory 1.38-stable +%global source_directory 1.39-development Name: nbdkit -Version: 1.38.0 +Version: 1.39.0 Release: 1%{?dist} Summary: NBD server @@ -626,8 +626,12 @@ nbdkit-retry-filter Reopen connection on error. nbdkit-retry-request-filter Retry single requests on error. +nbdkit-rotational-filter Set if a plugin is rotational or not. + nbdkit-scan-filter Prefetch data ahead of sequential reads. +nbdkit-spinning-filter Add seek delays to simulate a spinning hard disk. + nbdkit-swab-filter Filter for swapping byte order. nbdkit-tls-fallback-filter TLS protection filter. @@ -1334,7 +1338,9 @@ fi %{_libdir}/%{name}/filters/nbdkit-readonly-filter.so %{_libdir}/%{name}/filters/nbdkit-retry-filter.so %{_libdir}/%{name}/filters/nbdkit-retry-request-filter.so +%{_libdir}/%{name}/filters/nbdkit-rotational-filter.so %{_libdir}/%{name}/filters/nbdkit-scan-filter.so +%{_libdir}/%{name}/filters/nbdkit-spinning-filter.so %{_libdir}/%{name}/filters/nbdkit-swab-filter.so %{_libdir}/%{name}/filters/nbdkit-tls-fallback-filter.so %{_libdir}/%{name}/filters/nbdkit-truncate-filter.so @@ -1375,7 +1381,9 @@ fi %{_mandir}/man1/nbdkit-readonly-filter.1* %{_mandir}/man1/nbdkit-retry-filter.1* %{_mandir}/man1/nbdkit-retry-request-filter.1* +%{_mandir}/man1/nbdkit-rotational-filter.1* %{_mandir}/man1/nbdkit-scan-filter.1* +%{_mandir}/man1/nbdkit-spinning-filter.1* %{_mandir}/man1/nbdkit-swab-filter.1* %{_mandir}/man1/nbdkit-tls-fallback-filter.1* %{_mandir}/man1/nbdkit-truncate-filter.1* @@ -1493,6 +1501,10 @@ fi %changelog +* Sun Apr 7 2024 Richard W.M. Jones - 1.39.1-1 +- New upstream development version 1.39.1 +- New filters: rotational, spinning + * Thu Apr 4 2024 Richard W.M. Jones - 1.38.0-1 - New stable branch version 1.38.0 - Rebuild autoconf cruft unconditionally. diff --git a/sources b/sources index 3b095a3..fb2f146 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.38.0.tar.gz) = 7817ab29f2c4821237ac9114e820186b6fcbe5658fb702ecd41941fc70ffd060294c3d71fbcb37176f4609d3e25996ea71e20ea58d0aee2c8bf6b4b30254d074 -SHA512 (nbdkit-1.38.0.tar.gz.sig) = e81960962737f57c586bbf4dea9b2f7f208bb7258919ddd808006d4d14582ebd8e6b7d0e9f64ed48176c74c8c6ec00f042060be6a91ac0d8db20a1d936a53b42 +SHA512 (nbdkit-1.39.1.tar.gz) = 3dbdce400d5aa88e9b35d19ed7e90d9a731a05d6fa21a90130dd86402dd2774ae5bbf7cc1267dcd55ec9e34b93f32e3743b1325de86f4290e29ce5d7711dfb06 +SHA512 (nbdkit-1.39.1.tar.gz.sig) = c63922e8955159bbba2758dbe34e149f4c4ab12213c05a447185aa8a26883f19439227e7fb1c706de33fae898fe0a70335f71df8c201d16830f998c293c93ad0 From e547291dc25ebbee6f7e12f15b48c16c9d99012b Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sun, 7 Apr 2024 21:26:10 +0100 Subject: [PATCH 189/298] Fix version (1.39.0 -> 1.39.1) --- nbdkit.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index c2d7d3b..edc8718 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.39-development Name: nbdkit -Version: 1.39.0 +Version: 1.39.1 Release: 1%{?dist} Summary: NBD server From 905a24f8a55ef9fb8ff3bac8ffc3961d63aa9753 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 9 Apr 2024 16:58:13 +0100 Subject: [PATCH 190/298] New upstream development version 1.39.2 Add new nbdkit_*.3 man pages (plugin developer documentation) --- nbdkit.spec | 7 ++++++- sources | 4 ++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index edc8718..aef6d17 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.39-development Name: nbdkit -Version: 1.39.1 +Version: 1.39.2 Release: 1%{?dist} Summary: NBD server @@ -1456,6 +1456,7 @@ fi %{_includedir}/nbd-protocol.h %{_mandir}/man3/nbdkit-filter.3* %{_mandir}/man3/nbdkit-plugin.3* +%{_mandir}/man3/nbdkit_*.3* %{_mandir}/man1/nbdkit-release-notes-1.*.1* %{_libdir}/pkgconfig/nbdkit.pc @@ -1501,6 +1502,10 @@ fi %changelog +* Tue Apr 9 2024 Richard W.M. Jones - 1.39.2-1 +- New upstream development version 1.39.2 +- Add new nbdkit_*.3 man pages (plugin developer documentation) + * Sun Apr 7 2024 Richard W.M. Jones - 1.39.1-1 - New upstream development version 1.39.1 - New filters: rotational, spinning diff --git a/sources b/sources index fb2f146..a889b86 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.39.1.tar.gz) = 3dbdce400d5aa88e9b35d19ed7e90d9a731a05d6fa21a90130dd86402dd2774ae5bbf7cc1267dcd55ec9e34b93f32e3743b1325de86f4290e29ce5d7711dfb06 -SHA512 (nbdkit-1.39.1.tar.gz.sig) = c63922e8955159bbba2758dbe34e149f4c4ab12213c05a447185aa8a26883f19439227e7fb1c706de33fae898fe0a70335f71df8c201d16830f998c293c93ad0 +SHA512 (nbdkit-1.39.2.tar.gz) = 695024119518ebc686067d0ab4d35a99b728a5c4f40f1174e47078d1b230278c8ea534357341c54428e92bda2410b4ffe3a195ea488f2bf7dc71a693417d3632 +SHA512 (nbdkit-1.39.2.tar.gz.sig) = 58f092bed3e6835f5c1b26ee9747caecd7de9d084c680ebc7e1e3007a831a275ffcda22d9badda5d976cd6a55b445fe3833f9c669b2627de5baab982b0e6bcf7 From 4ae765cff3dd9dcf469064a03dd88abfeead0284 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 11 Apr 2024 09:07:43 +0100 Subject: [PATCH 191/298] New upstream development version 1.39.3 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index aef6d17..9cbc9f1 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.39-development Name: nbdkit -Version: 1.39.2 +Version: 1.39.3 Release: 1%{?dist} Summary: NBD server @@ -1502,6 +1502,9 @@ fi %changelog +* Thu Apr 11 2024 Richard W.M. Jones - 1.39.3-1 +- New upstream development version 1.39.3 + * Tue Apr 9 2024 Richard W.M. Jones - 1.39.2-1 - New upstream development version 1.39.2 - Add new nbdkit_*.3 man pages (plugin developer documentation) diff --git a/sources b/sources index a889b86..9ba7423 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.39.2.tar.gz) = 695024119518ebc686067d0ab4d35a99b728a5c4f40f1174e47078d1b230278c8ea534357341c54428e92bda2410b4ffe3a195ea488f2bf7dc71a693417d3632 -SHA512 (nbdkit-1.39.2.tar.gz.sig) = 58f092bed3e6835f5c1b26ee9747caecd7de9d084c680ebc7e1e3007a831a275ffcda22d9badda5d976cd6a55b445fe3833f9c669b2627de5baab982b0e6bcf7 +SHA512 (nbdkit-1.39.3.tar.gz) = 22083eb75bed70c47f381e8587eb059e8147acb4c8cf6e42c9ab4bff64e81fa589f6c92ef3ff2087be941c469cb141931e76cc4f815370ecda1568366c2269c3 +SHA512 (nbdkit-1.39.3.tar.gz.sig) = ed1e7932f8f87b255ff14516c56f8bce9c59f698a376af9afb9b0154d4c11db48334110c7d3514e486b0c820515f4b7751eeebbf321099e165375fabeeaf4383 From 61064b8fd1d8f3f4619188deaec01e6daafbd9cc Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 12 Apr 2024 11:27:10 +0100 Subject: [PATCH 192/298] gating: Match any version of RHEL --- gating.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gating.yaml b/gating.yaml index 648918d..2c7ed80 100755 --- a/gating.yaml +++ b/gating.yaml @@ -1,6 +1,6 @@ --- !Policy product_versions: - - rhel-9 + - rhel-* decision_context: osci_compose_gate rules: - !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional} From 86fa43d05eb96c722fa2e79ce92edf5cdf0ee997 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Sat, 13 Apr 2024 13:47:02 +0200 Subject: [PATCH 193/298] Do not use macros is file path Requires This is in preparation for https://fedoraproject.org/wiki/Changes/Unify_bin_and_sbin. When the package is rebuilt with a different %_sbindir (in particular %_sbindir==%_bindir), those BuildRequires and Requires will stop working with the providers of those requires that were built with the old definition. We don't want to force a transition of all packages at the same time, so instead use a fixed path. (The providers, when they are updated to the new path, will retain a compat Provides for the old path.) The tests fail in test-tar-xz-curl, but this doesn't seem to be related to the path changes, but instead something about fs internals. --- nbdkit.spec | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 9cbc9f1..d420edf 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -143,25 +143,25 @@ BuildRequires: gnupg2 %endif # Only for running the test suite: -BuildRequires: %{_bindir}/bc -BuildRequires: %{_bindir}/certtool -BuildRequires: %{_bindir}/cut +BuildRequires: /usr/bin/bc +BuildRequires: /usr/bin/certtool +BuildRequires: /usr/bin/cut BuildRequires: expect -BuildRequires: %{_bindir}/hexdump -BuildRequires: %{_sbindir}/ip +BuildRequires: /usr/bin/hexdump +BuildRequires: /usr/sbin/ip BuildRequires: jq -BuildRequires: %{_bindir}/nbdcopy -BuildRequires: %{_bindir}/nbdinfo -BuildRequires: %{_bindir}/nbdsh -BuildRequires: %{_bindir}/qemu-img -BuildRequires: %{_bindir}/qemu-io -BuildRequires: %{_bindir}/qemu-nbd -BuildRequires: %{_sbindir}/sfdisk +BuildRequires: /usr/bin/nbdcopy +BuildRequires: /usr/bin/nbdinfo +BuildRequires: /usr/bin/nbdsh +BuildRequires: /usr/bin/qemu-img +BuildRequires: /usr/bin/qemu-io +BuildRequires: /usr/bin/qemu-nbd +BuildRequires: /usr/sbin/sfdisk %if !0%{?rhel} -BuildRequires: %{_bindir}/socat +BuildRequires: /usr/bin/socat %endif -BuildRequires: %{_sbindir}/ss -BuildRequires: %{_bindir}/stat +BuildRequires: /usr/sbin/ss +BuildRequires: /usr/bin/stat # This package has RPM rules that create the automatic Provides: for # nbdkit plugins and filters. This means nbdkit build depends on @@ -316,7 +316,7 @@ for %{name}. Summary: Write small inline C plugins and scripts for %{name} Requires: %{name}-server%{?_isa} = %{version}-%{release} Requires: gcc -Requires: %{_bindir}/cat +Requires: /usr/bin/cat %description cc-plugin This package contains support for writing inline C plugins and scripts From 9e93f76eacda9b832b321a4b4ae1a13c1038ac3c Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 20 Apr 2024 14:07:29 +0100 Subject: [PATCH 194/298] New upstream development version 1.39.4 Remove the Ruby plugin. --- nbdkit.spec | 34 ++++++---------------------------- sources | 4 ++-- 2 files changed, 8 insertions(+), 30 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index d420edf..fa682f6 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.39-development Name: nbdkit -Version: 1.39.3 +Version: 1.39.4 Release: 1%{?dist} Summary: NBD server @@ -134,7 +134,6 @@ BuildRequires: python3-boto3 BuildRequires: ocaml >= 4.03 BuildRequires: ocaml-ocamldoc %endif -BuildRequires: ruby-devel BuildRequires: tcl-devel BuildRequires: lua-devel %endif @@ -463,16 +462,6 @@ Requires: %{name}-server%{?_isa} = %{version}-%{release} This package lets you write Python 3 plugins for %{name}. -%if !0%{?rhel} -%package ruby-plugin -Summary: Ruby plugin for %{name} -Requires: %{name}-server%{?_isa} = %{version}-%{release} - -%description ruby-plugin -This package lets you write Ruby plugins for %{name}. -%endif - - %if !0%{?rhel} # In theory this is noarch, but because plugins are placed in _libdir # which varies across architectures, RPM does not allow this. @@ -814,7 +803,6 @@ export PYTHON=%{__python3} %if !0%{?rhel} --enable-lua \ --enable-perl \ - --enable-ruby \ --enable-tcl \ --enable-torrent \ --with-ext2 \ @@ -823,7 +811,6 @@ export PYTHON=%{__python3} %else --disable-lua \ --disable-perl \ - --disable-ruby \ --disable-tcl \ --disable-torrent \ --without-ext2 \ @@ -888,7 +875,6 @@ popd --disable-ocaml \ --disable-perl \ --disable-python \ - --disable-ruby \ --disable-rust \ --disable-tcl \ --disable-torrent \ @@ -1239,15 +1225,6 @@ fi %{_mandir}/man3/nbdkit-python-plugin.3* -%if !0%{?rhel} -%files ruby-plugin -%doc README.md -%license LICENSE -%{_libdir}/%{name}/plugins/nbdkit-ruby-plugin.so -%{_mandir}/man3/nbdkit-ruby-plugin.3* -%endif - - %if !0%{?rhel} %files S3-plugin %doc README.md @@ -1442,10 +1419,7 @@ fi %doc plugins/perl/example.pl %endif %doc plugins/python/examples/*.py -%if !0%{?rhel} -%doc plugins/ruby/example.rb -%endif -%doc plugins/sh/example.sh +%doc plugins/sh/examples/*.sh %if !0%{?rhel} %doc plugins/tcl/example.tcl %endif @@ -1502,6 +1476,10 @@ fi %changelog +* Sat Apr 20 2024 Richard W.M. Jones - 1.39.4-1 +- New upstream development version 1.39.4 +- Remove the Ruby plugin. + * Thu Apr 11 2024 Richard W.M. Jones - 1.39.3-1 - New upstream development version 1.39.3 diff --git a/sources b/sources index 9ba7423..02d68e0 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.39.3.tar.gz) = 22083eb75bed70c47f381e8587eb059e8147acb4c8cf6e42c9ab4bff64e81fa589f6c92ef3ff2087be941c469cb141931e76cc4f815370ecda1568366c2269c3 -SHA512 (nbdkit-1.39.3.tar.gz.sig) = ed1e7932f8f87b255ff14516c56f8bce9c59f698a376af9afb9b0154d4c11db48334110c7d3514e486b0c820515f4b7751eeebbf321099e165375fabeeaf4383 +SHA512 (nbdkit-1.39.4.tar.gz) = 452d04e6062bbe28ce9cdcf2392ceceeac5b3c02d25c08092994b7aa73880622aa25f53df8a346f1719397608ec818fd7a960fadbee97e71e5e9e035baffe29a +SHA512 (nbdkit-1.39.4.tar.gz.sig) = faeffa8bdc2837d4ea48ca6d61d7a467af4c32da175c830a7d50b24a386d70c0738782d4ed082a65e0cbba10b510c36401d5a397385e89f264b72b1393347847 From 1bac5f3ba9737d44686e7da7e14b95de424304cf Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 20 Apr 2024 14:50:34 +0100 Subject: [PATCH 195/298] Fix tests/test-shebang-crlf.sh --- ...ng-crlf.sh-Fix-location-of-shebang-c.patch | 36 +++++++++++++++++++ nbdkit.spec | 3 ++ 2 files changed, 39 insertions(+) create mode 100644 0001-tests-test-shebang-crlf.sh-Fix-location-of-shebang-c.patch diff --git a/0001-tests-test-shebang-crlf.sh-Fix-location-of-shebang-c.patch b/0001-tests-test-shebang-crlf.sh-Fix-location-of-shebang-c.patch new file mode 100644 index 0000000..d553c88 --- /dev/null +++ b/0001-tests-test-shebang-crlf.sh-Fix-location-of-shebang-c.patch @@ -0,0 +1,36 @@ +From aade881287fbf5c7ef3539d2f01e0d6eea94a8a9 Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Sat, 20 Apr 2024 14:45:16 +0100 +Subject: [PATCH] tests/test-shebang-crlf.sh: Fix location of shebang-crlf.py + +Commit 5d01b47d7a ("tests: Add a regression test for DOS line endings +in shebang plugins") requires a test file shebang-crlf.py which is +generated in the Makefile. Generating this file was a late addition +to the commit, but this late change broke srcdir != builddir builds, +since the file is now in the builddir not the srcdir. + +The error seen was: + +../../tests/test-shebang-crlf.sh: could not locate /builddir/build/BUILD/nbdkit-1.39.4/build_native/../tests/shebang-crlf.py or not executable + +Fixes: commit 5d01b47d7a2b1fc92fa516c074bd4deadf1a1e7a +--- + tests/test-shebang-crlf.sh | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tests/test-shebang-crlf.sh b/tests/test-shebang-crlf.sh +index c11d5c0b89..13361eb050 100755 +--- a/tests/test-shebang-crlf.sh ++++ b/tests/test-shebang-crlf.sh +@@ -44,7 +44,7 @@ source ./functions.sh + set -e + set -x + +-script=$abs_top_srcdir/tests/shebang-crlf.py ++script=./shebang-crlf.py + if test ! -x "$script"; then + echo "$0: could not locate $script or not executable" + exit 1 +-- +2.44.0 + diff --git a/nbdkit.spec b/nbdkit.spec index fa682f6..4cc8ec1 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -86,6 +86,9 @@ Source6: %{modulename}.te Source7: %{modulename}.if Source8: %{modulename}.fc +# Fix tests, upstream in 1.39.5 / 1.38.2 +Patch: 0001-tests-test-shebang-crlf.sh-Fix-location-of-shebang-c.patch + # For applying the patches: BuildRequires: git From b709bbeebeb5811131500cf1067226853f41c190 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 7 May 2024 15:59:29 +0100 Subject: [PATCH 196/298] New upstream development version 1.39.5 --- ...ng-crlf.sh-Fix-location-of-shebang-c.patch | 36 ------------------- nbdkit.spec | 8 ++--- sources | 4 +-- 3 files changed, 6 insertions(+), 42 deletions(-) delete mode 100644 0001-tests-test-shebang-crlf.sh-Fix-location-of-shebang-c.patch diff --git a/0001-tests-test-shebang-crlf.sh-Fix-location-of-shebang-c.patch b/0001-tests-test-shebang-crlf.sh-Fix-location-of-shebang-c.patch deleted file mode 100644 index d553c88..0000000 --- a/0001-tests-test-shebang-crlf.sh-Fix-location-of-shebang-c.patch +++ /dev/null @@ -1,36 +0,0 @@ -From aade881287fbf5c7ef3539d2f01e0d6eea94a8a9 Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Sat, 20 Apr 2024 14:45:16 +0100 -Subject: [PATCH] tests/test-shebang-crlf.sh: Fix location of shebang-crlf.py - -Commit 5d01b47d7a ("tests: Add a regression test for DOS line endings -in shebang plugins") requires a test file shebang-crlf.py which is -generated in the Makefile. Generating this file was a late addition -to the commit, but this late change broke srcdir != builddir builds, -since the file is now in the builddir not the srcdir. - -The error seen was: - -../../tests/test-shebang-crlf.sh: could not locate /builddir/build/BUILD/nbdkit-1.39.4/build_native/../tests/shebang-crlf.py or not executable - -Fixes: commit 5d01b47d7a2b1fc92fa516c074bd4deadf1a1e7a ---- - tests/test-shebang-crlf.sh | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/tests/test-shebang-crlf.sh b/tests/test-shebang-crlf.sh -index c11d5c0b89..13361eb050 100755 ---- a/tests/test-shebang-crlf.sh -+++ b/tests/test-shebang-crlf.sh -@@ -44,7 +44,7 @@ source ./functions.sh - set -e - set -x - --script=$abs_top_srcdir/tests/shebang-crlf.py -+script=./shebang-crlf.py - if test ! -x "$script"; then - echo "$0: could not locate $script or not executable" - exit 1 --- -2.44.0 - diff --git a/nbdkit.spec b/nbdkit.spec index 4cc8ec1..7373235 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.39-development Name: nbdkit -Version: 1.39.4 +Version: 1.39.5 Release: 1%{?dist} Summary: NBD server @@ -86,9 +86,6 @@ Source6: %{modulename}.te Source7: %{modulename}.if Source8: %{modulename}.fc -# Fix tests, upstream in 1.39.5 / 1.38.2 -Patch: 0001-tests-test-shebang-crlf.sh-Fix-location-of-shebang-c.patch - # For applying the patches: BuildRequires: git @@ -1479,6 +1476,9 @@ fi %changelog +* Tue May 7 2024 Richard W.M. Jones - 1.39.5-1 +- New upstream development version 1.39.5 + * Sat Apr 20 2024 Richard W.M. Jones - 1.39.4-1 - New upstream development version 1.39.4 - Remove the Ruby plugin. diff --git a/sources b/sources index 02d68e0..a4bdbf4 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.39.4.tar.gz) = 452d04e6062bbe28ce9cdcf2392ceceeac5b3c02d25c08092994b7aa73880622aa25f53df8a346f1719397608ec818fd7a960fadbee97e71e5e9e035baffe29a -SHA512 (nbdkit-1.39.4.tar.gz.sig) = faeffa8bdc2837d4ea48ca6d61d7a467af4c32da175c830a7d50b24a386d70c0738782d4ed082a65e0cbba10b510c36401d5a397385e89f264b72b1393347847 +SHA512 (nbdkit-1.39.5.tar.gz) = db02e375fdddef332b1c6eb5f4f90fc8905ee62adae67774853dcdb0d438a06bdddded650e979709399bee316735f730921577142b68253d59492c12607cd0c9 +SHA512 (nbdkit-1.39.5.tar.gz.sig) = d39e5bddf3a099674838af18c747f364fb1195dd4a51d42e4340bda3c848fd5f9404d1b3ecaa8b963642b6ac2e2380cb8451b0f86218df44f3f5c8740219d2a7 From 7bfa177607e7aca939c8b262bb5020035c692a7b Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 16 May 2024 15:31:25 +0100 Subject: [PATCH 197/298] New upstream development version 1.39.6 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 7373235..50cb129 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.39-development Name: nbdkit -Version: 1.39.5 +Version: 1.39.6 Release: 1%{?dist} Summary: NBD server @@ -1476,6 +1476,9 @@ fi %changelog +* Thu May 16 2024 Richard W.M. Jones - 1.39.6-1 +- New upstream development version 1.39.6 + * Tue May 7 2024 Richard W.M. Jones - 1.39.5-1 - New upstream development version 1.39.5 diff --git a/sources b/sources index a4bdbf4..27a222e 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.39.5.tar.gz) = db02e375fdddef332b1c6eb5f4f90fc8905ee62adae67774853dcdb0d438a06bdddded650e979709399bee316735f730921577142b68253d59492c12607cd0c9 -SHA512 (nbdkit-1.39.5.tar.gz.sig) = d39e5bddf3a099674838af18c747f364fb1195dd4a51d42e4340bda3c848fd5f9404d1b3ecaa8b963642b6ac2e2380cb8451b0f86218df44f3f5c8740219d2a7 +SHA512 (nbdkit-1.39.6.tar.gz) = ac4f8e4617c4b96162b506b8757b088eb7b4e09532fba88b94e86899b348ff818689dda2b12c8a3d41364db8edb93be5fac923b898ec6b4fb280a490b6af306a +SHA512 (nbdkit-1.39.6.tar.gz.sig) = 7f5125eb3de77ba0bf9e7a05fc20d5e44b87f07e2f719f0f972432dc448ba5f0a8ba8ff485e5def75150bc17c96ea9395337347f22a819e6e9b45a8b8a472009 From 33f8238699b6aa2525d8cc2832605ec0c28f2d3b Mon Sep 17 00:00:00 2001 From: Adam Williamson Date: Thu, 16 May 2024 23:56:15 -0700 Subject: [PATCH 198/298] Rebuild with fixed SELinux macros --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 50cb129..b91144d 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,7 +55,7 @@ Name: nbdkit Version: 1.39.6 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1476,6 +1476,9 @@ fi %changelog +* Fri May 17 2024 Adam Williamson - 1.39.6-2 +- Rebuild with fixed SELinux macros + * Thu May 16 2024 Richard W.M. Jones - 1.39.6-1 - New upstream development version 1.39.6 From a8d8c230c98e6f25a675a167a51730c03b2dc8c5 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 28 May 2024 14:07:55 +0100 Subject: [PATCH 199/298] New upstream development version 1.39.7 Add nbdkit-bzip2-filter subpackage. --- nbdkit.spec | 23 +++++++++++++++++++++-- sources | 4 ++-- 2 files changed, 23 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index b91144d..d87beab 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,8 +54,8 @@ %global source_directory 1.39-development Name: nbdkit -Version: 1.39.6 -Release: 2%{?dist} +Version: 1.39.7 +Release: 1%{?dist} Summary: NBD server License: BSD-3-Clause @@ -628,6 +628,14 @@ nbdkit-tls-fallback-filter TLS protection filter. nbdkit-truncate-filter Truncate, expand, round up or round down size. +%package bzip2-filter +Summary: BZip2 filter for %{name} +Requires: %{name}-server%{?_isa} = %{version}-%{release} + +%description bzip2-filter +This package is a bzip2 filter for %{name}. + + %if !0%{?rhel} %package ext2-filter Summary: ext2, ext3 and ext4 filesystem support for %{name} @@ -1366,6 +1374,13 @@ fi %{_mandir}/man1/nbdkit-truncate-filter.1* +%files bzip2-filter +%doc README.md +%license LICENSE +%{_libdir}/%{name}/filters/nbdkit-bzip2-filter.so +%{_mandir}/man1/nbdkit-bzip2-filter.1* + + %if !0%{?rhel} %files ext2-filter %doc README.md @@ -1476,6 +1491,10 @@ fi %changelog +* Tue May 28 2024 Richard W.M. Jones - 1.39.7-1 +- New upstream development version 1.39.7 +- Add nbdkit-bzip2-filter subpackage. + * Fri May 17 2024 Adam Williamson - 1.39.6-2 - Rebuild with fixed SELinux macros diff --git a/sources b/sources index 27a222e..f0d9842 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.39.6.tar.gz) = ac4f8e4617c4b96162b506b8757b088eb7b4e09532fba88b94e86899b348ff818689dda2b12c8a3d41364db8edb93be5fac923b898ec6b4fb280a490b6af306a -SHA512 (nbdkit-1.39.6.tar.gz.sig) = 7f5125eb3de77ba0bf9e7a05fc20d5e44b87f07e2f719f0f972432dc448ba5f0a8ba8ff485e5def75150bc17c96ea9395337347f22a819e6e9b45a8b8a472009 +SHA512 (nbdkit-1.39.7.tar.gz) = 4d964c5c945cecf915453071212bf17ef9b64c3cadc24076f58e636db2293d7e1a0a8499ad5420ac6242ea0f0e4ac548960c4c28ecf05c245ef9ca4096e68024 +SHA512 (nbdkit-1.39.7.tar.gz.sig) = 4a7d2b0319ad32a1f99769534eeca13cc73dd1b4e6e200fde58cfc1bcd02724ea7de8d2c66223bb0a16055e07c403f0aa38cbbedbe7c4bae09bca3d18d3eef6d From f6900c557d9b3ac7745061d798196c8936a40b45 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 28 May 2024 14:40:19 +0100 Subject: [PATCH 200/298] +BR gzip2-devel --- nbdkit.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/nbdkit.spec b/nbdkit.spec index d87beab..77c250a 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -106,6 +106,7 @@ BuildRequires: zlib-devel %if !0%{?rhel} BuildRequires: zlib-ng-devel %endif +BuildRequires: bzip2-devel BuildRequires: libzstd-devel BuildRequires: libcurl-devel BuildRequires: libnbd-devel >= 1.3.11 From 0729aaf2568f8bbf7bf177b37b1187b1ed837a33 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 28 May 2024 15:23:50 +0100 Subject: [PATCH 201/298] Prefer BR pkgconfig(foo) instead of BR foo-devel. https://docs.fedoraproject.org/en-US/packaging-guidelines/PkgConfigBuildRequires/ --- nbdkit.spec | 41 ++++++++++++++++++++++------------------- 1 file changed, 22 insertions(+), 19 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 77c250a..c78170a 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,7 +55,7 @@ Name: nbdkit Version: 1.39.7 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD-3-Clause @@ -95,29 +95,31 @@ BuildRequires: autoconf, automake, libtool BuildRequires: make BuildRequires: gcc, gcc-c++ BuildRequires: %{_bindir}/pod2man -BuildRequires: gnutls-devel -BuildRequires: libselinux-devel +BuildRequires: pkgconfig(gnutls) +BuildRequires: pkgconfig(libselinux) %if !0%{?rhel} && 0%{?have_libguestfs} -BuildRequires: libguestfs-devel +BuildRequires: pkgconfig(libguestfs) %endif -BuildRequires: libvirt-devel -BuildRequires: xz-devel -BuildRequires: zlib-devel +BuildRequires: pkgconfig(libvirt) +BuildRequires: pkgconfig(liblzma) +BuildRequires: pkgconfig(zlib) %if !0%{?rhel} -BuildRequires: zlib-ng-devel +BuildRequires: pkgconfig(zlib-ng) %endif -BuildRequires: bzip2-devel -BuildRequires: libzstd-devel -BuildRequires: libcurl-devel -BuildRequires: libnbd-devel >= 1.3.11 -BuildRequires: libssh-devel -BuildRequires: e2fsprogs, e2fsprogs-devel +BuildRequires: pkgconfig(bzip2) +BuildRequires: pkgconfig(libzstd) +BuildRequires: pkgconfig(libcurl) +BuildRequires: pkgconfig(libnbd) +BuildRequires: pkgconfig(libssh) +BuildRequires: e2fsprogs +BuildRequires: pkgconfig(ext2fs) +BuildRequires: pkgconfig(com_err) %if !0%{?rhel} BuildRequires: xorriso -BuildRequires: rb_libtorrent-devel +BuildRequires: pkgconfig(libtorrent-rasterbar) %endif %if 0%{?have_blkio} -BuildRequires: libblkio-devel +BuildRequires: pkgconfig(blkio) %endif BuildRequires: bash-completion, bash-completion-devel BuildRequires: perl-devel @@ -135,8 +137,8 @@ BuildRequires: python3-boto3 BuildRequires: ocaml >= 4.03 BuildRequires: ocaml-ocamldoc %endif -BuildRequires: tcl-devel -BuildRequires: lua-devel +BuildRequires: pkgconfig(tcl) +BuildRequires: pkgconfig(lua) %endif %if 0%{verify_tarball_signature} BuildRequires: gnupg2 @@ -1492,9 +1494,10 @@ fi %changelog -* Tue May 28 2024 Richard W.M. Jones - 1.39.7-1 +* Tue May 28 2024 Richard W.M. Jones - 1.39.7-2 - New upstream development version 1.39.7 - Add nbdkit-bzip2-filter subpackage. +- Prefer BR pkgconfig(foo) instead of BR foo-devel. * Fri May 17 2024 Adam Williamson - 1.39.6-2 - Rebuild with fixed SELinux macros From 965f855452a5f598ae9da801d17de3d26c4db14a Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 29 May 2024 21:31:57 +0100 Subject: [PATCH 202/298] OCaml 5.2.0 for Fedora 41 --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index c78170a..8f5ef25 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,7 +55,7 @@ Name: nbdkit Version: 1.39.7 -Release: 2%{?dist} +Release: 3%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1494,6 +1494,9 @@ fi %changelog +* Wed May 29 2024 Richard W.M. Jones - 1.39.7-3 +- OCaml 5.2.0 for Fedora 41 + * Tue May 28 2024 Richard W.M. Jones - 1.39.7-2 - New upstream development version 1.39.7 - Add nbdkit-bzip2-filter subpackage. From 32fc4734fe8258d8bd197352c730ac17e1422a9c Mon Sep 17 00:00:00 2001 From: Python Maint Date: Sat, 8 Jun 2024 22:30:25 +0200 Subject: [PATCH 203/298] Rebuilt for Python 3.13 --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 8f5ef25..cdde39d 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,7 +55,7 @@ Name: nbdkit Version: 1.39.7 -Release: 3%{?dist} +Release: 4%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1494,6 +1494,9 @@ fi %changelog +* Sat Jun 08 2024 Python Maint - 1.39.7-4 +- Rebuilt for Python 3.13 + * Wed May 29 2024 Richard W.M. Jones - 1.39.7-3 - OCaml 5.2.0 for Fedora 41 From 3ecbc163b2618c4af0f88d28748ca66807797dec Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Wed, 12 Jun 2024 12:47:45 +0200 Subject: [PATCH 204/298] Perl 5.40 rebuild --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index cdde39d..78147b1 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,7 +55,7 @@ Name: nbdkit Version: 1.39.7 -Release: 4%{?dist} +Release: 5%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1494,6 +1494,9 @@ fi %changelog +* Wed Jun 12 2024 Jitka Plesnikova - 1.39.7-5 +- Perl 5.40 rebuild + * Sat Jun 08 2024 Python Maint - 1.39.7-4 - Rebuilt for Python 3.13 From 44d5aed5b985ca178abbf2cc8e3b8ada78e3a1f6 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 19 Jun 2024 12:08:33 +0100 Subject: [PATCH 205/298] Add BR glibc-utils for libc_malloc_debug.so.0 --- nbdkit.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/nbdkit.spec b/nbdkit.spec index 78147b1..3aed95a 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -149,6 +149,7 @@ BuildRequires: /usr/bin/bc BuildRequires: /usr/bin/certtool BuildRequires: /usr/bin/cut BuildRequires: expect +BuildRequires: glibc-utils BuildRequires: /usr/bin/hexdump BuildRequires: /usr/sbin/ip BuildRequires: jq From 2340ca89b77d49f4d67c414e8f7b209f80042ea5 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 19 Jun 2024 12:28:21 +0100 Subject: [PATCH 206/298] OCaml 5.2.0 ppc64le fix --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 3aed95a..1a81679 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,7 +55,7 @@ Name: nbdkit Version: 1.39.7 -Release: 5%{?dist} +Release: 6%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1495,6 +1495,9 @@ fi %changelog +* Wed Jun 19 2024 Richard W.M. Jones - 1.39.7-6 +- OCaml 5.2.0 ppc64le fix + * Wed Jun 12 2024 Jitka Plesnikova - 1.39.7-5 - Perl 5.40 rebuild From c41033dd8816f84cd5ba6c69c5bd48495c0a258d Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 27 Jun 2024 15:28:12 +0100 Subject: [PATCH 207/298] New upstream development version 1.39.8 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 1a81679..b42d7bf 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,8 +54,8 @@ %global source_directory 1.39-development Name: nbdkit -Version: 1.39.7 -Release: 6%{?dist} +Version: 1.39.8 +Release: 1%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1495,6 +1495,9 @@ fi %changelog +* Thu Jun 27 2024 Richard W.M. Jones - 1.39.8-1 +- New upstream development version 1.39.8 + * Wed Jun 19 2024 Richard W.M. Jones - 1.39.7-6 - OCaml 5.2.0 ppc64le fix diff --git a/sources b/sources index f0d9842..2bfc3b3 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.39.7.tar.gz) = 4d964c5c945cecf915453071212bf17ef9b64c3cadc24076f58e636db2293d7e1a0a8499ad5420ac6242ea0f0e4ac548960c4c28ecf05c245ef9ca4096e68024 -SHA512 (nbdkit-1.39.7.tar.gz.sig) = 4a7d2b0319ad32a1f99769534eeca13cc73dd1b4e6e200fde58cfc1bcd02724ea7de8d2c66223bb0a16055e07c403f0aa38cbbedbe7c4bae09bca3d18d3eef6d +SHA512 (nbdkit-1.39.8.tar.gz) = 33145bf1ec95ec07f384049cb80f41d80415cbb909301e007bd94e708590c099af381c292f7322b85fa1a721241edd1c635810595e4fba704a706edb815afa6b +SHA512 (nbdkit-1.39.8.tar.gz.sig) = c6abd26a8e978f170bcafc0b5a8150e23a7e1fdabec3379361e4742d1e10251d397880c60127db0731c448ef2dd0652e5dab8ad36ee3e172ea642e28721e3785 From 02104ecdeeee3166f8a2b184a9e69879eb7f3049 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Tue, 9 Jul 2024 13:38:40 +0200 Subject: [PATCH 208/298] Rebuilt for the bin-sbin merge https://fedoraproject.org/wiki/Changes/Unify_bin_and_sbin --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index b42d7bf..640cb77 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,7 +55,7 @@ Name: nbdkit Version: 1.39.8 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1495,6 +1495,9 @@ fi %changelog +* Tue Jul 09 2024 Zbigniew Jędrzejewski-Szmek - 1.39.8-2 +- Rebuilt for the bin-sbin merge + * Thu Jun 27 2024 Richard W.M. Jones - 1.39.8-1 - New upstream development version 1.39.8 From 6b18b74749efbe1f618ea4bc010b56277157b0ac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Tue, 9 Jul 2024 14:35:09 +0200 Subject: [PATCH 209/298] Pull in openssl-devel-engine to fix build --- nbdkit.spec | 3 +++ 1 file changed, 3 insertions(+) diff --git a/nbdkit.spec b/nbdkit.spec index 640cb77..08f1280 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -140,6 +140,9 @@ BuildRequires: ocaml-ocamldoc BuildRequires: pkgconfig(tcl) BuildRequires: pkgconfig(lua) %endif +%if 0%{?fedora} >= 41 +BuildRequires: openssl-devel-engine +%endif %if 0%{verify_tarball_signature} BuildRequires: gnupg2 %endif From 9ece3dd175a962b330a9ea0e1afd0955f769bc23 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 9 Jul 2024 22:10:38 +0100 Subject: [PATCH 210/298] New upstream development version 1.39.9 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 08f1280..4644eae 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,8 +54,8 @@ %global source_directory 1.39-development Name: nbdkit -Version: 1.39.8 -Release: 2%{?dist} +Version: 1.39.9 +Release: 1%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1498,6 +1498,9 @@ fi %changelog +* Tue Jul 09 2024 Richard W.M. Jones - 1.39.9-1 +- New upstream development version 1.39.9 + * Tue Jul 09 2024 Zbigniew Jędrzejewski-Szmek - 1.39.8-2 - Rebuilt for the bin-sbin merge diff --git a/sources b/sources index 2bfc3b3..94139bf 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.39.8.tar.gz) = 33145bf1ec95ec07f384049cb80f41d80415cbb909301e007bd94e708590c099af381c292f7322b85fa1a721241edd1c635810595e4fba704a706edb815afa6b -SHA512 (nbdkit-1.39.8.tar.gz.sig) = c6abd26a8e978f170bcafc0b5a8150e23a7e1fdabec3379361e4742d1e10251d397880c60127db0731c448ef2dd0652e5dab8ad36ee3e172ea642e28721e3785 +SHA512 (nbdkit-1.39.9.tar.gz) = 357844f335f629e04939404e37186ca527d29e24b1ee36472e91804da1d0244a6420569be5c926d69cee47a8120d7e1cebfa159aa3a6ca5544e842cf8aa5cb6c +SHA512 (nbdkit-1.39.9.tar.gz.sig) = 65898fbd69d5e02a7a980138cf865839a8869ab8ea07c01f3b288360767064b1f88ff3176c2f5c749f74161a563a9a2bea26c53296a47b43d6ef7f1879c5e230 From 498c258187d334cfd06fb0f81c95118a9138c883 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Sat, 13 Jul 2024 09:29:08 +0200 Subject: [PATCH 211/298] Rebuilt for the bin-sbin merge (again) https://fedoraproject.org/wiki/Changes/Unify_bin_and_sbin --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 4644eae..9037202 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,7 +55,7 @@ Name: nbdkit Version: 1.39.9 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1498,6 +1498,9 @@ fi %changelog +* Sat Jul 13 2024 Zbigniew Jędrzejewski-Szmek - 1.39.9-2 +- Rebuilt for the bin-sbin merge (again) + * Tue Jul 09 2024 Richard W.M. Jones - 1.39.9-1 - New upstream development version 1.39.9 From cebe2edc08886e130a60b2a31ec14a3c923b2339 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sun, 14 Jul 2024 09:33:47 +0100 Subject: [PATCH 212/298] New upstream development version 1.39.10 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 9037202..0c1cd60 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,8 +54,8 @@ %global source_directory 1.39-development Name: nbdkit -Version: 1.39.9 -Release: 2%{?dist} +Version: 1.39.10 +Release: 1%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1498,6 +1498,9 @@ fi %changelog +* Sun Jul 14 2024 Richard W.M. Jones - 1.39.10-1 +- New upstream development version 1.39.10 + * Sat Jul 13 2024 Zbigniew Jędrzejewski-Szmek - 1.39.9-2 - Rebuilt for the bin-sbin merge (again) diff --git a/sources b/sources index 94139bf..dd26b0e 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.39.9.tar.gz) = 357844f335f629e04939404e37186ca527d29e24b1ee36472e91804da1d0244a6420569be5c926d69cee47a8120d7e1cebfa159aa3a6ca5544e842cf8aa5cb6c -SHA512 (nbdkit-1.39.9.tar.gz.sig) = 65898fbd69d5e02a7a980138cf865839a8869ab8ea07c01f3b288360767064b1f88ff3176c2f5c749f74161a563a9a2bea26c53296a47b43d6ef7f1879c5e230 +SHA512 (nbdkit-1.39.10.tar.gz) = 1f8585d8cda6b0b3ddefc8d529d9655cd8c59cb97e4b60ee1ead04d8770b8418cefca30de611cf9520931c4950d8ab9f528a19f7c03f5f1c94afec2610453c19 +SHA512 (nbdkit-1.39.10.tar.gz.sig) = 2cf74aef27dfcb9dc0b11b6cd48221fb3e0d089e598b05cf2779376dd21f216a7a31c84b4929b32b1fcef856c26f71ebaac51d203caea0efe1be89c3142fdc1e From 517fe72cff2ac52057f0de4d134ccefd93c836d0 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 15 Jul 2024 17:37:51 +0100 Subject: [PATCH 213/298] Remove old Obsoletes nbdkit-tar-plugin Originally this was added for Fedora 33+. We're now up to Fedora 41. --- nbdkit.spec | 1 - 1 file changed, 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 0c1cd60..6eacaaa 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -674,7 +674,6 @@ Display statistics about operations. Summary: Tar archive filter for %{name} Requires: %{name}-server%{?_isa} = %{version}-%{release} Requires: tar -Obsoletes: %{name}-tar-plugin < 1.23.9-3 %description tar-filter This package is a tar archive filter for %{name}. From eb759613ce0b846dad15f089c49f3a4e686b9df1 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sun, 14 Jul 2024 21:28:00 +0100 Subject: [PATCH 214/298] Combine nbdkit-gzip-filter with basic filters nbdkit-basic-filters over time has actually gained dependencies on zlib and zstd. Accepting this, don't package nbdkit-gzip-filter separately. For consistency document that nbdkit-basic-plugins also depends on zlib and zstd (which it does already). --- nbdkit.spec | 34 +++++++++++++--------------------- 1 file changed, 13 insertions(+), 21 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 6eacaaa..939de4f 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,7 +55,7 @@ Name: nbdkit Version: 1.39.10 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD-3-Clause @@ -255,8 +255,8 @@ Requires: %{name}-server%{?_isa} = %{version}-%{release} %description basic-plugins This package contains plugins for %{name} which only depend on simple -C libraries: glibc, gnutls, libzstd. Other plugins for nbdkit with -more complex dependencies are packaged separately. +C libraries: glibc, gnutls, zlib and zstd. Other plugins for nbdkit +with more complex dependencies are packaged separately. nbdkit-data-plugin Serve small amounts of data from the command line. @@ -544,11 +544,13 @@ VMware VDDK for accessing VMware disks and servers. %package basic-filters Summary: Basic filters for %{name} Requires: %{name}-server%{?_isa} = %{version}-%{release} +# Remove this in Fedora 43: +Obsoletes: nbdkit-gzip-filter < %{version}-%{release} %description basic-filters This package contains filters for %{name} which only depend on simple -C libraries: glibc, gnutls. Other filters for nbdkit with more -complex dependencies are packaged separately. +C libraries: glibc, gnutls, zlib and zstd. Other filters for nbdkit +with more complex dependencies are packaged separately. nbdkit-blocksize-filter Adjust block size of requests sent to plugins. @@ -580,6 +582,8 @@ nbdkit-extentlist-filter Place extent list over a plugin. nbdkit-fua-filter Modify flush behaviour in plugins. +nbdkit-gzip-filter Decompress a .gz file + nbdkit-ip-filter Filter clients by IP address. nbdkit-limit-filter Limit nr clients that can connect concurrently. @@ -654,14 +658,6 @@ This package contains ext2, ext3 and ext4 filesystem support for %endif -%package gzip-filter -Summary: GZip filter for %{name} -Requires: %{name}-server%{?_isa} = %{version}-%{release} - -%description gzip-filter -This package is a gzip filter for %{name}. - - %package stats-filter Summary: Statistics filter for %{name} Requires: %{name}-server%{?_isa} = %{version}-%{release} @@ -1307,6 +1303,7 @@ fi %{_libdir}/%{name}/filters/nbdkit-exportname-filter.so %{_libdir}/%{name}/filters/nbdkit-extentlist-filter.so %{_libdir}/%{name}/filters/nbdkit-fua-filter.so +%{_libdir}/%{name}/filters/nbdkit-gzip-filter.so %{_libdir}/%{name}/filters/nbdkit-ip-filter.so %{_libdir}/%{name}/filters/nbdkit-limit-filter.so %{_libdir}/%{name}/filters/nbdkit-log-filter.so @@ -1350,6 +1347,7 @@ fi %{_mandir}/man1/nbdkit-exportname-filter.1* %{_mandir}/man1/nbdkit-extentlist-filter.1* %{_mandir}/man1/nbdkit-fua-filter.1* +%{_mandir}/man1/nbdkit-gzip-filter.1* %{_mandir}/man1/nbdkit-ip-filter.1* %{_mandir}/man1/nbdkit-limit-filter.1* %{_mandir}/man1/nbdkit-log-filter.1* @@ -1396,13 +1394,6 @@ fi %endif -%files gzip-filter -%doc README.md -%license LICENSE -%{_libdir}/%{name}/filters/nbdkit-gzip-filter.so -%{_mandir}/man1/nbdkit-gzip-filter.1* - - %files stats-filter %doc README.md %license LICENSE @@ -1497,8 +1488,9 @@ fi %changelog -* Sun Jul 14 2024 Richard W.M. Jones - 1.39.10-1 +* Sun Jul 14 2024 Richard W.M. Jones - 1.39.10-2 - New upstream development version 1.39.10 +- Combine nbdkit-gzip-filter with basic filters * Sat Jul 13 2024 Zbigniew Jędrzejewski-Szmek - 1.39.9-2 - Rebuilt for the bin-sbin merge (again) From f072fdb87588cc33f5b99b29ecca4696d5b17f59 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 18 Jul 2024 19:12:39 +0000 Subject: [PATCH 215/298] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 939de4f..a616124 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,7 +55,7 @@ Name: nbdkit Version: 1.39.10 -Release: 2%{?dist} +Release: 3%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1488,6 +1488,9 @@ fi %changelog +* Thu Jul 18 2024 Fedora Release Engineering - 1.39.10-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Sun Jul 14 2024 Richard W.M. Jones - 1.39.10-2 - New upstream development version 1.39.10 - Combine nbdkit-gzip-filter with basic filters From b5d6c5a9fc47788e4d50f299f923e117c09a8334 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 19 Jul 2024 12:21:45 +0100 Subject: [PATCH 216/298] Add a comment about why openssl-devel-engine is needed It's not needed by nbdkit, but to work around a problem in boost ASIO library. Updates: commit 6b18b74749efbe1f618ea4bc010b56277157b0ac --- nbdkit.spec | 2 ++ 1 file changed, 2 insertions(+) diff --git a/nbdkit.spec b/nbdkit.spec index a616124..791ede5 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -140,6 +140,8 @@ BuildRequires: ocaml-ocamldoc BuildRequires: pkgconfig(tcl) BuildRequires: pkgconfig(lua) %endif +# Only needed until the following bug gets fixed in boost: +# https://bugzilla.redhat.com/show_bug.cgi?id=2297642 %if 0%{?fedora} >= 41 BuildRequires: openssl-devel-engine %endif From 3ade72b0f9314a4ffb6d7f5e40a9621a7225c6af Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sun, 21 Jul 2024 19:40:32 +0100 Subject: [PATCH 217/298] New upstream stable branch version 1.40.0 --- nbdkit.spec | 11 ++++++++--- sources | 4 ++-- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 791ede5..414e8b4 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,11 +51,11 @@ %global verify_tarball_signature 1 # The source directory. -%global source_directory 1.39-development +%global source_directory 1.40-stable Name: nbdkit -Version: 1.39.10 -Release: 3%{?dist} +Version: 1.40.0 +Release: 1%{?dist} Summary: NBD server License: BSD-3-Clause @@ -231,6 +231,8 @@ The key features are: * Filters can be stacked in front of plugins to transform the output. +* Server can run standalone or can be invoked from other programs. + '%{name}' is a meta-package which pulls in the core server and a useful subset of plugins and filters with minimal dependencies. @@ -1490,6 +1492,9 @@ fi %changelog +* Sun Jul 21 2024 Richard W.M. Jones - 1.40.0-1 +- New upstream stable branch version 1.40.0 + * Thu Jul 18 2024 Fedora Release Engineering - 1.39.10-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild diff --git a/sources b/sources index dd26b0e..3670565 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.39.10.tar.gz) = 1f8585d8cda6b0b3ddefc8d529d9655cd8c59cb97e4b60ee1ead04d8770b8418cefca30de611cf9520931c4950d8ab9f528a19f7c03f5f1c94afec2610453c19 -SHA512 (nbdkit-1.39.10.tar.gz.sig) = 2cf74aef27dfcb9dc0b11b6cd48221fb3e0d089e598b05cf2779376dd21f216a7a31c84b4929b32b1fcef856c26f71ebaac51d203caea0efe1be89c3142fdc1e +SHA512 (nbdkit-1.40.0.tar.gz) = 2ebf416359e61d4a7945ada095363fabfd300a3a9721a07ea39b0682c9d9e4dc0b8a9b1145e7992eca8605727d9c7a20c396295e3412e5e1bd246b903616a68d +SHA512 (nbdkit-1.40.0.tar.gz.sig) = 2ca1fe1d5eb09fdca132e9d927316687947f883596b03b07cd91f225f65db1604e13f9f3b5836e4e21124efb83cbb5b8e11c9278a11b8b3cb79e9fe3605f76b6 From ce8ba94d2cb5d931916777be6eae27d17c786871 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sun, 21 Jul 2024 21:54:02 +0100 Subject: [PATCH 218/298] Fix tarball signature --- sources | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sources b/sources index 3670565..623be89 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ SHA512 (nbdkit-1.40.0.tar.gz) = 2ebf416359e61d4a7945ada095363fabfd300a3a9721a07ea39b0682c9d9e4dc0b8a9b1145e7992eca8605727d9c7a20c396295e3412e5e1bd246b903616a68d -SHA512 (nbdkit-1.40.0.tar.gz.sig) = 2ca1fe1d5eb09fdca132e9d927316687947f883596b03b07cd91f225f65db1604e13f9f3b5836e4e21124efb83cbb5b8e11c9278a11b8b3cb79e9fe3605f76b6 +SHA512 (nbdkit-1.40.0.tar.gz.sig) = a3833dc96b241f77ea90bd2a13ec20aaa1e0d72c777fdf7d5dc73271b2df8e8649254b5cface74eddd5952feb9ef6c2191777153edb17674de68a7dabfad54eb From c25e90d6e461dd87bae916550ecb27fc54b47181 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 29 Jul 2024 13:40:37 +0100 Subject: [PATCH 219/298] New upstream stable branch version 1.40.1 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 414e8b4..feec1c7 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.40-stable Name: nbdkit -Version: 1.40.0 +Version: 1.40.1 Release: 1%{?dist} Summary: NBD server @@ -1492,6 +1492,9 @@ fi %changelog +* Mon Jul 29 2024 Richard W.M. Jones - 1.40.1-1 +- New upstream stable branch version 1.40.1 + * Sun Jul 21 2024 Richard W.M. Jones - 1.40.0-1 - New upstream stable branch version 1.40.0 diff --git a/sources b/sources index 623be89..6d8aad4 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.40.0.tar.gz) = 2ebf416359e61d4a7945ada095363fabfd300a3a9721a07ea39b0682c9d9e4dc0b8a9b1145e7992eca8605727d9c7a20c396295e3412e5e1bd246b903616a68d -SHA512 (nbdkit-1.40.0.tar.gz.sig) = a3833dc96b241f77ea90bd2a13ec20aaa1e0d72c777fdf7d5dc73271b2df8e8649254b5cface74eddd5952feb9ef6c2191777153edb17674de68a7dabfad54eb +SHA512 (nbdkit-1.40.1.tar.gz) = 365dd441c22ee7d515b566bac5e9f652c4e3c11108924a100c71d8c55fcde19ee802d00ed85c0ce5b04b4b0a643b9188d831abf1cb5a35c34b86a19fa0264171 +SHA512 (nbdkit-1.40.1.tar.gz.sig) = 9407350225fe4f5fae5a4a3757328fe0c1b468e851a241b1077e5469c931afa2f8a8e6b001f405ea6be12249eab576f9786b82f14cc03f170bb9fa420aeda381 From 1099d7a2f8c53c38a639e5e60bce6754204f6a34 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 24 Aug 2024 10:56:53 +0100 Subject: [PATCH 220/298] New upstream development branch version 1.41.1 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index feec1c7..fb44fcd 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,10 +51,10 @@ %global verify_tarball_signature 1 # The source directory. -%global source_directory 1.40-stable +%global source_directory 1.41-development Name: nbdkit -Version: 1.40.1 +Version: 1.41.1 Release: 1%{?dist} Summary: NBD server @@ -1492,6 +1492,9 @@ fi %changelog +* Sat Aug 24 2024 Richard W.M. Jones - 1.41.1-1 +- New upstream development branch version 1.41.1 + * Mon Jul 29 2024 Richard W.M. Jones - 1.40.1-1 - New upstream stable branch version 1.40.1 diff --git a/sources b/sources index 6d8aad4..0d14c86 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.40.1.tar.gz) = 365dd441c22ee7d515b566bac5e9f652c4e3c11108924a100c71d8c55fcde19ee802d00ed85c0ce5b04b4b0a643b9188d831abf1cb5a35c34b86a19fa0264171 -SHA512 (nbdkit-1.40.1.tar.gz.sig) = 9407350225fe4f5fae5a4a3757328fe0c1b468e851a241b1077e5469c931afa2f8a8e6b001f405ea6be12249eab576f9786b82f14cc03f170bb9fa420aeda381 +SHA512 (nbdkit-1.41.1.tar.gz) = 9440244cc3fe6df1dc4da2546075bd78dbc225d475449a52a13b877666fea1f808bc24f51ecad203bdc6fa0f5f046c0d33d7ccc154ac516082c29fd44a581885 +SHA512 (nbdkit-1.41.1.tar.gz.sig) = eb086ff67d6f401894f6c056b6469b65f26165a0168f239e3971331ec4ef418bcc7f7f245a6e5a23eea30dd7394693c0c1326e917114eea14c93005d019dbe02 From c480477abb7f6a123525a15cef15e005dac95b0f Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sun, 8 Sep 2024 12:43:50 +0100 Subject: [PATCH 221/298] New upstream development branch version 1.41.2 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index fb44fcd..d49e28f 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.41-development Name: nbdkit -Version: 1.41.1 +Version: 1.41.2 Release: 1%{?dist} Summary: NBD server @@ -1492,6 +1492,9 @@ fi %changelog +* Sun Sep 08 2024 Richard W.M. Jones - 1.41.2-1 +- New upstream development branch version 1.41.2 + * Sat Aug 24 2024 Richard W.M. Jones - 1.41.1-1 - New upstream development branch version 1.41.1 diff --git a/sources b/sources index 0d14c86..ddfe3f6 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.41.1.tar.gz) = 9440244cc3fe6df1dc4da2546075bd78dbc225d475449a52a13b877666fea1f808bc24f51ecad203bdc6fa0f5f046c0d33d7ccc154ac516082c29fd44a581885 -SHA512 (nbdkit-1.41.1.tar.gz.sig) = eb086ff67d6f401894f6c056b6469b65f26165a0168f239e3971331ec4ef418bcc7f7f245a6e5a23eea30dd7394693c0c1326e917114eea14c93005d019dbe02 +SHA512 (nbdkit-1.41.2.tar.gz) = 5cdf55c64aab396dad25d2e60569052965ea939db3c602e7de1d5a799caa07098d03c316969365cfd3ad28fa4d7094ae9eaf7c34c91e79f5d558ec2ae11ad393 +SHA512 (nbdkit-1.41.2.tar.gz.sig) = ee63bc27f564990c4477e6ce0ea742f6b7052a9858d2b31ffd47fc06fdf8e59ad074a86bafc3e47a21a511c3fe93aa198f2dd4e377392cf2172ea5520c7dda54 From 2b29a9420fad136cdb1309ca7dcf6bef544ce99a Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 12 Sep 2024 21:41:49 +0100 Subject: [PATCH 222/298] New upstream development branch version 1.41.3 New nbdkit-time-limit-filter --- nbdkit.spec | 10 +++++++++- sources | 4 ++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index d49e28f..08f5bf3 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.41-development Name: nbdkit -Version: 1.41.2 +Version: 1.41.3 Release: 1%{?dist} Summary: NBD server @@ -638,6 +638,8 @@ nbdkit-spinning-filter Add seek delays to simulate a spinning hard disk. nbdkit-swab-filter Filter for swapping byte order. +nbdkit-time-limit-filter Set an overall time limit for each connection. + nbdkit-tls-fallback-filter TLS protection filter. nbdkit-truncate-filter Truncate, expand, round up or round down size. @@ -1334,6 +1336,7 @@ fi %{_libdir}/%{name}/filters/nbdkit-scan-filter.so %{_libdir}/%{name}/filters/nbdkit-spinning-filter.so %{_libdir}/%{name}/filters/nbdkit-swab-filter.so +%{_libdir}/%{name}/filters/nbdkit-time-limit-filter.so %{_libdir}/%{name}/filters/nbdkit-tls-fallback-filter.so %{_libdir}/%{name}/filters/nbdkit-truncate-filter.so %{_mandir}/man1/nbdkit-blocksize-filter.1* @@ -1378,6 +1381,7 @@ fi %{_mandir}/man1/nbdkit-scan-filter.1* %{_mandir}/man1/nbdkit-spinning-filter.1* %{_mandir}/man1/nbdkit-swab-filter.1* +%{_mandir}/man1/nbdkit-time-limit-filter.1* %{_mandir}/man1/nbdkit-tls-fallback-filter.1* %{_mandir}/man1/nbdkit-truncate-filter.1* @@ -1492,6 +1496,10 @@ fi %changelog +* Thu Sep 12 2024 Richard W.M. Jones - 1.41.3-1 +- New upstream development branch version 1.41.3 +- New nbdkit-time-limit-filter + * Sun Sep 08 2024 Richard W.M. Jones - 1.41.2-1 - New upstream development branch version 1.41.2 diff --git a/sources b/sources index ddfe3f6..4c09729 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.41.2.tar.gz) = 5cdf55c64aab396dad25d2e60569052965ea939db3c602e7de1d5a799caa07098d03c316969365cfd3ad28fa4d7094ae9eaf7c34c91e79f5d558ec2ae11ad393 -SHA512 (nbdkit-1.41.2.tar.gz.sig) = ee63bc27f564990c4477e6ce0ea742f6b7052a9858d2b31ffd47fc06fdf8e59ad074a86bafc3e47a21a511c3fe93aa198f2dd4e377392cf2172ea5520c7dda54 +SHA512 (nbdkit-1.41.3.tar.gz) = 0c86a0dea8bec4143e910a595351f8737213e075186cf96c703ff8592163b7fac7dd70e1457db8b3740252ffa8326f34150cdc630d68272039aed83387fbaffc +SHA512 (nbdkit-1.41.3.tar.gz.sig) = 1e94eff15a8d02a60bf4028b30e5c9c9913fcc9e4a29504f85d73fb3c72ee89994e3ce6b6fbcc9341ab08f2ca31bb269c28b3270971f31344d4d3f19d7efbca0 From 8bc76e0971990f8ad690e0e313b28896f506a5d5 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 13 Sep 2024 15:53:52 +0100 Subject: [PATCH 223/298] New upstream development branch version 1.41.4 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 08f5bf3..7ca46dc 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.41-development Name: nbdkit -Version: 1.41.3 +Version: 1.41.4 Release: 1%{?dist} Summary: NBD server @@ -1496,6 +1496,9 @@ fi %changelog +* Fri Sep 13 2024 Richard W.M. Jones - 1.41.4-1 +- New upstream development branch version 1.41.4 + * Thu Sep 12 2024 Richard W.M. Jones - 1.41.3-1 - New upstream development branch version 1.41.3 - New nbdkit-time-limit-filter diff --git a/sources b/sources index 4c09729..44752c0 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.41.3.tar.gz) = 0c86a0dea8bec4143e910a595351f8737213e075186cf96c703ff8592163b7fac7dd70e1457db8b3740252ffa8326f34150cdc630d68272039aed83387fbaffc -SHA512 (nbdkit-1.41.3.tar.gz.sig) = 1e94eff15a8d02a60bf4028b30e5c9c9913fcc9e4a29504f85d73fb3c72ee89994e3ce6b6fbcc9341ab08f2ca31bb269c28b3270971f31344d4d3f19d7efbca0 +SHA512 (nbdkit-1.41.4.tar.gz) = cecf361a3084c5d6b9f52727a681d2e28057a3ab6bf599c4b1224dc0beab79fc05e74df78b9e54e582a6628aa8d85bda7cb2a1865fadebc6e7073bc5d67b1bf0 +SHA512 (nbdkit-1.41.4.tar.gz.sig) = ef0b1158277bf44311245c6fcb463c69281fa0680fb59c391434195a493d51ea0f3c7173046b5dc757f55d8d079f9cb61071870fbe0c02c0394506ea8618dce5 From fd5bf0f0eaa4c8a2689117e3ebdcbc9247e29052 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sun, 22 Sep 2024 20:02:23 +0100 Subject: [PATCH 224/298] New upstream development branch version 1.41.5 Add lzip filter to the existing nbdkit-xz-filter package Reenable MC in mingw build --- ...and.sh-Work-around-bug-in-qemu-9.1-e.patch | 50 +++++++++++++++++++ nbdkit.spec | 21 +++++--- sources | 4 +- 3 files changed, 67 insertions(+), 8 deletions(-) create mode 100644 0001-tests-test-ondemand.sh-Work-around-bug-in-qemu-9.1-e.patch diff --git a/0001-tests-test-ondemand.sh-Work-around-bug-in-qemu-9.1-e.patch b/0001-tests-test-ondemand.sh-Work-around-bug-in-qemu-9.1-e.patch new file mode 100644 index 0000000..10877c4 --- /dev/null +++ b/0001-tests-test-ondemand.sh-Work-around-bug-in-qemu-9.1-e.patch @@ -0,0 +1,50 @@ +From 8e5b4e181043ec3b24a5cd1b51f55d1e596bf651 Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Sun, 22 Sep 2024 20:58:35 +0100 +Subject: [PATCH] tests/test-ondemand.sh: Work around bug in qemu 9.1 + exportname handling + +qemu 9.1 NBD URI handling of export names is buggy: +https://gitlab.com/qemu-project/qemu/-/issues/2584 + +Work around this bug in the tests. +--- + tests/test-ondemand.sh | 19 +++++++++++++------ + 1 file changed, 13 insertions(+), 6 deletions(-) + +diff --git a/tests/test-ondemand.sh b/tests/test-ondemand.sh +index 83abd85026..1443d3e9a3 100755 +--- a/tests/test-ondemand.sh ++++ b/tests/test-ondemand.sh +@@ -68,15 +68,22 @@ test -f $dir/default + test -f $dir/test + + # These should fail because the exportname is invalid. ++errors=0 + for e in /bad .bad . .. ./etc ; do +- if nbdinfo "nbd+unix:///$e?socket=$sock" || +- qemu-img info "nbd+unix:///$e?socket=$sock" || +- qemu-img info nbd:unix:$sock:exportname=$e +- then +- echo "$0: expected failure trying to create bad exportname" +- exit 1 ++ if nbdinfo "nbd+unix:///$e?socket=$sock"; then ((errors++)) ||:; fi ++ # QEMU 9.1 fails to parse exportnames starting with "." correctly: ++ # https://gitlab.com/qemu-project/qemu/-/issues/2584 ++ if test "$e" != "." && test "$e" != ".." && test "$e" != "./etc"; then ++ if qemu-img info "nbd+unix:///$e?socket=$sock" ++ then ((errors++)) ||:; fi ++ if qemu-img info nbd:unix:$sock:exportname=$e ++ then ((errors++)) ||:; fi + fi + done ++if test "$errors" -gt 0; then ++ echo "$0: expected failure trying to create bad exportname" ++ exit 1 ++fi + + # Check the filesystem is persistent. + guestfish --format=raw -a "nbd://?socket=$sock" -m /dev/sda < - 1.41.5-1 +- New upstream development branch version 1.41.5 +- Add lzip filter to the existing nbdkit-xz-filter package +- Reenable MC in mingw build + * Fri Sep 13 2024 Richard W.M. Jones - 1.41.4-1 - New upstream development branch version 1.41.4 diff --git a/sources b/sources index 44752c0..9a79f00 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.41.4.tar.gz) = cecf361a3084c5d6b9f52727a681d2e28057a3ab6bf599c4b1224dc0beab79fc05e74df78b9e54e582a6628aa8d85bda7cb2a1865fadebc6e7073bc5d67b1bf0 -SHA512 (nbdkit-1.41.4.tar.gz.sig) = ef0b1158277bf44311245c6fcb463c69281fa0680fb59c391434195a493d51ea0f3c7173046b5dc757f55d8d079f9cb61071870fbe0c02c0394506ea8618dce5 +SHA512 (nbdkit-1.41.5.tar.gz) = ac24fd54dc6a18bca8c79d7d2c33054a8930fe47ad42663921b42a445b6d9a6573d09c73d97f1c323b302c247d2093567ff27fe3be4018e4bb0b60b53265cb96 +SHA512 (nbdkit-1.41.5.tar.gz.sig) = c1deed9e8d52b55cbc41917a66c3fd6becb2d8c2de1e81c04a6880aba9f15312cd0fab88051601a9db590d1e93e1c0f598ad6f76eab5731badeacb3b2c816e1d From 60a16732712dad815b9a34ce322be22bff62e74b Mon Sep 17 00:00:00 2001 From: Yaakov Selkowitz Date: Tue, 24 Sep 2024 19:06:26 -0400 Subject: [PATCH 225/298] Avoid lzip dependency on RHEL lzip is unwanted in RHEL, and is only used here for a test of the newly added lzip filter. --- nbdkit.spec | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 55274d4..8871b52 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,7 +55,7 @@ Name: nbdkit Version: 1.41.5 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD-3-Clause @@ -162,7 +162,9 @@ BuildRequires: glibc-utils BuildRequires: /usr/bin/hexdump BuildRequires: /usr/sbin/ip BuildRequires: jq +%if !0%{?rhel} BuildRequires: /usr/bin/lzip +%endif BuildRequires: /usr/bin/nbdcopy BuildRequires: /usr/bin/nbdinfo BuildRequires: /usr/bin/nbdsh @@ -1500,6 +1502,9 @@ fi %changelog +* Tue Sep 24 2024 Yaakov Selkowitz - 1.41.5-2 +- Avoid lzip dependency on RHEL + * Sun Sep 22 2024 Richard W.M. Jones - 1.41.5-1 - New upstream development branch version 1.41.5 - Add lzip filter to the existing nbdkit-xz-filter package From 7b3a2eb66e8229593bc8faab96615bb184a03ead Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 25 Sep 2024 16:29:08 +0100 Subject: [PATCH 226/298] New upstream development branch version 1.41.6 --- ...and.sh-Work-around-bug-in-qemu-9.1-e.patch | 50 ------------------- nbdkit.spec | 11 ++-- sources | 4 +- 3 files changed, 7 insertions(+), 58 deletions(-) delete mode 100644 0001-tests-test-ondemand.sh-Work-around-bug-in-qemu-9.1-e.patch diff --git a/0001-tests-test-ondemand.sh-Work-around-bug-in-qemu-9.1-e.patch b/0001-tests-test-ondemand.sh-Work-around-bug-in-qemu-9.1-e.patch deleted file mode 100644 index 10877c4..0000000 --- a/0001-tests-test-ondemand.sh-Work-around-bug-in-qemu-9.1-e.patch +++ /dev/null @@ -1,50 +0,0 @@ -From 8e5b4e181043ec3b24a5cd1b51f55d1e596bf651 Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Sun, 22 Sep 2024 20:58:35 +0100 -Subject: [PATCH] tests/test-ondemand.sh: Work around bug in qemu 9.1 - exportname handling - -qemu 9.1 NBD URI handling of export names is buggy: -https://gitlab.com/qemu-project/qemu/-/issues/2584 - -Work around this bug in the tests. ---- - tests/test-ondemand.sh | 19 +++++++++++++------ - 1 file changed, 13 insertions(+), 6 deletions(-) - -diff --git a/tests/test-ondemand.sh b/tests/test-ondemand.sh -index 83abd85026..1443d3e9a3 100755 ---- a/tests/test-ondemand.sh -+++ b/tests/test-ondemand.sh -@@ -68,15 +68,22 @@ test -f $dir/default - test -f $dir/test - - # These should fail because the exportname is invalid. -+errors=0 - for e in /bad .bad . .. ./etc ; do -- if nbdinfo "nbd+unix:///$e?socket=$sock" || -- qemu-img info "nbd+unix:///$e?socket=$sock" || -- qemu-img info nbd:unix:$sock:exportname=$e -- then -- echo "$0: expected failure trying to create bad exportname" -- exit 1 -+ if nbdinfo "nbd+unix:///$e?socket=$sock"; then ((errors++)) ||:; fi -+ # QEMU 9.1 fails to parse exportnames starting with "." correctly: -+ # https://gitlab.com/qemu-project/qemu/-/issues/2584 -+ if test "$e" != "." && test "$e" != ".." && test "$e" != "./etc"; then -+ if qemu-img info "nbd+unix:///$e?socket=$sock" -+ then ((errors++)) ||:; fi -+ if qemu-img info nbd:unix:$sock:exportname=$e -+ then ((errors++)) ||:; fi - fi - done -+if test "$errors" -gt 0; then -+ echo "$0: expected failure trying to create bad exportname" -+ exit 1 -+fi - - # Check the filesystem is persistent. - guestfish --format=raw -a "nbd://?socket=$sock" -m /dev/sda < - 1.41.6-1 +- New upstream development branch version 1.41.6 + * Tue Sep 24 2024 Yaakov Selkowitz - 1.41.5-2 - Avoid lzip dependency on RHEL diff --git a/sources b/sources index 9a79f00..3c8fbc3 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.41.5.tar.gz) = ac24fd54dc6a18bca8c79d7d2c33054a8930fe47ad42663921b42a445b6d9a6573d09c73d97f1c323b302c247d2093567ff27fe3be4018e4bb0b60b53265cb96 -SHA512 (nbdkit-1.41.5.tar.gz.sig) = c1deed9e8d52b55cbc41917a66c3fd6becb2d8c2de1e81c04a6880aba9f15312cd0fab88051601a9db590d1e93e1c0f598ad6f76eab5731badeacb3b2c816e1d +SHA512 (nbdkit-1.41.6.tar.gz) = a54a48aa91ef25b8694b40b6b5599dc959a9b2efd76e3a962c60364591b770b89347a3106a7b9867f8aae0c50ff7783297dcfb52fb24a4b8fb89d280d525cac4 +SHA512 (nbdkit-1.41.6.tar.gz.sig) = d2e818175149f05b1620c9f5325a8d61ac5b64845a96764a64c73bb783cb77aa7edaa0becd32ab799fb9da50bda3f33fc0fe79ff28d7c5fa269f7ee4f82db4e7 From 6f3442584b9dfd64c2ecd3514ff7ef65c11ae38f Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 4 Oct 2024 12:09:13 +0100 Subject: [PATCH 227/298] New upstream development branch version 1.41.7 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 15b7dfd..8dce351 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.41-development Name: nbdkit -Version: 1.41.6 +Version: 1.41.7 Release: 1%{?dist} Summary: NBD server @@ -1498,6 +1498,9 @@ fi %changelog +* Fri Oct 04 2024 Richard W.M. Jones - 1.41.7-1 +- New upstream development branch version 1.41.7 + * Wed Sep 25 2024 Richard W.M. Jones - 1.41.6-1 - New upstream development branch version 1.41.6 diff --git a/sources b/sources index 3c8fbc3..9aea080 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.41.6.tar.gz) = a54a48aa91ef25b8694b40b6b5599dc959a9b2efd76e3a962c60364591b770b89347a3106a7b9867f8aae0c50ff7783297dcfb52fb24a4b8fb89d280d525cac4 -SHA512 (nbdkit-1.41.6.tar.gz.sig) = d2e818175149f05b1620c9f5325a8d61ac5b64845a96764a64c73bb783cb77aa7edaa0becd32ab799fb9da50bda3f33fc0fe79ff28d7c5fa269f7ee4f82db4e7 +SHA512 (nbdkit-1.41.7.tar.gz) = f4e28c590524dd48e505ae8f330694c1efcbd65d0586196d3c8ff7ffeea9865f29ad5f901b383c152e8c5d2679c2bd63a8e27248b9a800bc49db35853e1f6309 +SHA512 (nbdkit-1.41.7.tar.gz.sig) = 9b0f7a7e754bd00846889941bde2b07d1b02ab5d41c9520c70d748f19c368b0ad09f1e29cb75ca5ab61105ffb05764095db818ddffe04f33a78e8c6d96415694 From e0e83ff709ad051639d11a0a21a5c78e306a23db Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 5 Oct 2024 09:27:50 +0100 Subject: [PATCH 228/298] Move nbdkit-ondemand-plugin to separate subpackage Since this has extra dependencies. --- nbdkit.spec | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 8dce351..c0a72fd 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -279,8 +279,6 @@ nbdkit-info-plugin Serve client and server information. nbdkit-memory-plugin A virtual memory plugin. -nbdkit-ondemand-plugin Create filesystems on demand. - nbdkit-ones-plugin Fill disk with repeated 0xff or other bytes. nbdkit-pattern-plugin Fixed test pattern. @@ -458,6 +456,21 @@ This package lets you write OCaml plugins for %{name}. %endif +%package ondemand-plugin +Summary: Create filesystems on demand for %{name} +Requires: %{name}-server%{?_isa} = %{version}-%{release} +# For mkfs and mke2fs (defaults). +Requires: util-linux, e2fsprogs +# For other filesystems. +Suggests: xfsprogs +%if !0%{?rhel} +Suggests: ntfsprogs, dosfstools +%endif + +%description ondemand-plugin +This package is a plugin to create filesystems on demand for %{name}. + + %if !0%{?rhel} %package perl-plugin Summary: Perl plugin for %{name} @@ -1081,7 +1094,6 @@ fi %{_libdir}/%{name}/plugins/nbdkit-full-plugin.so %{_libdir}/%{name}/plugins/nbdkit-info-plugin.so %{_libdir}/%{name}/plugins/nbdkit-memory-plugin.so -%{_libdir}/%{name}/plugins/nbdkit-ondemand-plugin.so %{_libdir}/%{name}/plugins/nbdkit-ones-plugin.so %{_libdir}/%{name}/plugins/nbdkit-partitioning-plugin.so %{_libdir}/%{name}/plugins/nbdkit-pattern-plugin.so @@ -1097,7 +1109,6 @@ fi %{_mandir}/man1/nbdkit-full-plugin.1* %{_mandir}/man1/nbdkit-info-plugin.1* %{_mandir}/man1/nbdkit-memory-plugin.1* -%{_mandir}/man1/nbdkit-ondemand-plugin.1* %{_mandir}/man1/nbdkit-ones-plugin.1* %{_mandir}/man1/nbdkit-partitioning-plugin.1* %{_mandir}/man1/nbdkit-pattern-plugin.1* @@ -1225,6 +1236,13 @@ fi %endif +%files ondemand-plugin +%doc README.md +%license LICENSE +%{_libdir}/%{name}/plugins/nbdkit-ondemand-plugin.so +%{_mandir}/man1/nbdkit-ondemand-plugin.1* + + %if !0%{?rhel} %files perl-plugin %doc README.md From 98740935533ec01f87f2b620755096befefc6afe Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 14 Oct 2024 20:36:58 +0100 Subject: [PATCH 229/298] New upstream development branch version 1.41.8 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index c0a72fd..1ef4d49 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.41-development Name: nbdkit -Version: 1.41.7 +Version: 1.41.8 Release: 1%{?dist} Summary: NBD server @@ -1516,6 +1516,9 @@ fi %changelog +* Mon Oct 14 2024 Richard W.M. Jones - 1.41.8-1 +- New upstream development branch version 1.41.8 + * Fri Oct 04 2024 Richard W.M. Jones - 1.41.7-1 - New upstream development branch version 1.41.7 diff --git a/sources b/sources index 9aea080..6de52fa 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.41.7.tar.gz) = f4e28c590524dd48e505ae8f330694c1efcbd65d0586196d3c8ff7ffeea9865f29ad5f901b383c152e8c5d2679c2bd63a8e27248b9a800bc49db35853e1f6309 -SHA512 (nbdkit-1.41.7.tar.gz.sig) = 9b0f7a7e754bd00846889941bde2b07d1b02ab5d41c9520c70d748f19c368b0ad09f1e29cb75ca5ab61105ffb05764095db818ddffe04f33a78e8c6d96415694 +SHA512 (nbdkit-1.41.8.tar.gz) = 66a056a334d09af162876e485b5909bc66d869ec73721a8316c2c134bda1e28c01adf78297c5efaad7917923bf143c144a87b5885c0e09ed78a0172d626bd941 +SHA512 (nbdkit-1.41.8.tar.gz.sig) = 12a0aad8df1c7b4368cd9f94a8fc8f09705dbebd1892d8d33578d4629b8a18c9a301bbf2b3a1c538a9f7f7a2111dd280fcd771e59ea790bceb0cf46abb72d299 From 145dc5e3b3a62098ea27789c93f748d52e7ab91a Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 8 Jan 2025 17:26:40 +0000 Subject: [PATCH 230/298] New upstream development branch version 1.41.9 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 1ef4d49..e643b26 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.41-development Name: nbdkit -Version: 1.41.8 +Version: 1.41.9 Release: 1%{?dist} Summary: NBD server @@ -1516,6 +1516,9 @@ fi %changelog +* Wed Jan 08 2025 Richard W.M. Jones - 1.41.9-1 +- New upstream development branch version 1.41.9 + * Mon Oct 14 2024 Richard W.M. Jones - 1.41.8-1 - New upstream development branch version 1.41.8 diff --git a/sources b/sources index 6de52fa..2380b9a 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.41.8.tar.gz) = 66a056a334d09af162876e485b5909bc66d869ec73721a8316c2c134bda1e28c01adf78297c5efaad7917923bf143c144a87b5885c0e09ed78a0172d626bd941 -SHA512 (nbdkit-1.41.8.tar.gz.sig) = 12a0aad8df1c7b4368cd9f94a8fc8f09705dbebd1892d8d33578d4629b8a18c9a301bbf2b3a1c538a9f7f7a2111dd280fcd771e59ea790bceb0cf46abb72d299 +SHA512 (nbdkit-1.41.9.tar.gz) = fed78e71332ba5424109401fe4d5f4ca06140ae8238bc9441e509e997250a7c57e422008d34aa0914d60dd0e5877fb522e8d4562e3e4711c3d11717fb19eaf50 +SHA512 (nbdkit-1.41.9.tar.gz.sig) = 5143555beb97f91f4a176d3ba560816b28c85f1d57c8aa0ca8ae8f3e8406d76c0a60ce81026fc68854c3479073775ee1f91e5f6c3a5119ce54feb655355bba9d From 23310d113337beb753995f29131c0967906188fc Mon Sep 17 00:00:00 2001 From: Jerry James Date: Thu, 9 Jan 2025 14:46:27 -0700 Subject: [PATCH 231/298] OCaml 5.3.0 rebuild for Fedora 42 --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index e643b26..c97cbbb 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,7 +55,7 @@ Name: nbdkit Version: 1.41.9 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1516,6 +1516,9 @@ fi %changelog +* Thu Jan 9 2025 Jerry James - 1.41.9-2 +- OCaml 5.3.0 rebuild for Fedora 42 + * Wed Jan 08 2025 Richard W.M. Jones - 1.41.9-1 - New upstream development branch version 1.41.9 From 601f2b1914fb3062f1c93ccd635c638354397d25 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Sun, 12 Jan 2025 14:36:15 +0100 Subject: [PATCH 232/298] Rebuilt for the bin-sbin merge (2nd attempt) https://fedoraproject.org/wiki/Changes/Unify_bin_and_sbin --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index c97cbbb..e7c9cf6 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,7 +55,7 @@ Name: nbdkit Version: 1.41.9 -Release: 2%{?dist} +Release: 3%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1516,6 +1516,9 @@ fi %changelog +* Sun Jan 12 2025 Zbigniew Jędrzejewski-Szmek - 1.41.9-3 +- Rebuilt for the bin-sbin merge (2nd attempt) + * Thu Jan 9 2025 Jerry James - 1.41.9-2 - OCaml 5.3.0 rebuild for Fedora 42 From 6c21a9ca60f7be168773219ae29a5097f90b38dc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Sun, 12 Jan 2025 19:26:10 +0100 Subject: [PATCH 233/298] Skip failing tests --- nbdkit.spec | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/nbdkit.spec b/nbdkit.spec index e7c9cf6..47bdf12 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -1023,6 +1023,28 @@ skip_test tests/test-memory-allocator-malloc-mlock.sh %endif %endif +%if "%{_sbindir}" == "%{_bindir}" +# Those tests fail after when bin-sbin merge: +# supermin: ext2fs_namei: parent directory not found: /usr/bin: File not found by ext2_lookup +skip_test tests/test-eval-file.sh +skip_test tests/test-floppy.sh +skip_test tests/test-floppy-size.sh +skip_test tests/test-iso.sh +skip_test tests/test-linuxdisk.sh +skip_test tests/test-linuxdisk-copy-out.sh +skip_test tests/test-nbd-qcow2.sh +skip_test tests/test-ondemand.sh +skip_test tests/test-partitioning2.sh +skip_test tests/test-partitioning3.sh +skip_test tests/test-partitioning5.sh +skip_test tests/test-shebang-cc.sh +skip_test tests/test-cow.sh +skip_test tests/test-cow-block-size.sh +skip_test tests/test-cow-extents2.sh +skip_test tests/test-spinning-mkfs.sh +skip_test tests/test-tar.sh +%endif + # Make sure we can see the debug messages (RHBZ#1230160). export LIBGUESTFS_DEBUG=1 export LIBGUESTFS_TRACE=1 From 8aaaa446c64b5cd9f0c283dd224a01f0d942422b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Sun, 12 Jan 2025 20:52:21 +0100 Subject: [PATCH 234/298] Skip more failing tests Second batch. Those only seem to fail in koji/x86_64, and not in a local mock build and not on other architectures. Not sure why. --- nbdkit.spec | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/nbdkit.spec b/nbdkit.spec index 47bdf12..dab1c7c 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -1043,6 +1043,38 @@ skip_test tests/test-cow-block-size.sh skip_test tests/test-cow-extents2.sh skip_test tests/test-spinning-mkfs.sh skip_test tests/test-tar.sh + +skip_test tests/test-bzip2 +skip_test tests/test-curl +skip_test tests/test-data +skip_test tests/test-ext2 +skip_test tests/test-gzip +skip_test tests/test-gzip-curl +skip_test tests/test-lua +skip_test tests/test-lzip +skip_test tests/test-lzip-curl +skip_test tests/test-memory +skip_test tests/test-memory-allocator-malloc +skip_test tests/test-memory-allocator-zstd +skip_test tests/test-nbd +skip_test tests/test-ocaml +skip_test tests/test-offset +skip_test tests/test-old-plugins-x86_64-Linux-v1.0.0-fs.sh +skip_test tests/test-old-plugins-x86_64-Linux-v1.12.8-fs.sh +skip_test tests/test-old-plugins-x86_64-Linux-v1.18.2-fs.sh +skip_test tests/test-old-plugins-x86_64-Linux-v1.2.8-fs.sh +skip_test tests/test-old-plugins-x86_64-Linux-v1.38.4-fs.sh +skip_test tests/test-old-plugins-x86_64-Linux-v1.8.4-fs.sh +skip_test tests/test-perl +skip_test tests/test-shell +skip_test tests/test-tar-gzip-curl +skip_test tests/test-tar-lzip-curl +skip_test tests/test-tar-xz-curl +skip_test tests/test-tcl +skip_test tests/test-tmpdisk +skip_test tests/test-vddk +skip_test tests/test-xz +skip_test tests/test-xz-curl %endif # Make sure we can see the debug messages (RHBZ#1230160). From 29130e004ba3a000ac8755b1ae690c52e709b11b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Sun, 12 Jan 2025 21:31:08 +0100 Subject: [PATCH 235/298] Ignore test results when built with merged-sbin Every time I compile the package, some more tests fail. --- nbdkit.spec | 60 ++++++----------------------------------------------- 1 file changed, 6 insertions(+), 54 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index dab1c7c..2037884 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -1023,67 +1023,19 @@ skip_test tests/test-memory-allocator-malloc-mlock.sh %endif %endif -%if "%{_sbindir}" == "%{_bindir}" -# Those tests fail after when bin-sbin merge: -# supermin: ext2fs_namei: parent directory not found: /usr/bin: File not found by ext2_lookup -skip_test tests/test-eval-file.sh -skip_test tests/test-floppy.sh -skip_test tests/test-floppy-size.sh -skip_test tests/test-iso.sh -skip_test tests/test-linuxdisk.sh -skip_test tests/test-linuxdisk-copy-out.sh -skip_test tests/test-nbd-qcow2.sh -skip_test tests/test-ondemand.sh -skip_test tests/test-partitioning2.sh -skip_test tests/test-partitioning3.sh -skip_test tests/test-partitioning5.sh -skip_test tests/test-shebang-cc.sh -skip_test tests/test-cow.sh -skip_test tests/test-cow-block-size.sh -skip_test tests/test-cow-extents2.sh -skip_test tests/test-spinning-mkfs.sh -skip_test tests/test-tar.sh - -skip_test tests/test-bzip2 -skip_test tests/test-curl -skip_test tests/test-data -skip_test tests/test-ext2 -skip_test tests/test-gzip -skip_test tests/test-gzip-curl -skip_test tests/test-lua -skip_test tests/test-lzip -skip_test tests/test-lzip-curl -skip_test tests/test-memory -skip_test tests/test-memory-allocator-malloc -skip_test tests/test-memory-allocator-zstd -skip_test tests/test-nbd -skip_test tests/test-ocaml -skip_test tests/test-offset -skip_test tests/test-old-plugins-x86_64-Linux-v1.0.0-fs.sh -skip_test tests/test-old-plugins-x86_64-Linux-v1.12.8-fs.sh -skip_test tests/test-old-plugins-x86_64-Linux-v1.18.2-fs.sh -skip_test tests/test-old-plugins-x86_64-Linux-v1.2.8-fs.sh -skip_test tests/test-old-plugins-x86_64-Linux-v1.38.4-fs.sh -skip_test tests/test-old-plugins-x86_64-Linux-v1.8.4-fs.sh -skip_test tests/test-perl -skip_test tests/test-shell -skip_test tests/test-tar-gzip-curl -skip_test tests/test-tar-lzip-curl -skip_test tests/test-tar-xz-curl -skip_test tests/test-tcl -skip_test tests/test-tmpdisk -skip_test tests/test-vddk -skip_test tests/test-xz -skip_test tests/test-xz-curl -%endif - # Make sure we can see the debug messages (RHBZ#1230160). export LIBGUESTFS_DEBUG=1 export LIBGUESTFS_TRACE=1 %make_build check || { cat tests/test-suite.log + +# Too many tests fail after when bin-sbin merge: +# supermin: ext2fs_namei: parent directory not found: /usr/bin: File not found by ext2_lookup +# Ignore the result for now. +%if "%{_sbindir}" != "%{_bindir}" exit 1 +%endif } popd %endif From 14cbf5196febd283e656adc73676330dd184a457 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 17 Jan 2025 19:45:35 +0000 Subject: [PATCH 236/298] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 2037884..3213275 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,7 +55,7 @@ Name: nbdkit Version: 1.41.9 -Release: 3%{?dist} +Release: 4%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1522,6 +1522,9 @@ fi %changelog +* Fri Jan 17 2025 Fedora Release Engineering - 1.41.9-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Sun Jan 12 2025 Zbigniew Jędrzejewski-Szmek - 1.41.9-3 - Rebuilt for the bin-sbin merge (2nd attempt) From a066211b6af036dcce87269bb5e19823803bcfd1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= Date: Sat, 1 Feb 2025 19:55:54 +0100 Subject: [PATCH 237/298] Add explicit BR: libxcrypt-devel MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Björn Esser --- nbdkit.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 3213275..6755d41 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,7 +55,7 @@ Name: nbdkit Version: 1.41.9 -Release: 4%{?dist} +Release: 5%{?dist} Summary: NBD server License: BSD-3-Clause @@ -93,6 +93,7 @@ BuildRequires: git BuildRequires: autoconf, automake, libtool BuildRequires: make +BuildRequires: libxcrypt-devel BuildRequires: gcc, gcc-c++ BuildRequires: %{_bindir}/pod2man BuildRequires: pkgconfig(gnutls) @@ -1522,6 +1523,9 @@ fi %changelog +* Sat Feb 01 2025 Björn Esser - 1.41.9-5 +- Add explicit BR: libxcrypt-devel + * Fri Jan 17 2025 Fedora Release Engineering - 1.41.9-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From ae34acf5e671e94f8118adab280123e1ca13599b Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 11 Feb 2025 13:40:36 +0000 Subject: [PATCH 238/298] New upstream stable branch version 1.42.0 --- nbdkit.spec | 9 ++++++--- sources | 4 ++-- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 6755d41..a8184ce 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,11 +51,11 @@ %global verify_tarball_signature 1 # The source directory. -%global source_directory 1.41-development +%global source_directory 1.42-stable Name: nbdkit -Version: 1.41.9 -Release: 5%{?dist} +Version: 1.42.0 +Release: 1%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1523,6 +1523,9 @@ fi %changelog +* Tue Feb 11 2025 Richard W.M. Jones - 1.42.0-1 +- New upstream stable branch version 1.42.0 + * Sat Feb 01 2025 Björn Esser - 1.41.9-5 - Add explicit BR: libxcrypt-devel diff --git a/sources b/sources index 2380b9a..77b7677 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.41.9.tar.gz) = fed78e71332ba5424109401fe4d5f4ca06140ae8238bc9441e509e997250a7c57e422008d34aa0914d60dd0e5877fb522e8d4562e3e4711c3d11717fb19eaf50 -SHA512 (nbdkit-1.41.9.tar.gz.sig) = 5143555beb97f91f4a176d3ba560816b28c85f1d57c8aa0ca8ae8f3e8406d76c0a60ce81026fc68854c3479073775ee1f91e5f6c3a5119ce54feb655355bba9d +SHA512 (nbdkit-1.42.0.tar.gz) = c8360fc2d9e6806ab241dcd61da82f52a881dd394d2e6c8c5372d4920f0751fe20dfe9bf45ff35c34cd1e12fd35d2b7dcf17374387805ff6cdec599c543c6bdc +SHA512 (nbdkit-1.42.0.tar.gz.sig) = df2e05eb46c78c2ecdc16b6b1ba37cbcbf001cfd5f7c3b9206da7100e4499ddb7f35ed75786d109767f2e9bf4a2baf02994ce5684910fd9cfc8bfccc9dd6dce7 From ae16c18dec1b0d2912b7bed3148bd088109c14ac Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 24 Feb 2025 12:58:11 +0000 Subject: [PATCH 239/298] Revert "Ignore test results when built with merged-sbin" This reverts commit 29130e004ba3a000ac8755b1ae690c52e709b11b. --- nbdkit.spec | 60 +++++++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 54 insertions(+), 6 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index a8184ce..f4524a9 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -1024,19 +1024,67 @@ skip_test tests/test-memory-allocator-malloc-mlock.sh %endif %endif +%if "%{_sbindir}" == "%{_bindir}" +# Those tests fail after when bin-sbin merge: +# supermin: ext2fs_namei: parent directory not found: /usr/bin: File not found by ext2_lookup +skip_test tests/test-eval-file.sh +skip_test tests/test-floppy.sh +skip_test tests/test-floppy-size.sh +skip_test tests/test-iso.sh +skip_test tests/test-linuxdisk.sh +skip_test tests/test-linuxdisk-copy-out.sh +skip_test tests/test-nbd-qcow2.sh +skip_test tests/test-ondemand.sh +skip_test tests/test-partitioning2.sh +skip_test tests/test-partitioning3.sh +skip_test tests/test-partitioning5.sh +skip_test tests/test-shebang-cc.sh +skip_test tests/test-cow.sh +skip_test tests/test-cow-block-size.sh +skip_test tests/test-cow-extents2.sh +skip_test tests/test-spinning-mkfs.sh +skip_test tests/test-tar.sh + +skip_test tests/test-bzip2 +skip_test tests/test-curl +skip_test tests/test-data +skip_test tests/test-ext2 +skip_test tests/test-gzip +skip_test tests/test-gzip-curl +skip_test tests/test-lua +skip_test tests/test-lzip +skip_test tests/test-lzip-curl +skip_test tests/test-memory +skip_test tests/test-memory-allocator-malloc +skip_test tests/test-memory-allocator-zstd +skip_test tests/test-nbd +skip_test tests/test-ocaml +skip_test tests/test-offset +skip_test tests/test-old-plugins-x86_64-Linux-v1.0.0-fs.sh +skip_test tests/test-old-plugins-x86_64-Linux-v1.12.8-fs.sh +skip_test tests/test-old-plugins-x86_64-Linux-v1.18.2-fs.sh +skip_test tests/test-old-plugins-x86_64-Linux-v1.2.8-fs.sh +skip_test tests/test-old-plugins-x86_64-Linux-v1.38.4-fs.sh +skip_test tests/test-old-plugins-x86_64-Linux-v1.8.4-fs.sh +skip_test tests/test-perl +skip_test tests/test-shell +skip_test tests/test-tar-gzip-curl +skip_test tests/test-tar-lzip-curl +skip_test tests/test-tar-xz-curl +skip_test tests/test-tcl +skip_test tests/test-tmpdisk +skip_test tests/test-vddk +skip_test tests/test-xz +skip_test tests/test-xz-curl +%endif + # Make sure we can see the debug messages (RHBZ#1230160). export LIBGUESTFS_DEBUG=1 export LIBGUESTFS_TRACE=1 %make_build check || { cat tests/test-suite.log - -# Too many tests fail after when bin-sbin merge: -# supermin: ext2fs_namei: parent directory not found: /usr/bin: File not found by ext2_lookup -# Ignore the result for now. -%if "%{_sbindir}" != "%{_bindir}" exit 1 -%endif } popd %endif From f87775ac79b370f66ba13f646160716d8601e0fd Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 24 Feb 2025 12:58:17 +0000 Subject: [PATCH 240/298] Revert "Skip more failing tests" This reverts commit 8aaaa446c64b5cd9f0c283dd224a01f0d942422b. --- nbdkit.spec | 32 -------------------------------- 1 file changed, 32 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index f4524a9..ec2f546 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -1044,38 +1044,6 @@ skip_test tests/test-cow-block-size.sh skip_test tests/test-cow-extents2.sh skip_test tests/test-spinning-mkfs.sh skip_test tests/test-tar.sh - -skip_test tests/test-bzip2 -skip_test tests/test-curl -skip_test tests/test-data -skip_test tests/test-ext2 -skip_test tests/test-gzip -skip_test tests/test-gzip-curl -skip_test tests/test-lua -skip_test tests/test-lzip -skip_test tests/test-lzip-curl -skip_test tests/test-memory -skip_test tests/test-memory-allocator-malloc -skip_test tests/test-memory-allocator-zstd -skip_test tests/test-nbd -skip_test tests/test-ocaml -skip_test tests/test-offset -skip_test tests/test-old-plugins-x86_64-Linux-v1.0.0-fs.sh -skip_test tests/test-old-plugins-x86_64-Linux-v1.12.8-fs.sh -skip_test tests/test-old-plugins-x86_64-Linux-v1.18.2-fs.sh -skip_test tests/test-old-plugins-x86_64-Linux-v1.2.8-fs.sh -skip_test tests/test-old-plugins-x86_64-Linux-v1.38.4-fs.sh -skip_test tests/test-old-plugins-x86_64-Linux-v1.8.4-fs.sh -skip_test tests/test-perl -skip_test tests/test-shell -skip_test tests/test-tar-gzip-curl -skip_test tests/test-tar-lzip-curl -skip_test tests/test-tar-xz-curl -skip_test tests/test-tcl -skip_test tests/test-tmpdisk -skip_test tests/test-vddk -skip_test tests/test-xz -skip_test tests/test-xz-curl %endif # Make sure we can see the debug messages (RHBZ#1230160). From 6798a199244462dbd22031b8d2e9134feec60879 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 24 Feb 2025 12:58:22 +0000 Subject: [PATCH 241/298] Revert "Skip failing tests" This reverts commit 6c21a9ca60f7be168773219ae29a5097f90b38dc. --- nbdkit.spec | 22 ---------------------- 1 file changed, 22 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index ec2f546..50af107 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -1024,28 +1024,6 @@ skip_test tests/test-memory-allocator-malloc-mlock.sh %endif %endif -%if "%{_sbindir}" == "%{_bindir}" -# Those tests fail after when bin-sbin merge: -# supermin: ext2fs_namei: parent directory not found: /usr/bin: File not found by ext2_lookup -skip_test tests/test-eval-file.sh -skip_test tests/test-floppy.sh -skip_test tests/test-floppy-size.sh -skip_test tests/test-iso.sh -skip_test tests/test-linuxdisk.sh -skip_test tests/test-linuxdisk-copy-out.sh -skip_test tests/test-nbd-qcow2.sh -skip_test tests/test-ondemand.sh -skip_test tests/test-partitioning2.sh -skip_test tests/test-partitioning3.sh -skip_test tests/test-partitioning5.sh -skip_test tests/test-shebang-cc.sh -skip_test tests/test-cow.sh -skip_test tests/test-cow-block-size.sh -skip_test tests/test-cow-extents2.sh -skip_test tests/test-spinning-mkfs.sh -skip_test tests/test-tar.sh -%endif - # Make sure we can see the debug messages (RHBZ#1230160). export LIBGUESTFS_DEBUG=1 export LIBGUESTFS_TRACE=1 From e06ebe7f5fafdd938acfdd5628b8014a52808c21 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 24 Feb 2025 13:32:58 +0000 Subject: [PATCH 242/298] Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests Reenable tests --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 50af107..91ce17d 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,7 +55,7 @@ Name: nbdkit Version: 1.42.0 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1517,6 +1517,9 @@ fi %changelog +* Mon Feb 24 2025 Richard W.M. Jones - 1.42.0-2 +- Reenable tests + * Tue Feb 11 2025 Richard W.M. Jones - 1.42.0-1 - New upstream stable branch version 1.42.0 From ecbaa2cf56012b64c5c556b655e8878298a004d1 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 24 Feb 2025 21:38:04 +0000 Subject: [PATCH 243/298] Remove BR openssl-devel-engine Bug (in Boost) that required this seems to have been fixed now. --- nbdkit.spec | 5 ----- 1 file changed, 5 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 91ce17d..f77a22a 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -141,11 +141,6 @@ BuildRequires: ocaml-ocamldoc BuildRequires: pkgconfig(tcl) BuildRequires: pkgconfig(lua) %endif -# Only needed until the following bug gets fixed in boost: -# https://bugzilla.redhat.com/show_bug.cgi?id=2297642 -%if 0%{?fedora} >= 41 -BuildRequires: openssl-devel-engine -%endif %if 0%{verify_tarball_signature} BuildRequires: gnupg2 %endif From 8c66737140321032cc5ccda3e5b494b52515e23f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= Date: Fri, 28 Feb 2025 11:46:23 +0100 Subject: [PATCH 244/298] Change Requires: libxcrypt-compat to be archful MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Björn Esser --- nbdkit.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index f77a22a..6d83306 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,7 +55,7 @@ Name: nbdkit Version: 1.42.0 -Release: 2%{?dist} +Release: 3%{?dist} Summary: NBD server License: BSD-3-Clause @@ -549,7 +549,7 @@ This package is a BitTorrent plugin for %{name}. Summary: VMware VDDK plugin for %{name} Requires: %{name}-server%{?_isa} = %{version}-%{release} # https://bugzilla.redhat.com/show_bug.cgi?id=1931818 -Requires: libxcrypt-compat +Requires: libxcrypt-compat%{?_isa} %description vddk-plugin This package is a plugin for %{name} which connects to @@ -1512,6 +1512,9 @@ fi %changelog +* Fri Feb 28 2025 Björn Esser - 1.42.0-3 +- Change Requires: libxcrypt-compat to be archful + * Mon Feb 24 2025 Richard W.M. Jones - 1.42.0-2 - Reenable tests From 52b7749446f5e38c122c64119bbfb9caec9bb716 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 3 Mar 2025 17:29:43 +0000 Subject: [PATCH 245/298] New upstream stable branch version 1.42.1 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 6d83306..d34e528 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,8 +54,8 @@ %global source_directory 1.42-stable Name: nbdkit -Version: 1.42.0 -Release: 3%{?dist} +Version: 1.42.1 +Release: 1%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1512,6 +1512,9 @@ fi %changelog +* Mon Mar 03 2025 Richard W.M. Jones - 1.42.1-1 +- New upstream stable branch version 1.42.1 + * Fri Feb 28 2025 Björn Esser - 1.42.0-3 - Change Requires: libxcrypt-compat to be archful diff --git a/sources b/sources index 77b7677..84f3c10 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.42.0.tar.gz) = c8360fc2d9e6806ab241dcd61da82f52a881dd394d2e6c8c5372d4920f0751fe20dfe9bf45ff35c34cd1e12fd35d2b7dcf17374387805ff6cdec599c543c6bdc -SHA512 (nbdkit-1.42.0.tar.gz.sig) = df2e05eb46c78c2ecdc16b6b1ba37cbcbf001cfd5f7c3b9206da7100e4499ddb7f35ed75786d109767f2e9bf4a2baf02994ce5684910fd9cfc8bfccc9dd6dce7 +SHA512 (nbdkit-1.42.1.tar.gz) = ff6b171c6e73eb9bec70ef0f565dc16add72dfbef29db147fa639fd0b443a9fe0f72d5f832b1eb8f397d62d66660fb825e29b0314ec9d6670aa1a7aa9c1dbc3d +SHA512 (nbdkit-1.42.1.tar.gz.sig) = 20e1059cdb0d53aeac066e81ee92c49c58cec65dce928f3e11c0213c4e7a9700fa73f2b990efa974be5afc877d2082f85e40e511001ba5e971faa51c9247ec2b From d49e2868b63d82c24a8dfb22d708d7b0544bae57 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 13 Mar 2025 21:38:58 +0000 Subject: [PATCH 246/298] New upstream development branch version 1.43.1 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index d34e528..28667fc 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,10 +51,10 @@ %global verify_tarball_signature 1 # The source directory. -%global source_directory 1.42-stable +%global source_directory 1.43-development Name: nbdkit -Version: 1.42.1 +Version: 1.43.1 Release: 1%{?dist} Summary: NBD server @@ -1512,6 +1512,9 @@ fi %changelog +* Thu Mar 13 2025 Richard W.M. Jones - 1.43.1-1 +- New upstream development branch version 1.43.1 + * Mon Mar 03 2025 Richard W.M. Jones - 1.42.1-1 - New upstream stable branch version 1.42.1 diff --git a/sources b/sources index 84f3c10..e40fd9a 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.42.1.tar.gz) = ff6b171c6e73eb9bec70ef0f565dc16add72dfbef29db147fa639fd0b443a9fe0f72d5f832b1eb8f397d62d66660fb825e29b0314ec9d6670aa1a7aa9c1dbc3d -SHA512 (nbdkit-1.42.1.tar.gz.sig) = 20e1059cdb0d53aeac066e81ee92c49c58cec65dce928f3e11c0213c4e7a9700fa73f2b990efa974be5afc877d2082f85e40e511001ba5e971faa51c9247ec2b +SHA512 (nbdkit-1.43.1.tar.gz) = cd0eb99dabac7891f2c83559e0844e4b4b46170afacb5a9b306c4756931ad796d24f1cca60ec22ecb3d523e7ec5ff6be891dff341c5b13bd2671d6c6817b5add +SHA512 (nbdkit-1.43.1.tar.gz.sig) = 40802d97bd7adc7b48dae503f24403b42de73180fb54c8e3dbdc3e4d3033139070c0b872f9db1e7c63ec2f0f16e24bcc0a53e93107b15cbb2322550599c36a02 From 436da5bf2be076009b535fa43a92e1428195e9ec Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 15 Mar 2025 12:58:00 +0000 Subject: [PATCH 247/298] Add nbdkit-tracing(3) to the devel subpackage --- nbdkit.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/nbdkit.spec b/nbdkit.spec index 28667fc..836e0e9 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -1468,6 +1468,7 @@ fi %{_mandir}/man3/nbdkit-plugin.3* %{_mandir}/man3/nbdkit_*.3* %{_mandir}/man1/nbdkit-release-notes-1.*.1* +%{_mandir}/man3/nbdkit-tracing.3* %{_libdir}/pkgconfig/nbdkit.pc From c310fd3292f3ec3860408b8a0fc0460f595d08c3 Mon Sep 17 00:00:00 2001 From: Tim Landscheidt Date: Wed, 26 Mar 2025 23:08:34 +0000 Subject: [PATCH 248/298] Fix description for nbdkit-selinux --- nbdkit.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 836e0e9..60cbb9a 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,7 +55,7 @@ Name: nbdkit Version: 1.43.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD-3-Clause @@ -742,7 +742,7 @@ BuildRequires: selinux-policy-devel %{?selinux_requires} %description selinux -%{nbdkit} SELinux policy module. +%{name} SELinux policy module. %endif @@ -1513,6 +1513,9 @@ fi %changelog +* Wed Mar 26 2025 Tim Landscheidt - 1.43.1-2 +- Fix description for nbdkit-selinux + * Thu Mar 13 2025 Richard W.M. Jones - 1.43.1-1 - New upstream development branch version 1.43.1 From 8015908b0b80eba8394b0a8f4d94231580b86f22 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 27 Mar 2025 12:53:42 +0000 Subject: [PATCH 249/298] New upstream development branch version 1.43.2 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 60cbb9a..3e7c377 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,8 +54,8 @@ %global source_directory 1.43-development Name: nbdkit -Version: 1.43.1 -Release: 2%{?dist} +Version: 1.43.2 +Release: 1%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1513,6 +1513,9 @@ fi %changelog +* Thu Mar 27 2025 Richard W.M. Jones - 1.43.2-1 +- New upstream development branch version 1.43.2 + * Wed Mar 26 2025 Tim Landscheidt - 1.43.1-2 - Fix description for nbdkit-selinux diff --git a/sources b/sources index e40fd9a..53d005b 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.43.1.tar.gz) = cd0eb99dabac7891f2c83559e0844e4b4b46170afacb5a9b306c4756931ad796d24f1cca60ec22ecb3d523e7ec5ff6be891dff341c5b13bd2671d6c6817b5add -SHA512 (nbdkit-1.43.1.tar.gz.sig) = 40802d97bd7adc7b48dae503f24403b42de73180fb54c8e3dbdc3e4d3033139070c0b872f9db1e7c63ec2f0f16e24bcc0a53e93107b15cbb2322550599c36a02 +SHA512 (nbdkit-1.43.2.tar.gz) = a86f2107975f5ef9616ed1b25e40bb8271e7dfaf99612cf2e5855037dbb97f3dd4bd8405c1147321ece02ee41d845a445b8c719133aed1af2c70eb95fbcae0e2 +SHA512 (nbdkit-1.43.2.tar.gz.sig) = 71f1636866bc17bbe9dae4199e02cf3d5353de750924c23c3c22f6b49bd3f7fac5f09bf1d7ea0310d40f02a19ec2bd434e35f076f8d5fd512124df00d4393881 From 4524ffc41b5974c07c6f6bbb7bade78d5a74c47d Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 31 Mar 2025 10:36:10 +0100 Subject: [PATCH 250/298] New upstream development branch version 1.43.3 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 3e7c377..c46561f 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.43-development Name: nbdkit -Version: 1.43.2 +Version: 1.43.3 Release: 1%{?dist} Summary: NBD server @@ -1513,6 +1513,9 @@ fi %changelog +* Mon Mar 31 2025 Richard W.M. Jones - 1.43.3-1 +- New upstream development branch version 1.43.3 + * Thu Mar 27 2025 Richard W.M. Jones - 1.43.2-1 - New upstream development branch version 1.43.2 diff --git a/sources b/sources index 53d005b..b06229b 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.43.2.tar.gz) = a86f2107975f5ef9616ed1b25e40bb8271e7dfaf99612cf2e5855037dbb97f3dd4bd8405c1147321ece02ee41d845a445b8c719133aed1af2c70eb95fbcae0e2 -SHA512 (nbdkit-1.43.2.tar.gz.sig) = 71f1636866bc17bbe9dae4199e02cf3d5353de750924c23c3c22f6b49bd3f7fac5f09bf1d7ea0310d40f02a19ec2bd434e35f076f8d5fd512124df00d4393881 +SHA512 (nbdkit-1.43.3.tar.gz) = a6da026a6c4b5acc906be29a0375e5b163ecbe08edc2fb1a4ccca858dc2f77ddf18b950ce8bc6dd01aead824ba8e66b4e3bd59ad0adbd3a194f6c8ef1433b3a0 +SHA512 (nbdkit-1.43.3.tar.gz.sig) = 12548d52480f06c6bd0e560fefcdf3f5736ddad6cd09c62e6d560e116b3fdd4d30b850facbdd549c03e4248fe412dbe3115970f4c06298294e17afe54198d3e0 From 8c3449fd387102510bb89b794b48d3a1a2a0d374 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 2 Apr 2025 15:52:22 +0100 Subject: [PATCH 251/298] New upstream development branch version 1.43.4 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index c46561f..297864e 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.43-development Name: nbdkit -Version: 1.43.3 +Version: 1.43.4 Release: 1%{?dist} Summary: NBD server @@ -1513,6 +1513,9 @@ fi %changelog +* Wed Apr 02 2025 Richard W.M. Jones - 1.43.4-1 +- New upstream development branch version 1.43.4 + * Mon Mar 31 2025 Richard W.M. Jones - 1.43.3-1 - New upstream development branch version 1.43.3 diff --git a/sources b/sources index b06229b..21afe83 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.43.3.tar.gz) = a6da026a6c4b5acc906be29a0375e5b163ecbe08edc2fb1a4ccca858dc2f77ddf18b950ce8bc6dd01aead824ba8e66b4e3bd59ad0adbd3a194f6c8ef1433b3a0 -SHA512 (nbdkit-1.43.3.tar.gz.sig) = 12548d52480f06c6bd0e560fefcdf3f5736ddad6cd09c62e6d560e116b3fdd4d30b850facbdd549c03e4248fe412dbe3115970f4c06298294e17afe54198d3e0 +SHA512 (nbdkit-1.43.4.tar.gz) = b534c686e3aad5d214f93885feb03ccff2579b0106d861ccad25724a8694e94a9f70003b6a85233615c48382501c56c2416790f1500a194c47bf2df5849425ad +SHA512 (nbdkit-1.43.4.tar.gz.sig) = ac564bfe7dd8d810ac8767527a24214773800095258fe14e0a4d3f80586c248f135e9d91427e6c17dda876c1deb2542e29cd945984fab2459fd19ca3320b71ea From 5832c60f31e6bce60765bb2c8fc5b632fa53415a Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 10 Apr 2025 21:36:54 +0100 Subject: [PATCH 252/298] New upstream development branch version 1.43.5 New subpackage nbdkit-nfs-plugin --- nbdkit.spec | 29 ++++++++++++++++++++++++++++- sources | 4 ++-- 2 files changed, 30 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 297864e..d2320c1 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.43-development Name: nbdkit -Version: 1.43.4 +Version: 1.43.5 Release: 1%{?dist} Summary: NBD server @@ -111,6 +111,10 @@ BuildRequires: pkgconfig(bzip2) BuildRequires: pkgconfig(libzstd) BuildRequires: pkgconfig(libcurl) BuildRequires: pkgconfig(libnbd) +%if !0%{?rhel} +# We require libnfs >= 6, but the internal version is >= 16 +BuildRequires: pkgconfig(libnfs) >= 16 +%endif BuildRequires: pkgconfig(libssh) BuildRequires: e2fsprogs BuildRequires: pkgconfig(ext2fs) @@ -430,6 +434,16 @@ This package lets you forward NBD connections from %{name} to another NBD server. +%if !0%{?rhel} +%package nfs-plugin +Summary: NFS (Network File Server) plugin for %{name} +Requires: %{name}-server%{?_isa} = %{version}-%{release} + +%description nfs-plugin +This package contains Network File Server (NFS) support for %{name}. +%endif + + %if !0%{?rhel} && 0%{?have_ocaml} %package ocaml-plugin Summary: OCaml plugin for %{name} @@ -1218,6 +1232,15 @@ fi %{_mandir}/man1/nbdkit-nbd-plugin.1* +%if !0%{?rhel} +%files nfs-plugin +%doc README.md +%license LICENSE +%{_libdir}/%{name}/plugins/nbdkit-nfs-plugin.so +%{_mandir}/man1/nbdkit-nfs-plugin.1* +%endif + + %if !0%{?rhel} && 0%{?have_ocaml} %files ocaml-plugin %doc README.md @@ -1513,6 +1536,10 @@ fi %changelog +* Thu Apr 10 2025 Richard W.M. Jones - 1.43.5-1 +- New upstream development branch version 1.43.5 +- New subpackage nbdkit-nfs-plugin + * Wed Apr 02 2025 Richard W.M. Jones - 1.43.4-1 - New upstream development branch version 1.43.4 diff --git a/sources b/sources index 21afe83..c6624c8 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.43.4.tar.gz) = b534c686e3aad5d214f93885feb03ccff2579b0106d861ccad25724a8694e94a9f70003b6a85233615c48382501c56c2416790f1500a194c47bf2df5849425ad -SHA512 (nbdkit-1.43.4.tar.gz.sig) = ac564bfe7dd8d810ac8767527a24214773800095258fe14e0a4d3f80586c248f135e9d91427e6c17dda876c1deb2542e29cd945984fab2459fd19ca3320b71ea +SHA512 (nbdkit-1.43.5.tar.gz) = 8c12cb27627403a251230c0a99ad15d9d41f9b6955e8843e378b5ff0e5be5e271ae1280eb998b3aea232549e3bb7fbf5e49c9ff88263ac18baeabc553880eb26 +SHA512 (nbdkit-1.43.5.tar.gz.sig) = 482f9c9055bd7d3c04cb98357114a027454beff3c7a8b118ab3ff6a537ebecba3c66370608768cfa274d79ee3c363219e3228b9506f810e5f0460f7ad549cb53 From f9af6157fd9c84e38ed881f6b6945b54203816c4 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 1 May 2025 18:52:48 +0100 Subject: [PATCH 253/298] New upstream development branch version 1.43.6 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index d2320c1..1757014 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.43-development Name: nbdkit -Version: 1.43.5 +Version: 1.43.6 Release: 1%{?dist} Summary: NBD server @@ -1536,6 +1536,9 @@ fi %changelog +* Thu May 01 2025 Richard W.M. Jones - 1.43.6-1 +- New upstream development branch version 1.43.6 + * Thu Apr 10 2025 Richard W.M. Jones - 1.43.5-1 - New upstream development branch version 1.43.5 - New subpackage nbdkit-nfs-plugin diff --git a/sources b/sources index c6624c8..45725a8 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.43.5.tar.gz) = 8c12cb27627403a251230c0a99ad15d9d41f9b6955e8843e378b5ff0e5be5e271ae1280eb998b3aea232549e3bb7fbf5e49c9ff88263ac18baeabc553880eb26 -SHA512 (nbdkit-1.43.5.tar.gz.sig) = 482f9c9055bd7d3c04cb98357114a027454beff3c7a8b118ab3ff6a537ebecba3c66370608768cfa274d79ee3c363219e3228b9506f810e5f0460f7ad549cb53 +SHA512 (nbdkit-1.43.6.tar.gz) = f0e01ce8330974d5b21d2fe76ad998214afa08764115ab8226319306debfaed7c12a15a9dfaf9760870c299530e4ba9a479d3e95ffa663767847087bc996ea1a +SHA512 (nbdkit-1.43.6.tar.gz.sig) = 7a011b0ea5a18f553290d7ea60c7be34be14b642267a9f953edd7632fa55b228d327916945d7d42130efdb8537326bdcf208a5ff252ed44930cf9ce58ef29f69 From ef2910918ac8fdad61597bf7498b79a919c3c8c9 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 9 May 2025 15:42:33 +0100 Subject: [PATCH 254/298] New upstream development branch version 1.43.7 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 1757014..58c0261 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.43-development Name: nbdkit -Version: 1.43.6 +Version: 1.43.7 Release: 1%{?dist} Summary: NBD server @@ -1536,6 +1536,9 @@ fi %changelog +* Fri May 09 2025 Richard W.M. Jones - 1.43.7-1 +- New upstream development branch version 1.43.7 + * Thu May 01 2025 Richard W.M. Jones - 1.43.6-1 - New upstream development branch version 1.43.6 diff --git a/sources b/sources index 45725a8..9b4c4b5 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.43.6.tar.gz) = f0e01ce8330974d5b21d2fe76ad998214afa08764115ab8226319306debfaed7c12a15a9dfaf9760870c299530e4ba9a479d3e95ffa663767847087bc996ea1a -SHA512 (nbdkit-1.43.6.tar.gz.sig) = 7a011b0ea5a18f553290d7ea60c7be34be14b642267a9f953edd7632fa55b228d327916945d7d42130efdb8537326bdcf208a5ff252ed44930cf9ce58ef29f69 +SHA512 (nbdkit-1.43.7.tar.gz) = 11a8967c71943cad80584eee2de1b00d18f6c042e6c77794c3eb30f9c1b41b9e4a25d6351ff61f4d797d3c85d4813d6e3aaac1186cc923f929c88407b4c31e23 +SHA512 (nbdkit-1.43.7.tar.gz.sig) = a64fe21d350e3181001b9492538179631e46e50da894c0061872955b26caf2b310ffc062e72ac1ec1de9af68c282eae93b80769812ae42f7c675cacccb33bf18 From 4c9a726723fc93c4a055e3e16ebf51a2e3925cf5 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 12 May 2025 22:47:16 +0100 Subject: [PATCH 255/298] New upstream development branch version 1.43.8 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 58c0261..b5736a4 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.43-development Name: nbdkit -Version: 1.43.7 +Version: 1.43.8 Release: 1%{?dist} Summary: NBD server @@ -1536,6 +1536,9 @@ fi %changelog +* Mon May 12 2025 Richard W.M. Jones - 1.43.8-1 +- New upstream development branch version 1.43.8 + * Fri May 09 2025 Richard W.M. Jones - 1.43.7-1 - New upstream development branch version 1.43.7 diff --git a/sources b/sources index 9b4c4b5..1376bb5 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.43.7.tar.gz) = 11a8967c71943cad80584eee2de1b00d18f6c042e6c77794c3eb30f9c1b41b9e4a25d6351ff61f4d797d3c85d4813d6e3aaac1186cc923f929c88407b4c31e23 -SHA512 (nbdkit-1.43.7.tar.gz.sig) = a64fe21d350e3181001b9492538179631e46e50da894c0061872955b26caf2b310ffc062e72ac1ec1de9af68c282eae93b80769812ae42f7c675cacccb33bf18 +SHA512 (nbdkit-1.43.8.tar.gz) = 52b1ce1270a888e7654d744e0ddd955bfd188da8fc08cad91a0f3eefc1a10e90bb5bd3f78ab31d9b1e7be7cb4cc5a185f4926f200430d3c7920d3d752a1b28f1 +SHA512 (nbdkit-1.43.8.tar.gz.sig) = ab1eed9cc47a63a5eac180ca9ae2de69663919819c777a308fe4b990962f58554cc2d0d2521f817c7c370a988a150cfad485fe881b26271d597d6f5f24c3e401 From 633f6330267d0c9228724bc73b9dab7415e6c5b3 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 17 May 2025 09:29:24 +0100 Subject: [PATCH 256/298] New upstream development branch version 1.43.9 New nbdkit-openonce-filter --- nbdkit.spec | 10 +++++++++- sources | 4 ++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index b5736a4..52ba63f 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.43-development Name: nbdkit -Version: 1.43.8 +Version: 1.43.9 Release: 1%{?dist} Summary: NBD server @@ -636,6 +636,8 @@ nbdkit-nozero-filter Adjust handling of zero requests by plugins. nbdkit-offset-filter Serve an offset and range. +nbdkit-openonce-filter Open the underlying plugin once. + nbdkit-partition-filter Serve a single partition. nbdkit-pause-filter Pause NBD requests. @@ -1358,6 +1360,7 @@ fi %{_libdir}/%{name}/filters/nbdkit-noparallel-filter.so %{_libdir}/%{name}/filters/nbdkit-nozero-filter.so %{_libdir}/%{name}/filters/nbdkit-offset-filter.so +%{_libdir}/%{name}/filters/nbdkit-openonce-filter.so %{_libdir}/%{name}/filters/nbdkit-partition-filter.so %{_libdir}/%{name}/filters/nbdkit-pause-filter.so %{_libdir}/%{name}/filters/nbdkit-protect-filter.so @@ -1403,6 +1406,7 @@ fi %{_mandir}/man1/nbdkit-noparallel-filter.1* %{_mandir}/man1/nbdkit-nozero-filter.1* %{_mandir}/man1/nbdkit-offset-filter.1* +%{_mandir}/man1/nbdkit-openonce-filter.1* %{_mandir}/man1/nbdkit-partition-filter.1* %{_mandir}/man1/nbdkit-pause-filter.1* %{_mandir}/man1/nbdkit-protect-filter.1* @@ -1536,6 +1540,10 @@ fi %changelog +* Sat May 17 2025 Richard W.M. Jones - 1.43.9-1 +- New upstream development branch version 1.43.9 +- New nbdkit-openonce-filter + * Mon May 12 2025 Richard W.M. Jones - 1.43.8-1 - New upstream development branch version 1.43.8 diff --git a/sources b/sources index 1376bb5..c471e23 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.43.8.tar.gz) = 52b1ce1270a888e7654d744e0ddd955bfd188da8fc08cad91a0f3eefc1a10e90bb5bd3f78ab31d9b1e7be7cb4cc5a185f4926f200430d3c7920d3d752a1b28f1 -SHA512 (nbdkit-1.43.8.tar.gz.sig) = ab1eed9cc47a63a5eac180ca9ae2de69663919819c777a308fe4b990962f58554cc2d0d2521f817c7c370a988a150cfad485fe881b26271d597d6f5f24c3e401 +SHA512 (nbdkit-1.43.9.tar.gz) = 203e5b45ab422c132ed571f2baec4413e72d77625cab30a1b9b1cdfe0cf647e44e3b698c4bbff63c7123b26b5666a65fd5e11bb7445b803c67b1d0eca3f77edd +SHA512 (nbdkit-1.43.9.tar.gz.sig) = 005692d225b9b0bb19a3171b56035a0ff56544b532dbc498fda0ba35474eb392f144000c1826dee7bb4a4b34cc70171a6669f15ecad2feb89edae553b77a051e From e83a2d7ea41d78e3ce2f5296b58f4c919419012b Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 2 Jun 2025 15:51:14 +0100 Subject: [PATCH 257/298] New upstream development branch version 1.43.10 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 52ba63f..abfb460 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.43-development Name: nbdkit -Version: 1.43.9 +Version: 1.43.10 Release: 1%{?dist} Summary: NBD server @@ -1540,6 +1540,9 @@ fi %changelog +* Mon Jun 02 2025 Richard W.M. Jones - 1.43.10-1 +- New upstream development branch version 1.43.10 + * Sat May 17 2025 Richard W.M. Jones - 1.43.9-1 - New upstream development branch version 1.43.9 - New nbdkit-openonce-filter diff --git a/sources b/sources index c471e23..fdbdcd8 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.43.9.tar.gz) = 203e5b45ab422c132ed571f2baec4413e72d77625cab30a1b9b1cdfe0cf647e44e3b698c4bbff63c7123b26b5666a65fd5e11bb7445b803c67b1d0eca3f77edd -SHA512 (nbdkit-1.43.9.tar.gz.sig) = 005692d225b9b0bb19a3171b56035a0ff56544b532dbc498fda0ba35474eb392f144000c1826dee7bb4a4b34cc70171a6669f15ecad2feb89edae553b77a051e +SHA512 (nbdkit-1.43.10.tar.gz) = 00c47909a5e139be1e2a521b41bcbd1e417baa2ac1ab15a4a921fc8bc616d26a4fb6fb1e2aa86e5b0297a680bd80dc47598677f14a1809bea578951b9ca4c4ba +SHA512 (nbdkit-1.43.10.tar.gz.sig) = 4a48cd2db6b10c929ea20a73812e1822dee3b7717278d557738ea971cc7a5f22235281bbb30237fa454c94ffd536b30f9db398259932b62c462ced2d83a46949 From 21c4158bda0e992efafd68fcec5e9d049fd6a826 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 5 Jun 2025 13:12:12 +0100 Subject: [PATCH 258/298] New upstream development branch version 1.43.11 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index abfb460..06aa440 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.43-development Name: nbdkit -Version: 1.43.10 +Version: 1.43.11 Release: 1%{?dist} Summary: NBD server @@ -1540,6 +1540,9 @@ fi %changelog +* Thu Jun 05 2025 Richard W.M. Jones - 1.43.11-1 +- New upstream development branch version 1.43.11 + * Mon Jun 02 2025 Richard W.M. Jones - 1.43.10-1 - New upstream development branch version 1.43.10 diff --git a/sources b/sources index fdbdcd8..966f155 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.43.10.tar.gz) = 00c47909a5e139be1e2a521b41bcbd1e417baa2ac1ab15a4a921fc8bc616d26a4fb6fb1e2aa86e5b0297a680bd80dc47598677f14a1809bea578951b9ca4c4ba -SHA512 (nbdkit-1.43.10.tar.gz.sig) = 4a48cd2db6b10c929ea20a73812e1822dee3b7717278d557738ea971cc7a5f22235281bbb30237fa454c94ffd536b30f9db398259932b62c462ced2d83a46949 +SHA512 (nbdkit-1.43.11.tar.gz) = 6cd41d9dde399f749577b111a0bbbb066c8e546e1d36427cff1347fb6f0153d5e1da1f06e41d4bb0f9b325a74142f45a2d6f21d1a32d08ecc74df150c2d0f5f9 +SHA512 (nbdkit-1.43.11.tar.gz.sig) = 51b1acbd160986cd9d783232087f5fb83486558ea744a02808358099a13383c68cb672dead91917eddf189bf5a86dd0bd6ab9f112cc3b40c23a474930f12631b From c26783887c576de543cc80da505a174b442bc788 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Fri, 6 Jun 2025 16:44:34 +0200 Subject: [PATCH 259/298] Rebuilt for Python 3.14 --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 06aa440..d56e645 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,7 +55,7 @@ Name: nbdkit Version: 1.43.11 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1540,6 +1540,9 @@ fi %changelog +* Fri Jun 06 2025 Python Maint - 1.43.11-2 +- Rebuilt for Python 3.14 + * Thu Jun 05 2025 Richard W.M. Jones - 1.43.11-1 - New upstream development branch version 1.43.11 From f1480cff155b1a4c8cebd1dbe665625163069ebd Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 14 Jun 2025 18:09:40 +0100 Subject: [PATCH 260/298] New upstream development branch version 1.43.12 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index d56e645..fe243de 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,8 +54,8 @@ %global source_directory 1.43-development Name: nbdkit -Version: 1.43.11 -Release: 2%{?dist} +Version: 1.43.12 +Release: 1%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1540,6 +1540,9 @@ fi %changelog +* Sat Jun 14 2025 Richard W.M. Jones - 1.43.12-1 +- New upstream development branch version 1.43.12 + * Fri Jun 06 2025 Python Maint - 1.43.11-2 - Rebuilt for Python 3.14 diff --git a/sources b/sources index 966f155..320c8ce 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.43.11.tar.gz) = 6cd41d9dde399f749577b111a0bbbb066c8e546e1d36427cff1347fb6f0153d5e1da1f06e41d4bb0f9b325a74142f45a2d6f21d1a32d08ecc74df150c2d0f5f9 -SHA512 (nbdkit-1.43.11.tar.gz.sig) = 51b1acbd160986cd9d783232087f5fb83486558ea744a02808358099a13383c68cb672dead91917eddf189bf5a86dd0bd6ab9f112cc3b40c23a474930f12631b +SHA512 (nbdkit-1.43.12.tar.gz) = ac44f05fc203c5755003543cc237a8f1e51fe3d28c1f12d750bba9e04e12f16a5c551dde2e01900bf800ec6fcbc3e0bb9614e92774d0a3f38581527b0e931a26 +SHA512 (nbdkit-1.43.12.tar.gz.sig) = c22748156ce95973455ca0611f219e5f802b237995cb680e56a08908ae7b977404cd9c334d4e69e90e3637968a9bf74b647701ad6e46a5b42eedd33de03db37c From 4aa3cbc51da8245a4c51490368a6fa634c8df56b Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 23 Jun 2025 13:50:52 +0100 Subject: [PATCH 261/298] New upstream development branch version 1.43.13 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index fe243de..e95fd29 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.43-development Name: nbdkit -Version: 1.43.12 +Version: 1.43.13 Release: 1%{?dist} Summary: NBD server @@ -1540,6 +1540,9 @@ fi %changelog +* Mon Jun 23 2025 Richard W.M. Jones - 1.43.13-1 +- New upstream development branch version 1.43.13 + * Sat Jun 14 2025 Richard W.M. Jones - 1.43.12-1 - New upstream development branch version 1.43.12 diff --git a/sources b/sources index 320c8ce..b5c9224 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.43.12.tar.gz) = ac44f05fc203c5755003543cc237a8f1e51fe3d28c1f12d750bba9e04e12f16a5c551dde2e01900bf800ec6fcbc3e0bb9614e92774d0a3f38581527b0e931a26 -SHA512 (nbdkit-1.43.12.tar.gz.sig) = c22748156ce95973455ca0611f219e5f802b237995cb680e56a08908ae7b977404cd9c334d4e69e90e3637968a9bf74b647701ad6e46a5b42eedd33de03db37c +SHA512 (nbdkit-1.43.13.tar.gz) = 230cfbdbef256d52c5578d6c09caac2ec9fbce356dca0c3bf4314df22bc8c0c0e9e19447d487e27557f0acb38cec22d4099ffb56ba082956e5585d0e8862bd9e +SHA512 (nbdkit-1.43.13.tar.gz.sig) = 422841842c8d67bf5e2bd53b155bc51479bd6683f304576c2ce5f226bb278b7ea014f4605738ec6afe59ab6fb16cb653be39a717c371856b93e8b1d45b785e58 From ef67eb1f91ce47ba8a4d8ba66eea03c52ddce90e Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 1 Jul 2025 08:32:27 +0100 Subject: [PATCH 262/298] New upstream stable branch version 1.44.0 --- nbdkit.spec | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index e95fd29..bdb421b 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,10 +51,10 @@ %global verify_tarball_signature 1 # The source directory. -%global source_directory 1.43-development +%global source_directory 1.44-stable Name: nbdkit -Version: 1.43.13 +Version: 1.44.0 Release: 1%{?dist} Summary: NBD server @@ -1540,6 +1540,9 @@ fi %changelog +* Tue Jul 01 2025 Richard W.M. Jones - 1.44.0-1 +- New upstream stable branch version 1.44.0 + * Mon Jun 23 2025 Richard W.M. Jones - 1.43.13-1 - New upstream development branch version 1.43.13 From d3ff9bddb93cc6f3c03fb8b37650bec520f23ade Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 5 Jul 2025 08:11:55 +0100 Subject: [PATCH 263/298] Forgot to update sources for previous commit --- sources | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sources b/sources index b5c9224..4b6e8b9 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.43.13.tar.gz) = 230cfbdbef256d52c5578d6c09caac2ec9fbce356dca0c3bf4314df22bc8c0c0e9e19447d487e27557f0acb38cec22d4099ffb56ba082956e5585d0e8862bd9e -SHA512 (nbdkit-1.43.13.tar.gz.sig) = 422841842c8d67bf5e2bd53b155bc51479bd6683f304576c2ce5f226bb278b7ea014f4605738ec6afe59ab6fb16cb653be39a717c371856b93e8b1d45b785e58 +SHA512 (nbdkit-1.44.0.tar.gz) = 87d91a8203fadd96829888d0fe60e0d8c06de2eb2fcc715e710ebf6709befa176bb96d316e4ad8412ea6d8da46f61807d75f6e22eaa8ce986e2341056e4220f5 +SHA512 (nbdkit-1.44.0.tar.gz.sig) = c21fc3c8c51fe89eaec9f979d2a6e61c86568302bad744669e116c26450d7d0e8c82477d7e7bb7d82980c1b887fcf40b6609eae5896396bd70a14a2885ebe7bd From bc3a79b4ecc289fedb41fcd6e0e580f308fd1630 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 5 Jul 2025 08:33:23 +0100 Subject: [PATCH 264/298] New upstream stable branch version 1.44.1 Contains data integrity fix: "server: Fix .zero fallback path" --- nbdkit.spec | 6 +++++- sources | 4 ++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index bdb421b..d0a87b9 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.44-stable Name: nbdkit -Version: 1.44.0 +Version: 1.44.1 Release: 1%{?dist} Summary: NBD server @@ -1540,6 +1540,10 @@ fi %changelog +* Sat Jul 05 2025 Richard W.M. Jones - 1.44.1-1 +- New upstream stable branch version 1.44.1 +- Contains data integrity fix: "server: Fix .zero fallback path" + * Tue Jul 01 2025 Richard W.M. Jones - 1.44.0-1 - New upstream stable branch version 1.44.0 diff --git a/sources b/sources index 4b6e8b9..e6a3393 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.44.0.tar.gz) = 87d91a8203fadd96829888d0fe60e0d8c06de2eb2fcc715e710ebf6709befa176bb96d316e4ad8412ea6d8da46f61807d75f6e22eaa8ce986e2341056e4220f5 -SHA512 (nbdkit-1.44.0.tar.gz.sig) = c21fc3c8c51fe89eaec9f979d2a6e61c86568302bad744669e116c26450d7d0e8c82477d7e7bb7d82980c1b887fcf40b6609eae5896396bd70a14a2885ebe7bd +SHA512 (nbdkit-1.44.1.tar.gz) = 150a31ca7f64b76a4e4cc90d077e88531458f2766c0bb1f6f1ae23176d5c55a2e4dab61be58bd92b166e67fe70b67c9458a04d29978cbb1b89a6fa8ebca4617d +SHA512 (nbdkit-1.44.1.tar.gz.sig) = b987c7cfc0cf4585f3db7c33a19a63ac24b5ea5cf10635c497d2780e70f121fcc82dda983a63ef8464b0c8550dd12811499fd171cf7b368ce1a7f0ddd9b60ae7 From 562d971b43a8e956b7d20481e9590132f2d942dd Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Mon, 7 Jul 2025 16:12:45 +0200 Subject: [PATCH 265/298] Perl 5.42 rebuild --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index d0a87b9..5e7b139 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,7 +55,7 @@ Name: nbdkit Version: 1.44.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1540,6 +1540,9 @@ fi %changelog +* Mon Jul 07 2025 Jitka Plesnikova - 1.44.1-2 +- Perl 5.42 rebuild + * Sat Jul 05 2025 Richard W.M. Jones - 1.44.1-1 - New upstream stable branch version 1.44.1 - Contains data integrity fix: "server: Fix .zero fallback path" From 774f274dd2e6e73865551df20a177a393869fde2 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 8 Jul 2025 21:25:19 +0100 Subject: [PATCH 266/298] New upstream development branch 1.45.1 New nbdkit-count-filter. --- nbdkit.spec | 14 +++++++++++--- sources | 4 ++-- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 5e7b139..2690a65 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,11 +51,11 @@ %global verify_tarball_signature 1 # The source directory. -%global source_directory 1.44-stable +%global source_directory 1.45-development Name: nbdkit -Version: 1.44.1 -Release: 2%{?dist} +Version: 1.45.1 +Release: 1%{?dist} Summary: NBD server License: BSD-3-Clause @@ -592,6 +592,8 @@ nbdkit-cacheextents-filter Cache extents. nbdkit-checkwrite-filter Check writes match contents of plugin. +nbdkit-count-filter Count bytes read, written, zeroed and trimmed. + nbdkit-cow-filter Copy-on-write overlay for read-only plugins. nbdkit-ddrescue-filter Filter for serving from ddrescue dump. @@ -1338,6 +1340,7 @@ fi %{_libdir}/%{name}/filters/nbdkit-cache-filter.so %{_libdir}/%{name}/filters/nbdkit-cacheextents-filter.so %{_libdir}/%{name}/filters/nbdkit-checkwrite-filter.so +%{_libdir}/%{name}/filters/nbdkit-count-filter.so %{_libdir}/%{name}/filters/nbdkit-cow-filter.so %{_libdir}/%{name}/filters/nbdkit-ddrescue-filter.so %{_libdir}/%{name}/filters/nbdkit-delay-filter.so @@ -1384,6 +1387,7 @@ fi %{_mandir}/man1/nbdkit-cache-filter.1* %{_mandir}/man1/nbdkit-cacheextents-filter.1* %{_mandir}/man1/nbdkit-checkwrite-filter.1* +%{_mandir}/man1/nbdkit-count-filter.1* %{_mandir}/man1/nbdkit-cow-filter.1* %{_mandir}/man1/nbdkit-ddrescue-filter.1* %{_mandir}/man1/nbdkit-delay-filter.1* @@ -1540,6 +1544,10 @@ fi %changelog +* Tue Jul 08 2025 Richard W.M. Jones - 1.45.1-1 +- New upstream development branch 1.45.1 +- New nbdkit-count-filter. + * Mon Jul 07 2025 Jitka Plesnikova - 1.44.1-2 - Perl 5.42 rebuild diff --git a/sources b/sources index e6a3393..b08e54c 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.44.1.tar.gz) = 150a31ca7f64b76a4e4cc90d077e88531458f2766c0bb1f6f1ae23176d5c55a2e4dab61be58bd92b166e67fe70b67c9458a04d29978cbb1b89a6fa8ebca4617d -SHA512 (nbdkit-1.44.1.tar.gz.sig) = b987c7cfc0cf4585f3db7c33a19a63ac24b5ea5cf10635c497d2780e70f121fcc82dda983a63ef8464b0c8550dd12811499fd171cf7b368ce1a7f0ddd9b60ae7 +SHA512 (nbdkit-1.45.1.tar.gz) = c17a3c68445c68c3464966c03b19cc9f9bc29f401afa7840d87cfb9790debc34338a362f478ab8d6d75182e75b9f8a999ed6677dabe7a55f956459b4e63a405e +SHA512 (nbdkit-1.45.1.tar.gz.sig) = 8be05f711fe244fdde2645abc144cf2a5762b2f0c0a8aaf377fec6c73a9cb74ea232f35ad32c2a330e8d5d3acf86ff0d95baad729629916835cbfadb93e904f6 From 6eee603e94288f49954d69ed132aed118d7a50c8 Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Wed, 9 Jul 2025 07:54:30 +0200 Subject: [PATCH 267/298] Perl 5.42 re-rebuild updated packages --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 2690a65..bce86cc 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,7 +55,7 @@ Name: nbdkit Version: 1.45.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1544,6 +1544,9 @@ fi %changelog +* Wed Jul 09 2025 Jitka Plesnikova - 1.45.1-2 +- Perl 5.42 re-rebuild updated packages + * Tue Jul 08 2025 Richard W.M. Jones - 1.45.1-1 - New upstream development branch 1.45.1 - New nbdkit-count-filter. From 24fab6428438dac6f7fc9aab47962a001d6d5dea Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 9 Jul 2025 09:34:40 +0100 Subject: [PATCH 268/298] Remove cacheextents filter (deprecated & removed upstream) --- nbdkit.spec | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index bce86cc..a6f388b 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,7 +55,7 @@ Name: nbdkit Version: 1.45.1 -Release: 2%{?dist} +Release: 3%{?dist} Summary: NBD server License: BSD-3-Clause @@ -588,8 +588,6 @@ nbdkit-blocksize-policy-filter Set block size constraints and policy. nbdkit-cache-filter Server-side cache. -nbdkit-cacheextents-filter Cache extents. - nbdkit-checkwrite-filter Check writes match contents of plugin. nbdkit-count-filter Count bytes read, written, zeroed and trimmed. @@ -1338,7 +1336,6 @@ fi %{_libdir}/%{name}/filters/nbdkit-blocksize-filter.so %{_libdir}/%{name}/filters/nbdkit-blocksize-policy-filter.so %{_libdir}/%{name}/filters/nbdkit-cache-filter.so -%{_libdir}/%{name}/filters/nbdkit-cacheextents-filter.so %{_libdir}/%{name}/filters/nbdkit-checkwrite-filter.so %{_libdir}/%{name}/filters/nbdkit-count-filter.so %{_libdir}/%{name}/filters/nbdkit-cow-filter.so @@ -1385,7 +1382,6 @@ fi %{_mandir}/man1/nbdkit-blocksize-filter.1* %{_mandir}/man1/nbdkit-blocksize-policy-filter.1* %{_mandir}/man1/nbdkit-cache-filter.1* -%{_mandir}/man1/nbdkit-cacheextents-filter.1* %{_mandir}/man1/nbdkit-checkwrite-filter.1* %{_mandir}/man1/nbdkit-count-filter.1* %{_mandir}/man1/nbdkit-cow-filter.1* @@ -1544,6 +1540,9 @@ fi %changelog +* Wed Jul 09 2025 Richard W.M. Jones - 1.45.1-3 +- Remove cacheextents filter (deprecated & removed upstream) + * Wed Jul 09 2025 Jitka Plesnikova - 1.45.1-2 - Perl 5.42 re-rebuild updated packages From 35d61ffde23a1fce3bc9459e995740e29ee8e73e Mon Sep 17 00:00:00 2001 From: Jitka Plesnikova Date: Wed, 9 Jul 2025 12:09:35 +0200 Subject: [PATCH 269/298] Perl 5.42 re-rebuild updated packages --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index a6f388b..b2bc91d 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,7 +55,7 @@ Name: nbdkit Version: 1.45.1 -Release: 3%{?dist} +Release: 4%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1540,6 +1540,9 @@ fi %changelog +* Wed Jul 09 2025 Jitka Plesnikova - 1.45.1-4 +- Perl 5.42 re-rebuild updated packages + * Wed Jul 09 2025 Richard W.M. Jones - 1.45.1-3 - Remove cacheextents filter (deprecated & removed upstream) From 3407909a049d0a7f18c176c3a149ed753ea0d63b Mon Sep 17 00:00:00 2001 From: Jerry James Date: Fri, 11 Jul 2025 16:00:47 -0600 Subject: [PATCH 270/298] Rebuild to fix OCaml dependencies --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index b2bc91d..0dede62 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,7 +55,7 @@ Name: nbdkit Version: 1.45.1 -Release: 4%{?dist} +Release: 5%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1540,6 +1540,9 @@ fi %changelog +* Fri Jul 11 2025 Jerry James - 1.45.1-5 +- Rebuild to fix OCaml dependencies + * Wed Jul 09 2025 Jitka Plesnikova - 1.45.1-4 - Perl 5.42 re-rebuild updated packages From 8f1341df5f0dc22d3c76b635b80ed6c3cc527d30 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 23 Jul 2025 16:50:28 +0100 Subject: [PATCH 271/298] New upstream version 1.45.2 New map filter. --- nbdkit.spec | 12 ++++++++++-- sources | 4 ++-- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 0dede62..1448c8c 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,8 +54,8 @@ %global source_directory 1.45-development Name: nbdkit -Version: 1.45.1 -Release: 5%{?dist} +Version: 1.45.2 +Release: 1%{?dist} Summary: NBD server License: BSD-3-Clause @@ -622,6 +622,8 @@ nbdkit-log-filter Log all transactions to a file. nbdkit-luks-filter Read and write LUKS-encrypted disks. +nbdkit-map-filter Remap disk blocks. + nbdkit-multi-conn-filter Enable, emulate or disable multi-conn. nbdkit-nocache-filter Disable cache requests in the underlying plugin. @@ -1353,6 +1355,7 @@ fi %{_libdir}/%{name}/filters/nbdkit-limit-filter.so %{_libdir}/%{name}/filters/nbdkit-log-filter.so %{_libdir}/%{name}/filters/nbdkit-luks-filter.so +%{_libdir}/%{name}/filters/nbdkit-map-filter.so %{_libdir}/%{name}/filters/nbdkit-multi-conn-filter.so %{_libdir}/%{name}/filters/nbdkit-nocache-filter.so %{_libdir}/%{name}/filters/nbdkit-noextents-filter.so @@ -1399,6 +1402,7 @@ fi %{_mandir}/man1/nbdkit-limit-filter.1* %{_mandir}/man1/nbdkit-log-filter.1* %{_mandir}/man1/nbdkit-luks-filter.1* +%{_mandir}/man1/nbdkit-map-filter.1* %{_mandir}/man1/nbdkit-multi-conn-filter.1* %{_mandir}/man1/nbdkit-nocache-filter.1* %{_mandir}/man1/nbdkit-noextents-filter.1* @@ -1540,6 +1544,10 @@ fi %changelog +* Wed Jul 23 2025 Richard W.M. Jones - 1.45.2-1 +- New upstream version 1.45.2 +- New map filter. + * Fri Jul 11 2025 Jerry James - 1.45.1-5 - Rebuild to fix OCaml dependencies diff --git a/sources b/sources index b08e54c..7380dfc 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.45.1.tar.gz) = c17a3c68445c68c3464966c03b19cc9f9bc29f401afa7840d87cfb9790debc34338a362f478ab8d6d75182e75b9f8a999ed6677dabe7a55f956459b4e63a405e -SHA512 (nbdkit-1.45.1.tar.gz.sig) = 8be05f711fe244fdde2645abc144cf2a5762b2f0c0a8aaf377fec6c73a9cb74ea232f35ad32c2a330e8d5d3acf86ff0d95baad729629916835cbfadb93e904f6 +SHA512 (nbdkit-1.45.2.tar.gz) = a727acc2c3b0df827bcb91349dd7e46bb4ce62429c1a7afb4619dc0ee3d5c8c76944177ea0cd040def20a2cb70801197a814d33dee55c5b6eea90ba2757b5cb6 +SHA512 (nbdkit-1.45.2.tar.gz.sig) = f15fe13bf15791a34a2c812e0344bc87f847f211961f1c0e8a3ea7a1d01a8a7e02a14db41af015a846eb2148cfa01ce3d93151ed1854c3fb4bcd66e7554dce4e From 74a2dea81c1d52b72b8d868dee8be1d4934c8d3d Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 29 Jul 2025 12:10:29 +0100 Subject: [PATCH 272/298] New upstream version 1.45.3 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 1448c8c..aee402e 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.45-development Name: nbdkit -Version: 1.45.2 +Version: 1.45.3 Release: 1%{?dist} Summary: NBD server @@ -1544,6 +1544,9 @@ fi %changelog +* Tue Jul 29 2025 Richard W.M. Jones - 1.45.3-1 +- New upstream version 1.45.3 + * Wed Jul 23 2025 Richard W.M. Jones - 1.45.2-1 - New upstream version 1.45.2 - New map filter. diff --git a/sources b/sources index 7380dfc..bf4f0e0 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.45.2.tar.gz) = a727acc2c3b0df827bcb91349dd7e46bb4ce62429c1a7afb4619dc0ee3d5c8c76944177ea0cd040def20a2cb70801197a814d33dee55c5b6eea90ba2757b5cb6 -SHA512 (nbdkit-1.45.2.tar.gz.sig) = f15fe13bf15791a34a2c812e0344bc87f847f211961f1c0e8a3ea7a1d01a8a7e02a14db41af015a846eb2148cfa01ce3d93151ed1854c3fb4bcd66e7554dce4e +SHA512 (nbdkit-1.45.3.tar.gz) = c6d9835473b4453645f7a9dc43c8f5ffaa13030ff17f7b8234dfaf2963a01f465a07222941ec441364aca700dc146b04d0bcb374b7e1f748ac7f091ed7782727 +SHA512 (nbdkit-1.45.3.tar.gz.sig) = 5537f80243bec2f6ee20fd82abf251b66089f3daaa8856715ee60ef5de023337f1f6bddf9626c987443425db69d7b5e7e51a390e30b44c5bf9028f5e56a23543 From a94e98cf511402368de0675b1de8d69d63e23395 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 29 Jul 2025 12:58:24 +0100 Subject: [PATCH 273/298] Add upstream commit to fix test --- ...-test-at-file.sh-Fix-srcdir-builddir.patch | 53 +++++++++++++++++++ nbdkit.spec | 4 ++ 2 files changed, 57 insertions(+) create mode 100644 0001-tests-test-at-file.sh-Fix-srcdir-builddir.patch diff --git a/0001-tests-test-at-file.sh-Fix-srcdir-builddir.patch b/0001-tests-test-at-file.sh-Fix-srcdir-builddir.patch new file mode 100644 index 0000000..b1dcdb6 --- /dev/null +++ b/0001-tests-test-at-file.sh-Fix-srcdir-builddir.patch @@ -0,0 +1,53 @@ +From 8aef52989c6e4cc5f3e40189d426c1f2ddf13862 Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Tue, 29 Jul 2025 12:56:44 +0100 +Subject: [PATCH] tests/test-at-file.sh: Fix srcdir != builddir + +Fixes: commit 05c90e6930d92106f4064ac6c2c56627af8e4c50 +--- + tests/test-at-file.sh | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +diff --git a/tests/test-at-file.sh b/tests/test-at-file.sh +index 7e975aa407..d038f9074e 100755 +--- a/tests/test-at-file.sh ++++ b/tests/test-at-file.sh +@@ -67,7 +67,7 @@ EOF + + # Run each test and check the output is as expected. + +-expected=test-at-file/1.expected ++expected=$srcdir/test-at-file/1.expected + params="@$srcdir/test-at-file/1.input" + + rm -f "$out" +@@ -75,7 +75,7 @@ touch "$out" + nbdkit -fv sh - <<<"$plugin" out="$out" $params --run true + diff -u $expected $out + +-expected=test-at-file/2.expected ++expected=$srcdir/test-at-file/2.expected + params="@$srcdir/test-at-file/2.input" + + rm -f "$out" +@@ -83,7 +83,7 @@ touch "$out" + nbdkit -fv sh - <<<"$plugin" out="$out" $params --run true + diff -u $expected $out + +-expected=test-at-file/3.expected ++expected=$srcdir/test-at-file/3.expected + params="A=1 @$srcdir/test-at-file/3a.input B=2 @$srcdir/test-at-file/3b.input C=3" + + rm -f "$out" +@@ -91,7 +91,7 @@ touch "$out" + nbdkit -fv sh - <<<"$plugin" out="$out" $params --run true + diff -u $expected $out + +-expected=test-at-file/4.expected ++expected=$srcdir/test-at-file/4.expected + params="A=1 @$srcdir/test-at-file/4a.input B=2 @$srcdir/test-at-file/4b.input C=3" + + rm -f "$out" +-- +2.50.1 + diff --git a/nbdkit.spec b/nbdkit.spec index aee402e..3415667 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -86,6 +86,10 @@ Source6: %{modulename}.te Source7: %{modulename}.if Source8: %{modulename}.fc +# Fix for test. +# Upstream in 8aef52989c6e4cc5f3e40189d426c1f2ddf13862. +Patch: 0001-tests-test-at-file.sh-Fix-srcdir-builddir.patch + # For applying the patches: BuildRequires: git From 15795b0ff403f1327173ed578339f808f18e827a Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 11 Aug 2025 14:07:59 +0100 Subject: [PATCH 274/298] New upstream version 1.45.4 --- ...-test-at-file.sh-Fix-srcdir-builddir.patch | 53 ------------------- nbdkit.spec | 9 ++-- sources | 4 +- 3 files changed, 6 insertions(+), 60 deletions(-) delete mode 100644 0001-tests-test-at-file.sh-Fix-srcdir-builddir.patch diff --git a/0001-tests-test-at-file.sh-Fix-srcdir-builddir.patch b/0001-tests-test-at-file.sh-Fix-srcdir-builddir.patch deleted file mode 100644 index b1dcdb6..0000000 --- a/0001-tests-test-at-file.sh-Fix-srcdir-builddir.patch +++ /dev/null @@ -1,53 +0,0 @@ -From 8aef52989c6e4cc5f3e40189d426c1f2ddf13862 Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Tue, 29 Jul 2025 12:56:44 +0100 -Subject: [PATCH] tests/test-at-file.sh: Fix srcdir != builddir - -Fixes: commit 05c90e6930d92106f4064ac6c2c56627af8e4c50 ---- - tests/test-at-file.sh | 8 ++++---- - 1 file changed, 4 insertions(+), 4 deletions(-) - -diff --git a/tests/test-at-file.sh b/tests/test-at-file.sh -index 7e975aa407..d038f9074e 100755 ---- a/tests/test-at-file.sh -+++ b/tests/test-at-file.sh -@@ -67,7 +67,7 @@ EOF - - # Run each test and check the output is as expected. - --expected=test-at-file/1.expected -+expected=$srcdir/test-at-file/1.expected - params="@$srcdir/test-at-file/1.input" - - rm -f "$out" -@@ -75,7 +75,7 @@ touch "$out" - nbdkit -fv sh - <<<"$plugin" out="$out" $params --run true - diff -u $expected $out - --expected=test-at-file/2.expected -+expected=$srcdir/test-at-file/2.expected - params="@$srcdir/test-at-file/2.input" - - rm -f "$out" -@@ -83,7 +83,7 @@ touch "$out" - nbdkit -fv sh - <<<"$plugin" out="$out" $params --run true - diff -u $expected $out - --expected=test-at-file/3.expected -+expected=$srcdir/test-at-file/3.expected - params="A=1 @$srcdir/test-at-file/3a.input B=2 @$srcdir/test-at-file/3b.input C=3" - - rm -f "$out" -@@ -91,7 +91,7 @@ touch "$out" - nbdkit -fv sh - <<<"$plugin" out="$out" $params --run true - diff -u $expected $out - --expected=test-at-file/4.expected -+expected=$srcdir/test-at-file/4.expected - params="A=1 @$srcdir/test-at-file/4a.input B=2 @$srcdir/test-at-file/4b.input C=3" - - rm -f "$out" --- -2.50.1 - diff --git a/nbdkit.spec b/nbdkit.spec index 3415667..db6413d 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.45-development Name: nbdkit -Version: 1.45.3 +Version: 1.45.4 Release: 1%{?dist} Summary: NBD server @@ -86,10 +86,6 @@ Source6: %{modulename}.te Source7: %{modulename}.if Source8: %{modulename}.fc -# Fix for test. -# Upstream in 8aef52989c6e4cc5f3e40189d426c1f2ddf13862. -Patch: 0001-tests-test-at-file.sh-Fix-srcdir-builddir.patch - # For applying the patches: BuildRequires: git @@ -1548,6 +1544,9 @@ fi %changelog +* Mon Aug 11 2025 Richard W.M. Jones - 1.45.4-1 +- New upstream version 1.45.4 + * Tue Jul 29 2025 Richard W.M. Jones - 1.45.3-1 - New upstream version 1.45.3 diff --git a/sources b/sources index bf4f0e0..5b3e302 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.45.3.tar.gz) = c6d9835473b4453645f7a9dc43c8f5ffaa13030ff17f7b8234dfaf2963a01f465a07222941ec441364aca700dc146b04d0bcb374b7e1f748ac7f091ed7782727 -SHA512 (nbdkit-1.45.3.tar.gz.sig) = 5537f80243bec2f6ee20fd82abf251b66089f3daaa8856715ee60ef5de023337f1f6bddf9626c987443425db69d7b5e7e51a390e30b44c5bf9028f5e56a23543 +SHA512 (nbdkit-1.45.4.tar.gz) = 015894500789f743d65264db56e3b13a04fb93183b1aaea00f38a5a1d0407c8a612fd42715135a21f47738d4fb1fc40c80b623aac751c1265e537e7e994bd75b +SHA512 (nbdkit-1.45.4.tar.gz.sig) = 428628d95c2dbc61e4c830493da0f7d3ff3ab32533d95bba1f74e226bca27dcb94e1ef13ed9833598aaec35ff188827a377d551139ad1aa1cbe4fe0e2bec7128 From 29a8d04a48e37869ec3fe2b7864fa2525f87f14f Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 20 Aug 2025 15:30:55 +0100 Subject: [PATCH 275/298] New upstream version 1.45.5. Remove obsolete Obsoletes now this is Fedora 43+. Add new nbdkit-indexed-gzip-filter. --- nbdkit.spec | 13 ++++++++++--- sources | 4 ++-- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index db6413d..8dac8af 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.45-development Name: nbdkit -Version: 1.45.4 +Version: 1.45.5 Release: 1%{?dist} Summary: NBD server @@ -574,8 +574,6 @@ VMware VDDK for accessing VMware disks and servers. %package basic-filters Summary: Basic filters for %{name} Requires: %{name}-server%{?_isa} = %{version}-%{release} -# Remove this in Fedora 43: -Obsoletes: nbdkit-gzip-filter < %{version}-%{release} %description basic-filters This package contains filters for %{name} which only depend on simple @@ -614,6 +612,8 @@ nbdkit-fua-filter Modify flush behaviour in plugins. nbdkit-gzip-filter Decompress a .gz file +nbdkit-indexed-gzip-filter Access .gz contents efficiently. + nbdkit-ip-filter Filter clients by IP address. nbdkit-limit-filter Limit nr clients that can connect concurrently. @@ -1351,6 +1351,7 @@ fi %{_libdir}/%{name}/filters/nbdkit-extentlist-filter.so %{_libdir}/%{name}/filters/nbdkit-fua-filter.so %{_libdir}/%{name}/filters/nbdkit-gzip-filter.so +%{_libdir}/%{name}/filters/nbdkit-indexed-gzip-filter.so %{_libdir}/%{name}/filters/nbdkit-ip-filter.so %{_libdir}/%{name}/filters/nbdkit-limit-filter.so %{_libdir}/%{name}/filters/nbdkit-log-filter.so @@ -1398,6 +1399,7 @@ fi %{_mandir}/man1/nbdkit-extentlist-filter.1* %{_mandir}/man1/nbdkit-fua-filter.1* %{_mandir}/man1/nbdkit-gzip-filter.1* +%{_mandir}/man1/nbdkit-indexed-gzip-filter.1* %{_mandir}/man1/nbdkit-ip-filter.1* %{_mandir}/man1/nbdkit-limit-filter.1* %{_mandir}/man1/nbdkit-log-filter.1* @@ -1544,6 +1546,11 @@ fi %changelog +* Wed Aug 20 2025 Richard W.M. Jones - 1.45.5-1 +- New upstream version 1.45.5. +- Remove obsolete Obsoletes now this is Fedora 43+. +- Add new nbdkit-indexed-gzip-filter. + * Mon Aug 11 2025 Richard W.M. Jones - 1.45.4-1 - New upstream version 1.45.4 diff --git a/sources b/sources index 5b3e302..0c903c4 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.45.4.tar.gz) = 015894500789f743d65264db56e3b13a04fb93183b1aaea00f38a5a1d0407c8a612fd42715135a21f47738d4fb1fc40c80b623aac751c1265e537e7e994bd75b -SHA512 (nbdkit-1.45.4.tar.gz.sig) = 428628d95c2dbc61e4c830493da0f7d3ff3ab32533d95bba1f74e226bca27dcb94e1ef13ed9833598aaec35ff188827a377d551139ad1aa1cbe4fe0e2bec7128 +SHA512 (nbdkit-1.45.5.tar.gz) = 317ab34469921c2b0e8e87de7b1277922102bd0ef3932e1eb2dc21cdd785eb1f867f451899195a22de9e37af23785d4419e17958c3e108a25d86a66b01d32fd2 +SHA512 (nbdkit-1.45.5.tar.gz.sig) = 6103faca577610a92e20707fd1a1ab4462b7f175d786843f59a0df8642d36451070b074c94c9f19b801e1ddae7a1e3b41bf0422cc68ddd186f1b6b7f85d4e2a4 From b966d108a4c25072329ff5be832dc16a378cd061 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 20 Aug 2025 16:54:40 +0100 Subject: [PATCH 276/298] Add upstream fix for 32-bit indexed-gzip filter --- ...ndexed-gzip-Fixes-for-32-bit-support.patch | 216 ++++++++++++++++++ nbdkit.spec | 3 + 2 files changed, 219 insertions(+) create mode 100644 0001-indexed-gzip-Fixes-for-32-bit-support.patch diff --git a/0001-indexed-gzip-Fixes-for-32-bit-support.patch b/0001-indexed-gzip-Fixes-for-32-bit-support.patch new file mode 100644 index 0000000..cb3d6cf --- /dev/null +++ b/0001-indexed-gzip-Fixes-for-32-bit-support.patch @@ -0,0 +1,216 @@ +From 05eea64423f1cd5c12ac4e7932389c64d58ac7fa Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Wed, 20 Aug 2025 16:44:59 +0100 +Subject: [PATCH] indexed-gzip: Fixes for 32-bit support + +On 32-bit i686 nbdkit-indexed-gzip-filter test crashes with: + + realloc(): invalid pointer + +Firstly include consistently. I suspect an off_t 32/64-bit +mismatch causes this. In any case make sure _FILE_OFFSET_BITS is +consistent in all compilation units. + +Also fix printf formatters for off_t, uint64_t and ptrdiff_t. +(https://stackoverflow.com/questions/586928/how-should-i-print-types-like-off-t-and-size-t) + +This change seems to fix the crasher in practice, but I'm not certain +that I have identified the root cause. +--- + filters/indexed-gzip/ig_handle.h | 1 - + filters/indexed-gzip/ig_zran.c | 52 ++++++++++++++++++++--------- + filters/indexed-gzip/indexed_gzip.c | 5 +-- + filters/indexed-gzip/zran.c | 2 ++ + 4 files changed, 41 insertions(+), 19 deletions(-) + +diff --git a/filters/indexed-gzip/ig_handle.h b/filters/indexed-gzip/ig_handle.h +index 168774f55b..3d478eaa57 100644 +--- a/filters/indexed-gzip/ig_handle.h ++++ b/filters/indexed-gzip/ig_handle.h +@@ -54,7 +54,6 @@ + #include "pread.h" + #include "minmax.h" + +- + /* NBDkit filter handle containing the index */ + struct handle { + struct deflate_index *index; +diff --git a/filters/indexed-gzip/ig_zran.c b/filters/indexed-gzip/ig_zran.c +index 88a94884b9..025186292c 100644 +--- a/filters/indexed-gzip/ig_zran.c ++++ b/filters/indexed-gzip/ig_zran.c +@@ -2,7 +2,9 @@ + * Copyright (C) 2005, 2012, 2018, 2023, 2024 Mark Adler + * Copyright (C) 2025 Shasheen Ediriweera + * For conditions of distribution and use, see copyright notice in zlib.h +- * Version 1.6 2 Aug 2024 Mark Adler */ ++ * Version 1.6 2 Aug 2024 Mark Adler ++ */ ++ + #include + + #include +@@ -33,8 +35,9 @@ + int ig_deflate_index_build(nbdkit_next *next, void* handle, off_t span, int* nbdkit_err) { + struct handle *h = handle; + +- nbdkit_debug("ig_deflate_index_build: starting with span=%ld, compressed_size=%lu", +- span, h->compressed_size); ++ nbdkit_debug("ig_deflate_index_build: " ++ "starting with span=%jd, compressed_size=%" PRIu64, ++ (intmax_t) span, h->compressed_size); + + // Create and initialize the index list. + struct deflate_index *index = malloc(sizeof(struct deflate_index)); +@@ -67,7 +70,11 @@ int ig_deflate_index_build(nbdkit_next *next, void* handle, off_t span, int* nbd + // Print how much of the file has been decompressed, for external applications to track progress of this long-lived operation + float new_progress = (float)totin / (float)h->compressed_size; + if (new_progress - decompression_progress > progress_print_threshold) { +- nbdkit_debug("ig_deflate_index_extract: total_in=%ld, compressed_size=%ld, progress=%f", index->strm.total_in, h->compressed_size, decompression_progress); ++ nbdkit_debug("ig_deflate_index_extract: " ++ "total_in=%ld, compressed_size=%" PRIu64 ", " ++ "progress=%f", ++ index->strm.total_in, h->compressed_size, ++ decompression_progress); + decompression_progress = new_progress; + } + +@@ -144,8 +151,9 @@ int ig_deflate_index_build(nbdkit_next *next, void* handle, off_t span, int* nbd + // very start for the first access point, or there has been span or + // more uncompressed bytes since the last access point, so we want + // to add an access point here. +- nbdkit_debug("ig_deflate_index_build: adding access point at totout=%ld, have=%d", +- totout, index->have); ++ nbdkit_debug("ig_deflate_index_build: " ++ "adding access point at totout=%jd, have=%d", ++ (intmax_t) totout, index->have); + index = add_point(index, totin - index->strm.avail_in, totout, beg, + win); + if (index == NULL) { +@@ -184,8 +192,9 @@ int ig_deflate_index_build(nbdkit_next *next, void* handle, off_t span, int* nbd + index->mode = mode; + index->length = totout; + h->index = index; +- nbdkit_debug("ig_deflate_index_build: Successfully completed indexation, have=%d, length=%ld", +- index->have, totout); ++ nbdkit_debug("ig_deflate_index_build: " ++ "successfully completed indexation, have=%d, length=%jd", ++ index->have, (intmax_t) totout); + return index->have; + } + +@@ -194,7 +203,9 @@ ptrdiff_t ig_deflate_index_extract(nbdkit_next *next, void *handle, off_t offset + struct handle *h = handle; + struct deflate_index* index = h->index; + +- nbdkit_debug("ig_deflate_index_extract: starting with offset=%ld, len=%zu", offset, len); ++ nbdkit_debug("ig_deflate_index_extract: " ++ "starting with offset=%jd, len=%zu", ++ (intmax_t) offset, len); + + // Do a quick sanity check on the index. + if (index == NULL || index->have < 1 || index->list[0].out != 0 || +@@ -206,8 +217,10 @@ ptrdiff_t ig_deflate_index_extract(nbdkit_next *next, void *handle, off_t offset + + // If nothing to extract, return zero bytes extracted. + if (len == 0 || offset < 0 || offset >= index->length) { +- nbdkit_debug("ig_deflate_index_extract: nothing to extract - len=%zu, offset=%ld, index->length=%ld", +- len, offset, index->length); ++ nbdkit_debug("ig_deflate_index_extract: " ++ "nothing to extract - len=%zu, offset=%jd, " ++ "index->length=%jd", ++ len, (intmax_t) offset, (intmax_t) index->length); + return 0; + } + +@@ -223,8 +236,10 @@ ptrdiff_t ig_deflate_index_extract(nbdkit_next *next, void *handle, off_t offset + } + point += lo; + +- nbdkit_debug("ig_deflate_index_extract: found access point %d - point->in=%ld, point->out=%ld, point->bits=%d", +- lo, point->in, point->out, point->bits); ++ nbdkit_debug("ig_deflate_index_extract: " ++ "found access point %d - point->in=%jd, point->out=%jd, " ++ "point->bits=%d", ++ lo, (intmax_t) point->in, (intmax_t) point->out, point->bits); + + // Initialize the input file and prime the inflate engine to start there. + off_t start_byte = point->in - (point->bits ? 1 : 0); +@@ -232,7 +247,9 @@ ptrdiff_t ig_deflate_index_extract(nbdkit_next *next, void *handle, off_t offset + index->strm.avail_in = 0; + int ret = inflateReset2(&index->strm, RAW); + index->strm.total_in = start_byte; +- nbdkit_debug("ig_deflate_index_extract: inflateReset2 returned %d, start_byte=%ld", ret, start_byte); ++ nbdkit_debug("ig_deflate_index_extract: " ++ "inflateReset2 returned %d, start_byte=%jd", ++ ret, (intmax_t) start_byte); + if (ret != Z_OK) + return ret; + if (point->bits) { +@@ -248,7 +265,9 @@ ptrdiff_t ig_deflate_index_extract(nbdkit_next *next, void *handle, off_t offset + offset -= point->out; // number of bytes to skip to get to offset + size_t left = len; // number of bytes left to read after offset + +- nbdkit_debug("ig_deflate_index_extract: adjusted offset=%ld, left=%zu", offset, left); ++ nbdkit_debug("ig_deflate_index_extract: " ++ "adjusted offset=%jd, left=%zu", ++ (intmax_t) offset, left); + + do { + if (offset) { +@@ -362,7 +381,8 @@ ptrdiff_t ig_deflate_index_extract(nbdkit_next *next, void *handle, off_t offset + + // Return the number of uncompressed bytes read into buf, or the error. + ptrdiff_t result = ret == Z_OK || ret == Z_STREAM_END ? len - left : ret; +- nbdkit_debug("ig_deflate_index_extract: completed with result=%ld, ret=%d, len=%zu, left=%zu", ++ nbdkit_debug("ig_deflate_index_extract: " ++ "completed with result=%td, ret=%d, len=%zu, left=%zu", + result, ret, len, left); + return result; + } +diff --git a/filters/indexed-gzip/indexed_gzip.c b/filters/indexed-gzip/indexed_gzip.c +index 87c08f8e57..f47e41ecdb 100644 +--- a/filters/indexed-gzip/indexed_gzip.c ++++ b/filters/indexed-gzip/indexed_gzip.c +@@ -31,7 +31,6 @@ + */ + + #include +-#include + + #include + #include +@@ -41,6 +40,7 @@ + #include + #include + #include ++#include + #include + #include + #include +@@ -309,7 +309,8 @@ indexed_gzip_pread(nbdkit_next *next, void *handle, + default: + // + *err = EIO; +- nbdkit_error(FILTER_NAME ": error %ld while extracting value\n", len); ++ nbdkit_error(FILTER_NAME ": error %jd while extracting value\n", ++ (intmax_t) len); + } + return -1; + } +diff --git a/filters/indexed-gzip/zran.c b/filters/indexed-gzip/zran.c +index 5c924dfebe..6a6e087e28 100644 +--- a/filters/indexed-gzip/zran.c ++++ b/filters/indexed-gzip/zran.c +@@ -60,6 +60,8 @@ + // use of pointers in the state. The approach here allows for storage of the + // index in a file. + ++#include ++ + #include + #include + #include +-- +2.50.1 + diff --git a/nbdkit.spec b/nbdkit.spec index 8dac8af..c8e04f0 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -86,6 +86,9 @@ Source6: %{modulename}.te Source7: %{modulename}.if Source8: %{modulename}.fc +# Upstream fix for 32-bit indexed-gzip filter. +Patch: 0001-indexed-gzip-Fixes-for-32-bit-support.patch + # For applying the patches: BuildRequires: git From 397329a12e02d5b9ca75916f364b07b0003727a6 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 23 Aug 2025 17:19:29 +0100 Subject: [PATCH 277/298] New upstream version 1.45.6 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index c8e04f0..1365935 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.45-development Name: nbdkit -Version: 1.45.5 +Version: 1.45.6 Release: 1%{?dist} Summary: NBD server @@ -1549,8 +1549,11 @@ fi %changelog +* Sat Aug 23 2025 Richard W.M. Jones - 1.45.6-1 +- New upstream version 1.45.6 + * Wed Aug 20 2025 Richard W.M. Jones - 1.45.5-1 -- New upstream version 1.45.5. +- New upstream version 1.45.5 - Remove obsolete Obsoletes now this is Fedora 43+. - Add new nbdkit-indexed-gzip-filter. diff --git a/sources b/sources index 0c903c4..5b4fb5b 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.45.5.tar.gz) = 317ab34469921c2b0e8e87de7b1277922102bd0ef3932e1eb2dc21cdd785eb1f867f451899195a22de9e37af23785d4419e17958c3e108a25d86a66b01d32fd2 -SHA512 (nbdkit-1.45.5.tar.gz.sig) = 6103faca577610a92e20707fd1a1ab4462b7f175d786843f59a0df8642d36451070b074c94c9f19b801e1ddae7a1e3b41bf0422cc68ddd186f1b6b7f85d4e2a4 +SHA512 (nbdkit-1.45.6.tar.gz) = 57612e7cd78cb296237a2a2c46cc5983dbdf489a5661c462bbe3950a92000cd4aea6e6e45499954391d8a0f10a0f4656fe4313e23ec5c0a2915930a93318fb27 +SHA512 (nbdkit-1.45.6.tar.gz.sig) = 935e444f9677fb2ac432105a9e483b42948c792105db631be063d84e8895926d26d62dac8f83652d55e469b93a29313d76b8e2c3ed66ffa98c9d340610c61c8f From 812ce9e3f2e5e06dea4e7e6a4d2bfb27fbd39b44 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 23 Aug 2025 17:30:58 +0100 Subject: [PATCH 278/298] Remove upstream patch --- ...ndexed-gzip-Fixes-for-32-bit-support.patch | 216 ------------------ nbdkit.spec | 3 - 2 files changed, 219 deletions(-) delete mode 100644 0001-indexed-gzip-Fixes-for-32-bit-support.patch diff --git a/0001-indexed-gzip-Fixes-for-32-bit-support.patch b/0001-indexed-gzip-Fixes-for-32-bit-support.patch deleted file mode 100644 index cb3d6cf..0000000 --- a/0001-indexed-gzip-Fixes-for-32-bit-support.patch +++ /dev/null @@ -1,216 +0,0 @@ -From 05eea64423f1cd5c12ac4e7932389c64d58ac7fa Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Wed, 20 Aug 2025 16:44:59 +0100 -Subject: [PATCH] indexed-gzip: Fixes for 32-bit support - -On 32-bit i686 nbdkit-indexed-gzip-filter test crashes with: - - realloc(): invalid pointer - -Firstly include consistently. I suspect an off_t 32/64-bit -mismatch causes this. In any case make sure _FILE_OFFSET_BITS is -consistent in all compilation units. - -Also fix printf formatters for off_t, uint64_t and ptrdiff_t. -(https://stackoverflow.com/questions/586928/how-should-i-print-types-like-off-t-and-size-t) - -This change seems to fix the crasher in practice, but I'm not certain -that I have identified the root cause. ---- - filters/indexed-gzip/ig_handle.h | 1 - - filters/indexed-gzip/ig_zran.c | 52 ++++++++++++++++++++--------- - filters/indexed-gzip/indexed_gzip.c | 5 +-- - filters/indexed-gzip/zran.c | 2 ++ - 4 files changed, 41 insertions(+), 19 deletions(-) - -diff --git a/filters/indexed-gzip/ig_handle.h b/filters/indexed-gzip/ig_handle.h -index 168774f55b..3d478eaa57 100644 ---- a/filters/indexed-gzip/ig_handle.h -+++ b/filters/indexed-gzip/ig_handle.h -@@ -54,7 +54,6 @@ - #include "pread.h" - #include "minmax.h" - -- - /* NBDkit filter handle containing the index */ - struct handle { - struct deflate_index *index; -diff --git a/filters/indexed-gzip/ig_zran.c b/filters/indexed-gzip/ig_zran.c -index 88a94884b9..025186292c 100644 ---- a/filters/indexed-gzip/ig_zran.c -+++ b/filters/indexed-gzip/ig_zran.c -@@ -2,7 +2,9 @@ - * Copyright (C) 2005, 2012, 2018, 2023, 2024 Mark Adler - * Copyright (C) 2025 Shasheen Ediriweera - * For conditions of distribution and use, see copyright notice in zlib.h -- * Version 1.6 2 Aug 2024 Mark Adler */ -+ * Version 1.6 2 Aug 2024 Mark Adler -+ */ -+ - #include - - #include -@@ -33,8 +35,9 @@ - int ig_deflate_index_build(nbdkit_next *next, void* handle, off_t span, int* nbdkit_err) { - struct handle *h = handle; - -- nbdkit_debug("ig_deflate_index_build: starting with span=%ld, compressed_size=%lu", -- span, h->compressed_size); -+ nbdkit_debug("ig_deflate_index_build: " -+ "starting with span=%jd, compressed_size=%" PRIu64, -+ (intmax_t) span, h->compressed_size); - - // Create and initialize the index list. - struct deflate_index *index = malloc(sizeof(struct deflate_index)); -@@ -67,7 +70,11 @@ int ig_deflate_index_build(nbdkit_next *next, void* handle, off_t span, int* nbd - // Print how much of the file has been decompressed, for external applications to track progress of this long-lived operation - float new_progress = (float)totin / (float)h->compressed_size; - if (new_progress - decompression_progress > progress_print_threshold) { -- nbdkit_debug("ig_deflate_index_extract: total_in=%ld, compressed_size=%ld, progress=%f", index->strm.total_in, h->compressed_size, decompression_progress); -+ nbdkit_debug("ig_deflate_index_extract: " -+ "total_in=%ld, compressed_size=%" PRIu64 ", " -+ "progress=%f", -+ index->strm.total_in, h->compressed_size, -+ decompression_progress); - decompression_progress = new_progress; - } - -@@ -144,8 +151,9 @@ int ig_deflate_index_build(nbdkit_next *next, void* handle, off_t span, int* nbd - // very start for the first access point, or there has been span or - // more uncompressed bytes since the last access point, so we want - // to add an access point here. -- nbdkit_debug("ig_deflate_index_build: adding access point at totout=%ld, have=%d", -- totout, index->have); -+ nbdkit_debug("ig_deflate_index_build: " -+ "adding access point at totout=%jd, have=%d", -+ (intmax_t) totout, index->have); - index = add_point(index, totin - index->strm.avail_in, totout, beg, - win); - if (index == NULL) { -@@ -184,8 +192,9 @@ int ig_deflate_index_build(nbdkit_next *next, void* handle, off_t span, int* nbd - index->mode = mode; - index->length = totout; - h->index = index; -- nbdkit_debug("ig_deflate_index_build: Successfully completed indexation, have=%d, length=%ld", -- index->have, totout); -+ nbdkit_debug("ig_deflate_index_build: " -+ "successfully completed indexation, have=%d, length=%jd", -+ index->have, (intmax_t) totout); - return index->have; - } - -@@ -194,7 +203,9 @@ ptrdiff_t ig_deflate_index_extract(nbdkit_next *next, void *handle, off_t offset - struct handle *h = handle; - struct deflate_index* index = h->index; - -- nbdkit_debug("ig_deflate_index_extract: starting with offset=%ld, len=%zu", offset, len); -+ nbdkit_debug("ig_deflate_index_extract: " -+ "starting with offset=%jd, len=%zu", -+ (intmax_t) offset, len); - - // Do a quick sanity check on the index. - if (index == NULL || index->have < 1 || index->list[0].out != 0 || -@@ -206,8 +217,10 @@ ptrdiff_t ig_deflate_index_extract(nbdkit_next *next, void *handle, off_t offset - - // If nothing to extract, return zero bytes extracted. - if (len == 0 || offset < 0 || offset >= index->length) { -- nbdkit_debug("ig_deflate_index_extract: nothing to extract - len=%zu, offset=%ld, index->length=%ld", -- len, offset, index->length); -+ nbdkit_debug("ig_deflate_index_extract: " -+ "nothing to extract - len=%zu, offset=%jd, " -+ "index->length=%jd", -+ len, (intmax_t) offset, (intmax_t) index->length); - return 0; - } - -@@ -223,8 +236,10 @@ ptrdiff_t ig_deflate_index_extract(nbdkit_next *next, void *handle, off_t offset - } - point += lo; - -- nbdkit_debug("ig_deflate_index_extract: found access point %d - point->in=%ld, point->out=%ld, point->bits=%d", -- lo, point->in, point->out, point->bits); -+ nbdkit_debug("ig_deflate_index_extract: " -+ "found access point %d - point->in=%jd, point->out=%jd, " -+ "point->bits=%d", -+ lo, (intmax_t) point->in, (intmax_t) point->out, point->bits); - - // Initialize the input file and prime the inflate engine to start there. - off_t start_byte = point->in - (point->bits ? 1 : 0); -@@ -232,7 +247,9 @@ ptrdiff_t ig_deflate_index_extract(nbdkit_next *next, void *handle, off_t offset - index->strm.avail_in = 0; - int ret = inflateReset2(&index->strm, RAW); - index->strm.total_in = start_byte; -- nbdkit_debug("ig_deflate_index_extract: inflateReset2 returned %d, start_byte=%ld", ret, start_byte); -+ nbdkit_debug("ig_deflate_index_extract: " -+ "inflateReset2 returned %d, start_byte=%jd", -+ ret, (intmax_t) start_byte); - if (ret != Z_OK) - return ret; - if (point->bits) { -@@ -248,7 +265,9 @@ ptrdiff_t ig_deflate_index_extract(nbdkit_next *next, void *handle, off_t offset - offset -= point->out; // number of bytes to skip to get to offset - size_t left = len; // number of bytes left to read after offset - -- nbdkit_debug("ig_deflate_index_extract: adjusted offset=%ld, left=%zu", offset, left); -+ nbdkit_debug("ig_deflate_index_extract: " -+ "adjusted offset=%jd, left=%zu", -+ (intmax_t) offset, left); - - do { - if (offset) { -@@ -362,7 +381,8 @@ ptrdiff_t ig_deflate_index_extract(nbdkit_next *next, void *handle, off_t offset - - // Return the number of uncompressed bytes read into buf, or the error. - ptrdiff_t result = ret == Z_OK || ret == Z_STREAM_END ? len - left : ret; -- nbdkit_debug("ig_deflate_index_extract: completed with result=%ld, ret=%d, len=%zu, left=%zu", -+ nbdkit_debug("ig_deflate_index_extract: " -+ "completed with result=%td, ret=%d, len=%zu, left=%zu", - result, ret, len, left); - return result; - } -diff --git a/filters/indexed-gzip/indexed_gzip.c b/filters/indexed-gzip/indexed_gzip.c -index 87c08f8e57..f47e41ecdb 100644 ---- a/filters/indexed-gzip/indexed_gzip.c -+++ b/filters/indexed-gzip/indexed_gzip.c -@@ -31,7 +31,6 @@ - */ - - #include --#include - - #include - #include -@@ -41,6 +40,7 @@ - #include - #include - #include -+#include - #include - #include - #include -@@ -309,7 +309,8 @@ indexed_gzip_pread(nbdkit_next *next, void *handle, - default: - // - *err = EIO; -- nbdkit_error(FILTER_NAME ": error %ld while extracting value\n", len); -+ nbdkit_error(FILTER_NAME ": error %jd while extracting value\n", -+ (intmax_t) len); - } - return -1; - } -diff --git a/filters/indexed-gzip/zran.c b/filters/indexed-gzip/zran.c -index 5c924dfebe..6a6e087e28 100644 ---- a/filters/indexed-gzip/zran.c -+++ b/filters/indexed-gzip/zran.c -@@ -60,6 +60,8 @@ - // use of pointers in the state. The approach here allows for storage of the - // index in a file. - -+#include -+ - #include - #include - #include --- -2.50.1 - diff --git a/nbdkit.spec b/nbdkit.spec index 1365935..8b3781b 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -86,9 +86,6 @@ Source6: %{modulename}.te Source7: %{modulename}.if Source8: %{modulename}.fc -# Upstream fix for 32-bit indexed-gzip filter. -Patch: 0001-indexed-gzip-Fixes-for-32-bit-support.patch - # For applying the patches: BuildRequires: git From f3f6bab39f6960b5068eb32283b1046ce631ecd7 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 26 Aug 2025 18:29:54 +0100 Subject: [PATCH 279/298] New upstream version 1.45.7 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 8b3781b..b1f4601 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.45-development Name: nbdkit -Version: 1.45.6 +Version: 1.45.7 Release: 1%{?dist} Summary: NBD server @@ -1546,6 +1546,9 @@ fi %changelog +* Tue Aug 26 2025 Richard W.M. Jones - 1.45.7-1 +- New upstream version 1.45.7 + * Sat Aug 23 2025 Richard W.M. Jones - 1.45.6-1 - New upstream version 1.45.6 diff --git a/sources b/sources index 5b4fb5b..e9292d4 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.45.6.tar.gz) = 57612e7cd78cb296237a2a2c46cc5983dbdf489a5661c462bbe3950a92000cd4aea6e6e45499954391d8a0f10a0f4656fe4313e23ec5c0a2915930a93318fb27 -SHA512 (nbdkit-1.45.6.tar.gz.sig) = 935e444f9677fb2ac432105a9e483b42948c792105db631be063d84e8895926d26d62dac8f83652d55e469b93a29313d76b8e2c3ed66ffa98c9d340610c61c8f +SHA512 (nbdkit-1.45.7.tar.gz) = 0dae8cd809e40f8a67d92e1fd49e8956873cd22037e0d68773392c75eab8357731df67afa48742849f92384edf5ec402fe4195f97ddf4045a250c584500a8448 +SHA512 (nbdkit-1.45.7.tar.gz.sig) = 2239a0a5dbc175a2b9a3d619babbd10a810d534721c84bbdc893d180d674ae5b5f383756b24a6b9fdb1ac3116f7a99e9d4818b5525e8d8ffa33a1a10d12fdccb From 99f216ae7cd814f3fcfc46afa5aeeb88619270e6 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 29 Aug 2025 15:08:13 +0100 Subject: [PATCH 280/298] Unify Fedora and RHEL 10.2 spec files --- nbdkit.spec | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index b1f4601..35203ee 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -126,7 +126,10 @@ BuildRequires: pkgconfig(libtorrent-rasterbar) %if 0%{?have_blkio} BuildRequires: pkgconfig(blkio) %endif -BuildRequires: bash-completion, bash-completion-devel +BuildRequires: bash-completion +%if !0%{?rhel} +BuildRequires: bash-completion-devel +%endif BuildRequires: perl-devel BuildRequires: perl(ExtUtils::Embed) %if 0%{?rhel} == 8 @@ -1513,8 +1516,13 @@ fi %files bash-completion %license LICENSE +%if !0%{?rhel} %dir %{bash_completions_dir} %{bash_completions_dir}/nbdkit +%else +%dir %{_datadir}/bash-completion/completions +%{_datadir}/bash-completion/completions/nbdkit +%endif %if 0%{?with_selinux} From 6e2204c39a1a8b284d4ffabbf4c54d9b7bfcfa28 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 13 Sep 2025 12:18:13 +0100 Subject: [PATCH 281/298] New upstream version 1.45.8 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 35203ee..3d9a5d3 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.45-development Name: nbdkit -Version: 1.45.7 +Version: 1.45.8 Release: 1%{?dist} Summary: NBD server @@ -1554,6 +1554,9 @@ fi %changelog +* Sat Sep 13 2025 Richard W.M. Jones - 1.45.8-1 +- New upstream version 1.45.8 + * Tue Aug 26 2025 Richard W.M. Jones - 1.45.7-1 - New upstream version 1.45.7 diff --git a/sources b/sources index e9292d4..b2cfd43 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.45.7.tar.gz) = 0dae8cd809e40f8a67d92e1fd49e8956873cd22037e0d68773392c75eab8357731df67afa48742849f92384edf5ec402fe4195f97ddf4045a250c584500a8448 -SHA512 (nbdkit-1.45.7.tar.gz.sig) = 2239a0a5dbc175a2b9a3d619babbd10a810d534721c84bbdc893d180d674ae5b5f383756b24a6b9fdb1ac3116f7a99e9d4818b5525e8d8ffa33a1a10d12fdccb +SHA512 (nbdkit-1.45.8.tar.gz) = 1e94b4cc4c562ae51b2f2b441f7ecce958f5c833a964a7bbb33ff612753c3e6b4c4941b6908b3d6f039bd34f2253503df7b5df70590d62572321d1ec15f34e48 +SHA512 (nbdkit-1.45.8.tar.gz.sig) = e1b15784decc59e166e4a23982f648cb39d6dea9e3e83764420af2e33ef80b40e0f6ed12d0cc179a958280e1897d5f44186893ea8af9964e4b9bf867e4bbd232 From 6950f7b1a0609af98bb59a4710e6982cd1505e7c Mon Sep 17 00:00:00 2001 From: Yaakov Selkowitz Date: Thu, 18 Sep 2025 13:08:54 -0400 Subject: [PATCH 282/298] Fix bash-completion conditional ELN (the future RHEL 11) tracks rawhide and therefore also has bash-completion-devel and the %bash_completions_dir macro. --- nbdkit.spec | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 3d9a5d3..9577db1 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -127,7 +127,7 @@ BuildRequires: pkgconfig(libtorrent-rasterbar) BuildRequires: pkgconfig(blkio) %endif BuildRequires: bash-completion -%if !0%{?rhel} +%if 0%{?fedora} || 0%{?rhel} >= 11 BuildRequires: bash-completion-devel %endif BuildRequires: perl-devel @@ -1516,7 +1516,7 @@ fi %files bash-completion %license LICENSE -%if !0%{?rhel} +%if 0%{?fedora} || 0%{?rhel} >= 11 %dir %{bash_completions_dir} %{bash_completions_dir}/nbdkit %else From 674da52cdb21ed5f3259ceb1e43617de7d9beb95 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20P=2E=20Berrang=C3=A9?= Date: Thu, 2 Oct 2025 12:37:10 +0100 Subject: [PATCH 283/298] Remove dep on QEMU on i686 arch MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Ideally nbdkit would ExcludeArch for i686, however, a couple of packages depend on it still $ ./leafdrop nbdkit nbdkit is BuildRequired by: - poke - virt-p2v nbdkit-basic-filters is BuildRequired by: - virt-v2v nbdkit-basic-plugins is BuildRequired by: - poke - virt-v2v nbdkit-server is BuildRequired by: - virt-v2v NO: Package nbdkit is not a leaf package on i686. Rather than chase that deps chain, it is simpler to disable install of the QEMU packages as they're only used in the test suite, and all the test programs auto-skip if the required binaries are not present. The only issue is an oversight in the tests/Makefile.am which assumes qemu-img exists. https://gitlab.com/nbdkit/nbdkit/-/issues/30 Temporarily disable tests entirely on %{ix86} until that bug is addressed. Signed-off-by: Daniel P. Berrangé --- nbdkit.spec | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 9577db1..49fe236 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -45,7 +45,8 @@ # If the test suite is broken on a particular architecture, document # it as a bug and add it to this list. -%global broken_test_arches NONE +# https://gitlab.com/nbdkit/nbdkit/-/issues/30 +%global broken_test_arches %{ix86} # If we should verify tarball signature with GPGv2. %global verify_tarball_signature 1 @@ -55,7 +56,7 @@ Name: nbdkit Version: 1.45.8 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD-3-Clause @@ -167,9 +168,11 @@ BuildRequires: /usr/bin/lzip BuildRequires: /usr/bin/nbdcopy BuildRequires: /usr/bin/nbdinfo BuildRequires: /usr/bin/nbdsh +%ifnarch %{ix86} BuildRequires: /usr/bin/qemu-img BuildRequires: /usr/bin/qemu-io BuildRequires: /usr/bin/qemu-nbd +%endif BuildRequires: /usr/sbin/sfdisk %if !0%{?rhel} BuildRequires: /usr/bin/socat @@ -1554,6 +1557,9 @@ fi %changelog +* Thu Oct 2 2025 Daniel P. Berrangé - 1.45.8-2 +- Stop using QEMU for tests on 32-bit + * Sat Sep 13 2025 Richard W.M. Jones - 1.45.8-1 - New upstream version 1.45.8 From 55162a084d089d5829c3b34c0a22836d723fae58 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 3 Oct 2025 11:11:42 +0100 Subject: [PATCH 284/298] New upstream version 1.45.9 Reenable the tests on all arches, since we can now handle missing qemu-img --- nbdkit.spec | 11 +++++++---- sources | 4 ++-- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 49fe236..665fee4 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -45,8 +45,7 @@ # If the test suite is broken on a particular architecture, document # it as a bug and add it to this list. -# https://gitlab.com/nbdkit/nbdkit/-/issues/30 -%global broken_test_arches %{ix86} +%global broken_test_arches NONE # If we should verify tarball signature with GPGv2. %global verify_tarball_signature 1 @@ -55,8 +54,8 @@ %global source_directory 1.45-development Name: nbdkit -Version: 1.45.8 -Release: 2%{?dist} +Version: 1.45.9 +Release: 1%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1557,6 +1556,10 @@ fi %changelog +* Fri Oct 3 2025 Richard W.M. Jones - 1.45.9-1 +- New upstream version 1.45.9 +- Reenable the tests on all arches, since we can now handle missing qemu-img + * Thu Oct 2 2025 Daniel P. Berrangé - 1.45.8-2 - Stop using QEMU for tests on 32-bit diff --git a/sources b/sources index b2cfd43..bc6a14c 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.45.8.tar.gz) = 1e94b4cc4c562ae51b2f2b441f7ecce958f5c833a964a7bbb33ff612753c3e6b4c4941b6908b3d6f039bd34f2253503df7b5df70590d62572321d1ec15f34e48 -SHA512 (nbdkit-1.45.8.tar.gz.sig) = e1b15784decc59e166e4a23982f648cb39d6dea9e3e83764420af2e33ef80b40e0f6ed12d0cc179a958280e1897d5f44186893ea8af9964e4b9bf867e4bbd232 +SHA512 (nbdkit-1.45.9.tar.gz) = 57ff06917727a8d7bcf76cf84e9fc0d690e17b0c1f41aef8084c17718ee0c15fed74ebb1933b8506bcd8690d297d9e13f2fabc2f952a91a35d25ba56ea4b5203 +SHA512 (nbdkit-1.45.9.tar.gz.sig) = f666ae4b1f59e067849f9c463f6836d0fd9c12add1d855a453129e543fbd3466ced68aa94522e834229c5c1e95270954b56a8739b0278d863aa6eb5f63b93161 From 07acd2186a6621faaf737ce486a4a51a8528d1b1 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 15 Oct 2025 12:50:47 +0100 Subject: [PATCH 285/298] OCaml 5.4.0 rebuild --- nbdkit.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 665fee4..502b162 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -55,7 +55,7 @@ Name: nbdkit Version: 1.45.9 -Release: 1%{?dist} +Release: 2%{?dist} Summary: NBD server License: BSD-3-Clause @@ -1556,6 +1556,9 @@ fi %changelog +* Wed Oct 15 2025 Richard W.M. Jones - 1.45.9-2 +- OCaml 5.4.0 rebuild + * Fri Oct 3 2025 Richard W.M. Jones - 1.45.9-1 - New upstream version 1.45.9 - Reenable the tests on all arches, since we can now handle missing qemu-img From d2963788bbe2ff1dd39175403fb6d296f88f986e Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 15 Oct 2025 13:27:23 +0100 Subject: [PATCH 286/298] Fix crash with OCaml 5.4 --- 112.patch | 67 +++++++++++++++++++++++++++++++++++++++++++++++++++++ nbdkit.spec | 4 ++++ 2 files changed, 71 insertions(+) create mode 100644 112.patch diff --git a/112.patch b/112.patch new file mode 100644 index 0000000..cf7760d --- /dev/null +++ b/112.patch @@ -0,0 +1,67 @@ +From ce0407b65c2078a6e7d365028e01c739b7d753cb Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Wed, 15 Oct 2025 13:18:04 +0100 +Subject: [PATCH] ocaml: Don't call caml_shutdown on unload + +This causes a new crash with OCaml >= 5.4. + + #0 __pthread_kill_implementation (threadid=, + signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44 + #1 0x00007f484a8804b3 in __pthread_kill_internal (threadid=, + signo=6) at pthread_kill.c:89 + #2 0x00007f484a82618e in __GI_raise (sig=sig@entry=6) + at ../sysdeps/posix/raise.c:26 + #3 0x00007f484a80d6d0 in __GI_abort () at abort.c:77 + #4 0x00007f484a17b328 in caml_fatal_error ( + msg=msg@entry=0x7f484a2476a8 "Fatal error during %s: %s\n") + at runtime/misc.c:127 + #5 0x00007f484a17c026 in caml_plat_fatal_error ( + action=action@entry=0x7f484a247882 "unlock", err=) + at runtime/platform.c:45 + #6 0x00007f484a161fe6 in check_err (action=0x7f484a247882 "unlock", + err=) at runtime/caml/platform.h:443 + #7 caml_plat_unlock (m=) at runtime/caml/platform.h:485 + #8 caml_release_domain_lock () at runtime/domain.c:2003 + #9 0x00007f484a14c6f5 in st_bt_lock_release ( + other_threads_waiting=) at st_stubs.c:116 + #10 st_masterlock_release (m=0x5596ff31fa88) + at /usr/src/debug/ocaml-5.4.0-1.fc44.x86_64/otherlibs/systhreads/st_pthreads.h:136 + #11 0x00007f484a180b7e in caml_enter_blocking_section () + at runtime/signals.c:175 + #12 0x00005596c3420aa4 in backend_unload (b=0x5596ff2c7c40, + unload=0x7f484ae72760 ) + at /home/rjones/d/nbdkit/server/backend.c:151 + #13 0x00005596c3429ccc in plugin_free (b=0x5596ff2c7c40) + at /home/rjones/d/nbdkit/server/plugins.c:64 + #14 0x00005596c341ecb5 in main (argc=, argv=) + at /home/rjones/d/nbdkit/server/main.c:938 +--- + plugins/ocaml/plugin.c | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/plugins/ocaml/plugin.c b/plugins/ocaml/plugin.c +index 4757e68c7..60abc207a 100644 +--- a/plugins/ocaml/plugin.c ++++ b/plugins/ocaml/plugin.c +@@ -259,9 +259,18 @@ unload_wrapper (void) + free_strings (); + remove_roots (); + ++ /* In OCaml >= 5.4 this crashes with: ++ * ++ * Fatal error: Fatal error during unlock: Invalid argument ++ * ++ * Since it's not really necessary to shut down the OCaml runtime, ++ * let's just avoid it. ++ */ ++/* + #ifdef HAVE_CAML_SHUTDOWN + caml_shutdown (); + #endif ++*/ + } + + static void +-- +GitLab + diff --git a/nbdkit.spec b/nbdkit.spec index 502b162..87bb30e 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -86,6 +86,10 @@ Source6: %{modulename}.te Source7: %{modulename}.if Source8: %{modulename}.fc +# Crash with OCaml 5.4: +# https://gitlab.com/nbdkit/nbdkit/-/merge_requests/112 +Patch: https://gitlab.com/nbdkit/nbdkit/-/merge_requests/112.patch + # For applying the patches: BuildRequires: git From 307a18276f8c47ab6d9132fd69d1ff99e4e203c2 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 16 Oct 2025 17:26:20 +0100 Subject: [PATCH 287/298] New upstream version 1.45.10 Remove OCaml 5.4.0 fix, which is included upstream. --- 112.patch | 67 ----------------------------------------------------- nbdkit.spec | 12 +++++----- sources | 4 ++-- 3 files changed, 8 insertions(+), 75 deletions(-) delete mode 100644 112.patch diff --git a/112.patch b/112.patch deleted file mode 100644 index cf7760d..0000000 --- a/112.patch +++ /dev/null @@ -1,67 +0,0 @@ -From ce0407b65c2078a6e7d365028e01c739b7d753cb Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Wed, 15 Oct 2025 13:18:04 +0100 -Subject: [PATCH] ocaml: Don't call caml_shutdown on unload - -This causes a new crash with OCaml >= 5.4. - - #0 __pthread_kill_implementation (threadid=, - signo=signo@entry=6, no_tid=no_tid@entry=0) at pthread_kill.c:44 - #1 0x00007f484a8804b3 in __pthread_kill_internal (threadid=, - signo=6) at pthread_kill.c:89 - #2 0x00007f484a82618e in __GI_raise (sig=sig@entry=6) - at ../sysdeps/posix/raise.c:26 - #3 0x00007f484a80d6d0 in __GI_abort () at abort.c:77 - #4 0x00007f484a17b328 in caml_fatal_error ( - msg=msg@entry=0x7f484a2476a8 "Fatal error during %s: %s\n") - at runtime/misc.c:127 - #5 0x00007f484a17c026 in caml_plat_fatal_error ( - action=action@entry=0x7f484a247882 "unlock", err=) - at runtime/platform.c:45 - #6 0x00007f484a161fe6 in check_err (action=0x7f484a247882 "unlock", - err=) at runtime/caml/platform.h:443 - #7 caml_plat_unlock (m=) at runtime/caml/platform.h:485 - #8 caml_release_domain_lock () at runtime/domain.c:2003 - #9 0x00007f484a14c6f5 in st_bt_lock_release ( - other_threads_waiting=) at st_stubs.c:116 - #10 st_masterlock_release (m=0x5596ff31fa88) - at /usr/src/debug/ocaml-5.4.0-1.fc44.x86_64/otherlibs/systhreads/st_pthreads.h:136 - #11 0x00007f484a180b7e in caml_enter_blocking_section () - at runtime/signals.c:175 - #12 0x00005596c3420aa4 in backend_unload (b=0x5596ff2c7c40, - unload=0x7f484ae72760 ) - at /home/rjones/d/nbdkit/server/backend.c:151 - #13 0x00005596c3429ccc in plugin_free (b=0x5596ff2c7c40) - at /home/rjones/d/nbdkit/server/plugins.c:64 - #14 0x00005596c341ecb5 in main (argc=, argv=) - at /home/rjones/d/nbdkit/server/main.c:938 ---- - plugins/ocaml/plugin.c | 9 +++++++++ - 1 file changed, 9 insertions(+) - -diff --git a/plugins/ocaml/plugin.c b/plugins/ocaml/plugin.c -index 4757e68c7..60abc207a 100644 ---- a/plugins/ocaml/plugin.c -+++ b/plugins/ocaml/plugin.c -@@ -259,9 +259,18 @@ unload_wrapper (void) - free_strings (); - remove_roots (); - -+ /* In OCaml >= 5.4 this crashes with: -+ * -+ * Fatal error: Fatal error during unlock: Invalid argument -+ * -+ * Since it's not really necessary to shut down the OCaml runtime, -+ * let's just avoid it. -+ */ -+/* - #ifdef HAVE_CAML_SHUTDOWN - caml_shutdown (); - #endif -+*/ - } - - static void --- -GitLab - diff --git a/nbdkit.spec b/nbdkit.spec index 87bb30e..33c82ba 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,8 +54,8 @@ %global source_directory 1.45-development Name: nbdkit -Version: 1.45.9 -Release: 2%{?dist} +Version: 1.45.10 +Release: 1%{?dist} Summary: NBD server License: BSD-3-Clause @@ -86,10 +86,6 @@ Source6: %{modulename}.te Source7: %{modulename}.if Source8: %{modulename}.fc -# Crash with OCaml 5.4: -# https://gitlab.com/nbdkit/nbdkit/-/merge_requests/112 -Patch: https://gitlab.com/nbdkit/nbdkit/-/merge_requests/112.patch - # For applying the patches: BuildRequires: git @@ -1560,6 +1556,10 @@ fi %changelog +* Thu Oct 16 2025 Richard W.M. Jones - 1.45.10-1 +- New upstream version 1.45.10 +- Remove OCaml 5.4.0 fix, which is included upstream. + * Wed Oct 15 2025 Richard W.M. Jones - 1.45.9-2 - OCaml 5.4.0 rebuild diff --git a/sources b/sources index bc6a14c..5556503 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.45.9.tar.gz) = 57ff06917727a8d7bcf76cf84e9fc0d690e17b0c1f41aef8084c17718ee0c15fed74ebb1933b8506bcd8690d297d9e13f2fabc2f952a91a35d25ba56ea4b5203 -SHA512 (nbdkit-1.45.9.tar.gz.sig) = f666ae4b1f59e067849f9c463f6836d0fd9c12add1d855a453129e543fbd3466ced68aa94522e834229c5c1e95270954b56a8739b0278d863aa6eb5f63b93161 +SHA512 (nbdkit-1.45.10.tar.gz) = 4051d7ce36cbe80f9caf1d729b00f628f80aa9da8e4b8c56d7671ebed768bd3b7488e44d19111bd829c901bae8d6fa75ea8e53cb20dad4dd595d26b96cf1b61f +SHA512 (nbdkit-1.45.10.tar.gz.sig) = 8c829d012087cd9baacd1de3d4dec7b69a56d2ffb15ca331a39929297cec421cc64dff1ee55822ec2a96416254db04fbd618405e2f04998515889551647f6f0b From 43debe038ed86ae7f570de5a6ea4ada6459577e7 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 20 Oct 2025 15:54:55 +0100 Subject: [PATCH 288/298] New upstream version 1.45.11 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 33c82ba..128b817 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.45-development Name: nbdkit -Version: 1.45.10 +Version: 1.45.11 Release: 1%{?dist} Summary: NBD server @@ -1556,6 +1556,9 @@ fi %changelog +* Mon Oct 20 2025 Richard W.M. Jones - 1.45.11-1 +- New upstream version 1.45.11 + * Thu Oct 16 2025 Richard W.M. Jones - 1.45.10-1 - New upstream version 1.45.10 - Remove OCaml 5.4.0 fix, which is included upstream. diff --git a/sources b/sources index 5556503..c2c660f 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.45.10.tar.gz) = 4051d7ce36cbe80f9caf1d729b00f628f80aa9da8e4b8c56d7671ebed768bd3b7488e44d19111bd829c901bae8d6fa75ea8e53cb20dad4dd595d26b96cf1b61f -SHA512 (nbdkit-1.45.10.tar.gz.sig) = 8c829d012087cd9baacd1de3d4dec7b69a56d2ffb15ca331a39929297cec421cc64dff1ee55822ec2a96416254db04fbd618405e2f04998515889551647f6f0b +SHA512 (nbdkit-1.45.11.tar.gz) = b9ba91cfa7e71c415bbc2cb47dd569ce327d8dd9ec28aca03788984872f0a0fd63296f963436740b504950896082c14768bd823f5605d23b63ea149f87f939f5 +SHA512 (nbdkit-1.45.11.tar.gz.sig) = b964604598d50c319c6f04e8cab487f215f6347588b507fdaf752ac8b0929c2e2975d793fbe1f65bf51107b5e087f5c8836589c01b81753e2dce70f9d2e73ae2 From 576d016e7d08e8e09d9777f284867496623f109b Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sun, 26 Oct 2025 21:59:34 +0000 Subject: [PATCH 289/298] New upstream version 1.45.12 Add new nbdkit-vram-plugin --- ...g-devices-when-no-platforms-are-foun.patch | 59 +++++++++++++++ ...rsing-of-last-line-of-du-command-out.patch | 72 +++++++++++++++++++ nbdkit.spec | 37 +++++++++- sources | 4 +- 4 files changed, 169 insertions(+), 3 deletions(-) create mode 100644 0001-vram-Skip-listing-devices-when-no-platforms-are-foun.patch create mode 100644 0002-linuxdisk-Fix-parsing-of-last-line-of-du-command-out.patch diff --git a/0001-vram-Skip-listing-devices-when-no-platforms-are-foun.patch b/0001-vram-Skip-listing-devices-when-no-platforms-are-foun.patch new file mode 100644 index 0000000..3e87d95 --- /dev/null +++ b/0001-vram-Skip-listing-devices-when-no-platforms-are-foun.patch @@ -0,0 +1,59 @@ +From cad6894ec6dc18b318d0948fadf5833ecd75cb0f Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Sun, 26 Oct 2025 22:25:10 +0000 +Subject: [PATCH 1/2] vram: Skip listing devices when no platforms are found + +In a chroot-type test environment, tests/test-dump-plugin.sh failed +with: + + + nbdkit vram --dump-plugin + nbdkit: error: clGetPlatformIDs: error -1001 (unknown OpenCL error) + +-1001 is the extended error CL_PLATFORM_NOT_FOUND_KHR +--- + plugins/vram/opencl-errors.h | 3 +++ + plugins/vram/vram.c | 7 +++++++ + 2 files changed, 10 insertions(+) + +diff --git a/plugins/vram/opencl-errors.h b/plugins/vram/opencl-errors.h +index b5d185fc65..dd6fba92d6 100644 +--- a/plugins/vram/opencl-errors.h ++++ b/plugins/vram/opencl-errors.h +@@ -101,6 +101,9 @@ opencl_errstr (cl_int err) + case_return_string(CL_INVALID_COMPILER_OPTIONS ); + case_return_string(CL_INVALID_LINKER_OPTIONS ); + case_return_string(CL_INVALID_DEVICE_PARTITION_COUNT ); ++ ++ /* Extended. */ ++ case_return_string(CL_PLATFORM_NOT_FOUND_KHR ); + default: return "unknown OpenCL error"; + } + } +diff --git a/plugins/vram/vram.c b/plugins/vram/vram.c +index 4b391e2202..9819f0dbe9 100644 +--- a/plugins/vram/vram.c ++++ b/plugins/vram/vram.c +@@ -41,6 +41,7 @@ + + #define CL_TARGET_OPENCL_VERSION 200 /* OpenCL >= 2.0 */ + #include ++#include + + #define NBDKIT_API_VERSION 2 + #include +@@ -126,6 +127,12 @@ get_all_devices (void) + /* Build the list of all devices from all platforms as a flat list. */ + what = "clGetPlatformIDs"; + r = clGetPlatformIDs (0, NULL, &num_platforms); ++ if (r == CL_PLATFORM_NOT_FOUND_KHR) { ++ /* OpenCL seems to return this when no platform is detected at ++ * all, so just return the empty list in this case. ++ */ ++ return; ++ } + if (r != CL_SUCCESS) goto err; + platform_ids = calloc (num_platforms, sizeof platform_ids[0]); + if (!platform_ids) { +-- +2.50.1 + diff --git a/0002-linuxdisk-Fix-parsing-of-last-line-of-du-command-out.patch b/0002-linuxdisk-Fix-parsing-of-last-line-of-du-command-out.patch new file mode 100644 index 0000000..dfc7e91 --- /dev/null +++ b/0002-linuxdisk-Fix-parsing-of-last-line-of-du-command-out.patch @@ -0,0 +1,72 @@ +From 01b8e557ce129b2f4677061ba04bbb5ff2a703eb Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Mon, 27 Oct 2025 09:15:47 +0000 +Subject: [PATCH 2/2] linuxdisk: Fix parsing of last line of 'du' command + output + +A recent change to glibc breaks this code. Previously we could read +the lines of output from the 'du' command until getline(3) returned +EOF, and the 'line' buffer would contain the last line read. However +after this change, glibc now sets line[0] = '\0' in the EOF case, +breaking the last line of output that we wanted to parse. + +https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=33eff78c8b28adc4963987880e10d96761f2a167 + +We also previously didn't handle the unlikely case where 'du' produces +no output at all. Fix both problems here. +--- + plugins/linuxdisk/filesystem.c | 23 ++++++++++++++++++----- + 1 file changed, 18 insertions(+), 5 deletions(-) + +diff --git a/plugins/linuxdisk/filesystem.c b/plugins/linuxdisk/filesystem.c +index 3e4e2f3a5a..283af61a13 100644 +--- a/plugins/linuxdisk/filesystem.c ++++ b/plugins/linuxdisk/filesystem.c +@@ -148,7 +148,7 @@ create_filesystem (struct virtual_disk *disk) + static int64_t + estimate_size (void) + { +- CLEANUP_FREE char *command = NULL, *line = NULL; ++ CLEANUP_FREE char *command = NULL, *line = NULL, *lastline = NULL; + size_t len = 0; + FILE *fp; + int64_t ret; +@@ -177,8 +177,16 @@ estimate_size (void) + + /* Ignore everything up to the last line. */ + len = 0; +- while (getline (&line, &len, fp) != -1) +- /* empty */; ++ while (getline (&line, &len, fp) != -1) { ++ nbdkit_debug ("du: %s", line); ++ free (lastline); ++ lastline = strndup (line, len); ++ if (lastline == NULL) { ++ nbdkit_error ("strndup: %m"); ++ pclose (fp); ++ return -1; ++ } ++ } + if (ferror (fp)) { + nbdkit_error ("getline failed: %m"); + pclose (fp); +@@ -193,9 +201,14 @@ estimate_size (void) + if (exit_status_to_nbd_error (r, "pclose: du") == -1) + return -1; + ++ if (lastline == NULL) { ++ nbdkit_error ("no output from du command"); ++ return -1; ++ } ++ + /* Parse the last line. */ +- if (sscanf (line, "%" SCNi64, &ret) != 1 || ret < 0) { +- nbdkit_error ("could not parse last line of output: %s", line); ++ if (sscanf (lastline, "%" SCNi64, &ret) != 1 || ret < 0) { ++ nbdkit_error ("could not parse last line from du command: %s", lastline); + return -1; + } + +-- +2.50.1 + diff --git a/nbdkit.spec b/nbdkit.spec index 128b817..f1d2a8b 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.45-development Name: nbdkit -Version: 1.45.11 +Version: 1.45.12 Release: 1%{?dist} Summary: NBD server @@ -86,6 +86,11 @@ Source6: %{modulename}.te Source7: %{modulename}.if Source8: %{modulename}.fc +# Fix vram tests. Upstream in > 1.45.12. +Patch: 0001-vram-Skip-listing-devices-when-no-platforms-are-foun.patch +# Fix for getline change in glibc-2.42.9000-7.fc44 +Patch: 0002-linuxdisk-Fix-parsing-of-last-line-of-du-command-out.patch + # For applying the patches: BuildRequires: git @@ -126,6 +131,9 @@ BuildRequires: pkgconfig(libtorrent-rasterbar) %if 0%{?have_blkio} BuildRequires: pkgconfig(blkio) %endif +%if !0%{?rhel} +BuildRequires: pkgconfig(OpenCL) +%endif BuildRequires: bash-completion %if 0%{?fedora} || 0%{?rhel} >= 11 BuildRequires: bash-completion-devel @@ -576,6 +584,17 @@ VMware VDDK for accessing VMware disks and servers. %endif +%if !0%{?rhel} +%package vram-plugin +Summary: use GPU Video RAM as a network block device +Requires: %{name}-server%{?_isa} = %{version}-%{release} +Recommends: %{_bindir}/clinfo + +%description vram-plugin +This package contains GPU Video RAM support for %{name}. +%endif + + %package basic-filters Summary: Basic filters for %{name} Requires: %{name}-server%{?_isa} = %{version}-%{release} @@ -856,6 +875,7 @@ export PYTHON=%{__python3} --enable-perl \ --enable-tcl \ --enable-torrent \ + --enable-vram \ --with-ext2 \ --with-iso \ --with-libvirt \ @@ -864,6 +884,7 @@ export PYTHON=%{__python3} --disable-perl \ --disable-tcl \ --disable-torrent \ + --disable-vram \ --without-ext2 \ --without-iso \ --without-libvirt \ @@ -928,6 +949,7 @@ popd --disable-torrent \ --disable-valgrind \ --disable-vddk \ + --disable-vram \ --without-bash-completions \ --without-curl \ --without-ext2 \ @@ -1337,6 +1359,15 @@ fi %endif +%if !0%{?rhel} +%files vram-plugin +%doc README.md +%license LICENSE +%{_libdir}/%{name}/plugins/nbdkit-vram-plugin.so +%{_mandir}/man1/nbdkit-vram-plugin.1* +%endif + + %files basic-filters %doc README.md %license LICENSE @@ -1556,6 +1587,10 @@ fi %changelog +* Mon Oct 27 2025 Richard W.M. Jones - 1.45.12-1 +- New upstream version 1.45.12 +- Add new nbdkit-vram-plugin + * Mon Oct 20 2025 Richard W.M. Jones - 1.45.11-1 - New upstream version 1.45.11 diff --git a/sources b/sources index c2c660f..5539189 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.45.11.tar.gz) = b9ba91cfa7e71c415bbc2cb47dd569ce327d8dd9ec28aca03788984872f0a0fd63296f963436740b504950896082c14768bd823f5605d23b63ea149f87f939f5 -SHA512 (nbdkit-1.45.11.tar.gz.sig) = b964604598d50c319c6f04e8cab487f215f6347588b507fdaf752ac8b0929c2e2975d793fbe1f65bf51107b5e087f5c8836589c01b81753e2dce70f9d2e73ae2 +SHA512 (nbdkit-1.45.12.tar.gz) = a28da3e24c333da5b4b22961078095b1d73bb6c219e7cfae783c301b68d8e755ce839fa15bff6354b44ff7227a91eae6a8e264f3e26b5caff8d27c68905ff01b +SHA512 (nbdkit-1.45.12.tar.gz.sig) = 93c497160f196b1a6144819742cee04b1fad663a148dbc4fd82efe73c9a1aabdcb9c01baa9ec84db17a392ae6cde468736750a878bba3e3c130507890f96a8e5 From f486bc816a56abf71ba92267fc6e790e75603593 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 14 Nov 2025 14:55:07 +0000 Subject: [PATCH 290/298] New upstream version 1.45.13 --- ...g-devices-when-no-platforms-are-foun.patch | 59 --------------- ...rsing-of-last-line-of-du-command-out.patch | 72 ------------------- nbdkit.spec | 10 ++- sources | 4 +- 4 files changed, 6 insertions(+), 139 deletions(-) delete mode 100644 0001-vram-Skip-listing-devices-when-no-platforms-are-foun.patch delete mode 100644 0002-linuxdisk-Fix-parsing-of-last-line-of-du-command-out.patch diff --git a/0001-vram-Skip-listing-devices-when-no-platforms-are-foun.patch b/0001-vram-Skip-listing-devices-when-no-platforms-are-foun.patch deleted file mode 100644 index 3e87d95..0000000 --- a/0001-vram-Skip-listing-devices-when-no-platforms-are-foun.patch +++ /dev/null @@ -1,59 +0,0 @@ -From cad6894ec6dc18b318d0948fadf5833ecd75cb0f Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Sun, 26 Oct 2025 22:25:10 +0000 -Subject: [PATCH 1/2] vram: Skip listing devices when no platforms are found - -In a chroot-type test environment, tests/test-dump-plugin.sh failed -with: - - + nbdkit vram --dump-plugin - nbdkit: error: clGetPlatformIDs: error -1001 (unknown OpenCL error) - --1001 is the extended error CL_PLATFORM_NOT_FOUND_KHR ---- - plugins/vram/opencl-errors.h | 3 +++ - plugins/vram/vram.c | 7 +++++++ - 2 files changed, 10 insertions(+) - -diff --git a/plugins/vram/opencl-errors.h b/plugins/vram/opencl-errors.h -index b5d185fc65..dd6fba92d6 100644 ---- a/plugins/vram/opencl-errors.h -+++ b/plugins/vram/opencl-errors.h -@@ -101,6 +101,9 @@ opencl_errstr (cl_int err) - case_return_string(CL_INVALID_COMPILER_OPTIONS ); - case_return_string(CL_INVALID_LINKER_OPTIONS ); - case_return_string(CL_INVALID_DEVICE_PARTITION_COUNT ); -+ -+ /* Extended. */ -+ case_return_string(CL_PLATFORM_NOT_FOUND_KHR ); - default: return "unknown OpenCL error"; - } - } -diff --git a/plugins/vram/vram.c b/plugins/vram/vram.c -index 4b391e2202..9819f0dbe9 100644 ---- a/plugins/vram/vram.c -+++ b/plugins/vram/vram.c -@@ -41,6 +41,7 @@ - - #define CL_TARGET_OPENCL_VERSION 200 /* OpenCL >= 2.0 */ - #include -+#include - - #define NBDKIT_API_VERSION 2 - #include -@@ -126,6 +127,12 @@ get_all_devices (void) - /* Build the list of all devices from all platforms as a flat list. */ - what = "clGetPlatformIDs"; - r = clGetPlatformIDs (0, NULL, &num_platforms); -+ if (r == CL_PLATFORM_NOT_FOUND_KHR) { -+ /* OpenCL seems to return this when no platform is detected at -+ * all, so just return the empty list in this case. -+ */ -+ return; -+ } - if (r != CL_SUCCESS) goto err; - platform_ids = calloc (num_platforms, sizeof platform_ids[0]); - if (!platform_ids) { --- -2.50.1 - diff --git a/0002-linuxdisk-Fix-parsing-of-last-line-of-du-command-out.patch b/0002-linuxdisk-Fix-parsing-of-last-line-of-du-command-out.patch deleted file mode 100644 index dfc7e91..0000000 --- a/0002-linuxdisk-Fix-parsing-of-last-line-of-du-command-out.patch +++ /dev/null @@ -1,72 +0,0 @@ -From 01b8e557ce129b2f4677061ba04bbb5ff2a703eb Mon Sep 17 00:00:00 2001 -From: "Richard W.M. Jones" -Date: Mon, 27 Oct 2025 09:15:47 +0000 -Subject: [PATCH 2/2] linuxdisk: Fix parsing of last line of 'du' command - output - -A recent change to glibc breaks this code. Previously we could read -the lines of output from the 'du' command until getline(3) returned -EOF, and the 'line' buffer would contain the last line read. However -after this change, glibc now sets line[0] = '\0' in the EOF case, -breaking the last line of output that we wanted to parse. - -https://sourceware.org/git/?p=glibc.git;a=commitdiff;h=33eff78c8b28adc4963987880e10d96761f2a167 - -We also previously didn't handle the unlikely case where 'du' produces -no output at all. Fix both problems here. ---- - plugins/linuxdisk/filesystem.c | 23 ++++++++++++++++++----- - 1 file changed, 18 insertions(+), 5 deletions(-) - -diff --git a/plugins/linuxdisk/filesystem.c b/plugins/linuxdisk/filesystem.c -index 3e4e2f3a5a..283af61a13 100644 ---- a/plugins/linuxdisk/filesystem.c -+++ b/plugins/linuxdisk/filesystem.c -@@ -148,7 +148,7 @@ create_filesystem (struct virtual_disk *disk) - static int64_t - estimate_size (void) - { -- CLEANUP_FREE char *command = NULL, *line = NULL; -+ CLEANUP_FREE char *command = NULL, *line = NULL, *lastline = NULL; - size_t len = 0; - FILE *fp; - int64_t ret; -@@ -177,8 +177,16 @@ estimate_size (void) - - /* Ignore everything up to the last line. */ - len = 0; -- while (getline (&line, &len, fp) != -1) -- /* empty */; -+ while (getline (&line, &len, fp) != -1) { -+ nbdkit_debug ("du: %s", line); -+ free (lastline); -+ lastline = strndup (line, len); -+ if (lastline == NULL) { -+ nbdkit_error ("strndup: %m"); -+ pclose (fp); -+ return -1; -+ } -+ } - if (ferror (fp)) { - nbdkit_error ("getline failed: %m"); - pclose (fp); -@@ -193,9 +201,14 @@ estimate_size (void) - if (exit_status_to_nbd_error (r, "pclose: du") == -1) - return -1; - -+ if (lastline == NULL) { -+ nbdkit_error ("no output from du command"); -+ return -1; -+ } -+ - /* Parse the last line. */ -- if (sscanf (line, "%" SCNi64, &ret) != 1 || ret < 0) { -- nbdkit_error ("could not parse last line of output: %s", line); -+ if (sscanf (lastline, "%" SCNi64, &ret) != 1 || ret < 0) { -+ nbdkit_error ("could not parse last line from du command: %s", lastline); - return -1; - } - --- -2.50.1 - diff --git a/nbdkit.spec b/nbdkit.spec index f1d2a8b..71bbb8d 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.45-development Name: nbdkit -Version: 1.45.12 +Version: 1.45.13 Release: 1%{?dist} Summary: NBD server @@ -86,11 +86,6 @@ Source6: %{modulename}.te Source7: %{modulename}.if Source8: %{modulename}.fc -# Fix vram tests. Upstream in > 1.45.12. -Patch: 0001-vram-Skip-listing-devices-when-no-platforms-are-foun.patch -# Fix for getline change in glibc-2.42.9000-7.fc44 -Patch: 0002-linuxdisk-Fix-parsing-of-last-line-of-du-command-out.patch - # For applying the patches: BuildRequires: git @@ -1587,6 +1582,9 @@ fi %changelog +* Fri Nov 14 2025 Richard W.M. Jones - 1.45.13-1 +- New upstream version 1.45.13 + * Mon Oct 27 2025 Richard W.M. Jones - 1.45.12-1 - New upstream version 1.45.12 - Add new nbdkit-vram-plugin diff --git a/sources b/sources index 5539189..02e335f 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.45.12.tar.gz) = a28da3e24c333da5b4b22961078095b1d73bb6c219e7cfae783c301b68d8e755ce839fa15bff6354b44ff7227a91eae6a8e264f3e26b5caff8d27c68905ff01b -SHA512 (nbdkit-1.45.12.tar.gz.sig) = 93c497160f196b1a6144819742cee04b1fad663a148dbc4fd82efe73c9a1aabdcb9c01baa9ec84db17a392ae6cde468736750a878bba3e3c130507890f96a8e5 +SHA512 (nbdkit-1.45.13.tar.gz) = 8bd9331e0a5ba39bea8514d3b45ea25e4aa136cb2ebdbf98e244f5793aa4eb270df673731a2e1591c7f54607cd06c01661a336826be3cf78d8768086adb09015 +SHA512 (nbdkit-1.45.13.tar.gz.sig) = 6c676e7827c4c131d09dcc03789209c70c8f1fd486456417a0fef9e8e12f836c706ded9e057cf9ade28038d1c1cbaabceeb32e7e962ca741eeeab117c5db275d From 7cedd6c452cd0869088a9e99198ca20641912547 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 2 Dec 2025 15:26:13 +0000 Subject: [PATCH 291/298] New upstream version 1.45.15 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 71bbb8d..85b1e60 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.45-development Name: nbdkit -Version: 1.45.13 +Version: 1.45.15 Release: 1%{?dist} Summary: NBD server @@ -1582,6 +1582,9 @@ fi %changelog +* Tue Dec 02 2025 Richard W.M. Jones - 1.45.15-1 +- New upstream version 1.45.15 + * Fri Nov 14 2025 Richard W.M. Jones - 1.45.13-1 - New upstream version 1.45.13 diff --git a/sources b/sources index 02e335f..8752eea 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.45.13.tar.gz) = 8bd9331e0a5ba39bea8514d3b45ea25e4aa136cb2ebdbf98e244f5793aa4eb270df673731a2e1591c7f54607cd06c01661a336826be3cf78d8768086adb09015 -SHA512 (nbdkit-1.45.13.tar.gz.sig) = 6c676e7827c4c131d09dcc03789209c70c8f1fd486456417a0fef9e8e12f836c706ded9e057cf9ade28038d1c1cbaabceeb32e7e962ca741eeeab117c5db275d +SHA512 (nbdkit-1.45.15.tar.gz) = ed640d0c5ca6c795b2a9dcbc76cb79015fd5e984ac08da3186f026e58de0a4ee8162e674b8898e860148acbecf9345f2781c1e5d1d46030d2e65cb30f210ea7c +SHA512 (nbdkit-1.45.15.tar.gz.sig) = f4603fa8420954cf9a833863d3f6ba588bdd44777ca60c343eefdaea770ae15dd1e2ac317a06edf3af9bf66936189cb2422540b7a304ca5ecfee7f1e2e2d8ea7 From ca952d821775a56f3024b6cc65d244cc271362ee Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 2 Dec 2025 16:24:00 +0000 Subject: [PATCH 292/298] Update spec file for new SECURITY.md & TODO.md files RPM build errors: File not found: /builddir/build/BUILD/nbdkit-1.45.15-build/BUILDROOT/usr/share/doc/nbdkit-devel/SECURITY File not found: /builddir/build/BUILD/nbdkit-1.45.15-build/BUILDROOT/usr/share/doc/nbdkit-devel/TODO --- nbdkit.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 85b1e60..0d3f0c6 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -1504,7 +1504,7 @@ fi %files devel -%doc BENCHMARKING OTHER_PLUGINS README.md SECURITY TODO +%doc BENCHMARKING OTHER_PLUGINS README.md SECURITY.md TODO.md %license LICENSE # Include the source of the example plugins in the documentation. %doc plugins/example*/*.c From b8fab60fd8fef09b6f1d099f1fda0b24a9967bd0 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Mon, 15 Dec 2025 15:41:40 +0000 Subject: [PATCH 293/298] New upstream version 1.45.16 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 0d3f0c6..34b8286 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.45-development Name: nbdkit -Version: 1.45.15 +Version: 1.45.16 Release: 1%{?dist} Summary: NBD server @@ -1582,6 +1582,9 @@ fi %changelog +* Mon Dec 15 2025 Richard W.M. Jones - 1.45.16-1 +- New upstream version 1.45.16 + * Tue Dec 02 2025 Richard W.M. Jones - 1.45.15-1 - New upstream version 1.45.15 diff --git a/sources b/sources index 8752eea..26f911a 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.45.15.tar.gz) = ed640d0c5ca6c795b2a9dcbc76cb79015fd5e984ac08da3186f026e58de0a4ee8162e674b8898e860148acbecf9345f2781c1e5d1d46030d2e65cb30f210ea7c -SHA512 (nbdkit-1.45.15.tar.gz.sig) = f4603fa8420954cf9a833863d3f6ba588bdd44777ca60c343eefdaea770ae15dd1e2ac317a06edf3af9bf66936189cb2422540b7a304ca5ecfee7f1e2e2d8ea7 +SHA512 (nbdkit-1.45.16.tar.gz) = 6922f0cb174d2ddbc6c1cf6f9e90361d04126a4f8afa99a5b0b665a48778efb869f358bf2cb03f674d81228e8253d652b3cb4e9cc52016a83ff9c1192becf5ef +SHA512 (nbdkit-1.45.16.tar.gz.sig) = b2d7bb974f95dd5903c971721e9812034859430c13dda44dcd95370768bfcce09c04c4f50600b6c787ef0cee7c074b1502053c434bd4a61557a42635110d1887 From 5dec8362f09cef6d7d6c577708b0f8c0a3e4f663 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 18 Dec 2025 08:59:47 +0000 Subject: [PATCH 294/298] New upstream version 1.45.17 --- nbdkit.spec | 5 ++++- sources | 4 ++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index 34b8286..c0ec44d 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -54,7 +54,7 @@ %global source_directory 1.45-development Name: nbdkit -Version: 1.45.16 +Version: 1.45.17 Release: 1%{?dist} Summary: NBD server @@ -1582,6 +1582,9 @@ fi %changelog +* Thu Dec 18 2025 Richard W.M. Jones - 1.45.17-1 +- New upstream version 1.45.17 + * Mon Dec 15 2025 Richard W.M. Jones - 1.45.16-1 - New upstream version 1.45.16 diff --git a/sources b/sources index 26f911a..a6e9f90 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.45.16.tar.gz) = 6922f0cb174d2ddbc6c1cf6f9e90361d04126a4f8afa99a5b0b665a48778efb869f358bf2cb03f674d81228e8253d652b3cb4e9cc52016a83ff9c1192becf5ef -SHA512 (nbdkit-1.45.16.tar.gz.sig) = b2d7bb974f95dd5903c971721e9812034859430c13dda44dcd95370768bfcce09c04c4f50600b6c787ef0cee7c074b1502053c434bd4a61557a42635110d1887 +SHA512 (nbdkit-1.45.17.tar.gz) = 7d3fa31ee47b569ec1fee260921bdd5db1da327610c4ea5a2c3bd7450765084cdcdbc40d628c06b287b13ab21e76f7057a0e75055000282e51423529c440813a +SHA512 (nbdkit-1.45.17.tar.gz.sig) = ce24e28481bb436371e6b51330cb72d96e895200ae49b8e2b0536791b7bbcf928fbd781481dd9eedac0c659f3f3a0c6dbece3e6599f8e6a3eae49c30a00e1146 From 303a7303299b438d9085fe6c55d38bf0d203eb33 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sat, 20 Dec 2025 14:29:55 +0000 Subject: [PATCH 295/298] New upstream stable version 1.46.0 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index c0ec44d..ad4bade 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,10 +51,10 @@ %global verify_tarball_signature 1 # The source directory. -%global source_directory 1.45-development +%global source_directory 1.46-stable Name: nbdkit -Version: 1.45.17 +Version: 1.46.0 Release: 1%{?dist} Summary: NBD server @@ -1582,6 +1582,9 @@ fi %changelog +* Sat Dec 20 2025 Richard W.M. Jones - 1.46.0-1 +- New upstream stable version 1.46.0 + * Thu Dec 18 2025 Richard W.M. Jones - 1.45.17-1 - New upstream version 1.45.17 diff --git a/sources b/sources index a6e9f90..4462799 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.45.17.tar.gz) = 7d3fa31ee47b569ec1fee260921bdd5db1da327610c4ea5a2c3bd7450765084cdcdbc40d628c06b287b13ab21e76f7057a0e75055000282e51423529c440813a -SHA512 (nbdkit-1.45.17.tar.gz.sig) = ce24e28481bb436371e6b51330cb72d96e895200ae49b8e2b0536791b7bbcf928fbd781481dd9eedac0c659f3f3a0c6dbece3e6599f8e6a3eae49c30a00e1146 +SHA512 (nbdkit-1.46.0.tar.gz) = ed225bdbd5c1e96b40ed0493f72173853cedafc9ada2296e6418021d4e3f2e6732dbbb764d24baf6263f4b07c3868b05207518d34667fe68c7324360fc3f5254 +SHA512 (nbdkit-1.46.0.tar.gz.sig) = 73c37deac7f18c7a55d401bf569aabc0a017872fc8ed3e4554f32a1007367d6db975c80cdfc3310c3c13ebaf0c506fcf0563360ee663784a653852ec6bde0e3a From 023449b10fc9497445818c44b7c82468722c378d Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 2 Jan 2026 10:05:09 +0000 Subject: [PATCH 296/298] New upstream development version 1.47.1 --- nbdkit.spec | 7 +++++-- sources | 4 ++-- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/nbdkit.spec b/nbdkit.spec index ad4bade..68ec282 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -51,10 +51,10 @@ %global verify_tarball_signature 1 # The source directory. -%global source_directory 1.46-stable +%global source_directory 1.47-development Name: nbdkit -Version: 1.46.0 +Version: 1.47.1 Release: 1%{?dist} Summary: NBD server @@ -1582,6 +1582,9 @@ fi %changelog +* Fri Jan 02 2026 Richard W.M. Jones - 1.47.1-1 +- New upstream development version 1.47.1 + * Sat Dec 20 2025 Richard W.M. Jones - 1.46.0-1 - New upstream stable version 1.46.0 diff --git a/sources b/sources index 4462799..f8f8acc 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdkit-1.46.0.tar.gz) = ed225bdbd5c1e96b40ed0493f72173853cedafc9ada2296e6418021d4e3f2e6732dbbb764d24baf6263f4b07c3868b05207518d34667fe68c7324360fc3f5254 -SHA512 (nbdkit-1.46.0.tar.gz.sig) = 73c37deac7f18c7a55d401bf569aabc0a017872fc8ed3e4554f32a1007367d6db975c80cdfc3310c3c13ebaf0c506fcf0563360ee663784a653852ec6bde0e3a +SHA512 (nbdkit-1.47.1.tar.gz) = 0c9d1da067bf1f7b6ba38dad33e86dff1fe893ff2e4a349dfcd6b259295fd00670e6af6c195e130d8a847520a78a730003315e60afda8eb94758e2195bd1a775 +SHA512 (nbdkit-1.47.1.tar.gz.sig) = 131d9bc191155186408ef7a577f9d2a2cc1fd1b53cbda755d19ff8de1341479a517fab79cc87f04a1bca5518046c24a8647cb4949d5c4d6fdca19ca968604c16 From 31764d38fbea6df335bff77f9accfc97780c8a95 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 2 Jan 2026 12:01:10 +0000 Subject: [PATCH 297/298] Add upstream fix for broken test --- ...-debug-hexdump.sh-Fix-test-that-plug.patch | 31 +++++++++++++++++++ nbdkit.spec | 3 ++ 2 files changed, 34 insertions(+) create mode 100644 0001-tests-test-ocaml-debug-hexdump.sh-Fix-test-that-plug.patch diff --git a/0001-tests-test-ocaml-debug-hexdump.sh-Fix-test-that-plug.patch b/0001-tests-test-ocaml-debug-hexdump.sh-Fix-test-that-plug.patch new file mode 100644 index 0000000..ab06e22 --- /dev/null +++ b/0001-tests-test-ocaml-debug-hexdump.sh-Fix-test-that-plug.patch @@ -0,0 +1,31 @@ +From 4076ff58512ee98928b1bdb13274466b175e1a97 Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Fri, 2 Jan 2026 11:59:11 +0000 +Subject: [PATCH] tests/test-ocaml-debug-hexdump.sh: Fix test that plugin was + built + +This is supposed to check that the test plugin was built and skip if +not. However because the 'requires' function call was missing, it +actually failed the test if not built. + +Fixes: commit ec3be5030656a9126abbb0bceeb5a1ecf6898c6a +--- + tests/test-ocaml-debug-hexdump.sh | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/tests/test-ocaml-debug-hexdump.sh b/tests/test-ocaml-debug-hexdump.sh +index 5cc71375..3954225e 100755 +--- a/tests/test-ocaml-debug-hexdump.sh ++++ b/tests/test-ocaml-debug-hexdump.sh +@@ -36,7 +36,7 @@ set -x + set -u + + plugin=$abs_top_srcdir/tests/test-ocaml-debug-hexdump-plugin.$SOEXT +-test -x "$plugin" ++requires test -x "$plugin" + + requires_run + requires_nbdsh_uri +-- +2.52.0 + diff --git a/nbdkit.spec b/nbdkit.spec index 68ec282..4639625 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -86,6 +86,9 @@ Source6: %{modulename}.te Source7: %{modulename}.if Source8: %{modulename}.fc +# Fix for broken test, upstream in nbdkit >= 1.47.2 +Patch: 0001-tests-test-ocaml-debug-hexdump.sh-Fix-test-that-plug.patch + # For applying the patches: BuildRequires: git From df7b23c694ef7fc148cb65fe2313fbeab0710f46 Mon Sep 17 00:00:00 2001 From: Jerry James Date: Mon, 12 Jan 2026 15:58:37 -0700 Subject: [PATCH 298/298] Fix a changelog entry --- nbdkit.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nbdkit.spec b/nbdkit.spec index 4639625..c306b50 100644 --- a/nbdkit.spec +++ b/nbdkit.spec @@ -1648,7 +1648,7 @@ fi - New upstream version 1.45.2 - New map filter. -* Fri Jul 11 2025 Jerry James - 1.45.1-5 +* Fri Jul 11 2025 Jerry James - 1.45.1-5 - Rebuild to fix OCaml dependencies * Wed Jul 09 2025 Jitka Plesnikova - 1.45.1-4