diff options
author | Chuck Lever <chuck.lever@oracle.com> | 2006-08-22 20:06:16 -0400 |
---|---|---|
committer | Trond Myklebust <Trond.Myklebust@netapp.com> | 2006-09-22 23:24:44 -0400 |
commit | bbf7c1dd2ae2b4040b41b1065ee9b1b6905b1605 (patch) | |
tree | b1867e722c1cc679b1834feeeeb21195f57dc873 /net/sunrpc/xprtsock.c | |
parent | 5b1eacbcd78930d976eb50a93f1779d311b553d1 (diff) |
SUNRPC: Introduce transport switch callout for pluggable rpcbind
Introduce a clean transport switch API for plugging in different types of
rpcbind mechanisms. For instance, rpcbind can cleanly replace the
existing portmapper client, or a transport can choose to implement RPC
binding any way it likes.
Test plan:
Destructive testing (unplugging the network temporarily). Connectathon
with UDP and TCP. NFSv2/3 and NFSv4 mounting should be carefully checked.
Probably need to rig a server where certain services aren't running, or
that returns an error for some typical operation.
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'net/sunrpc/xprtsock.c')
-rw-r--r-- | net/sunrpc/xprtsock.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/net/sunrpc/xprtsock.c b/net/sunrpc/xprtsock.c index 123ac1e5ba15..4c98b89a5b48 100644 --- a/net/sunrpc/xprtsock.c +++ b/net/sunrpc/xprtsock.c | |||
@@ -1262,6 +1262,7 @@ static struct rpc_xprt_ops xs_udp_ops = { | |||
1262 | .set_buffer_size = xs_udp_set_buffer_size, | 1262 | .set_buffer_size = xs_udp_set_buffer_size, |
1263 | .reserve_xprt = xprt_reserve_xprt_cong, | 1263 | .reserve_xprt = xprt_reserve_xprt_cong, |
1264 | .release_xprt = xprt_release_xprt_cong, | 1264 | .release_xprt = xprt_release_xprt_cong, |
1265 | .rpcbind = rpc_getport, | ||
1265 | .set_port = xs_set_port, | 1266 | .set_port = xs_set_port, |
1266 | .connect = xs_connect, | 1267 | .connect = xs_connect, |
1267 | .buf_alloc = rpc_malloc, | 1268 | .buf_alloc = rpc_malloc, |
@@ -1278,6 +1279,7 @@ static struct rpc_xprt_ops xs_udp_ops = { | |||
1278 | static struct rpc_xprt_ops xs_tcp_ops = { | 1279 | static struct rpc_xprt_ops xs_tcp_ops = { |
1279 | .reserve_xprt = xprt_reserve_xprt, | 1280 | .reserve_xprt = xprt_reserve_xprt, |
1280 | .release_xprt = xs_tcp_release_xprt, | 1281 | .release_xprt = xs_tcp_release_xprt, |
1282 | .rpcbind = rpc_getport, | ||
1281 | .set_port = xs_set_port, | 1283 | .set_port = xs_set_port, |
1282 | .connect = xs_connect, | 1284 | .connect = xs_connect, |
1283 | .buf_alloc = rpc_malloc, | 1285 | .buf_alloc = rpc_malloc, |