diff options
author | Johann Latocha | 2012-02-21 20:12:17 +0100 |
---|---|---|
committer | Johann Latocha | 2012-02-21 20:12:17 +0100 |
commit | ffe7b10481cf280c46feeb1e28a5712838e20221 (patch) | |
tree | 6cf18922d1ddf8a75b5959da436ed1054c8681b2 | |
parent | [KERNEL] SysFS interface added (/sys/block/dnbd*/net/) (diff) | |
download | dnbd3-ffe7b10481cf280c46feeb1e28a5712838e20221.tar.gz dnbd3-ffe7b10481cf280c46feeb1e28a5712838e20221.tar.xz dnbd3-ffe7b10481cf280c46feeb1e28a5712838e20221.zip |
[ALL] Send proper rid
-rw-r--r-- | src/kernel/net.c | 2 | ||||
-rw-r--r-- | src/server/net.c | 2 | ||||
-rw-r--r-- | src/types.h | 2 |
3 files changed, 6 insertions, 0 deletions
diff --git a/src/kernel/net.c b/src/kernel/net.c index 762d0d8..baa2966 100644 --- a/src/kernel/net.c +++ b/src/kernel/net.c @@ -503,6 +503,8 @@ int dnbd3_net_receive(void *data) continue; case CMD_GET_SIZE: + dev->vid = dnbd3_reply.vid; + dev->rid = dnbd3_reply.rid; iov.iov_base = &filesize; iov.iov_len = sizeof(uint64_t); if (kernel_recvmsg(dev->cur_server.sock, &msg, &iov, 1, dnbd3_reply.size, msg.msg_flags) <= 0) diff --git a/src/server/net.c b/src/server/net.c index a42588d..67a64c9 100644 --- a/src/server/net.c +++ b/src/server/net.c @@ -93,6 +93,8 @@ void *dnbd3_handle_query(void *dnbd3_client) } image_file = open(image->file, O_RDONLY); + reply.vid = image->vid; + reply.rid = image->rid; reply.size = sizeof(uint64_t); client->image = image; send(client->sock, (char *) &reply, sizeof(dnbd3_reply_t), 0); diff --git a/src/types.h b/src/types.h index c236db9..38e05f4 100644 --- a/src/types.h +++ b/src/types.h @@ -61,6 +61,8 @@ typedef struct typedef struct { uint16_t cmd; // 2byte + uint16_t vid; // 2byte + uint16_t rid; // 2byte uint16_t error; // 2byte uint64_t size; // 8byte char handle[8]; // 8byte |