GETMNTENT(3)

НАЗВАНИЕ
getmntent, setmntent, addmntent, endmntent, hasmntopt - получают запись из файла описания файловых систем

СИНТАКСИС
#include <stdio.h>
#include <mntent.h>

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

struct mntent *getmntent(FILE *filep);

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

int endmntent(FILE *filep);

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

ОПИСАНИЕ
Эти функции используются для доступа к файлу описаний файловых систем /etc/fstab или к файлу описаний подключенных файловых систем /etc/mtab.

Функция setmntent() открывает файл описаний файловых систем filename и возвращает указатель на файл, который может быть использован getmntent(). Аргумент type обозначает тип доступа и может принимать те же значения, что и аргумент mode функции fopen(3).

Функция getmntent() считывает следующую строку из файла описаний файловых систем filep и возвращает указатель на структуру, содержащую поля строки файла. Указатель ссылается на статическую область памяти, которая перезаписывается последующими вызовами getmntent().

Функция addmntent() добавляет структуру mnt типа mntent к концу открытого файла filep.

Функция endmntent() закрывает файл описаний файловых систем filep.

Функция hashmntopt() ищет в полях mnt_opts (см. ниже) структуры mnt типа mntent такую подстроку, которая совпадает с opt. Список возможных опций подключения приведен в <mntent.h>.

Структура mntent определена в <mntent.h> следующим образом:

    struct mntent {
    	char 	*mnt_fsname;		/* название подключенной файловой системы */
    	char	*mnt_dir;		/* префикс пути к файловой системе */
    	char	*mnt_type;		/* тип подключения (см. mntent.h) */
    	char	*mnt_opts;		/* опции подключения (см. mntent.h) */
    	int	mnt_freq;		/* частота dump в днях */
    	int	mnt_passno;		/* количество проходов при проверке с помощью fsck */
    };

ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ
Функция getmntent() возвращает указатель на структуру типа mntent или NULL при ошибке.

Функция addmntent() возвращает 0 при удачном выходе и 1 при ошибке.

Функция endmntent() всегда возвращает 1.

Функция hasmntopt() возвращает адрес подстроки, если она была найдена, в противном случае NULL.

ФАЙЛЫ
/etc/fstab          файл описаний файловых систем
/etc/mtab           файл описаний подключенных файловых систем

СООТВЕТСТВИЕ СТАНДАРТАМ
SunOS 4.1.3.

ЗАМЕЧАНИЯ
SysV также имеет функцию getmntent(), однако, в данной системе последовательность вызова и возвращаемая структура отличаются от остальных. В SysV используется /etc/mnttab. BSD 4.4 и Digital Unix имеют функцию getmntinfo(), работающую с системным вызовом getfsstat().

СМ. ТАКЖЕ
fopen(3), fstab(5)