1 /* 2 * CDDL HEADER START 3 * 4 * The contents of this file are subject to the terms of the 5 * Common Development and Distribution License, Version 1.0 only 6 * (the "License"). You may not use this file except in compliance 7 * with the License. 8 * 9 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 10 * or http://www.opensolaris.org/os/licensing. 11 * See the License for the specific language governing permissions 12 * and limitations under the License. 13 * 14 * When distributing Covered Code, include this CDDL HEADER in each 15 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 16 * If applicable, add the following below this CDDL HEADER, with the 17 * fields enclosed by brackets "[]" replaced with your own identifying 18 * information: Portions Copyright [yyyy] [name of copyright owner] 19 * 20 * CDDL HEADER END 21 */ 22 /* Copyright (c) 1984, 1986, 1987, 1988, 1989 AT&T */ 23 /* All Rights Reserved */ 24 25 26 #ifndef _SYS_VFSTAB_H 27 #define _SYS_VFSTAB_H 28 29 #pragma ident "%Z%%M% %I% %E% SMI" /* SVr4.0 1.2 */ 30 31 #ifdef __cplusplus 32 extern "C" { 33 #endif 34 35 #define VFSTAB "/etc/vfstab" 36 #define VFS_LINE_MAX 1024 37 38 #define VFS_TOOLONG 1 /* entry exceeds VFS_LINE_MAX */ 39 #define VFS_TOOMANY 2 /* too many fields in line */ 40 #define VFS_TOOFEW 3 /* too few fields in line */ 41 42 #define vfsnull(vp) ((vp)->vfs_special = (vp)->vfs_fsckdev = \ 43 (vp)->vfs_mountp = (vp)->vfs_fstype = \ 44 (vp)->vfs_fsckpass = (vp)->vfs_automnt = \ 45 (vp)->vfs_mntopts = NULL) 46 47 #define putvfsent(fd, vp)\ 48 fprintf((fd), "%s\t%s\t%s\t%s\t%s\t%s\t%s\n", \ 49 (vp)->vfs_special ? (vp)->vfs_special : "-", \ 50 (vp)->vfs_fsckdev ? (vp)->vfs_fsckdev : "-", \ 51 (vp)->vfs_mountp ? (vp)->vfs_mountp : "-", \ 52 (vp)->vfs_fstype ? (vp)->vfs_fstype : "-", \ 53 (vp)->vfs_fsckpass ? (vp)->vfs_fsckpass : "-", \ 54 (vp)->vfs_automnt ? (vp)->vfs_automnt : "-", \ 55 (vp)->vfs_mntopts ? (vp)->vfs_mntopts : "-") 56 57 struct vfstab { 58 char *vfs_special; 59 char *vfs_fsckdev; 60 char *vfs_mountp; 61 char *vfs_fstype; 62 char *vfs_fsckpass; 63 char *vfs_automnt; 64 char *vfs_mntopts; 65 }; 66 67 #ifdef __STDC__ 68 extern int getvfsent(FILE *, struct vfstab *); 69 extern int getvfsspec(FILE *, struct vfstab *, char *); 70 extern int getvfsfile(FILE *, struct vfstab *, char *); 71 extern int getvfsany(FILE *, struct vfstab *, struct vfstab *); 72 #else 73 extern int getvfsent(); 74 extern int getvfsspec(); 75 extern int getvfsfile(); 76 extern int getvfsany(); 77 #endif 78 79 #ifdef __cplusplus 80 } 81 #endif 82 83 #endif /* _SYS_VFSTAB_H */