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

NOM

       getmntent,  setmntent,  addmntent,  endmntent,  hasmntopt - Obtenir des
       descriptions d’un système de fichiers.

SYNOPSIS

       #include <stdio.h>
       #include <mntent.h>

       FILE *setmntent (const char *filename, const char *type);

       struct mntent *getmntent (FILE *fp);

       int addmntent (FILE *fp, const struct mntent *mnt);

       int endmntent (FILE *fp);

       char *hasmntopt (const struct mntent *mnt, const char *opt);

       /* Extension GNU */
       #define _GNU_SOURCE    /* ou _SVID_SOURCE ou _BSD_SOURCE */
       #include <mntent.h>

       struct mntent *getmntent_r(FILE *fp, struct mntent *mntbuf,
                                  char *buf, int buflen);

DESCRIPTION

       Ces routines servent à accéder au fichier de description  des  systèmes
       de  fichiers  /etc/fstab  et  aux descriptions des systèmes de fichiers
       montés /etc/mtab.

       La fonction setmntent() ouvre le fichier de description des systèmes de
       fichiers   fp  et  renvoie  un  pointeur  de  fichier  utilisable  avec
       getmntent().  L’argument type est le  type  d’accès  demandé,  et  peut
       prendre les même valeurs que l’argument mode de fopen(3).

       La fonction getmntent() lit la ligne suivante du fichier de description
       des systèmes de fichiers fp et renvoie un pointeur  sur  une  structure
       détaillant  les  champs de cette ligne. Il s’agit d’un pointeur sur une
       zone de données  statiques,  qui  peut  être  écrasée  par  les  appels
       ultérieurs à getmntent().

       La  fonction  addmntent()  ajoute  la  structure mntent mnt à la fin du
       fichier ouvert fp.

       La fonction endmntent() ferme le fichier de description des systèmes de
       fichiers fp.

       La  fonction  hasmntopt() parcourt le champ mnt_opts (voir plus bas) de
       la structure mntent mnt, à la recherche d’une  chaîne  correspondant  à
       opt.  Voir <mntent.h> pour les options de montage.

       La  fonction réentrante getmntent_r() est similaire à getmntent(), mais
       enregistre la structure mount dans le *mntbuf fourni et enregistre  les
       chaînes  pointées par les entrées de cette structure dans le tampon buf
       fourni, de taille buflen.

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

              struct mntent {
                 char *mnt_fsname; /* Nom du système de fichiers monté      */
                 char *mnt_dir;    /* Chemin d’accès au système de fichiers */
                 char *mnt_type;   /* Type de montage (voir mntent.h)       */
                 char *mnt_opts;   /* Options de montage (voir mntent.h)    */
                 int   mnt_freq;   /* Fréquence de sauvegarde (en jour)     */
                 int   mnt_passno; /* Ordre de passage dans fsck            */
              };

VALEUR RENVOYÉE

       Les fonctions getmntent() et getmntent_r() renvoient un pointeur sur la
       structure mntent, ou NULL en cas d’échec.

       La fonction addmntent() renvoie 0 si elle réussit, et 1 si elle échoue.

       La fonction endmntent() renvoie toujours 1.

       La fonction hasmntopt() renvoie l’adresse  de  la  sous-chaîne  si  une
       correspondance est trouvée, ou NULL sinon.

FICHIERS

       /etc/fstab  Description des systèmes de fichiers.
       /etc/mtab   Description des systèmes de fichiers montés.

CONFORMITÉ

       Les  fonctions  non  réentrantes  viennent de SunOS 4.1.3.  Une routine
       getmntent_r() a été introduite dans HPUX 10, mais retourne  un  entier.
       Le  prototype  ci-dessus  ne concerne que la glibc.  LSB rend obsolètes
       les fonctions endhostent(), sethostent() et setmntent().

NOTES

       SysV a aussi une fonction getmntent() mais l’appel est différent, ainsi
       que  la  structure  renvoyée.  Sous  SysV,  le  fichier /etc/mnttab est
       employé.  BSD 4.4 et Digital Unix ont  une  routine  getmntinfo(),  qui
       sert à invoquer l’appel-système getfsstat().

VOIR AUSSI

       fopen(3), fstab(5)

TRADUCTION

       Christophe Blaess, 1996-2003.