Skip to content

Commit 04a1526

Browse files
Mike SnitzerAnna Schumaker
authored andcommitted
pnfs/flexfiles: connect to NFSv3 DS using TLS if MDS connection uses TLS
Implementation follows bones of the pattern that was established in commit a35518c ("NFSv4.1/pnfs: fix NFS with TLS in pnfs"). Signed-off-by: Mike Snitzer <[email protected]> Signed-off-by: Anna Schumaker <[email protected]>
1 parent 62d2cde commit 04a1526

File tree

1 file changed

+10
-1
lines changed

1 file changed

+10
-1
lines changed

fs/nfs/pnfs_nfs.c

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -830,17 +830,26 @@ static int _nfs4_pnfs_v3_ds_connect(struct nfs_server *mds_srv,
830830
.servername = clp->cl_hostname,
831831
.connect_timeout = connect_timeout,
832832
.reconnect_timeout = connect_timeout,
833+
.xprtsec = clp->cl_xprtsec,
833834
};
834835

835-
if (da->da_transport != clp->cl_proto)
836+
if (da->da_transport != clp->cl_proto &&
837+
clp->cl_proto != XPRT_TRANSPORT_TCP_TLS)
836838
continue;
839+
if (da->da_transport == XPRT_TRANSPORT_TCP &&
840+
mds_srv->nfs_client->cl_proto == XPRT_TRANSPORT_TCP_TLS)
841+
xprt_args.ident = XPRT_TRANSPORT_TCP_TLS;
842+
837843
if (da->da_addr.ss_family != clp->cl_addr.ss_family)
838844
continue;
839845
/* Add this address as an alias */
840846
rpc_clnt_add_xprt(clp->cl_rpcclient, &xprt_args,
841847
rpc_clnt_test_and_add_xprt, NULL);
842848
continue;
843849
}
850+
if (da->da_transport == XPRT_TRANSPORT_TCP &&
851+
mds_srv->nfs_client->cl_proto == XPRT_TRANSPORT_TCP_TLS)
852+
da->da_transport = XPRT_TRANSPORT_TCP_TLS;
844853
clp = get_v3_ds_connect(mds_srv,
845854
&da->da_addr,
846855
da->da_addrlen, da->da_transport,

0 commit comments

Comments
 (0)