aboutsummaryrefslogtreecommitdiffstats
path: root/fs/lockd/mon.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/lockd/mon.c')
-rw-r--r--fs/lockd/mon.c51
1 files changed, 20 insertions, 31 deletions
diff --git a/fs/lockd/mon.c b/fs/lockd/mon.c
index fafa0ea71938..5e2c4d5ac827 100644
--- a/fs/lockd/mon.c
+++ b/fs/lockd/mon.c
@@ -44,8 +44,6 @@ struct nsm_res {
44 u32 state; 44 u32 state;
45}; 45};
46 46
47static struct rpc_clnt * nsm_create(void);
48
49static struct rpc_program nsm_program; 47static struct rpc_program nsm_program;
50static LIST_HEAD(nsm_handles); 48static LIST_HEAD(nsm_handles);
51static DEFINE_SPINLOCK(nsm_lock); 49static DEFINE_SPINLOCK(nsm_lock);
@@ -98,11 +96,26 @@ static void nsm_display_address(const struct sockaddr *sap,
98 } 96 }
99} 97}
100 98
101/* 99static struct rpc_clnt *nsm_create(void)
102 * Common procedure for NSMPROC_MON/NSMPROC_UNMON calls 100{
103 */ 101 struct sockaddr_in sin = {
104static int 102 .sin_family = AF_INET,
105nsm_mon_unmon(struct nsm_handle *nsm, u32 proc, struct nsm_res *res) 103 .sin_addr.s_addr = htonl(INADDR_LOOPBACK),
104 };
105 struct rpc_create_args args = {
106 .protocol = XPRT_TRANSPORT_UDP,
107 .address = (struct sockaddr *)&sin,
108 .addrsize = sizeof(sin),
109 .servername = "rpc.statd",
110 .program = &nsm_program,
111 .version = NSM_VERSION,
112 .authflavor = RPC_AUTH_NULL,
113 };
114
115 return rpc_create(&args);
116}
117
118static int nsm_mon_unmon(struct nsm_handle *nsm, u32 proc, struct nsm_res *res)
106{ 119{
107 struct rpc_clnt *clnt; 120 struct rpc_clnt *clnt;
108 int status; 121 int status;
@@ -409,30 +422,6 @@ void nsm_release(struct nsm_handle *nsm)
409} 422}
410 423
411/* 424/*
412 * Create NSM client for the local host
413 */
414static struct rpc_clnt *
415nsm_create(void)
416{
417 struct sockaddr_in sin = {
418 .sin_family = AF_INET,
419 .sin_addr.s_addr = htonl(INADDR_LOOPBACK),
420 .sin_port = 0,
421 };
422 struct rpc_create_args args = {
423 .protocol = XPRT_TRANSPORT_UDP,
424 .address = (struct sockaddr *)&sin,
425 .addrsize = sizeof(sin),
426 .servername = "localhost",
427 .program = &nsm_program,
428 .version = NSM_VERSION,
429 .authflavor = RPC_AUTH_NULL,
430 };
431
432 return rpc_create(&args);
433}
434
435/*
436 * XDR functions for NSM. 425 * XDR functions for NSM.
437 * 426 *
438 * See http://www.opengroup.org/ for details on the Network 427 * See http://www.opengroup.org/ for details on the Network