diff options
author | Amar Tumballi <amarts@redhat.com> | 2017-10-10 17:13:25 +0530 |
---|---|---|
committer | Amar Tumballi <amarts@redhat.com> | 2017-11-07 07:53:55 +0000 |
commit | e4240431b033d1f0c351d3d874c248126ca6cadc (patch) | |
tree | d83c1dcb42fb8c6f7bd903422e8c351394124d52 /xlators/protocol/client/src/client-handshake.c | |
parent | 56aef68530b3bab27730aa62e4fbc513d3dba65f (diff) |
rpc: bring a new protocol version
* xdr: add gfid to on wire format for fsetattr/rchecksum
* as it is change in on wire XDR format, needed backward
compatible RPC programs.
Signed-off-by: Amar Tumballi <amarts@redhat.com>
BUG: 827334
Change-Id: Id0a2da3632516dc1a5560dde2b151b2e5f0be8e5
Diffstat (limited to 'xlators/protocol/client/src/client-handshake.c')
-rw-r--r-- | xlators/protocol/client/src/client-handshake.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/xlators/protocol/client/src/client-handshake.c b/xlators/protocol/client/src/client-handshake.c index 6fdea91fa38..587e256b51a 100644 --- a/xlators/protocol/client/src/client-handshake.c +++ b/xlators/protocol/client/src/client-handshake.c @@ -23,6 +23,7 @@ #define CLIENT_REOPEN_MAX_ATTEMPTS 1024 extern rpc_clnt_prog_t clnt3_3_fop_prog; +extern rpc_clnt_prog_t clnt4_0_fop_prog; extern rpc_clnt_prog_t clnt_pmap_prog; int client_set_lk_version_cbk (struct rpc_req *req, struct iovec *iov, @@ -1487,6 +1488,19 @@ select_server_supported_programs (xlator_t *this, gf_prog_detail *prog) trav->progname, trav->prognum, trav->progver); ret = 0; } + + if ((clnt4_0_fop_prog.prognum == trav->prognum) && + (clnt4_0_fop_prog.progver == trav->progver)) { + conf->fops = &clnt4_0_fop_prog; + gf_msg (this->name, GF_LOG_INFO, 0, + PC_MSG_VERSION_INFO, "Using Program %s," + " Num (%"PRId64"), Version (%"PRId64")", + trav->progname, trav->prognum, trav->progver); + ret = 0; + /* this is latest program, lets use it */ + goto out; + } + if (ret) { gf_msg_trace (this->name, 0, "%s (%"PRId64") not supported", |