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