1 /* mountlist.h -- declarations for list of mounted file systems 2 3 Copyright (C) 1991-1992, 1998, 2000-2005, 2009-2021 Free Software 4 Foundation, Inc. 5 6 This program is free software: you can redistribute it and/or modify 7 it under the terms of the GNU General Public License as published by 8 the Free Software Foundation; either version 3 of the License, or 9 (at your option) any later version. 10 11 This program is distributed in the hope that it will be useful, 12 but WITHOUT ANY WARRANTY; without even the implied warranty of 13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 GNU General Public License for more details. 15 16 You should have received a copy of the GNU General Public License 17 along with this program. If not, see <https://www.gnu.org/licenses/>. */ 18 19 #ifndef MOUNTLIST_H_ 20 # define MOUNTLIST_H_ 21 22 # include <stdbool.h> 23 # include <sys/types.h> 24 25 /* A mount table entry. */ 26 struct mount_entry 27 { 28 char *me_devname; /* Device node name, including "/dev/". */ 29 char *me_mountdir; /* Mount point directory name. */ 30 char *me_mntroot; /* Directory on filesystem of device used */ 31 /* as root for the (bind) mount. */ 32 char *me_type; /* "nfs", "4.2", etc. */ 33 dev_t me_dev; /* Device number of me_mountdir. */ 34 unsigned int me_dummy : 1; /* Nonzero for dummy file systems. */ 35 unsigned int me_remote : 1; /* Nonzero for remote file systems. */ 36 unsigned int me_type_malloced : 1; /* Nonzero if me_type was malloced. */ 37 struct mount_entry *me_next; 38 }; 39 40 struct mount_entry *read_file_system_list (bool need_fs_type) 41 _GL_ATTRIBUTE_MALLOC; 42 void free_mount_entry (struct mount_entry *entry); 43 44 #endif