SHADOW(3)

NOM
shadow, getspnam - routines d'utilisation des mots de passe cachés

SYNTAX

#include <shadow.h>

struct spwd *getspent();

struct spwd *getspnam(char*nom);

void setspent();

void endspent();

struct spwd *fgetspent(FILE*fp);

struct spwd *sgetspent(char*cp);

int putspent(struct spwd*p,FICHIER*fp);

int lckpwdf();

int ulckpwdf();

DESCRIPTION

shadow manipule le contenu du fichier des mots de passe cachés, /etc/shadow. La structure définie dans le fichier inclus est :

    struct spwd {
          char		*sp_namp; /* nom de connexion de l'utilisateur */
          char		*sp_pwdp; /* mot de passe chiffré */
          long int		sp_lstchg; /* dernier changement de mot de passe */
          long int		sp_min; /* jours avant de pouvoir changer de mot de passe */
          long int		sp_max; /* jours avant l'obligation de changer de mot de passe */
          long int		sp_warn; /* jours d'avertissement avant la fin de validité */
          long int		sp_inact; /* jours avant que le compte soit inactif */
          long int		sp_expire; /* date de fin de validité du compte */
          unsigned long int	sp_flag; /* réservé pour une utilisation future */
    }

La signification de chaque champ est la suivante :

    • sp_namp - pointeur vers le nom d'utilisateur terminé par un zéro binaire (« null-terminated »)

    • sp_pwdp - pointeur vers le mot de passe terminé par un zéro binaire (« null-terminated »)

    • sp_lstchg - nombre de jours, comptés à partir du 1er janvier 1970, depuis la dernière modification du mot de passe

    • sp_min - nombre de jours pendant lesquels le mot de passe ne peut pas être changé

    • sp_max - nombre maximal de jours avant que le mot de passe doive être changé

    • sp_warn - nombre de jours avant que le mot de passe n'arrive en fin de validité pendant lesquels l'utilisateur est averti de la fin prochaine de la validité de son mot de passe

    • sp_inact - nombre de jours après la fin de validité du mot de passe avant de considérer que le compte est inactif et soit désactivé

    • sp_expire - nombre de jours, comptés à partir du 1er janvier 1970, après lesquels le compte sera désactivé

    • sp_flag - réservé pour une utilisation future

DESCRIPTION

Getspent, getspname, fgetspent, et sgetspent renvoient tous un pointeur vers une structure struct spwd. Getspent renvoie l'entrée suivante du fichier, et fgetspent renvoie l'entrée suivante du flux qui est considéré comme étant un fichier au format correct. Sgetspent renvoie un pointeur vers une structure struct spwd en utilisant la chaîne de caractère fournie en entrée. Getspnam cherche à partir de la position courante une entrée correspondant à nom dans le fichier fourni en entrée.

Setspent et endspent peuvent être utilisés pour débuter et terminer l'accès au fichier de mots de passe cachés.

Les fonctions lckpwdf et ulckpwdf doivent être utilisées pour garantir un accès exclusif au fichier /etc/shadow. Lckpwdf essaie de placer un verrou avec pw_lock pendant 15 secondes. Il essaie ensuite de placer un second verrou en utilisant spw_lock pendant le reste de ces 15 secondes. Si un de ces verrous ne peut être placé, lckpwdf renvoie -1. Quand les deux verrous peuvent être placés, la valeur 0 est renvoyée.

DIAGNOSTICS

Les fonctions renvoient NULL si plus aucune entrée n'est disponible ou si une erreur est survenue lors du traitement. Les fonctions dont la valeur de retour est un int renvoient 0 en cas de succès et -1 en cas d'échec.

AVERTISSEMENTS

Ces fonctions peuvent n'être utilisées que par le superutilisateur car l'accès au fichier de mots de passe cachés est restreint.

FICHIERS

/etc/shadow
    Informations sécurisées sur les comptes utilisateurs.

VOIR AUSSI

getpwent(3), shadow(5).