提交 d7422c47 编写于 作者: C Chuck Lever 提交者: Trond Myklebust

NFS: Change nfs_get_client() to take sockaddr *

Adjust arguments and callers of nfs_get_client() to pass a
"struct sockaddr *" instead of "struct sockaddr_in *" to support
non-IPv4 addresses.
Signed-off-by: NChuck Lever <chuck.lever@oracle.com>
Cc: Aurelien Charbon <aurelien.charbon@ext.bull.net>
Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
上级 ff052645
...@@ -97,7 +97,7 @@ struct rpc_program nfsacl_program = { ...@@ -97,7 +97,7 @@ struct rpc_program nfsacl_program = {
struct nfs_client_initdata { struct nfs_client_initdata {
const char *hostname; const char *hostname;
const struct sockaddr_in *addr; const struct sockaddr *addr;
size_t addrlen; size_t addrlen;
const struct nfs_rpc_ops *rpc_ops; const struct nfs_rpc_ops *rpc_ops;
}; };
...@@ -308,9 +308,8 @@ static struct nfs_client *nfs_get_client(const struct nfs_client_initdata *cl_in ...@@ -308,9 +308,8 @@ static struct nfs_client *nfs_get_client(const struct nfs_client_initdata *cl_in
struct nfs_client *clp, *new = NULL; struct nfs_client *clp, *new = NULL;
int error; int error;
dprintk("--> nfs_get_client(%s,"NIPQUAD_FMT":%d,%u)\n", dprintk("--> nfs_get_client(%s,v%u)\n",
cl_init->hostname ?: "", NIPQUAD(cl_init->addr->sin_addr), cl_init->hostname ?: "", cl_init->rpc_ops->version);
cl_init->addr->sin_port, cl_init->rpc_ops->version);
/* see if the client already exists */ /* see if the client already exists */
do { do {
...@@ -581,7 +580,7 @@ static int nfs_init_server(struct nfs_server *server, ...@@ -581,7 +580,7 @@ static int nfs_init_server(struct nfs_server *server,
{ {
struct nfs_client_initdata cl_init = { struct nfs_client_initdata cl_init = {
.hostname = data->nfs_server.hostname, .hostname = data->nfs_server.hostname,
.addr = &data->nfs_server.address, .addr = (const struct sockaddr *)&data->nfs_server.address,
.addrlen = sizeof(data->nfs_server.address), .addrlen = sizeof(data->nfs_server.address),
.rpc_ops = &nfs_v2_clientops, .rpc_ops = &nfs_v2_clientops,
}; };
...@@ -935,7 +934,7 @@ static int nfs4_set_client(struct nfs_server *server, ...@@ -935,7 +934,7 @@ static int nfs4_set_client(struct nfs_server *server,
{ {
struct nfs_client_initdata cl_init = { struct nfs_client_initdata cl_init = {
.hostname = hostname, .hostname = hostname,
.addr = addr, .addr = (const struct sockaddr *)addr,
.addrlen = sizeof(*addr), .addrlen = sizeof(*addr),
.rpc_ops = &nfs_v4_clientops, .rpc_ops = &nfs_v4_clientops,
}; };
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册