SHADOW

Section: C Library Functions (3)
Index


NOM
SYNTAXE
DESCRIPTION
DESCRIPTION
DIAGNOSTICS
MISE EN GARDE
FICHIERS
VOIR AUSSI
AUTEUR
TRADUCTION

NOM

shadow - routines pour fichier mots de passe encryptés

SYNTAXE

#include <shadow.h>
struct spwd *getspent();
struct spwd *getspnam(char *name);
void setspent();
void endspent();
struct spwd *fgetspent(FILE *fp);
struct spwd *sgetspent(char *cp);
int putspent(struct spwd *p, FILE *fp);
int lckpwdf();
int ulckpwdf();

DESCRIPTION

shadow manipule le contenu du fichier mots de passe chiffrés, /etc/shadow. La structure dans le fichier #include est
struct spwd {
       char    *sp_namp; /* nom de connexion utilisateur */

       char    *sp_pwdp; /* mot de passe encrypté */

       long    sp_lstchg; /* dernière modification du mot de passe */

       int     sp_min; /* nombre de jours jusqu'à l'autorisation de modification */

       int     sp_max; /* nombre de jours avant une nécessaire modification */

       int     sp_warn; /* nombre de jours d'avertissement avant expiration */

       int     sp_inact; /* nombre de jours avant que le compte soit inactif */

       int     sp_expire; /* date d'expiration du compte */

       int     sp_flag; /* réservé à une utilisation future */

}
La signification de chaque champ est :
sp_namp - pointeur sur une chaîne de caractères contenant le nom d'utilisateur et se terminant par le caractère nul.
sp_pwdp - pointeur sur une chaîne de caractères contenant le mot de passe et se terminant par le caractère nul.
sp_lstchg - nombre de jours depuis le 1er janvier 1970 de la dernière modification du mot de passe.
sp_min - nombre de jours avant que le mot de passe puisse être modifié.
sp_max - nombre de jours après que le mot de passe doive être modifié.
sp_warn - nombre de jours avant que le mot de passe expire et pendant lequels l'utilisateur sera averti de l'imminence de l'expiration du mot de passe.
sp_inact - nombre de jours après l'expiration du mot de passe où le compte est considéré comme inactif et sera invalidé.
sp_expire - nombre de jours depuis le 1er janvier 1970 où le compte sera invalidé.
sp_flag - réservé à une utilisation future.

DESCRIPTION

getspent, getspname, fgetspent, et sgetspent retournent chacune un pointeur sur une structure struct spwd. getspent retourne la prochaine entrée du fichier, et fgetspent retourne la prochaine entrée du flot donné, qui est supposé être un fichier au format correct. sgetspent retourne un pointeur sur une structure struct spwd en utilisant la chaîne fournie comme entrée. getspnam cherche dans le fichier, à partir de la position courante, une entrée correspondant à name.
setspent et endspent peuvent être utilisées pour débuter et achever, respectivement, l'accès au fichier mots de passe masqués.
Les routines lckpwdf et ulckpwdf peuvent être utilisées pour garantir un accès exclusif au fichier /etc/shadow. lckpwdf tente d'obtenir un verrouillage en utilisant pw_lock pour plus de 15 secondes. Il continue en essayant d'obtenir un second verrouillage en utilisant spw_lock pour le reste du temps des 15 secondes. Si l'une ou l'autre tentative échoue au bout de 15 secondes, lckpwdf retourne -1. Lorsque les deux verrouillages sont obtenus, elle retourne 0.

DIAGNOSTICS

Les routines retournent NULL s'il n'y a plus d'entrées disponibles ou si une erreur est apparue durant le traitement. Les routines qui ont un int comme valeur de retour retournent 0 en cas de succès et -1 en cas d'échec.

MISE EN GARDE

Ces routines ne peuvent être utilisées que par l'administrateur, car l'accès au fichier des mots de passe masqués est restreint.

FICHIERS

/etc/shadow - fichier des mots de passe utilisateur masqués

VOIR AUSSI

getpwent(3), shadow(5)

AUTEUR

Julianne Frances Haugh (jockgrrl@ix.netcom.com)

TRADUCTION


Ce document est une traduction, réalisée par Alain Portal <aportal AT univ-montp2 DOT fr> le Novembre 2004.
L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité.
La version anglaise la plus à jour de ce document est toujours consultable via la commande : LANGUAGE=en man xxxx
N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans de cette page de manuel.