On 9/28/19 3:07 PM, Richard W.M. Jones wrote:
On Fri, Sep 27, 2019 at 11:48:47PM -0500, Eric Blake wrote:
Fixes the fact that clients could not request the maximum string
length except with NBD_OPT_EXPORT_LEN. Updates the testsuite to
match.
Signed-off-by: Eric Blake <[email protected]>
---
server/protocol-handshake-newstyle.c | 12 +++++++-----
tests/test-long-name.sh | 10 ++++------
2 files changed, 11 insertions(+), 11 deletions(-)
diff --git a/server/protocol-handshake-newstyle.c
b/server/protocol-handshake-newstyle.c
index 34958360..3b5d144e 100644
--- a/server/protocol-handshake-newstyle.c
+++ b/server/protocol-handshake-newstyle.c
@@ -48,7 +48,7 @@
#define MAX_NR_OPTIONS 32
/* Maximum length of any option data (bytes). */
-#define MAX_OPTION_LENGTH 4096
+#define MAX_OPTION_LENGTH (NBD_MAX_STRING * 4)
I may have missed it - why was * 4 chosen?
NBD_OPT_SET_META_CONTEXT allows two strings plus a few glue bytes, so
more than 8k of data from a compliant client. 16k is the next power of
2. We can bump it larger if we want, especially since 16k pales in
comparison to our 32M limit on NBD_CMD_WRITE, but for now, there is
nothing in the NBD protocol larger than NBD_OPT_SET_META_CONTEXT.
--
Eric Blake, Principal Software Engineer
Red Hat, Inc. +1-919-301-3226
Virtualization: qemu.org | libvirt.org
_______________________________________________
Libguestfs mailing list
[email protected]
https://www.redhat.com/mailman/listinfo/libguestfs