aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2016-06-13 11:42:40 +0200
committerPaolo Bonzini <pbonzini@redhat.com>2016-06-16 18:39:04 +0200
commit56af2dda98c5d71feb7ff7fcac7269a1071aec62 (patch)
treee86a89fff1cc742268c66eee38e52892a6ea9a86
parentf6be6720847f370000312808e6fed5d4e9730934 (diff)
nbd: simplify the nbd_request and nbd_reply structs
These structs are never used to represent the bytes that go over the network. The big-endian network data is built into a uint8_t array in nbd_{receive,send}_{request,reply}. Remove the unused magic field, reorder the struct to avoid holes, and remove the packed attribute. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-rw-r--r--include/block/nbd.h13
1 files changed, 7 insertions, 6 deletions
diff --git a/include/block/nbd.h b/include/block/nbd.h
index b86a976984..747bb0aaeb 100644
--- a/include/block/nbd.h
+++ b/include/block/nbd.h
@@ -25,19 +25,20 @@
#include "io/channel-socket.h"
#include "crypto/tlscreds.h"
+/* Note: these are _NOT_ the same as the network representation of an NBD
+ * request and reply!
+ */
struct nbd_request {
- uint32_t magic;
- uint32_t type;
uint64_t handle;
uint64_t from;
uint32_t len;
-} QEMU_PACKED;
+ uint32_t type;
+};
struct nbd_reply {
- uint32_t magic;
- uint32_t error;
uint64_t handle;
-} QEMU_PACKED;
+ uint32_t error;
+};
#define NBD_FLAG_HAS_FLAGS (1 << 0) /* Flags are there */
#define NBD_FLAG_READ_ONLY (1 << 1) /* Device is read-only */