#include <linux/errno.h>
#include <linux/fs_acl.h>
#include <linux/stat.h>
#include <linux/fs.h>
#include <linux/mm.h>
#include <asm/uaccess.h>
#include <linux/sched.h>
#include <linux/smp_lock.h>
Funciones privadas de vfs_acl | |
| #define | ACL_INUSE(e) (e.mode != ACL_NULL_BITS) |
| Determina si la entrada e de la ACL esta o no en uso. | |
| int | search_free_slot (struct vfs_acl *vfs_acl) |
| Busca una entrada libre dentro de la ACL. | |
| int | search_id (struct vfs_acl *vfs_acl, int id, int type) |
| Busca la entrada en la ACL que corresponde a al usuario o grupo id. | |
Funciones de la interfaz de vfs_acl | |
| umode_t | acl_calc_xmode (struct vfs_acl *vfs_acl, uid_t uid, gid_t gid) |
| Calcula el modo tradicional de un inodo a partir de su ACL. | |
| int | xmode_to_acl (int xmode, int owner) |
| Calcula los permisos compatibles con el modo. | |
| void | acl_aclinit (struct vfs_acl *vfs_acl) |
| Inicializa una ACL. | |
| void | acl_acldestroy (struct vfs_acl *vfs_acl) |
| Aun no está implementada, pero debería liberar la ACL que recibe como parámetro. | |
| int | acl_setmode (struct vfs_acl *vfs_acl, int id, int mode, int type) |
| Establece el modo de un usuario o grupo en la ACL. | |
| int | acl_getmode (struct vfs_acl *vfs_acl, int id, int type) |
| Obtiene el modo de un usuario/grupo. | |
| int | acl_getsize (struct vfs_acl *vfs_acl) |
| Devuelve la cantidad de entradas válidas que existen en la ACL. | |
Iterador para las acl_entry de un objeto vfs_acl | |
| También forma parte de la interfaz de vfs_acl.
Ver acl_for_each para un ejemplo. | |
| acl_iterator | acl_first (struct vfs_acl *vfs_acl) |
| Busca la primer entrada válida dentro de la ACL. | |
| acl_iterator | acl_next (struct vfs_acl *vfs_acl, acl_iterator it) |
| Busca la próxima entrada válida en la ACL a partir de una posición que se pasa como parámetro. | |
| acl_entry | acl_getentry (struct vfs_acl *vfs_acl, acl_iterator it) |
| Devuelve una entrada de la ACL. | |
Funciones | |
| asmlinkage long | sys_acladd (char *filename, int id, int mode, int type) |
| Llamada al sistema acladd. Agrega permisos a un usuario o grupo en la ACL. | |
| asmlinkage long | sys_acldel (char *filename, int id, int mode, int type) |
| Llamada al sistema acldel. Quita permisos a un usuario o un grupo de una ACL. | |
1.3-rc2