[Libsysio-commit] HEAD: libsysio/include inode.h
Brought to you by:
lward
From: Lee W. <lw...@us...> - 2009-05-05 16:34:14
|
Update of /cvsroot/libsysio/libsysio/include In directory ddv4jf1.ch3.sourceforge.com:/tmp/cvs-serv30411/include Modified Files: inode.h Log Message: The inode supports a new operation, perms_check, so that we may have per-inode permssions checking. As well, a new routine, _sysio_p_generic_perms_check is available if your file system can just use the default policy for the core. Index: inode.h =================================================================== RCS file: /cvsroot/libsysio/libsysio/include/inode.h,v retrieving revision 1.53 retrieving revision 1.54 diff -u -w -b -B -p -r1.53 -r1.54 --- inode.h 10 Apr 2009 21:14:20 -0000 1.53 +++ inode.h 5 May 2009 16:34:01 -0000 1.54 @@ -125,6 +125,7 @@ struct inode_ops { #ifdef _HAVE_STATVFS int (*inop_statvfs)(struct pnode *pno, struct intnl_statvfs *buf); #endif + int (*inop_perms_check)(struct pnode *pno, int amode, int effective); void (*inop_gone)(struct inode *ino); }; @@ -631,6 +632,8 @@ struct pnode { #define PNOP_STATVFS(_pno, _buf) \ _PNOP_CALL((_pno), statvfs, (_pno), (_buf)) #endif +#define PNOP_PERMS_CHECK(_pno, _amode, _eff) \ + _PNOP_MKCALL((_pno), perms_check, (_pno), (_amode), (_eff)) /* * An intent record allows callers of namei and lookup to pass some information @@ -876,3 +879,6 @@ extern int _sysio_p_awrite(struct pnode struct ioctx **ioctxp); extern int _sysio_mkdir(struct pnode *where, mode_t mode); extern int _sysio_mknod(struct pnode *where, mode_t mode, dev_t dev); +extern int _sysio_p_generic_perms_check(struct pnode *pno, + int amode, + int effective); |