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. |