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 /include/linux/sunrpc/xprt.h | |
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 'include/linux/sunrpc/xprt.h')
-rw-r--r-- | include/linux/sunrpc/xprt.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/sunrpc/xprt.h b/include/linux/sunrpc/xprt.h index 4ce82616873d..84122559fa17 100644 --- a/include/linux/sunrpc/xprt.h +++ b/include/linux/sunrpc/xprt.h | |||
@@ -105,6 +105,7 @@ struct rpc_xprt_ops { | |||
105 | void (*set_buffer_size)(struct rpc_xprt *xprt, size_t sndsize, size_t rcvsize); | 105 | void (*set_buffer_size)(struct rpc_xprt *xprt, size_t sndsize, size_t rcvsize); |
106 | int (*reserve_xprt)(struct rpc_task *task); | 106 | int (*reserve_xprt)(struct rpc_task *task); |
107 | void (*release_xprt)(struct rpc_xprt *xprt, struct rpc_task *task); | 107 | void (*release_xprt)(struct rpc_xprt *xprt, struct rpc_task *task); |
108 | void (*rpcbind)(struct rpc_task *task); | ||
108 | void (*set_port)(struct rpc_xprt *xprt, unsigned short port); | 109 | void (*set_port)(struct rpc_xprt *xprt, unsigned short port); |
109 | void (*connect)(struct rpc_task *task); | 110 | void (*connect)(struct rpc_task *task); |
110 | void * (*buf_alloc)(struct rpc_task *task, size_t size); | 111 | void * (*buf_alloc)(struct rpc_task *task, size_t size); |