From d2e1446d81725c351dc73a03b397ce043fb18452 Mon Sep 17 00:00:00 2001 From: Meizu OpenSource Date: Mon, 15 Aug 2016 10:19:42 +0800 Subject: first commit --- include/linux/lockd/bind.h | 60 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 include/linux/lockd/bind.h (limited to 'include/linux/lockd/bind.h') diff --git a/include/linux/lockd/bind.h b/include/linux/lockd/bind.h new file mode 100644 index 000000000..4d24d6457 --- /dev/null +++ b/include/linux/lockd/bind.h @@ -0,0 +1,60 @@ +/* + * linux/include/linux/lockd/bind.h + * + * This is the part of lockd visible to nfsd and the nfs client. + * + * Copyright (C) 1996, Olaf Kirch + */ + +#ifndef LINUX_LOCKD_BIND_H +#define LINUX_LOCKD_BIND_H + +#include +/* need xdr-encoded error codes too, so... */ +#include +#ifdef CONFIG_LOCKD_V4 +#include +#endif + +/* Dummy declarations */ +struct svc_rqst; + +/* + * This is the set of functions for lockd->nfsd communication + */ +struct nlmsvc_binding { + __be32 (*fopen)(struct svc_rqst *, + struct nfs_fh *, + struct file **); + void (*fclose)(struct file *); +}; + +extern struct nlmsvc_binding * nlmsvc_ops; + +/* + * Similar to nfs_client_initdata, but without the NFS-specific + * rpc_ops field. + */ +struct nlmclnt_initdata { + const char *hostname; + const struct sockaddr *address; + size_t addrlen; + unsigned short protocol; + u32 nfs_version; + int noresvport; + struct net *net; +}; + +/* + * Functions exported by the lockd module + */ + +extern struct nlm_host *nlmclnt_init(const struct nlmclnt_initdata *nlm_init); +extern void nlmclnt_done(struct nlm_host *host); + +extern int nlmclnt_proc(struct nlm_host *host, int cmd, + struct file_lock *fl); +extern int lockd_up(struct net *net); +extern void lockd_down(struct net *net); + +#endif /* LINUX_LOCKD_BIND_H */ -- cgit v1.2.3