summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsr2012-08-27 21:16:08 +0200
committersr2012-08-27 21:16:08 +0200
commitc5788f0558977e30c1e52a0efc8fabc9f23ddecc (patch)
tree4eebc9c513305bb1ad686117c356dd3d377163f6
parent[KERNEL] Refactor and extend sysfs (add data the server will need in proxy mode) (diff)
downloaddnbd3-c5788f0558977e30c1e52a0efc8fabc9f23ddecc.tar.gz
dnbd3-c5788f0558977e30c1e52a0efc8fabc9f23ddecc.tar.xz
dnbd3-c5788f0558977e30c1e52a0efc8fabc9f23ddecc.zip
[SERVER] Add missing ntohl() calls when parsing reply
-rw-r--r--src/kernel/net.c2
-rw-r--r--src/server/ipc.c3
2 files changed, 5 insertions, 0 deletions
diff --git a/src/kernel/net.c b/src/kernel/net.c
index 91ea7cd..132ab7d 100644
--- a/src/kernel/net.c
+++ b/src/kernel/net.c
@@ -635,6 +635,8 @@ int dnbd3_net_discover(void *data)
current_server = i;
}
+ dev->alt_servers[i].failures = 0;
+
continue;
error:
diff --git a/src/server/ipc.c b/src/server/ipc.c
index ece6f07..98584a6 100644
--- a/src/server/ipc.c
+++ b/src/server/ipc.c
@@ -400,6 +400,9 @@ void dnbd3_ipc_send(int cmd)
header.error = 0;
send(client_sock, (char *) &header, sizeof(header), MSG_WAITALL);
recv(client_sock, &header, sizeof(header), MSG_WAITALL);
+ header.cmd = ntohl(header.cmd);
+ header.size = ntohl(header.size);
+ header.error = ntohl(header.error);
if (cmd == IPC_INFO && header.size > 0)
{