bind.h
上传用户:jlfgdled
上传日期:2013-04-10
资源大小:33168k
文件大小:1k
源码类别:

Linux/Unix编程

开发平台:

Unix_Linux

  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. #ifndef LINUX_LOCKD_BIND_H
  9. #define LINUX_LOCKD_BIND_H
  10. #include <linux/lockd/nlm.h>
  11. /* Dummy declarations */
  12. struct svc_rqst;
  13. struct svc_client; /* opaque type */
  14. /*
  15.  * This is the set of functions for lockd->nfsd communication
  16.  */
  17. struct nlmsvc_binding {
  18. void (*exp_readlock)(void);
  19. void (*exp_unlock)(void);
  20. struct svc_client * (*exp_getclient)(struct sockaddr_in *);
  21. u32 (*fopen)(struct svc_rqst *,
  22. struct nfs_fh *,
  23. struct file *);
  24. void (*fclose)(struct file *);
  25. void (*detach)(void);
  26. };
  27. extern struct nlmsvc_binding * nlmsvc_ops;
  28. /*
  29.  * Functions exported by the lockd module
  30.  */
  31. extern void nlmsvc_invalidate_client(struct svc_client *clnt);
  32. extern int nlmclnt_proc(struct inode *, int, struct file_lock *);
  33. extern int lockd_up(void);
  34. extern void lockd_down(void);
  35. #endif /* LINUX_LOCKD_BIND_H */