summaryrefslogtreecommitdiffstats
path: root/man3/getfsent.3
diff options
context:
space:
mode:
Diffstat (limited to 'man3/getfsent.3')
-rw-r--r--man3/getfsent.3128
1 files changed, 128 insertions, 0 deletions
diff --git a/man3/getfsent.3 b/man3/getfsent.3
new file mode 100644
index 000000000..0436d2f97
--- /dev/null
+++ b/man3/getfsent.3
@@ -0,0 +1,128 @@
+.\" 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)