Re: argument defs for vnode scope callbacks
site_archiver@lists.apple.com Delivered-To: darwin-kernel@lists.apple.com One more question, though : Is it possible to have more specific informations about the auth request, like the real VNOP that was issued and which generated the request ? Not as far as I know. You should have seen a write authorization request for the parent directory. One last thing : You say that "There are many other things you can use with VATTR_WANTED." #define VNODE_ATTR_va_rdev (1LL<< 0) /* 00000001 */ #define VNODE_ATTR_va_nlink (1LL<< 1) /* 00000002 */ #define VNODE_ATTR_va_total_size (1LL<< 2) /* 00000004 */ #define VNODE_ATTR_va_total_alloc (1LL<< 3) /* 00000008 */ #define VNODE_ATTR_va_data_size (1LL<< 4) /* 00000010 */ #define VNODE_ATTR_va_data_alloc (1LL<< 5) /* 00000020 */ #define VNODE_ATTR_va_iosize (1LL<< 6) /* 00000040 */ #define VNODE_ATTR_va_uid (1LL<< 7) /* 00000080 */ #define VNODE_ATTR_va_gid (1LL<< 8) /* 00000100 */ #define VNODE_ATTR_va_mode (1LL<< 9) /* 00000200 */ #define VNODE_ATTR_va_flags (1LL<<10) /* 00000400 */ #define VNODE_ATTR_va_acl (1LL<<11) /* 00000800 */ #define VNODE_ATTR_va_create_time (1LL<<12) /* 00001000 */ #define VNODE_ATTR_va_access_time (1LL<<13) /* 00002000 */ #define VNODE_ATTR_va_modify_time (1LL<<14) /* 00004000 */ #define VNODE_ATTR_va_change_time (1LL<<15) /* 00008000 */ #define VNODE_ATTR_va_backup_time (1LL<<16) /* 00010000 */ #define VNODE_ATTR_va_fileid (1LL<<17) /* 00020000 */ #define VNODE_ATTR_va_linkid (1LL<<18) /* 00040000 */ #define VNODE_ATTR_va_parentid (1LL<<19) /* 00080000 */ #define VNODE_ATTR_va_fsid (1LL<<20) /* 00100000 */ #define VNODE_ATTR_va_filerev (1LL<<21) /* 00200000 */ #define VNODE_ATTR_va_gen (1LL<<22) /* 00400000 */ #define VNODE_ATTR_va_encoding (1LL<<23) /* 00800000 */ #define VNODE_ATTR_va_type (1LL<<24) /* 01000000 */ #define VNODE_ATTR_va_name (1LL<<25) /* 02000000 */ #define VNODE_ATTR_va_uuuid (1LL<<26) /* 04000000 */ #define VNODE_ATTR_va_guuid (1LL<<27) /* 08000000 */ #define VNODE_ATTR_va_nchildren (1LL<<28) /* 10000000 */ S+E -- Quinn "The Eskimo!" <http://www.apple.com/developer/> Apple Developer Technical Support * Networking, Communications, Hardware _______________________________________________ Do not post admin requests to the list. They will be ignored. Darwin-kernel mailing list (Darwin-kernel@lists.apple.com) Help/Unsubscribe/Update your Subscription: http://lists.apple.com/mailman/options/darwin-kernel/site_archiver%40lists.a... At 14:55 +0200 11/5/05, Nicolas Berloquin wrote: vnode_if.h lists all kinds of VNOPs that seem to be more finegrained than the bits passed to the callback. I logged the bitfield for each call, and I wasn't able to see when a file gets created for example... However, I should stress that (apart from for the KATH_SCOPE_FILEOP), Kauth is not a notification mechanism, it's an authorization mechanism. Hence you get information about the action being authorized, not the higher-level operation that caused it. Is this completely undocumented, or did I miss a piece of doc ? It's not documented, per se, but there's a list in the <sys/vnode.h> header in the Kernel framework. If you look at the VATTR_WANTED macro, you'll see that it ends up referencing these constants by concatenating VNODE_ATTR_ and its argument (eg va_nchildren). This email sent to site_archiver@lists.apple.com
participants (1)
-
Quinn