diff options
author | Thomas Bushnell <thomas@gnu.org> | 1999-02-19 07:45:38 +0000 |
---|---|---|
committer | Thomas Bushnell <thomas@gnu.org> | 1999-02-19 07:45:38 +0000 |
commit | b4d4e7e9b8ca92adddbb2c19bb1c3d1beda23441 (patch) | |
tree | d32663d27d6836afbc5ca79fcc852f7cd778b748 /libtrivfs/trivfs.h | |
parent | b2a6f425757ea52463ec2353712cc79b3446f60c (diff) | |
download | hurd-b4d4e7e9b8ca92adddbb2c19bb1c3d1beda23441.tar.gz hurd-b4d4e7e9b8ca92adddbb2c19bb1c3d1beda23441.tar.bz2 hurd-b4d4e7e9b8ca92adddbb2c19bb1c3d1beda23441.zip |
1999-02-06 Mark Kettenis <kettenis@gnu.org>
* trivfs.h (trivfs_check_access_hook): New variable.
* fsys-getroot.c (trivfs_S_fsys_getroot): Use
trivfs_check_acces_hook.
* dir-lookup.c (trivfs_S_dir_lookup): Likewise.
* file-access.c (trivfs_S_file_check_access): Likewise.
Diffstat (limited to 'libtrivfs/trivfs.h')
-rw-r--r-- | libtrivfs/trivfs.h | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/libtrivfs/trivfs.h b/libtrivfs/trivfs.h index 8e62db68..5f91cac3 100644 --- a/libtrivfs/trivfs.h +++ b/libtrivfs/trivfs.h @@ -100,6 +100,15 @@ extern int trivfs_cntl_nportclasses; nothing. */ void trivfs_modify_stat (struct trivfs_protid *cred, struct stat *); +/* If this variable is set, it is called to find out what access this + file permits to USER instead of checking the underlying node. + REALNODE is the underlying node, and CNTL is the trivfs control + object. The access permissions are returned in ALLOWED. */ +error_t (*trivfs_check_access_hook) (struct trivfs_control *cntl, + struct iouser *user, + mach_port_t realnode, + int *allowed); + /* If this variable is set, it is called every time an open happens. USER and FLAGS are from the open; CNTL identifies the node being opened. This call need not check permissions on the underlying |