Provided by: manpages-fr_1.67.0-1_all bug

NOM

       setaliasent,  endaliasent,  getaliasent, getaliasent_r, getaliasbyname,
       getaliasbyname_r - Lire une entrée alias

SYNOPSIS

       #include <aliases.h>

       void setaliasent(void);

       void endaliasent(void);

       struct aliasent *getaliasent(void);

       int getaliasent_r(struct aliasent *result,
           char *buffer, size_t buflen, struct aliasent **res);

       struct aliasent *getaliasbyname(const char *name);

       int getaliasbyname_r(const char *name,
           struct aliasent *result,
           char *buffer, size_t buflen, struct aliasent **res);

DESCRIPTION

       Une des bases de données disponibles avec le  « Name  Service  Switch »
       (NSS)  est  la  base de données des aliases qui contient les aliases de
       mail.  (Pour savoir quelles bases de données sont supportées, taper  la
       commande  « getent --help ».)  Six fonctions sont fournies pour accéder
       à la base de données des aliases.

       La  fonction  getaliasent()  renvoie  un  pointeur  sur  une  structure
       contenant  l’information de groupe.  Le premier appel de cette fonction
       permet  de  retourner  la  première  entrée ;   les   appels   suivants
       retourneront les entrées successives.

       La fonction setaliasent() positionne le pointeur de fichier au début de
       la base de données des aliases.

       La fonction endaliasent() ferme la base de données des aliases.

       getaliasent_r() est la version réentrante de la fonction getaliasent().
       La structure recherchée est enregistrée via le premier argument mais le
       programmeur doit également renseigner  les  autres  arguments.  Ne  pas
       fournir suffisamment d’espace provoquera l’échec de la fonction.

       La fonction getaliasbyname() prend en argument « name » et cherche dans
       la base de données des aliases.  L’entrée est retournée sous  forme  de
       pointeur vers une structure aliasent.

       La fonction getaliasbyname_r() est la version réentrante de la fonction
       précédente.  La structure recherchée est enregistrée  via  le  deuxième
       argument  mais  le  programmeur  doit  également  renseigner les autres
       arguments. Ne pas fournir suffisamment d’espace provoquera  l’échec  de
       la fonction.

       La structure aliasent est définie dans <aliases.h>.
       struct aliasent {
           char *alias_name;              /* alias name */
           size_t alias_members_len;
           char **alias_members;          /* alias name list */
           int alias_local;
       };

FICHIERS

       La  base de données des aliases par défaut est le fichier /etc/aliases.
       Elle peut être modifiée dans le fichier /etc/nsswitch.conf.

VALEUR RENVOYÉE

       Les  fonctions  getaliasent_r()  et  getaliasbyname_r()  renvoient  une
       valeur non-nulle en cas d’erreur.

EXEMPLE

       L’exemple  suivant  se  compile  avec  la  commande  « gcc example.c -o
       example ».  Il affichera tous les noms trouvés dans la base de  données
       des aliases.

       #include <aliases.h>
       #include <stdio.h>
       #include <stdlib.h>
       #include <errno.h>

       int main() {
         struct aliasent *al;
         setaliasent();
         for (;;) {
           al = getaliasent();
           if (al == NULL) break;
           printf("Name: %s\n", al->alias_name);
         }
         if (errno) {
             perror("reading alias");
             exit(EXIT_FAILURE);
         }
         endaliasent();
         exit(EXIT_SUCCESS);
       }

CONFORMITÉ

       Ces  routines  sont  spécifiques  à  la  GlibC.   Le système NeXT a des
       routines similaires.
              #include <aliasdb.h>
              void alias_setent(void);
              void alias_endent(void);
              alias_ent *alias_getent(void);
              alias_ent *alias_getbyname(char *name);

VOIR AUSSI

       getgrent(3), getpwent(3), getspent(3), aliases(5)

TRADUCTION

       Ce document est une traduction réalisée par Alain  Portal  <aportal  AT
       univ-montp2 DOT fr> le 4 juillet 2005 et révisée le 14 décembre 2005.

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