Sous-routine getpcred

Objectif

Lit les données d'identification du processus en cours.

Bibliothèque

Bibliothèque de sécurité (libc.a)

Syntaxe

#include <usersec.h>
char **getpcred ( Which)
int Which;

Descriptif

La sous-routine getpcred lit les données d'identification de sécurité de processus spécifiées et renvoie un pointeur vers un tableau de pointeurs à fin NULL dans la mémoire allouée. Chaque pointeur du tableau pointe vers une chaîne contenant une paire attribut / valeur dans la mémoire allouée. Il est de la responsabilité de l'appelant de libérer chaque chaîne individuelle ainsi que le tableau de pointeurs.

Paramètres

Article Descriptif
Qui Indique les données d'identification à lire. Ce paramètre est un masque de bits et peut contenir une ou plusieurs des valeurs suivantes, comme défini dans le fichier usersec.h :
CRED_RUID
Nom d'utilisateur réel
CRED_LUID
Nom d'utilisateur de connexion
CRED_RGID
Nom de groupe réel
CRED_GROUPS
ID de groupe supplémentaire
CRED_AUDIT
Classe d'audit du processus en cours
Remarque: Un processus doit disposer des droits d'accès de l'utilisateur root pour extraire ces données d'identification. Sinon, la sous-routine getpcred renvoie un pointeur null et la variable globale errno est définie sur EPERM.
CRED_RLIMITS
Limites de ressources BSD
Remarque: utilisez la sous-routine getrlimit (getrlimit, getrlimit64, setrlimit, setrlimit64ou vlimit Subroutine) pour contrôler la consommation des ressources.
CRED_UMASK
L'umask.
Si le paramètre Lequel est null, toutes les données d'identification sont renvoyées.

Valeurs renvoyées

En cas de réussite, la sous-routine getpcred renvoie un pointeur vers un tableau de pointeurs de chaîne à terminaison NULL contenant les valeurs demandées. Si la sous-routine getpcred échoue, un pointeur NULL est renvoyé et la variable globale errno est définie pour indiquer l'erreur.

Codes d'erreur

La sous-routine getpcred échoue si l'une des conditions suivantes est vérifiée:

Article Descriptif
EINVAL Le paramètre Quels contient des demandes de données d'identification non valides.
EPERM Le processus ne dispose pas des droits appropriés pour extraire les données d'identification demandées.

D'autres erreurs peuvent également être définies par les sous-routines appelées par la sous-routine getpcred .