extern.h revision 1.9 1 /* $NetBSD: extern.h,v 1.9 2003/04/02 10:39:29 fvdl Exp $ */
2
3 /*
4 * Copyright (c) 1997 Christos Zoulas. All rights reserved.
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions
8 * are met:
9 * 1. Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer.
11 * 2. Redistributions in binary form must reproduce the above copyright
12 * notice, this list of conditions and the following disclaimer in the
13 * documentation and/or other materials provided with the distribution.
14 * 3. All advertising materials mentioning features or use of this software
15 * must display the following acknowledgement:
16 * This product includes software developed by Christos Zoulas.
17 * 4. The name of the author may not be used to endorse or promote products
18 * derived from this software without specific prior written permission.
19 *
20 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
21 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
22 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
23 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
24 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
25 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
26 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
27 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
28 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
29 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30 */
31
32 /* prototypes */
33 void mkfs(struct partition *, const char *, int, int, mode_t, uid_t, gid_t);
34
35 /* * variables set up by front end. */
36 extern int mfs; /* run as the memory based filesystem */
37 extern int Nflag; /* run mkfs without writing file system */
38 extern int Oflag; /* format as an 4.3BSD file system */
39 extern int64_t fssize; /* file system size */
40 extern int sectorsize; /* bytes/sector */
41 extern int rpm; /* revolutions/minute of drive */
42 extern int fsize; /* fragment size */
43 extern int bsize; /* block size */
44 extern int maxbsize;
45 extern int cpg; /* cylinders/cylinder group */
46 extern int cpgflg; /* cylinders/cylinder group flag was given */
47 extern int minfree; /* free space threshold */
48 extern int opt; /* optimization preference (space or time) */
49 extern int density; /* number of bytes per inode */
50 extern int maxcontig; /* max contiguous blocks to allocate */
51 extern int maxbpg; /* maximum blocks per file in a cyl group */
52 extern int maxblkspercg;
53 extern int nrpos; /* # of distinguished rotational positions */
54 extern int bbsize; /* boot block size */
55 extern int sbsize; /* superblock size */
56 extern int avgfilesize; /* expected average file size */
57 extern int avgfpdir; /* expected number of files per directory */
58 extern u_long memleft; /* virtual memory available */
59 extern caddr_t membase; /* start address of memory based filesystem */
60 extern int needswap; /* Filesystem not in native byte order */
61 extern int isappleufs; /* Filesystem is Apple UFS */
62 extern char *appleufs_volname; /* Apple UFS volume name */
63