]>
Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | /* |
2 | * linux/include/linux/lockd/bind.h | |
3 | * | |
4 | * This is the part of lockd visible to nfsd and the nfs client. | |
5 | * | |
6 | * Copyright (C) 1996, Olaf Kirch <okir@monad.swb.de> | |
7 | */ | |
8 | ||
9 | #ifndef LINUX_LOCKD_BIND_H | |
10 | #define LINUX_LOCKD_BIND_H | |
11 | ||
12 | #include <linux/lockd/nlm.h> | |
d343fce1 N |
13 | /* need xdr-encoded error codes too, so... */ |
14 | #include <linux/lockd/xdr.h> | |
15 | #ifdef CONFIG_LOCKD_V4 | |
16 | #include <linux/lockd/xdr4.h> | |
17 | #endif | |
1da177e4 LT |
18 | |
19 | /* Dummy declarations */ | |
20 | struct svc_rqst; | |
21 | ||
22 | /* | |
23 | * This is the set of functions for lockd->nfsd communication | |
24 | */ | |
25 | struct nlmsvc_binding { | |
e8c5c045 | 26 | __be32 (*fopen)(struct svc_rqst *, |
1da177e4 LT |
27 | struct nfs_fh *, |
28 | struct file **); | |
29 | void (*fclose)(struct file *); | |
9a8db97e | 30 | unsigned long (*get_grace_period)(void); |
1da177e4 LT |
31 | }; |
32 | ||
33 | extern struct nlmsvc_binding * nlmsvc_ops; | |
34 | ||
35 | /* | |
36 | * Functions exported by the lockd module | |
37 | */ | |
38 | extern int nlmclnt_proc(struct inode *, int, struct file_lock *); | |
24e36663 | 39 | extern int lockd_up(int proto); |
1da177e4 LT |
40 | extern void lockd_down(void); |
41 | ||
9a8db97e ME |
42 | unsigned long get_nfs_grace_period(void); |
43 | ||
44 | #ifdef CONFIG_NFSD_V4 | |
45 | unsigned long get_nfs4_grace_period(void); | |
46 | #else | |
47 | static inline unsigned long get_nfs4_grace_period(void) {return 0;} | |
48 | #endif | |
49 | ||
1da177e4 | 50 | #endif /* LINUX_LOCKD_BIND_H */ |