summaryrefslogtreecommitdiffstats
path: root/xlators/mgmt/glusterd/src/glusterd-handshake.c
diff options
context:
space:
mode:
Diffstat (limited to 'xlators/mgmt/glusterd/src/glusterd-handshake.c')
-rw-r--r--xlators/mgmt/glusterd/src/glusterd-handshake.c16
1 files changed, 14 insertions, 2 deletions
diff --git a/xlators/mgmt/glusterd/src/glusterd-handshake.c b/xlators/mgmt/glusterd/src/glusterd-handshake.c
index 5b3299d54..8b9647026 100644
--- a/xlators/mgmt/glusterd/src/glusterd-handshake.c
+++ b/xlators/mgmt/glusterd/src/glusterd-handshake.c
@@ -127,8 +127,8 @@ server_getspec (rpcsvc_request_t *req)
dict_t *dict = NULL;
xlator_t *this = NULL;
glusterd_conf_t *conf = NULL;
- int client_min_op_version = 0;
- int client_max_op_version = 0;
+ int client_min_op_version = 1; // OP-VERSIONs start at 1
+ int client_max_op_version = 1;
this = THIS;
GF_ASSERT (this);
@@ -199,10 +199,22 @@ server_getspec (rpcsvc_request_t *req)
req->trans->peerinfo.identifier);
goto fail;
}
+
}
+ // Store the op-versions supported by the client
+ req->trans->peerinfo.max_op_version = client_max_op_version;
+ req->trans->peerinfo.min_op_version = client_min_op_version;
+
volume = args.key;
+ // Store the name of volume being mounted
+ if (volume[0] == '/')
+ strncpy (req->trans->peerinfo.volname, &volume[1],
+ strlen(&volume[1]));
+ else
+ strncpy (req->trans->peerinfo.volname, volume, strlen(volume));
+
trans = req->trans;
ret = rpcsvc_transport_peername (trans, (char *)&addrstr,
sizeof (addrstr));