1/* $NetBSD: fsck_vars.h,v 1.11 2006/07/18 23:37:13 perseant Exp $	 */
2
3/*
4 * Copyright (c) 1980, 1986, 1993
5 *	The Regents of the University of California.  All rights reserved.
6 *
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions
9 * are met:
10 * 1. Redistributions of source code must retain the above copyright
11 *    notice, this list of conditions and the following disclaimer.
12 * 2. Redistributions in binary form must reproduce the above copyright
13 *    notice, this list of conditions and the following disclaimer in the
14 *    documentation and/or other materials provided with the distribution.
15 * 3. Neither the name of the University nor the names of its contributors
16 *    may be used to endorse or promote products derived from this software
17 *    without specific prior written permission.
18 *
19 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
20 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22 * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
23 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
25 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
28 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
29 * SUCH DAMAGE.
30 *
31 *	@(#)fsck.h	8.1 (Berkeley) 6/5/93
32 */
33
34extern struct dups *duplist;	/* head of dup list */
35extern struct dups *muldup;	/* end of unique duplicate dup block numbers */
36
37extern struct zlncnt *zlnhead;	/* head of zero link count list */
38extern struct zlncnt *orphead;	/* head of "properly orphaned" list */
39extern struct lfs *fs;
40
41extern daddr_t idaddr;		/* inode block containing ifile inode */
42extern long numdirs, listmax, inplast;
43
44extern long dev_bsize;		/* computed value of DEV_BSIZE */
45extern long secsize;		/* actual disk sector size */
46extern char nflag;		/* assume a no response */
47extern char yflag;		/* assume a yes response */
48extern int bflag;		/* location of alternate super block */
49extern int debug;		/* output debugging info */
50extern int exitonfail;
51extern int preen;		/* just fix normal inconsistencies */
52extern int quiet;		/* don't report clean filesystems */
53extern char havesb;		/* superblock has been read */
54extern char skipclean;		/* skip clean file systems if preening */
55extern int fsmodified;		/* 1 => write done to file system */
56extern int fsreadfd;		/* file descriptor for reading file system */
57extern int fswritefd;		/* file descriptor for writing file system */
58extern int rerun;		/* rerun fsck.  Only used in non-preen mode */
59
60extern daddr_t maxfsblock;	/* number of blocks in the file system */
61#ifndef VERBOSE_BLOCKMAP
62extern char *blockmap;		/* ptr to primary blk allocation map */
63#else
64extern ino_t *blockmap;		/* ptr to primary blk allocation map */
65#endif
66extern ino_t maxino;		/* number of inodes in file system */
67extern ino_t lastino;		/* last inode in use */
68extern char *statemap;		/* ptr to inode state table */
69extern char *typemap;		/* ptr to inode type table */
70extern int16_t *lncntp;		/* ptr to link count table */
71
72extern ino_t lfdir;		/* lost & found directory inode number */
73extern const char *lfname;	/* lost & found directory name */
74extern int lfmode;		/* lost & found directory creation mode */
75
76extern daddr_t n_blks;		/* number of blocks in use */
77extern ino_t n_files;		/* number of files in use */
78
79extern struct ufs1_dinode zino;
80
81extern int no_roll_forward;	/* Don't roll forward */
82