Contenido   Archivos   Índice   Bugs   Ejemplos  

TAD acl_entry
[TADs y estructuras modificadas o agregadas]

acl_entry representa una terna de la forma (ID, MODO, USR_GRP). Más...

Estructuras de datos privadas (ocultas)

struct  acl_entry
 Entrada de la ACL a nivel VFS. Se utiliza dentro del la estructura vfs_acl. Más...


Constantes (públicas) de acl_entry

Debe considerarse que el nombre de la constante es público y su valor privado.

#define ACL_NULL_BITS   0
 Para representar el modo nulo (ningun permiso) en la ACL.

#define ACL_EXEC_BIT   1
 Para representar el permiso de ejecutabilidad en la ACL.

#define ACL_WRITE_BIT   2
 Para representar el permiso de escritura en la ACL.

#define ACL_READ_BIT   4
 Para representar el permiso de lectura en la ACL.

#define ACL_OWNER_BIT   8
 Para representar el permiso de propiedad (dueño) en la ACL.

#define ACL_RWXO_BIT   ACL_EXEC_BIT|ACL_READ_BIT|ACL_WRITE_BIT|ACL_OWNER_BIT
 Para representar el modo que tiene todos los permisos y también es dueño.

#define ACL_GRP   0
 Para indicar que se trata de los permisos de un grupo en una entrada de la ACL.

#define ACL_USR   1
 Para indicar que se trata de los permisos de un usuario en una entrada de la ACL.


Funciones de la interfaz de acl_entry

#define ACL_TYPE(e)   e.type
 Devuelve el campo type de una entrada de ACL.

#define ACL_MODE(e)   e.mode
 Devuelve el campo mode de una entrada ACL.

#define ACL_ID(e)   ((ACL_TYPE(e)==ACL_USR)?e.id.uid:e.id.gid)
 Devuelve el el campo id de una entrada ACL.


Descripción detallada

acl_entry representa una terna de la forma (ID, MODO, USR_GRP).

Este TAD oculta la representación de las ternas (ID, MODO, USR_GRP) que se usarán en las ACL a nivel del VFS, así como los algoritmos que se usan para obtener los atributos privados.

La estructura oculta acl_entry no debe ser accedida excepto por las funciones de la interfaz aquí documentada. Como esto no es posible imponerlo en tiempo de compilación, los programadores son los responsables de mantener esta disciplina.


Documentación de las definiciones

#define ACL_GRP   0
 

Para indicar que se trata de los permisos de un grupo en una entrada de la ACL.

Se utiliza para establecer el campo acl_entry::type de la estructura ACL.

#define ACL_USR   1
 

Para indicar que se trata de los permisos de un usuario en una entrada de la ACL.

Se utiliza para establecer el campo acl_entry::type de la estructura ACL.

#define ACL_ID      ((ACL_TYPE(e)==ACL_USR)?e.id.uid:e.id.gid)
 

Devuelve el el campo id de una entrada ACL.

Como acl_entry::id es una union puede retornarse un entero que representa un UID o GID, dependiendo del valor de acl_entry::type.


Generado el Fri Jan 10 09:11:43 2003 para Lisex por doxygen1.3-rc2