GETGRENT

Section : Manuel du programmeur Linux (3)
Mise à jour de la version anglaise : 26 juillet 2007
Index Menu principal  

NOM

getgrent, setgrent, endgrent - Lire les enregistrements du fichier des groupes  

SYNOPSIS

#include <sys/types.h>
#include <grp.h>

struct group *getgrent(void);

void setgrent(void);

void endgrent(void);

Exigences de macros de test de fonctionnalités pour la glibc (voir feature_test_macros(7)) :

getgrent(), setgrent(), endgrent() : _SVID_SOURCE || _BSD_SOURCE || _XOPEN_SOURCE >= 500  

DESCRIPTION

La fonction getgrent() renvoie un pointeur sur une structure contenant les champs d'un enregistrement de la base de données de groupe (par exemple, le fichier de groupe local /etc/group, NIS ou LDAP). Au premier appel, elle renvoie le premier enregistrement, puis les autres enregistrements lors des autres appels successifs.

La fonction setgrent() ramène le pointeur au début de la base de données de groupe pour permettre des balayages répétitifs.

La fonction endgrent() est utilisée pour fermer la base de données de groupe après que tous les traitements aient été effectués.

La structure group est définie dans <grp.h> ainsi :

struct group {
    char   *gr_name;    /* Nom du groupe.          */
    char   *gr_passwd;  /* Mot de passe du groupe. */
    gid_t   gr_gid;     /* ID du groupe.           */
    char  **gr_mem;     /* Membres du groupe.      */
};
 

VALEUR RENVOYÉE

La fonction getgrent() renvoie un pointeur vers une structure group, ou NULL s'il n'y a plus d'enregistrement, ou si une erreur se produit.

En cas d'erreur, errno peut être renseignée. Si vous souhaitez vérifier sa valeur, il est nécessaire de la définir à zéro avant l'appel.  

ERREURS

EINTR
Un signal a été intercepté.
EIO
Erreur d'entrée-sortie.
EMFILE
Le nombre maximal de fichiers ouverts pour le processus est atteint.
ENFILE
Le nombre maximal de fichiers ouverts sur le système est atteint.
ENOMEM
Pas assez de mémoire pour allouer la structure d'information de groupe.
ERANGE
Espace tampon fourni insuffisant.
 

FICHIERS

/etc/group
Fichier local base de données des groupes
 

CONFORMITÉ

SVr4, BSD 4.3, POSIX.1-2001.  

VOIR AUSSI

fgetgrent(3), getgrent_r(3), getgrgid(3), getgrnam(3), getgrouplist(3), putgrent(3)  

TRADUCTION

Ce document est une traduction réalisée par Christophe Blaess <http://www.blaess.fr/christophe/> le 26 octobre 1996 et révisée le 17 juillet 2008.

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 : « LANG=C man 3 getgrent ». N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.

 

Index

NOM
SYNOPSIS
DESCRIPTION
VALEUR RENVOYÉE
ERREURS
FICHIERS
CONFORMITÉ
VOIR AUSSI
TRADUCTION

Dernière mise à jour : 17 juillet 2008