subrutina auditproc
Finalidad
Obtiene o establece el estado de auditoría de un proceso.
Biblioteca
Biblioteca C estándar (libc.a)
Sintaxis
Descripción
La subrutina auditproc consulta o establece el estado de auditoría de un proceso. Hay dos partes en el estado de auditoría de un proceso:
- La lista de clases que se auditarán para este proceso. Las clases se definen mediante la subrutina auditevents . Cada clase incluye un conjunto de sucesos de auditoría. Cuando un proceso provoca un suceso de auditoría, dicho suceso se puede registrar en el seguimiento de auditoría si se incluye en una o más de las clases de auditoría del proceso.
- Estado de auditoría del proceso. La auditoría de un proceso puede suspenderse o reanudarse. Las funciones que generan un registro de auditoría pueden comprobar primero si la auditoría está suspendida. Si la auditoría de proceso está suspendida, no se registran sucesos de auditoría para un proceso. Para obtener más información, consulte la subrutina auditlog .
Parámetros
| Elemento | Descripción |
|---|---|
| ProcessID | El ID de proceso del proceso que se verá afectado. Si ProcessID es 0, la subrutina auditproc afecta al proceso actual. |
| Mandato | La acción que debe llevarse a cabo. Definidos en el archivo audit.h , los valores válidos son:
|
| Argumento | Puntero de caracteres para el almacenamiento intermedio de clase de auditoría para un valor AUDIT_EVENT o AUDIT_QEVENTS del parámetro Mandato o un entero que define el estado de auditoría que se establecerá para una operación AUDIT_STATUS . |
| longitud | Tamaño del almacenamiento intermedio de caracteres de clase de auditoría. |
Valores de retorno
La subrutina auditproc devuelve los valores siguientes cuando se completa correctamente:
- El estado de auditoría anterior (AUDIT_SUSPEND o AUDIT_RESUME), si la llamada ha consultado o establecido el estado de auditoría (el parámetro Mandato ha especificado AUDIT_QSTATUS o AUDIT_STATUS)
- Un valor de 0 si la llamada ha consultado o establecido sucesos de auditoría (el parámetro Mandato ha especificado AUDIT_QEVENTS o AUDIT_EVENTS)
Códigos de error
Si la subrutina auditproc falla si se cumple una o más de las siguientes condiciones:
| Elemento | Descripción |
|---|---|
| EINVAL | Se ha especificado un valor no válido para el parámetro Mandato . |
| EINVAL | El parámetro Mandato se establece en el valor AUDIT_QSTATUS o AUDIT_STATUS y el valor pid es distinto de cero. |
| EINVAl | El parámetro Mandato se establece en el valor AUDIT_STATUS y el parámetro Argument no se establece en AUDIT_SUSPEND o AUDIT_RESUME. |
| ENOSPC | El parámetro Mandato es AUDIT_QEVENTSy el tamaño del almacenamiento intermedio es insuficiente. En este caso, la primera palabra del parámetro Argument se establece en el tamaño necesario. |
| EFAULT | El parámetro Mandato es AUDIT_QEVENTS o AUDIT_EVENTS y el parámetro Argument apunta a una ubicación fuera del espacio de direcciones asignado del proceso. |
| ENOMEM | Ha fallado la asignación de memoria. |
| EPERM | El llamante no tiene autorización de usuario root. |