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

NAME

       libnbd-release-notes-1.6 - release notes for libnbd 1.6

DESCRIPTION

       These are the release notes for libnbd stable release 1.6.  This describes the major
       changes since 1.4.

       libnbd 1.6.0 was released on 7 January 2021.

   Security
       There were no security issues found in this release.

       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
       nbd_set_strict_mode(3)
       nbd_get_strict_mode(3)
           This API allows you to control how libnbd handles requests from the program that it
           thinks would trigger undefined behaviour in the server (such as sending unknown
           commands, zero-sized or out-of-bounds requests, etc).  Normally libnbd is very strict
           and will prevent you from sending such requests, but you can use this API to relax
           these restrictions, leaving it up to the server to handle or reject them.  Some
           servers may crash if you do this.

       nbd_get_nr_meta_contexts(3)
       nbd_get_meta_context(3)
       nbd_clear_meta_contexts(3)
           These APIs allow you to review or clear the requested metadata contexts.

       nbd_opt_list_meta_context(3)
       nbd_aio_opt_list_meta_context(3)
           Request that the server lists available metadata contexts.  You can only use this in
           opt mode.

       Thanks: Eric Blake for all of the new APIs.

   Enhancements to existing APIs
       nbd_shutdown(3) new flag "LIBNBD_SHUTDOWN_ABANDON_PENDING" drops any commands in flight
       which have not been sent to the server yet (Eric Blake).

       All APIs which have flag (bitmask) parameters now define a "LIBNBD_*_MASK" constant
       allowing you to tell which bits represent valid flags at compilation time (Eric Blake).

   New features
       The performance of the nbdcopy(1) tool has been greatly improved.  Also it supports
       numerous new features.

       New nbdinfo(1) --map option showing the allocated and sparse extents of an NBD server.
       This can also show other information such as dirty bitmaps.

   Tools
       nbdfuse(1) can now mount the NBD export on top of any regular file, it does not have to
       mount over a directory.

       nbdsh(1) now produces a nice error message if the URI in the -u option or the command in
       the -c option is wrong (Eric Blake).

       New nbdsh(1) --opt-mode option which requests opt mode on the handle before connecting.

       nbdinfo(1) --list option now shows the supported metadata contexts of the server (Eric
       Blake).

       The output of nbdinfo(1) is now usually printed atomically, ie. it will either print the
       complete output or an error message, but not partial output followed by an error.

       nbdinfo(1) can now decode "qemu:allocation-depth" metacontext (Eric Blake).

   Other improvements and bug fixes
       Multiple improvements to handling of NBD protocol (Eric Blake).

       Fix handling of booleans in Python bindings (Eric Blake).

       Fix handling of flags parameters in OCaml bindings (Eric Blake).

       Python style fixes (Eric Blake).

       Fix multiple memory leaks (Eric Blake).

       OCaml bindings now include ocamldoc-generated documentation, if ocamldoc is installed at
       build time.

       The "vector" library from nbdkit is now used by libnbd, simplifying places where we used
       to use realloc(3).

SEE ALSO

       libnbd(3).

AUTHORS

       Eric Blake

       Richard W.M. Jones

COPYRIGHT

       Copyright (C) 2020-2021 Red Hat Inc.

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