OSDN Git Service

nbd: Reject unknown request flags
authorEric Blake <eblake@redhat.com>
Wed, 11 May 2016 22:39:38 +0000 (16:39 -0600)
committerPaolo Bonzini <pbonzini@redhat.com>
Thu, 16 Jun 2016 16:39:05 +0000 (18:39 +0200)
commitab7c548e266a6324db0994cea58c35b3dc87bade
tree915e139e45abda56a92e0341a17f74900b2a8d28
parent29b6c3b319acb85b2f025bffebb8ed9b3a83602a
nbd: Reject unknown request flags

The NBD protocol says that clients should not send a command flag
that has not been negotiated (whether by the client requesting an
option during a handshake, or because we advertise support for the
flag in response to NBD_OPT_EXPORT_NAME), and that servers should
reject invalid flags with EINVAL.  We were silently ignoring the
flags instead.  The client can't rely on our behavior, since it is
their fault for passing the bad flag in the first place, but it's
better to be robust up front than to possibly behave differently
than the client was expecting with the attempted flag.

Signed-off-by: Eric Blake <eblake@redhat.com>
Reviewed-by: Alex Bligh <alex@alex.org.uk>
Message-Id: <1463006384-7734-6-git-send-email-eblake@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
nbd/server.c