[Libguestfs] [nbdkit PATCH 4/4] server: Fix OPT_GO on different export than SET_META_CONTEXT
Eric Blake
eblake at redhat.com
Thu Sep 19 12:21:15 UTC 2019
On 9/18/19 10:01 PM, Eric Blake wrote:
> The NBD spec says that if a client requests SET_META_CONTEXT for
> exportA, but later requests NBD_OPT_GO/EXPORT_NAME for exportB, then
> the server should reject NBD_CMD_BLOCK_STATUS requests (that is, the
> context returned for exportA need not apply to exportB). When we
> originally added base:allocation, our argument was that we always
> ignore export names, so it was easier to just treat any two export
> names as being the same export, so no need to reset things. But now
> that we have nbdkit_export_name(), we are better off obeying the spec.
>
> Note that there are no known clients in the wild that can actually
> perform this cross-export-name request; this was found by inspection.
> I also don't see the point in hacking up libnbd to become such a
> client.
>
> Fixes: 4f303e44
> Signed-off-by: Eric Blake <eblake at redhat.com>
> ---
> server/internal.h | 1 +
> server/protocol-handshake-newstyle.c | 24 ++++++++++++++++++++++--
> 2 files changed, 23 insertions(+), 2 deletions(-)
>
This missed NBD_OPT_EXPORT_NAME, I'll see if I can factor out a common
helper function rather than duplicating code. (Then again, a client
that requests SET_META_CONTEXT but doesn't use OPT_GO is an anomaly)
--
Eric Blake, Principal Software Engineer
Red Hat, Inc. +1-919-301-3226
Virtualization: qemu.org | libvirt.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/libguestfs/attachments/20190919/49b8add2/attachment.sig>
More information about the Libguestfs
mailing list