X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Fmountlist.h;h=e666873626da93c492f5238a673247bda0520332;hb=8aa4d66e12c2b2cec1ed9792868f14724af2828c;hp=935a2dcabddc6bb1a1a93cce03d986f9a320fd38;hpb=f88bd02ee556b3a29c7454c1a9db9c6cd43fb77d;p=gnulib.git diff --git a/lib/mountlist.h b/lib/mountlist.h index 935a2dcab..e66687362 100644 --- a/lib/mountlist.h +++ b/lib/mountlist.h @@ -1,10 +1,12 @@ -/* mountlist.h -- declarations for list of mounted filesystems - Copyright (C) 1991, 1992, 1998, 2000, 2001 Free Software Foundation, Inc. +/* mountlist.h -- declarations for list of mounted file systems - This program is free software; you can redistribute it and/or modify + Copyright (C) 1991-1992, 1998, 2000-2005, 2009-2012 Free Software + Foundation, Inc. + + This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -12,48 +14,27 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software Foundation, - Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + along with this program. If not, see . */ + +#ifndef MOUNTLIST_H_ +# define MOUNTLIST_H_ + +# include +# include /* A mount table entry. */ struct mount_entry { - char *me_devname; /* Device node pathname, including "/dev/". */ - char *me_mountdir; /* Mount point directory pathname. */ - char *me_type; /* "nfs", "4.2", etc. */ - dev_t me_dev; /* Device number of me_mountdir. */ - unsigned int me_dummy : 1; /* Nonzero for dummy filesystems. */ - unsigned int me_remote : 1; /* Nonzero for remote fileystems. */ + char *me_devname; /* Device node name, including "/dev/". */ + char *me_mountdir; /* Mount point directory name. */ + char *me_type; /* "nfs", "4.2", etc. */ + dev_t me_dev; /* Device number of me_mountdir. */ + unsigned int me_dummy : 1; /* Nonzero for dummy file systems. */ + unsigned int me_remote : 1; /* Nonzero for remote fileystems. */ + unsigned int me_type_malloced : 1; /* Nonzero if me_type was malloced. */ struct mount_entry *me_next; }; -#ifndef PARAMS -# if defined PROTOTYPES || (defined __STDC__ && __STDC__) -# define PARAMS(Args) Args -# else -# define PARAMS(Args) () -# endif -#endif - -struct mount_entry *read_filesystem_list PARAMS ((int need_fs_type)); - -#ifndef ME_DUMMY -# define ME_DUMMY(Fs_name, Fs_type) \ - (!strcmp (Fs_type, "auto") \ - || !strcmp (Fs_type, "autofs") \ - /* for Irix 6.5 */ \ - || !strcmp (Fs_type, "ignore")) -#endif +struct mount_entry *read_file_system_list (bool need_fs_type); -#undef STREQ -#define STREQ(a, b) (strcmp ((a), (b)) == 0) - -#ifndef ME_REMOTE -/* A file system is `remote' if its Fs_name contains a `:' - or if (it is of type smbfs and its Fs_name starts with `//'). */ -# define ME_REMOTE(Fs_name, Fs_type) \ - (strchr ((Fs_name), ':') != 0 \ - || ((Fs_name)[0] == '/' \ - && (Fs_name)[1] == '/' \ - && STREQ (Fs_type, "smbfs"))) #endif