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

Linux/Unix编程

开发平台:

Unix_Linux

  1. /*
  2.  * include/linux/nfsd/auth.h
  3.  *
  4.  * nfsd-specific authentication stuff.
  5.  * uid/gid mapping not yet implemented.
  6.  *
  7.  * Copyright (C) 1995, 1996 Olaf Kirch <okir@monad.swb.de>
  8.  */
  9. #ifndef LINUX_NFSD_AUTH_H
  10. #define LINUX_NFSD_AUTH_H
  11. #ifdef __KERNEL__
  12. #define nfsd_luid(rq, uid) ((u32)(uid))
  13. #define nfsd_lgid(rq, gid) ((u32)(gid))
  14. #define nfsd_ruid(rq, uid) ((u32)(uid))
  15. #define nfsd_rgid(rq, gid) ((u32)(gid))
  16. /*
  17.  * Set the current process's fsuid/fsgid etc to those of the NFS
  18.  * client user
  19.  */
  20. void nfsd_setuser(struct svc_rqst *, struct svc_export *);
  21. #if 0
  22. /*
  23.  * These must match the actual size of uid_t and gid_t
  24.  */
  25. #define UGID_BITS (8 * sizeof(uid_t))
  26. #define UGID_SHIFT 8
  27. #define UGID_MASK ((1 << UGID_SHIFT) - 1)
  28. #define UGID_NRENTRIES ((1 << (UGID_BITS - UGID_SHIFT)) + 1)
  29. #define UGID_NONE ((unsigned short)-1)
  30. typedef struct svc_uidmap {
  31. uid_t * um_ruid[UGID_NRENTRIES];
  32. uid_t * um_luid[UGID_NRENTRIES];
  33. gid_t * um_rgid[UGID_NRENTRIES];
  34. gid_t * um_lgid[UGID_NRENTRIES];
  35. } svc_uidmap;
  36. #endif
  37. #endif /* __KERNEL__ */
  38. #endif /* LINUX_NFSD_AUTH_H */