Sous-routine pam_get_data

Objectif

Extrait des informations pour un module PAM spécifique pour cette session PAM.

Bibliothèque

Bibliothèque PAM (libpam.a)

Syntaxe

#include <security/pam_appl.h>

int pam_get_data (PAMHandle, ModuleDataName, Data)
pam_handle_t *PAMHandle;
const char *ModuleDataName;
void **Data;

Descriptif

La sous-routine pam_get_data est utilisée pour extraire des données spécifiques au module à partir du descripteur PAM. Cette sous-routine est utilisée par les modules et ne doit pas être appelée par les applications. Si l'identifiant ModuleDataName existe, la référence de ses données est renvoyée dans Data. Si l'identificateur n'existe pas, une référence NULL est renvoyée dans Data. L'appelant ne doit pas modifier ni libérer la mémoire renvoyée dans Données. A la place, une fonction de nettoyage doit être spécifiée via un appel à pam_set_data (). La fonction de nettoyage est appelée lorsque la fonction pam_end () est appelée pour libérer la mémoire allouée.

Paramètres

Article Descriptif
PAMHandle (en) Descripteur PAM représentant la session d'authentification d'utilisateur en cours. Ce descripteur est obtenu par un appel à pam_start ().
ModuleDataName Identificateur unique pour les données.
Données Référence renvoyée aux données indiquées par ModuleDataName.

Valeurs renvoyées

Une fois l'opération terminée, pam_get_data renvoie PAM_SUCCESS. Si ModuleDataName existe et que pam_get_data se termine avec succès, Data sera une référence valide. Sinon, Data sera NULL. Si la routine échoue, PAM_SYSTEM_ERR, PAM_BUF_ERRou PAM_NO_MODULE_DATA est renvoyé, en fonction de l'erreur réelle.

Codes d'erreur

Article Descriptif
PAM_SYSTEM_ERR Une erreur système s'est produite.
PAM_BUF_ERR Une erreur de mémoire s'est produite.
DONNÉES_NON_MODULE Aucune donnée spécifique au module n'a été trouvée.