aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/sunrpc
diff options
context:
space:
mode:
authorChuck Lever <chuck.lever@oracle.com>2007-03-29 16:48:04 -0400
committerTrond Myklebust <Trond.Myklebust@netapp.com>2007-05-01 01:17:12 -0400
commita509050bd3b8e0aa269c2241aa10d74ca7701e2f (patch)
tree47860feb054c6c286fd10c7d19a5ed3c3efb5c32 /include/linux/sunrpc
parentc5a4dd8b7c15927a8fbff83171b57cad675a79b9 (diff)
SUNRPC: introduce rpcbind: replacement for in-kernel portmapper
Introduce a replacement for the in-kernel portmapper client that supports all 3 versions of the rpcbind protocol. This code is not used yet. Original code by Groupe Bull updated for the latest kernel, with multiple bug fixes. Note that rpcb_clnt.c does not yet support registering via versions 3 and 4 of the rpcbind protocol. That is planned for a later patch. Signed-off-by: Chuck Lever <chuck.lever@oracle.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'include/linux/sunrpc')
-rw-r--r--include/linux/sunrpc/clnt.h3
-rw-r--r--include/linux/sunrpc/debug.h1
-rw-r--r--include/linux/sunrpc/xprt.h1
3 files changed, 5 insertions, 0 deletions
diff --git a/include/linux/sunrpc/clnt.h b/include/linux/sunrpc/clnt.h
index 32c48a0b0d71..ca7553785932 100644
--- a/include/linux/sunrpc/clnt.h
+++ b/include/linux/sunrpc/clnt.h
@@ -124,6 +124,8 @@ int rpc_destroy_client(struct rpc_clnt *);
124void rpc_release_client(struct rpc_clnt *); 124void rpc_release_client(struct rpc_clnt *);
125void rpc_getport(struct rpc_task *); 125void rpc_getport(struct rpc_task *);
126int rpc_register(u32, u32, int, unsigned short, int *); 126int rpc_register(u32, u32, int, unsigned short, int *);
127int rpcb_register(u32, u32, int, unsigned short, int *);
128void rpcb_getport(struct rpc_task *);
127 129
128void rpc_call_setup(struct rpc_task *, struct rpc_message *, int); 130void rpc_call_setup(struct rpc_task *, struct rpc_message *, int);
129 131
@@ -146,6 +148,7 @@ char * rpc_peeraddr2str(struct rpc_clnt *, enum rpc_display_format_t);
146 * Helper function for NFSroot support 148 * Helper function for NFSroot support
147 */ 149 */
148int rpc_getport_external(struct sockaddr_in *, __u32, __u32, int); 150int rpc_getport_external(struct sockaddr_in *, __u32, __u32, int);
151int rpcb_getport_external(struct sockaddr_in *, __u32, __u32, int);
149 152
150#endif /* __KERNEL__ */ 153#endif /* __KERNEL__ */
151#endif /* _LINUX_SUNRPC_CLNT_H */ 154#endif /* _LINUX_SUNRPC_CLNT_H */
diff --git a/include/linux/sunrpc/debug.h b/include/linux/sunrpc/debug.h
index b7c7307ceec6..707f96fe47d3 100644
--- a/include/linux/sunrpc/debug.h
+++ b/include/linux/sunrpc/debug.h
@@ -18,6 +18,7 @@
18#define RPCDBG_NFS 0x0008 18#define RPCDBG_NFS 0x0008
19#define RPCDBG_AUTH 0x0010 19#define RPCDBG_AUTH 0x0010
20#define RPCDBG_PMAP 0x0020 20#define RPCDBG_PMAP 0x0020
21#define RPCDBG_BIND 0x0020
21#define RPCDBG_SCHED 0x0040 22#define RPCDBG_SCHED 0x0040
22#define RPCDBG_TRANS 0x0080 23#define RPCDBG_TRANS 0x0080
23#define RPCDBG_SVCSOCK 0x0100 24#define RPCDBG_SVCSOCK 0x0100
diff --git a/include/linux/sunrpc/xprt.h b/include/linux/sunrpc/xprt.h
index 745afc1d3068..fa89ce6ce076 100644
--- a/include/linux/sunrpc/xprt.h
+++ b/include/linux/sunrpc/xprt.h
@@ -152,6 +152,7 @@ struct rpc_xprt {
152 unsigned long state; /* transport state */ 152 unsigned long state; /* transport state */
153 unsigned char shutdown : 1, /* being shut down */ 153 unsigned char shutdown : 1, /* being shut down */
154 resvport : 1; /* use a reserved port */ 154 resvport : 1; /* use a reserved port */
155 unsigned int bind_index; /* bind function index */
155 156
156 /* 157 /*
157 * Connection of transports 158 * Connection of transports