mirror of https://github.com/mkerrisk/man-pages
129 lines
3.9 KiB
Groff
129 lines
3.9 KiB
Groff
.\" Copyright (C) 2002 Andries Brouwer (aeb@cwi.nl)
|
|
.\"
|
|
.\" Permission is granted to make and distribute verbatim copies of this
|
|
.\" manual provided the copyright notice and this permission notice are
|
|
.\" preserved on all copies.
|
|
.\"
|
|
.\" Permission is granted to copy and distribute modified versions of this
|
|
.\" manual under the conditions for verbatim copying, provided that the
|
|
.\" entire resulting derived work is distributed under the terms of a
|
|
.\" permission notice identical to this one.
|
|
.\"
|
|
.\" Since the Linux kernel and libraries are constantly changing, this
|
|
.\" manual page may be incorrect or out-of-date. The author(s) assume no
|
|
.\" responsibility for errors or omissions, or for damages resulting from
|
|
.\" the use of the information contained herein. The author(s) may not
|
|
.\" have taken the same level of care in the production of this manual,
|
|
.\" which is licensed free of charge, as they might when working
|
|
.\" professionally.
|
|
.\"
|
|
.\" Formatted or processed versions of this manual, if unaccompanied by
|
|
.\" the source, must acknowledge the copyright and authors of this work.
|
|
.\"
|
|
.\" Inspired by a page written by Walter Harms.
|
|
.\"
|
|
.TH GETFSENT 3 2002-02-28 "Linux 2.5" "Linux Programmer's Manual"
|
|
.SH NAME
|
|
getfsent, getfsspec, getfsfile, setfsent, endfsent \- handle fstab entries
|
|
.SH SYNOPSIS
|
|
.B #include <fstab.h>
|
|
.sp
|
|
.BI "void endfsent(void);"
|
|
.sp
|
|
.BI "struct fstab *getfsent(void);"
|
|
.sp
|
|
.BI "struct fstab *getfsfile(const char *" mount_point );
|
|
.sp
|
|
.BI "struct fstab *getfsspec(const char *" special_file );
|
|
.sp
|
|
.BI "int setfsent(void);"
|
|
.SH DESCRIPTION
|
|
These functions read from the file
|
|
.IR /etc/fstab .
|
|
The struct fstab is defined by
|
|
.LP
|
|
.nf
|
|
struct fstab {
|
|
char *fs_spec; /* block device name */
|
|
char *fs_file; /* mount point */
|
|
char *fs_vfstype; /* filesystem type */
|
|
char *fs_mntops; /* mount options */
|
|
const char *fs_type; /* rw/rq/ro/sw/xx option */
|
|
int fs_freq; /* dump frequency, in days */
|
|
int fs_passno; /* pass number on parallel dump */
|
|
};
|
|
.fi
|
|
Here the field
|
|
.I fs_type
|
|
contains (on a *BSD system)
|
|
one of the five strings "rw", "rq", "ro", "sw", "xx"
|
|
(read-write, read-write with quota, read-only, swap, ignore).
|
|
|
|
The function
|
|
.B setfsent()
|
|
opens the file when required and positions it at the first line.
|
|
.LP
|
|
The function
|
|
.B getfsent()
|
|
parses the next line from the file.
|
|
(After opening it when required.)
|
|
.LP
|
|
The function
|
|
.B endfsent()
|
|
closes the file when required.
|
|
.LP
|
|
The function
|
|
.B getfsspec()
|
|
searches the file from the start and returns the first entry found
|
|
for which the
|
|
.I fs_spec
|
|
field matches the
|
|
.I special_file
|
|
argument.
|
|
.LP
|
|
The function
|
|
.B getfsfile()
|
|
searches the file from the start and returns the first entry found
|
|
for which the
|
|
.I fs_file
|
|
field matches the
|
|
.I mount_point
|
|
argument.
|
|
.SH "RETURN VALUE"
|
|
Upon success, the functions
|
|
.BR getfsent() ,
|
|
.BR getfsfile() ,
|
|
and
|
|
.BR getfsspec()
|
|
return a pointer to a struct fstab, while
|
|
.BR setfsent()
|
|
returns 1.
|
|
Upon failure or end-of-file, these functions return NULL and 0, respectively.
|
|
.SH HISTORY
|
|
The
|
|
.B getfsent()
|
|
function appeared in 4.0BSD; the other four functions appeared in 4.3BSD.
|
|
.SH "CONFORMING TO"
|
|
These functions are not in POSIX. Several operating systems have them,
|
|
e.g., *BSD, SunOS, Digital Unix, AIX (which also has a
|
|
.IR getfstype() ).
|
|
HP-UX has functions of the same names, that however use a struct checklist
|
|
instead of a struct fstab, and calls these functions obsolete, superseded by
|
|
.BR getmntent (3).
|
|
.SH NOTES
|
|
These functions are not thread-safe.
|
|
.LP
|
|
Since Linux allows mounting a block special device in several places,
|
|
and since several devices can have the same mount point, where the
|
|
last device with a given mount point is the interesting one,
|
|
while
|
|
.B getfsfile()
|
|
and
|
|
.B getfsspec()
|
|
only return the first occurrence, these two functions are not suitable
|
|
for use under Linux.
|
|
.LP
|
|
.SH "SEE ALSO"
|
|
.BR getmntent (3),
|
|
.BR fstab (5)
|