Provided by: manpages-fr-dev_3.65d1p1-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
       alias  qui  contient  les  alias  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 alias.

       La fonction getaliasent() renvoie un pointeur sur une structure contenant l'information de groupe dans la
       base de données des alias. 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 alias.

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

       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 alias.
       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;              /* nom de alias */
               size_t   alias_members_len;
               char   **alias_members;           /* liste de noms d'alias */
               int      alias_local;
           };

VALEUR RENVOYÉE

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

FICHIERS

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

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);

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 alias.

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

       int
       main(void)
       {
           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);
       }

VOIR AUSSI

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

COLOPHON

       Cette page fait partie de la publication 3.65 du projet man-pages Linux. Une description du projet et des
       instructions    pour    signaler    des    anomalies    peuvent     être     trouvées     à     l'adresse
       http://www.kernel.org/doc/man-pages/.

TRADUCTION

       Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a <http://po4a.alioth.debian.org/> par
       l'équipe de traduction francophone au sein du projet perkamon <http://perkamon.alioth.debian.org/>.

       Alain  Portal  <http://manpagesfr.free.fr/> (2004-2006).  Nicolas  François  et  l'équipe  francophone de
       traduction de Debian (2006-2009).

       Veuillez signaler toute erreur de traduction en écrivant à <debian-l10n-french@lists.debian.org>  ou  par
       un rapport de bogue sur le paquet manpages-fr.

       Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « man -L C
       <section> <page_de_man> ».

GNU                                             9 septembre 2003                                  SETALIASENT(3)