Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package libnbd for openSUSE:Factory checked 
in at 2025-08-05 14:21:10
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/libnbd (Old)
 and      /work/SRC/openSUSE:Factory/.libnbd.new.1085 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "libnbd"

Tue Aug  5 14:21:10 2025 rev:20 rq:1297550 version:1.22.3

Changes:
--------
--- /work/SRC/openSUSE:Factory/libnbd/libnbd.changes    2025-05-14 
17:01:57.373119282 +0200
+++ /work/SRC/openSUSE:Factory/.libnbd.new.1085/libnbd.changes  2025-08-05 
14:21:47.434501474 +0200
@@ -1,0 +2,13 @@
+Thu Jul 31 17:01:32 UTC 2025 - Charles Arnold <carn...@suse.com>
+
+- Update to version 1.22.3:
+  * Version 1.22.3.
+  * ublk: Remove unused EXPECTED_VERSION
+  * todo: Remove a couple of minor features that have been implemented
+  * info: Tolerate nbdkit slop on large extents
+  * generator: Avoid const-correctness warnings in golang
+  * maint: Spelling fixes
+  * ci: Disable cross-builds of Rust
+  * rust: Allow cargo build --target $RUST_TARGET to be set
+
+-------------------------------------------------------------------

Old:
----
  libnbd-1.22.2.tar.bz2

New:
----
  libnbd-1.22.3.tar.bz2

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ libnbd.spec ++++++
--- /var/tmp/diff_new_pack.L4q28M/_old  2025-08-05 14:21:48.198533405 +0200
+++ /var/tmp/diff_new_pack.L4q28M/_new  2025-08-05 14:21:48.202533572 +0200
@@ -19,7 +19,7 @@
 %define sover 0
 
 Name:           libnbd
-Version:        1.22.2
+Version:        1.22.3
 Release:        0
 Summary:        NBD client library in userspace
 License:        LGPL-2.1-or-later

++++++ _service ++++++
--- /var/tmp/diff_new_pack.L4q28M/_old  2025-08-05 14:21:48.238535076 +0200
+++ /var/tmp/diff_new_pack.L4q28M/_new  2025-08-05 14:21:48.242535244 +0200
@@ -1,7 +1,7 @@
 <services>
   <service name="tar_scm" mode="manual">
     <param name="filename">libnbd</param>
-    <param name="revision">v1.22.2</param>
+    <param name="revision">v1.22.3</param>
     <param name="scm">git</param>
     <param name="submodules">disable</param>
     <param name="url">https://gitlab.com/nbdkit/libnbd.git</param>

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.L4q28M/_old  2025-08-05 14:21:48.262536080 +0200
+++ /var/tmp/diff_new_pack.L4q28M/_new  2025-08-05 14:21:48.266536247 +0200
@@ -1,6 +1,6 @@
 <servicedata>
 <service name="tar_scm">
                 <param name="url">https://gitlab.com/nbdkit/libnbd.git</param>
-              <param 
name="changesrevision">5f55a26f3a776c11049a27154b1f2b59b8c335da</param></service></servicedata>
+              <param 
name="changesrevision">e6383d73b38fc5b7c06b3d8cd9f22e42ad16edfc</param></service></servicedata>
 (No newline at EOF)
 

++++++ libnbd-1.22.2.tar.bz2 -> libnbd-1.22.3.tar.bz2 ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/TODO new/libnbd-1.22.3/TODO
--- old/libnbd-1.22.2/TODO      2025-04-22 16:56:54.000000000 +0200
+++ new/libnbd-1.22.3/TODO      2025-07-17 15:05:46.000000000 +0200
@@ -1,10 +1,6 @@
 Explore if nbd_aio_notify_error is needed for faster response if
 server goes away.
 
-Bindings in other languages.
- - Latest attempt at adding Rust:
-   https://www.redhat.com/archives/libguestfs/2019-August/msg00416.html
-
 Example code integrating with ppoll, pollfd, APR pollset (and others?).
 
 NBD resize extension.
@@ -32,8 +28,6 @@
  - Synchronous loop should be adjusted to take into account
    the NBD preferred block size, as was done for multi-thread loop.
  - Benchmark.
- - Better page cache usage, see nbdkit-file-plugin options
-   fadvise=sequential cache=none.
  - Consider io_uring if there are performance bottlenecks.
  - Configurable retries in response to read or write failures.
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/ci/build.sh 
new/libnbd-1.22.3/ci/build.sh
--- old/libnbd-1.22.2/ci/build.sh       2025-04-22 16:56:54.000000000 +0200
+++ new/libnbd-1.22.3/ci/build.sh       2025-07-17 15:05:46.000000000 +0200
@@ -106,11 +106,13 @@
             --disable-fuse
             --disable-ocaml
             --disable-python
+            --disable-rust
             --disable-golang"
     else
         CONFIG_ARGS="$CONFIG_ARGS
             --enable-fuse
             --enable-ocaml
+            --enable-rust
             --enable-python"
         if test "$GOLANG" = "skip"
         then
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/configure.ac 
new/libnbd-1.22.3/configure.ac
--- old/libnbd-1.22.2/configure.ac      2025-04-22 16:56:54.000000000 +0200
+++ new/libnbd-1.22.3/configure.ac      2025-07-17 15:05:46.000000000 +0200
@@ -15,7 +15,7 @@
 # License along with this library; if not, write to the Free Software
 # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
 
-AC_INIT([libnbd],[1.22.2])
+AC_INIT([libnbd],[1.22.3])
 
 AC_CONFIG_MACRO_DIR([m4])
 m4_ifdef([AC_USE_SYSTEM_EXTENSIONS],[],
@@ -751,6 +751,8 @@
             CARGO=no
         ])
     ])
+    AC_ARG_VAR([RUST_TARGET],
+               [if set, cargo build uses --target $RUST_TARGET])
 ],[CARGO=no])
 AM_CONDITIONAL([HAVE_RUST],[test "x$CARGO" != "xno"])
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/copy/file-ops.c 
new/libnbd-1.22.3/copy/file-ops.c
--- old/libnbd-1.22.2/copy/file-ops.c   2025-04-22 16:56:54.000000000 +0200
+++ new/libnbd-1.22.3/copy/file-ops.c   2025-07-17 15:05:46.000000000 +0200
@@ -82,7 +82,7 @@
   bool seek_hole_supported;
   int sector_size;
 
-  /* We try to use the most eficient zeroing first. If an efficent zero
+  /* We try to use the most efficient zeroing first. If an efficient zero
    * method is not available, we disable the flag so next time we use
    * the working method.
    */
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/docs/libnbd-release-notes-1.18.pod 
new/libnbd-1.22.3/docs/libnbd-release-notes-1.18.pod
--- old/libnbd-1.22.2/docs/libnbd-release-notes-1.18.pod        2025-04-22 
16:56:54.000000000 +0200
+++ new/libnbd-1.22.3/docs/libnbd-release-notes-1.18.pod        2025-07-17 
15:05:46.000000000 +0200
@@ -145,7 +145,7 @@
 
 Debug messages no longer print the very verbose state transitions
 inside the state machine as these are not usually useful.  You can
-reenable this by defining C<-DLIBNBD_STATE_VERBOSE=1> at compile time.
+re-enable this by defining C<-DLIBNBD_STATE_VERBOSE=1> at compile time.
 
 Completion C<.callback> methods are now always called exactly once,
 and documentation is clearer on when this happens (Eric Blake).
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/docs/libnbd.pod 
new/libnbd-1.22.3/docs/libnbd.pod
--- old/libnbd-1.22.2/docs/libnbd.pod   2025-04-22 16:56:54.000000000 +0200
+++ new/libnbd-1.22.3/docs/libnbd.pod   2025-07-17 15:05:46.000000000 +0200
@@ -936,7 +936,7 @@
 
 =head2 Completion callbacks
 
-All of the asychronous commands have an optional completion callback
+All of the asynchronous commands have an optional completion callback
 function that is used if the call to the asynchronous API reports
 success.  The completion callback is invoked when the submitted
 command is eventually marked complete, after any mid-command callbacks
@@ -976,7 +976,7 @@
 the server's reply), and the overall command will still fail (at the
 completion callback or L<nbd_aio_command_completed(3)> for an
 asynchronous command, or as the result of the overall synchronous
-command).  Returing C<-1> from a mid-command callback does not prevent
+command).  Returning C<-1> from a mid-command callback does not prevent
 that callback from being reached again, if the server sends more
 mid-command replies that warrant another use of that callback.  A
 mid-command callback may be reached more times than expected if the
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/examples/copy-libev.c 
new/libnbd-1.22.3/examples/copy-libev.c
--- old/libnbd-1.22.2/examples/copy-libev.c     2025-04-22 16:56:54.000000000 
+0200
+++ new/libnbd-1.22.3/examples/copy-libev.c     2025-07-17 15:05:46.000000000 
+0200
@@ -3,7 +3,7 @@
  *
  * http://pod.tst.eu/http://cvs.schmorp.de/libev/ev.pod
  *
- * To build it you need the libev-devel pacakge.
+ * To build it you need the libev-devel package.
  *
  * To run it:
  *
@@ -32,7 +32,7 @@
 
 #include <ev.h>
 
-/* These values depend on the enviroment tested.
+/* These values depend on the environment tested.
  *
  * For shared storage using direct I/O:
  *
@@ -76,8 +76,8 @@
     IDLE,       /* Not used yet. */
     EXTENTS,    /* Getting extents from source. */
     READ,       /* Read from source. */
-    WRITE,      /* Write to destiation. */
-    ZERO,       /* Write zeroes to destiation. */
+    WRITE,      /* Write to destination. */
+    ZERO,       /* Write zeroes to destination. */
     SLEEP       /* Waiting for extents completion. */
 };
 
@@ -631,12 +631,12 @@
 
     debug = getenv ("COPY_LIBEV_DEBUG") != NULL;
 
-    /* Configure soruce to report extents. */
+    /* Configure source to report extents. */
 
     if (nbd_add_meta_context (src.nbd, LIBNBD_CONTEXT_BASE_ALLOCATION))
         FAIL ("Cannot add base:allocation: %s", nbd_get_error ());
 
-    /* Connecting is fast, so use the syncronous API. */
+    /* Connecting is fast, so use the synchronous API. */
 
     if (nbd_connect_uri (src.nbd, argv[1]))
         FAIL ("Cannot connect to source: %s", nbd_get_error ());
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/generator/C.ml 
new/libnbd-1.22.3/generator/C.ml
--- old/libnbd-1.22.2/generator/C.ml    2025-04-22 16:56:54.000000000 +0200
+++ new/libnbd-1.22.3/generator/C.ml    2025-07-17 15:05:46.000000000 +0200
@@ -286,16 +286,16 @@
   pr "\n    LIBNBD_ATTRIBUTE_NONNULL (%s);\n" (String.concat ", " nns)
 
 let rec print_cbarg_list ?(wrap = false) ?maxcol ?types ?(parens = true)
-          cbargs =
+          ?(noconst = false) cbargs =
   if parens then pr "(";
   if wrap then
     pr_wrap ?maxcol ','
-      (fun () -> print_cbarg_list' ?types cbargs)
+      (fun () -> print_cbarg_list' ?types noconst cbargs)
   else
-    print_cbarg_list' ?types cbargs;
+    print_cbarg_list' ?types noconst cbargs;
   if parens then pr ")"
 
-and print_cbarg_list' ?(types = true) cbargs =
+and print_cbarg_list' ?(types = true) noconst cbargs =
   if types then pr "void *";
   pr "user_data";
 
@@ -316,6 +316,7 @@
       | CBArrayAndLen _ -> assert false
       | CBBytesIn (n, len) ->
          if types then pr "const void *";
+         if noconst then pr "(void *)";
          pr "%s, " n;
          if types then pr "size_t ";
          pr "%s" len
@@ -331,6 +332,7 @@
       | CBMutable arg -> assert false
       | CBString n ->
          if types then pr "const char *";
+         if noconst then pr "(char *)";
          pr "%s" n
       | CBUInt n ->
          if types then pr "unsigned ";
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/generator/C.mli 
new/libnbd-1.22.3/generator/C.mli
--- old/libnbd-1.22.2/generator/C.mli   2025-04-22 16:56:54.000000000 +0200
+++ new/libnbd-1.22.3/generator/C.mli   2025-07-17 15:05:46.000000000 +0200
@@ -34,7 +34,7 @@
                      ?closure_style:closure_style ->
                      API.arg list -> API.optarg list -> unit
 val print_cbarg_list : ?wrap:bool -> ?maxcol:int ->
-                       ?types:bool -> ?parens:bool ->
+                       ?types:bool -> ?parens:bool -> ?noconst:bool ->
                        API.cbarg list -> unit
 val print_call : ?wrap:bool -> ?maxcol:int ->
                  ?closure_style:closure_style ->
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/generator/GoLang.ml 
new/libnbd-1.22.3/generator/GoLang.ml
--- old/libnbd-1.22.2/generator/GoLang.ml       2025-04-22 16:56:54.000000000 
+0200
+++ new/libnbd-1.22.3/generator/GoLang.ml       2025-07-17 15:05:46.000000000 
+0200
@@ -159,9 +159,9 @@
   C.print_cbarg_list ~wrap:true cbargs;
   pr "\n";
   pr "{\n";
-  pr "  // golang isn't const-correct, there will be warnings here:\n";
+  pr "  // golang isn't const-correct, casts avoid warnings here:\n";
   pr "  return %s_callback ((long *)" cbname;
-  C.print_cbarg_list ~types:false ~parens:false cbargs;
+  C.print_cbarg_list ~types:false ~parens:false ~noconst:true cbargs;
   pr ");\n";
   pr "}\n";
   pr "\n";
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/golang/aio_buffer.go 
new/libnbd-1.22.3/golang/aio_buffer.go
--- old/libnbd-1.22.2/golang/aio_buffer.go      2025-04-22 16:56:54.000000000 
+0200
+++ new/libnbd-1.22.3/golang/aio_buffer.go      2025-07-17 15:05:46.000000000 
+0200
@@ -80,7 +80,7 @@
 
 // Slice creates a slice backed by the underlying C array. The slice can be
 // used to access or modify the contents of the underlying array. The slice
-// must not be used after caling Free().
+// must not be used after calling Free().
 func (b *AioBuffer) Slice() []byte {
        if b.P == nil {
                panic("Using AioBuffer after Free()")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/golang/callbacks.go 
new/libnbd-1.22.3/golang/callbacks.go
--- old/libnbd-1.22.2/golang/callbacks.go       2025-04-22 16:56:54.000000000 
+0200
+++ new/libnbd-1.22.3/golang/callbacks.go       2025-07-17 15:05:46.000000000 
+0200
@@ -36,7 +36,7 @@
 // - Create an exported Golang function whose job will be to retrieve
 //   the context and execute the callback in it
 //   (connErrCallback). Such a function should receive a callback ID
-//   and will use it to retrive the context.
+//   and will use it to retrieve the context.
 //
 // - Create a CGO function similar to the above function but with the
 //   appropriate signature to be registered as a callback in C code
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/golang/examples/aio_copy/aio_copy.go 
new/libnbd-1.22.3/golang/examples/aio_copy/aio_copy.go
--- old/libnbd-1.22.2/golang/examples/aio_copy/aio_copy.go      2025-04-22 
16:56:54.000000000 +0200
+++ new/libnbd-1.22.3/golang/examples/aio_copy/aio_copy.go      2025-07-17 
15:05:46.000000000 +0200
@@ -62,8 +62,8 @@
 )
 
 // command keeps state of single AioPread call while the read is handled by
-// libnbd, until the command reach the front of the queue and can be writen to
-// the output.
+// libnbd, until the command reach the front of the queue and can be written
+// to the output.
 type command struct {
        buf   libnbd.AioBuffer
        ready bool
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/golang/libnbd_020_aio_buffer_test.go 
new/libnbd-1.22.3/golang/libnbd_020_aio_buffer_test.go
--- old/libnbd-1.22.2/golang/libnbd_020_aio_buffer_test.go      2025-04-22 
16:56:54.000000000 +0200
+++ new/libnbd-1.22.3/golang/libnbd_020_aio_buffer_test.go      2025-07-17 
15:05:46.000000000 +0200
@@ -75,7 +75,7 @@
                t.Fatalf("Expected %v, got %v", zeroes, buf2.Bytes())
        }
 
-       /* Crated a zeroed buffer. */
+       /* Create a zeroed buffer. */
        buf3 := MakeAioBufferZero(uint(32))
        defer buf.Free()
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/golang/libnbd_590_aio_copy_test.go 
new/libnbd-1.22.3/golang/libnbd_590_aio_copy_test.go
--- old/libnbd-1.22.2/golang/libnbd_590_aio_copy_test.go        2025-04-22 
16:56:54.000000000 +0200
+++ new/libnbd-1.22.3/golang/libnbd_590_aio_copy_test.go        2025-07-17 
15:05:46.000000000 +0200
@@ -86,7 +86,7 @@
        return 1
 }
 
-/* Copy between two libnbd handles using aynchronous I/O (AIO). */
+/* Copy between two libnbd handles using asynchronous I/O (AIO). */
 func asynch_copy(t *testing.T, src *Libnbd, dst *Libnbd) {
        size, _ := dst.GetSize()
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/golang/make-dist.sh 
new/libnbd-1.22.3/golang/make-dist.sh
--- old/libnbd-1.22.2/golang/make-dist.sh       2025-04-22 16:56:54.000000000 
+0200
+++ new/libnbd-1.22.3/golang/make-dist.sh       2025-07-17 15:05:46.000000000 
+0200
@@ -112,7 +112,7 @@
 cp go.mod $v_dir/$version.mod
 mv $version.zip $v_dir
 
-# Create the list file by amending the curent file on the server.
+# Create the list file by amending the current file on the server.
 
list_url=https://download.libguestfs.org/libnbd/golang/libguestfs.org/libnbd/@v/list
 curl --silent --show-error "$list_url" | sort > $v_dir/list
 grep -q "$version" $v_dir/list || echo "$version" >> $v_dir/list
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/info/Makefile.am 
new/libnbd-1.22.3/info/Makefile.am
--- old/libnbd-1.22.2/info/Makefile.am  2025-04-22 16:56:54.000000000 +0200
+++ new/libnbd-1.22.3/info/Makefile.am  2025-07-17 15:05:46.000000000 +0200
@@ -49,6 +49,7 @@
        info-map-base-allocation-large.sh \
        info-map-base-allocation-weird.sh \
        info-map-base-allocation-zero.sh \
+       info-map-large-extent.sh \
        info-map-qemu-dirty-bitmap.sh \
        info-map-qemu-allocation-depth.sh \
        info-map-totals.sh \
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/info/info-map-large-extent.sh 
new/libnbd-1.22.3/info/info-map-large-extent.sh
--- old/libnbd-1.22.2/info/info-map-large-extent.sh     1970-01-01 
01:00:00.000000000 +0100
+++ new/libnbd-1.22.3/info/info-map-large-extent.sh     2025-07-17 
15:05:46.000000000 +0200
@@ -0,0 +1,42 @@
+#!/usr/bin/env bash
+# nbd client library in userspace
+# Copyright Red Hat
+#
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 2 of the License, or (at your option) any later version.
+#
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this library; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+
+. ../tests/functions.sh
+
+set -e
+set -x
+
+requires $NBDKIT --version
+requires $NBDKIT -U - --filter=blocksize-policy data 1 --run 'test "$uri" != 
""'
+
+out=info-map-large-extent.out
+cleanup_fn rm -f $out
+rm -f $out
+
+# nbdkit < 1.44 had a bug where 4G large extents would truncate larger than
+# the aligned request; whether or not nbdkit is fixed, we can work around it.
+$NBDKIT -U - data data='@4294967296 1 @^512' \
+        --filter=blocksize-policy blocksize-minimum=512 \
+        --run '$VG nbdinfo --map "$uri"' > $out
+
+cat $out
+
+diff -u - $out <<EOF
+         0  4294967296    3  hole,zero
+4294967296         512    0  data
+EOF
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/info/main.c 
new/libnbd-1.22.3/info/main.c
--- old/libnbd-1.22.2/info/main.c       2025-04-22 16:56:54.000000000 +0200
+++ new/libnbd-1.22.3/info/main.c       2025-07-17 15:05:46.000000000 +0200
@@ -130,7 +130,7 @@
     { "can",                required_argument, NULL, CAN_OPTION },
     { "cannot",             required_argument, NULL, CANNOT_OPTION },
     { "can-not",            required_argument, NULL, CANNOT_OPTION },
-    { "cant",               required_argument, NULL, CANNOT_OPTION },
+    { "can""t",             required_argument, NULL, CANNOT_OPTION },
     { "color",              no_argument,       NULL, COLOUR_OPTION },
     { "colors",             no_argument,       NULL, COLOUR_OPTION },
     { "colour",             no_argument,       NULL, COLOUR_OPTION },
@@ -144,15 +144,15 @@
     { "has",                required_argument, NULL, CAN_OPTION },
     { "hasnot",             required_argument, NULL, CANNOT_OPTION },
     { "has-not",            required_argument, NULL, CANNOT_OPTION },
-    { "hasnt",              required_argument, NULL, CANNOT_OPTION },
+    { "hasn""t",            required_argument, NULL, CANNOT_OPTION },
     { "have",               required_argument, NULL, CAN_OPTION },
-    { "havent",             required_argument, NULL, CANNOT_OPTION },
+    { "haven""t",           required_argument, NULL, CANNOT_OPTION },
     { "havenot",            required_argument, NULL, CANNOT_OPTION },
     { "have-not",           required_argument, NULL, CANNOT_OPTION },
     { "is",                 required_argument, NULL, CAN_OPTION },
     { "isnot",              required_argument, NULL, CANNOT_OPTION },
     { "is-not",             required_argument, NULL, CANNOT_OPTION },
-    { "isnt",               required_argument, NULL, CANNOT_OPTION },
+    { "isn""t",             required_argument, NULL, CANNOT_OPTION },
     { "json",               no_argument,       NULL, JSON_OPTION },
     { "list",               no_argument,       NULL, 'L' },
     { "long-options",       no_argument,       NULL, LONG_OPTIONS },
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/info/map.c new/libnbd-1.22.3/info/map.c
--- old/libnbd-1.22.2/info/map.c        2025-04-22 16:56:54.000000000 +0200
+++ new/libnbd-1.22.3/info/map.c        2025-07-17 15:05:46.000000000 +0200
@@ -95,8 +95,18 @@
                progname);
       exit (EXIT_FAILURE);
     }
-    for (i = prev_entries_size; i < entries.len; i++)
+    for (i = prev_entries_size; i < entries.len; i++) {
+      /* nbdkit < 1.44 has a bug where even though we requested an
+       * aligned request at 4G-alignment, the result can be unaligned
+       * if it is larger than the request.  The easiest workaround is
+       * to ignore the slop.
+       */
+      if (entries.ptr[i].length > max_len) {
+        entries.ptr[i].length = max_len;
+        entries.len = i + 1;
+      }
       offset += entries.ptr[i].length;
+    }
   }
 
   if (!totals)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/interop/interop.c 
new/libnbd-1.22.3/interop/interop.c
--- old/libnbd-1.22.2/interop/interop.c 2025-04-22 16:56:54.000000000 +0200
+++ new/libnbd-1.22.3/interop/interop.c 2025-07-17 15:05:46.000000000 +0200
@@ -131,7 +131,7 @@
    * need to have our own log handler.
    *
    * Also the log levels are quite random.  Level 2 doesn't show the
-   * negotiated cyphersuite, but level 3+ shows excessive detail.
+   * negotiated ciphersuite, but level 3+ shows excessive detail.
    */
   gnutls_global_set_log_level (2);
   gnutls_global_set_log_function (tls_log);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/ocaml/examples/asynch_copy.ml 
new/libnbd-1.22.3/ocaml/examples/asynch_copy.ml
--- old/libnbd-1.22.2/ocaml/examples/asynch_copy.ml     2025-04-22 
16:56:54.000000000 +0200
+++ new/libnbd-1.22.3/ocaml/examples/asynch_copy.ml     2025-07-17 
15:05:46.000000000 +0200
@@ -10,7 +10,7 @@
 let dir_is_read dir = dir land (Int32.to_int NBD.aio_direction_read) <> 0
 let dir_is_write dir = dir land (Int32.to_int NBD.aio_direction_write) <> 0
 
-(* Copy between two libnbd handles using aynchronous I/O (AIO). *)
+(* Copy between two libnbd handles using asynchronous I/O (AIO). *)
 let asynch_copy src dst =
   let size = NBD.get_size dst in
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/ocaml/tests/test_590_aio_copy.ml 
new/libnbd-1.22.3/ocaml/tests/test_590_aio_copy.ml
--- old/libnbd-1.22.2/ocaml/tests/test_590_aio_copy.ml  2025-04-22 
16:56:54.000000000 +0200
+++ new/libnbd-1.22.3/ocaml/tests/test_590_aio_copy.ml  2025-07-17 
15:05:46.000000000 +0200
@@ -34,7 +34,7 @@
 let dir_is_read dir = dir land (Int32.to_int NBD.aio_direction_read) <> 0
 let dir_is_write dir = dir land (Int32.to_int NBD.aio_direction_write) <> 0
 
-(* Copy between two libnbd handles using aynchronous I/O (AIO). *)
+(* Copy between two libnbd handles using asynchronous I/O (AIO). *)
 let asynch_copy src dst =
   let size = NBD.get_size dst in
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/rust/Makefile.am 
new/libnbd-1.22.3/rust/Makefile.am
--- old/libnbd-1.22.2/rust/Makefile.am  2025-04-22 16:56:54.000000000 +0200
+++ new/libnbd-1.22.3/rust/Makefile.am  2025-07-17 15:05:46.000000000 +0200
@@ -98,15 +98,17 @@
        $(abs_top_builddir)/run echo $(VERSION) > libnbd-sys/libnbd_version.t
        mv libnbd-sys/libnbd_version.t libnbd-sys/libnbd_version
 
+RUST_TARGET_PARAM := $(if $(RUST_TARGET),--target $(RUST_TARGET))
+
 target/debug/liblibnbd.rlib: $(source_files)
-       $(abs_top_builddir)/run $(CARGO) build
+       $(abs_top_builddir)/run $(CARGO) build $(RUST_TARGET_PARAM)
 
 target/doc/libnbd/index.html: $(source_files)
        $(abs_top_builddir)/run $(CARGO) doc
 
 # This will actually build all the examples:
 target/debug/examples/get-size: $(source_files)
-       $(abs_top_builddir)/run $(CARGO) build --examples
+       $(abs_top_builddir)/run $(CARGO) build  $(RUST_TARGET_PARAM) --examples
 
 if HAVE_POD
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/rust/cargo_test/README.md 
new/libnbd-1.22.3/rust/cargo_test/README.md
--- old/libnbd-1.22.2/rust/cargo_test/README.md 2025-04-22 16:56:54.000000000 
+0200
+++ new/libnbd-1.22.3/rust/cargo_test/README.md 2025-07-17 15:05:46.000000000 
+0200
@@ -1,3 +1,3 @@
-The solely purpose of this directory is to serve as a test crate for checking 
if Cargo is useable.
-`cargo test`, `cargo doc` and `cargo fmt` are run in the Autoconf script in 
this directory. If any of the commands failes,
-Cargo is assumed not to be useable and the Rust bindings will be disabled.
+The sole purpose of this directory is to serve as a test crate for checking if 
Cargo is usable.
+`cargo test`, `cargo doc` and `cargo fmt` are run in the Autoconf script in 
this directory. If any of the commands fails,
+Cargo is assumed not to be usable and the Rust bindings will be disabled.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/rust/tests/test_log/mod.rs 
new/libnbd-1.22.3/rust/tests/test_log/mod.rs
--- old/libnbd-1.22.2/rust/tests/test_log/mod.rs        2025-04-22 
16:56:54.000000000 +0200
+++ new/libnbd-1.22.3/rust/tests/test_log/mod.rs        2025-07-17 
15:05:46.000000000 +0200
@@ -49,7 +49,7 @@
         }
     }
 
-    /// Check wether a specific message has been logged.
+    /// Check whether a specific message has been logged.
     pub fn contains(&self, msg: &str) -> bool {
         self.entries.lock().unwrap().iter().any(|(_, x)| x == msg)
     }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/tests/closure-lifetimes.c 
new/libnbd-1.22.3/tests/closure-lifetimes.c
--- old/libnbd-1.22.2/tests/closure-lifetimes.c 2025-04-22 16:56:54.000000000 
+0200
+++ new/libnbd-1.22.3/tests/closure-lifetimes.c 2025-07-17 15:05:46.000000000 
+0200
@@ -156,7 +156,7 @@
                                      completion_callback, 0);
   if (cookie == -1) NBD_ERROR;
   /* read_cb_called is indeterminate at this point, as state machine
-   * progress may vary based on task schduling and network speed factors.
+   * progress may vary based on task scheduling and network speed factors.
    */
   assert (completion_cb_called == 0);
   assert (read_cb_freed == 0);
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/libnbd-1.22.2/ublk/Makefile.am 
new/libnbd-1.22.3/ublk/Makefile.am
--- old/libnbd-1.22.2/ublk/Makefile.am  2025-04-22 16:56:54.000000000 +0200
+++ new/libnbd-1.22.3/ublk/Makefile.am  2025-07-17 15:05:46.000000000 +0200
@@ -24,7 +24,6 @@
 TESTS_ENVIRONMENT = \
        LIBNBD_DEBUG=1 \
        $(MALLOC_CHECKS) \
-       EXPECTED_VERSION=$(VERSION) \
        $(NULL)
 LOG_COMPILER = $(top_builddir)/run
 TESTS =

Reply via email to