From: Vladimir Sementsov-Ogievskiy <address@hidden>
Instead of passing currently negotiating option and its length to
many of negotiation functions let's just store them on NBDClient
struct to be state-variables of negotiation phase.
This unifies semantics of negotiation functions and allows
tracking changes of remaining option length in future patches.
Signed-off-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Message-Id: <address@hidden>
[eblake: rebase, commit message tweak, assert !optlen after
negotiation completes]
Signed-off-by: Eric Blake <address@hidden>
---
nbd/server.c | 168 +++++++++++++++++++++++++++++------------------------------
1 file changed, 84 insertions(+), 84 deletions(-)
@@ -818,7 +817,7 @@ static int nbd_negotiate_options(NBDClient *client,
uint16_t myflags,
*/
switch (option) {
case NBD_OPT_EXPORT_NAME:
- return nbd_negotiate_handle_export_name(client, length,
+ return nbd_negotiate_handle_export_name(client,
myflags, no_zeroes,
errp);
@@ -1707,6 +1706,7 @@ static coroutine_fn void nbd_co_client_start(void *opaque)
return;
}
+ assert(!client->optlen);