Initialisation de la pile PAM.
Tableau 2. Arguments pam_start
const char *service_name | Nom du service |
const char *user | Nom de l'utilisateur |
const struct pam_conv *pam_conversation | Pointeur vers une structure contenant un pointeur vers une fonction (callback) pour la saisie du nom de l'utilisateur et du mot de passe |
pam_handle_t **pamh | Handler permettant à l'application de dialoguer avec les modules pam via les fonctions pam_get_item et pam_set_item |
Les fonctions que doivent implémentées un module PAM doivent retourner un entier. C'est pourquoi il existe un certain nombre de macro prédéfinies.
Tableau 4. Les types d'objets
PAM_SERVICE | Nom du service |
PAM_USER | Nom de l'utilisateur |
PAM_USER_PROMPT | Message à afficher lors de la demande du nom d'utilisateur (par défaut : « Please enter username: » |
PAM_TTY | Nom du terminal (ou pseudo terminal) préfixé par /dev pour un fichier, pour une connexion basé sur X, cet élément est défini à $DISPLAY |
PAM_RUSER | Utilisateur distant (utilisateur au niveau client) |
PAM_RHOST | Hôte du client |
PAM_CONV | Pointeur vers la structure |
PAM_FAIL_DELAY | Nombre de secondes mise en attente si l'authentification échoue |