Externally, we have been exposing the 64-bit opaque marker for each
 NBD packet as the "cookie", because it was less confusing when
 contrasted with our 'struct nbd_handle *' holding all libnbd state.
 It also avoids confusion between the noun 'handle' as a way to
 identify a packet and the verb 'handle' for reacting to things like
 signals.  Upstream NBD changed their spec to favor the name "cookie"
 based on our recommendations[1], and so now we can get rid of our last
 uses of the old name.
 
 [1] 
https://github.com/NetworkBlockDevice/nbd/commit/ca4392eb2b
 
 Signed-off-by: Eric Blake <eblake(a)redhat.com>
 ---
  lib/nbd-protocol.h               | 6 +++---
  generator/states-issue-command.c | 6 +++---
  generator/states-reply-simple.c  | 2 +-
  generator/states-reply.c         | 4 ++--
  4 files changed, 9 insertions(+), 9 deletions(-)
 
 diff --git a/lib/nbd-protocol.h b/lib/nbd-protocol.h
 index 0217891e..50275dcd 100644
 --- a/lib/nbd-protocol.h
 +++ b/lib/nbd-protocol.h
 @@ -193,7 +193,7 @@ struct nbd_request {
    uint32_t magic;               /* NBD_REQUEST_MAGIC. */
    uint16_t flags;               /* Request flags. */
    uint16_t type;                /* Request type. */
 -  uint64_t handle;              /* Opaque handle. */
 +  uint64_t cookie;              /* Opaque handle. */
    uint64_t offset;              /* Request offset. */
    uint32_t count;               /* Request length. */
  } NBD_ATTRIBUTE_PACKED;
 @@ -202,7 +202,7 @@ struct nbd_request {
  struct nbd_simple_reply {
    uint32_t magic;               /* NBD_SIMPLE_REPLY_MAGIC. */
    uint32_t error;               /* NBD_SUCCESS or one of NBD_E*. */
 -  uint64_t handle;              /* Opaque handle. */
 +  uint64_t cookie;              /* Opaque handle. */
  } NBD_ATTRIBUTE_PACKED;
 
  /* Structured reply (server -> client). */
 @@ -210,7 +210,7 @@ struct nbd_structured_reply {
    uint32_t magic;               /* NBD_STRUCTURED_REPLY_MAGIC. */
    uint16_t flags;               /* NBD_REPLY_FLAG_* */
    uint16_t type;                /* NBD_REPLY_TYPE_* */
 -  uint64_t handle;              /* Opaque handle. */
 +  uint64_t cookie;              /* Opaque handle. */
    uint32_t length;              /* Length of payload which follows. */
  } NBD_ATTRIBUTE_PACKED;
 
 diff --git a/generator/states-issue-command.c b/generator/states-issue-command.c
 index 111e131c..30721946 100644
 --- a/generator/states-issue-command.c
 +++ b/generator/states-issue-command.c
 @@ -44,7 +44,7 @@  ISSUE_COMMAND.START:
    h->request.magic = htobe32 (NBD_REQUEST_MAGIC);
    h->request.flags = htobe16 (cmd->flags);
    h->request.type = htobe16 (cmd->type);
 -  h->request.handle = htobe64 (cmd->cookie);
 +  h->request.cookie = htobe64 (cmd->cookie);
    h->request.offset = htobe64 (cmd->offset);
    h->request.count = htobe32 (cmd->count);
    h->chunks_sent++;
 @@ -74,7 +74,7 @@  ISSUE_COMMAND.PREPARE_WRITE_PAYLOAD:
 
    assert (h->cmds_to_issue != NULL);
    cmd = h->cmds_to_issue;
 -  assert (cmd->cookie == be64toh (h->request.handle));
 +  assert (cmd->cookie == be64toh (h->request.cookie));
    if (cmd->type == NBD_CMD_WRITE) {
      h->wbuf = cmd->data;
      h->wlen = cmd->count;
 @@ -120,7 +120,7 @@  ISSUE_COMMAND.FINISH:
    assert (!h->wlen);
    assert (h->cmds_to_issue != NULL);
    cmd = h->cmds_to_issue;
 -  assert (cmd->cookie == be64toh (h->request.handle));
 +  assert (cmd->cookie == be64toh (h->request.cookie));
    h->cmds_to_issue = cmd->next;
    if (h->cmds_to_issue_tail == cmd)
      h->cmds_to_issue_tail = NULL;
 diff --git a/generator/states-reply-simple.c b/generator/states-reply-simple.c
 index 8fd9f62a..19be5418 100644
 --- a/generator/states-reply-simple.c
 +++ b/generator/states-reply-simple.c
 @@ -39,7 +39,7 @@  REPLY.SIMPLE_REPLY.START:
      if (error || h->structured_replies)
        SET_NEXT_STATE (%^FINISH_COMMAND);
      else {
 -      uint64_t cookie = be64toh (h->sbuf.simple_reply.handle);
 +      uint64_t cookie = be64toh (h->sbuf.simple_reply.cookie);
        SET_NEXT_STATE (%.DEAD);
        set_error (EPROTO,
                   "no matching cookie %" PRIu64 " found for server reply,
"
 diff --git a/generator/states-reply.c b/generator/states-reply.c
 index f7888154..511e5cb1 100644
 --- a/generator/states-reply.c
 +++ b/generator/states-reply.c
 @@ -138,7 +138,7 @@  REPLY.CHECK_SIMPLE_OR_STRUCTURED_REPLY:
     * handle (our cookie) is stored at the same offset.
     */
    h->chunks_received++;
 -  cookie = be64toh (h->sbuf.simple_reply.handle);
 +  cookie = be64toh (h->sbuf.simple_reply.cookie);
    /* Find the command amongst the commands in flight. If the server sends
     * a reply for an unknown cookie, FINISH will diagnose that later.
     */
 @@ -157,7 +157,7 @@  REPLY.FINISH_COMMAND:
    /* NB: This works for both simple and structured replies because the
     * handle (our cookie) is stored at the same offset.
     */
 -  cookie = be64toh (h->sbuf.simple_reply.handle);
 +  cookie = be64toh (h->sbuf.simple_reply.cookie);
    /* Find the command amongst the commands in flight. */
    for (cmd = h->cmds_in_flight, prev_cmd = NULL;
         cmd != NULL; 
(I didn't dig into the larger contexts.)
Reviewed-by: Laszlo Ersek <lersek(a)redhat.com>