qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH] Make nbd-tester-client use FIXED_NEWSTYLE negotiation
@ 2016-04-11 14:31 Alex Bligh
  2016-04-11 14:37 ` Alex Bligh
  0 siblings, 1 reply; 2+ messages in thread
From: Alex Bligh @ 2016-04-11 14:31 UTC (permalink / raw)
  To: qemu-devel@nongnu.org; +Cc: Wouter Verhelst, Alex Bligh

Signed-off-by: Alex Bligh <alex@alex.org.uk>
---
 tests/run/nbd-tester-client.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/tests/run/nbd-tester-client.c b/tests/run/nbd-tester-client.c
index 06396a7..1b99fa8 100644
--- a/tests/run/nbd-tester-client.c
+++ b/tests/run/nbd-tester-client.c
@@ -342,6 +342,8 @@ int setup_connection_common(int sock, char* name, CONNECTION_TYPE ctype, int* se
 	u64 tmp64;
 	uint64_t mymagic = (name ? opts_magic : cliserv_magic);
 	uint32_t tmp32 = 0;
+	uint16_t handshakeflags = 0;
+	uint32_t negotiationflags = 0;
 
 	if(ctype<CONNECTION_TYPE_INIT_PASSWD)
 		goto end;
@@ -370,10 +372,12 @@ int setup_connection_common(int sock, char* name, CONNECTION_TYPE ctype, int* se
 		READ_ALL_ERRCHK(sock, buf, 128, err, "Could not read data: %s", strerror(errno));
 		goto end;
 	}
-	/* flags */
-	READ_ALL_ERRCHK(sock, buf, sizeof(uint16_t), err, "Could not read reserved field: %s", strerror(errno));
-	/* reserved field */
-	WRITE_ALL_ERRCHK(sock, &tmp32, sizeof(tmp32), err, "Could not write reserved field: %s", strerror(errno));
+	/* handshake flags */
+	READ_ALL_ERRCHK(sock, &handshakeflags, sizeof(handshakeflags), err, "Could not read reserved field: %s", strerror(errno));
+	/* negotiation flags */
+	if (handshakeflags & NBD_FLAG_FIXED_NEWSTYLE)
+		negotiationflags |= NBD_FLAG_C_FIXED_NEWSTYLE;
+	WRITE_ALL_ERRCHK(sock, &negotiationflags, sizeof(negotiationflags), err, "Could not write reserved field: %s", strerror(errno));
 	/* magic */
 	tmp64 = htonll(opts_magic);
 	WRITE_ALL_ERRCHK(sock, &tmp64, sizeof(tmp64), err, "Could not write magic: %s", strerror(errno));
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [Qemu-devel] [PATCH] Make nbd-tester-client use FIXED_NEWSTYLE negotiation
  2016-04-11 14:31 [Qemu-devel] [PATCH] Make nbd-tester-client use FIXED_NEWSTYLE negotiation Alex Bligh
@ 2016-04-11 14:37 ` Alex Bligh
  0 siblings, 0 replies; 2+ messages in thread
From: Alex Bligh @ 2016-04-11 14:37 UTC (permalink / raw)
  To: qemu-devel@nongnu.org; +Cc: Alex Bligh

Apologies - wrong list. The perils of relying on history.

Alex

On 11 Apr 2016, at 15:31, Alex Bligh <alex@alex.org.uk> wrote:
> Signed-off-by: Alex Bligh <alex@alex.org.uk>
> ---
> tests/run/nbd-tester-client.c | 12 ++++++++----
> 1 file changed, 8 insertions(+), 4 deletions(-)
> 
> diff --git a/tests/run/nbd-tester-client.c b/tests/run/nbd-tester-client.c
> index 06396a7..1b99fa8 100644
> --- a/tests/run/nbd-tester-client.c
> +++ b/tests/run/nbd-tester-client.c
> @@ -342,6 +342,8 @@ int setup_connection_common(int sock, char* name, CONNECTION_TYPE ctype, int* se
> 	u64 tmp64;
> 	uint64_t mymagic = (name ? opts_magic : cliserv_magic);
> 	uint32_t tmp32 = 0;
> +	uint16_t handshakeflags = 0;
> +	uint32_t negotiationflags = 0;
> 
> 	if(ctype<CONNECTION_TYPE_INIT_PASSWD)
> 		goto end;
> @@ -370,10 +372,12 @@ int setup_connection_common(int sock, char* name, CONNECTION_TYPE ctype, int* se
> 		READ_ALL_ERRCHK(sock, buf, 128, err, "Could not read data: %s", strerror(errno));
> 		goto end;
> 	}
> -	/* flags */
> -	READ_ALL_ERRCHK(sock, buf, sizeof(uint16_t), err, "Could not read reserved field: %s", strerror(errno));
> -	/* reserved field */
> -	WRITE_ALL_ERRCHK(sock, &tmp32, sizeof(tmp32), err, "Could not write reserved field: %s", strerror(errno));
> +	/* handshake flags */
> +	READ_ALL_ERRCHK(sock, &handshakeflags, sizeof(handshakeflags), err, "Could not read reserved field: %s", strerror(errno));
> +	/* negotiation flags */
> +	if (handshakeflags & NBD_FLAG_FIXED_NEWSTYLE)
> +		negotiationflags |= NBD_FLAG_C_FIXED_NEWSTYLE;
> +	WRITE_ALL_ERRCHK(sock, &negotiationflags, sizeof(negotiationflags), err, "Could not write reserved field: %s", strerror(errno));
> 	/* magic */
> 	tmp64 = htonll(opts_magic);
> 	WRITE_ALL_ERRCHK(sock, &tmp64, sizeof(tmp64), err, "Could not write magic: %s", strerror(errno));
> -- 
> 1.9.1
> 
> 

-- 
Alex Bligh

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2016-04-11 14:37 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-04-11 14:31 [Qemu-devel] [PATCH] Make nbd-tester-client use FIXED_NEWSTYLE negotiation Alex Bligh
2016-04-11 14:37 ` Alex Bligh

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).