1nbdkit-release-notes-1.24(1) NBDKIT nbdkit-release-notes-1.24(1)
2
3
4
6 nbdkit-release-notes-1.24 - release notes for nbdkit 1.24
7
9 These are the release notes for nbdkit stable release 1.24. This
10 describes the major changes since 1.22.
11
12 nbdkit 1.24.0 was released on 7 January 2021.
13
14 Security
15 There were no security issues found. All past security issues and
16 information about how to report new ones can be found in
17 nbdkit-security(1).
18
19 Server
20 The server and a subset of the plugins and filters have been ported to
21 Windows using the Win32 API. Only the mingw-w64 toolchain is supported
22 for building nbdkit (not MSVC). You can also cross-compile from Linux
23 and test under Wine. Some features are missing although it is very
24 usable.
25
26 New -D nbdkit.tls.log and -D nbdkit.tls.session debug flags which
27 enable additional debugging for TLS sessions.
28
29 The server now responds to "NBD_INFO_NAME" (Eric Blake).
30
31 Options --run and --vsock may now be used together.
32
33 In --run, $nbd is now a synonym for $uri instead of having confusing
34 magical properties.
35
36 Plugins
37 New nbdkit-S3-plugin(1) to access disks stored on AWS S3 and Ceph.
38
39 New nbdkit-sparse-random-plugin(1) which generates large disks sparsely
40 filled with random blocks of data. These look like virtual disk images
41 and can be used to benchmark copying tools.
42
43 nbdkit-data-plugin(1) has been greatly enhanced. New features include:
44 "(...)[N:M]" (slice syntax), assignments, comments, variables,
45 "<(SCRIPT)" (inlined shell script). In addition a parse tree is built,
46 allowing optimizations and other enhancements. The plugin is now 64
47 bit clean allowing patterns larger than 2^32 bytes to work correctly.
48
49 nbdkit-random-plugin(1) can now be used to test copying tools.
50
51 nbdkit-vddk-plugin(1) supports enabling compression between VDDK and
52 the VMware server which in some situations can improve performance.
53
54 Filters
55 New nbdkit-exportname-filter(1) can be used to extend, mask and modify
56 the exports exposed by a plugin (Eric Blake).
57
58 New nbdkit-exitwhen-filter(1) allowing the server to gracefully exit on
59 various events including external scripts.
60
61 New nbdkit-checkwrite-filter(1) can be used to benchmark copying tools.
62
63 nbdkit-ip-filter(1) now supports filtering clients by PID, user ID or
64 group ID, for clients connected over a Unix domain socket. Also you
65 can filter clients using "AF_VSOCK" and vsock port number.
66
67 nbdkit-log-filter(1) now logs "get_ready", "after_fork" and
68 "preconnect" methods, and there is a new "logscript" feature allowing
69 scripts to be run on logging events.
70
71 nbdkit-ext2-filter(1) new option "ext2file=exportname" can be used to
72 allow the client to select which file to see from the filesystem using
73 the NBD export name (Eric Blake).
74
75 Language bindings
76 Python style cleanups (Eric Blake).
77
78 The OCaml plugin now correctly acquires and releases the GC lock on all
79 paths in and out.
80
81 There is a new OCaml "NBDKit.version" function returning the version of
82 nbdkit that the plugin was compiled against.
83
84 Multiple enhancements to the Rust plugin (Alan Somers).
85
86 API
87 New ".list_exports", ".default_export" and ".export_description" plugin
88 methods allowing plugins to be queried about what export names they
89 support, and give additional descriptions of exports. New
90 "nbdkit_use_default_export" helper function (Eric Blake).
91
92 New "nbdkit_strdup_intern", "nbdkit_strndup_intern"
93 "nbdkit_printf_intern" and "nbdkit_vprintf_intern" functions which
94 allow you to allocate a string in a plugin without worrying about
95 freeing it (Eric Blake).
96
97 New "nbdkit_peer_pid", "nbdkit_peer_uid" and "nbdkit_peer_gid" allows
98 plugins and filters to read the client’s credentials, for clients
99 connected over a Unix domain socket.
100
101 Tests
102 Many tests now use libnbd(3), nbdsh(1), nbdinfo(1) and nbdcopy(1) as
103 lighter weight replacements for qemu tools.
104
105 Fix compatibility with qemu > 5.2.0.
106
107 Build
108 Downstream packagers can now use this to add extra downstream
109 information which is printed in version strings etc:
110 ./configure --with-extra=...
111
112 If ocamldoc(1) is installed at build time, then it will be used to
113 build the NBDKit(3) manual page for OCaml documentation.
114
116 nbdkit(1).
117
119 Authors of nbdkit 1.24:
120
121 • Alan Somers
122
123 • Eric Blake
124
125 • Richard W.M. Jones
126
128 Copyright Red Hat
129
131 Redistribution and use in source and binary forms, with or without
132 modification, are permitted provided that the following conditions are
133 met:
134
135 • Redistributions of source code must retain the above copyright
136 notice, this list of conditions and the following disclaimer.
137
138 • Redistributions in binary form must reproduce the above copyright
139 notice, this list of conditions and the following disclaimer in the
140 documentation and/or other materials provided with the
141 distribution.
142
143 • Neither the name of Red Hat nor the names of its contributors may
144 be used to endorse or promote products derived from this software
145 without specific prior written permission.
146
147 THIS SOFTWARE IS PROVIDED BY RED HAT AND CONTRIBUTORS ''AS IS'' AND ANY
148 EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
149 IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
150 PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL RED HAT OR CONTRIBUTORS BE
151 LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
152 CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
153 SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
154 BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
155 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
156 OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
157 ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
158
159
160
161nbdkit-1.34.4 2023-09-26 nbdkit-release-notes-1.24(1)