Provided by: libnbd-dev_1.20.0-1_amd64 bug

NAME

       libnbd-release-notes-1.12 - release notes for libnbd 1.12

DESCRIPTION

       These are the release notes for libnbd stable release 1.12.  This describes the major changes since 1.10.

       libnbd 1.12.0 was released on 24 February 2022.

   Security
       CVE-2022-0485
           Silent data corruption when using nbdcopy(1).

           See                   the                   full                  announcement                  here:
           https://listman.redhat.com/archives/libguestfs/2022-February/msg00104.html

       If   you   find   a   security   issue,   please   read   SECURITY   in   the   source   (online    here:
       https://gitlab.com/nbdkit/libnbd/blob/master/SECURITY).   To  find  out about previous security issues in
       libnbd, see libnbd-security(3).

   New APIs
       get_pread_initialize
       set_pread_initialize
           Control whether libnbd clears the pread buffer to avoid leaking memory contents if  the  client  does
           not properly handle errors.  These were added as part of the fix for CVE-2022-0485 (Eric Blake).

       get_request_block_size
       set_request_block_size
           Control  whether  libnbd  requests  block  size  constraints from the server during negotiation (Eric
           Blake).

   Enhancements to existing APIs
       Error messages about incorrect URIs in nbd_connect_uri(3) have been  improved  to  make  common  mistakes
       clearer for the user.

   Tools
       New syntax: "nbdinfo [ CMD ... ]" allowing you to query the properties of an NBD server directly.

       nbdcopy(1) new --queue-size option to control the maximum size of the internal buffer (Nir Soffer).

       nbdcopy(1) now names the source and destination handles to make it easier to understand debug output.

   Tests
       Adopt libvirt-ci's ci/gitlab.yml (Martin Kletzander).

       Fix the OCaml extents example (thanks Laszlo Ersek).

       Golang benchmarks were added to the test suite (Nir Soffer).

       The large tests/errors.c test was split into about a dozen separate tests.  Also this adds a new test for
       checking server-side block size constraint error policy which was missing before.

   Other improvements and bug fixes
       New OCaml "NBD.with_handle" helper which ensures that "NBD.close" is always called even if the inner code
       throws an exception.

       The OCaml bindings now consistently use the correct types for buffer sizes everywhere (Laszlo Ersek).

       Several  improvements  and  fixes  to  the  golang  bindings  and  tests.   The golang bindings have been
       relicensed to LGPLv2+ like the rest of  the  library  and  are  now  published  as  a  golang  module  at
       https://libguestfs.org/libnbd (Nir Soffer).

       The  Python bindings no longer crash if you pass "None" in place of a buffer parameter.  In addition some
       memory leaks were fixed (Eric Blake).

       Various memory leaks have been fixed when using the optional strict_mode settings (Eric Blake).

       The performance of the internal vector library has been improved greatly  and  overflow  is  now  handled
       correctly (Nir Soffer, Laszlo Ersek and Eric Blake).

       Add "simple_copy" and "aio_copy" Golang examples (Nir Soffer).

       Error  handling was reviewed and fixed across many of the example programs and documentation (Eric Blake,
       Nir Soffer).

       Simplify and optimize handling of the extents callback in Golang (Nir Soffer).

       Golang AioBuffer was enhanced, making it safer to use, faster and adding documentation (Nir Soffer).

   Documentation
       Document the limits on lengths and sizes of parameters to various APIs (Eric Blake).

   Build
       You can now build programs that use the OCaml bindings of  libnbd  against  the  libnbd  build  directory
       instead of requiring libnbd to be installed (Laszlo Ersek).

       Compatibility with OCaml 4.13.

       Line  locations  in  the state machine should be more accurate when stepping through with a debugger like
       gdb.

       .editorconfig file can be used to help code formatting, see https://editorconfig.org/ (Nir  Soffer,  Eric
       Blake).

       "MIN" and "MAX" macros can be nested (thanks Eric Blake).

SEE ALSO

       libnbd(3).

AUTHORS

       Eric Blake
       Laszlo Ersek
       Martin Kletzander
       Nir Soffer
       Richard W.M. Jones

COPYRIGHT

       Copyright Red Hat

LICENSE

       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

libnbd-1.20.0                                      2024-04-05                       libnbd-release-notes-1.12(1)