1 /* $NetBSD: extern.h,v 1.8 2012/11/25 19:42:14 jakllsch Exp $ */
4 * Copyright (c) 1997 Manuel Bouyer.
5 * Copyright (c) 1994 James A. Jegers
8 * Redistribution and use in source and binary forms, with or without
9 * modification, are permitted provided that the following conditions
11 * 1. Redistributions of source code must retain the above copyright
12 * notice, this list of conditions and the following disclaimer.
13 * 2. The name of the author may not be used to endorse or promote products
14 * derived from this software without specific prior written permission
16 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
17 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
18 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
19 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
20 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
21 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
22 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
23 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
24 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
25 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28 void adjust(struct inodesc
*, short);
30 int allocdir(ino_t
, ino_t
, int);
31 void blkerror(ino_t
, const char *, daddr_t
);
32 int bread(int, char *, daddr_t
, long);
34 void bwrite(int, char *, daddr_t
, long);
35 void cacheino(struct ext2fs_dinode
*, ino_t
);
36 int changeino(ino_t
, const char *, ino_t
);
37 int chkrange(daddr_t
, int);
39 int ckinode(struct ext2fs_dinode
*, struct inodesc
*);
40 void clri(struct inodesc
*, const char *, int);
41 int dircheck(struct inodesc
*, struct ext2fs_direct
*);
42 void direrror(ino_t
, const char *);
43 int dirscan(struct inodesc
*);
44 int dofix(struct inodesc
*, const char *);
45 void fileerror(ino_t
, ino_t
, const char *);
46 int findino(struct inodesc
*);
47 int findname(struct inodesc
*);
48 void flush(int, struct bufarea
*);
49 void freeblk(daddr_t
);
51 void freeinodebuf(void);
52 int ftypeok(struct ext2fs_dinode
*);
53 void getpathname(char *, size_t, ino_t
, ino_t
);
54 void inocleanup(void);
56 u_int64_t
inosize(struct ext2fs_dinode
*);
57 void inossize(struct ext2fs_dinode
*, u_int64_t
);
58 int linkup(ino_t
, ino_t
);
59 int makeentry(ino_t
, ino_t
, const char *);
65 int pass1check(struct inodesc
*);
66 int pass4check(struct inodesc
*);
70 int reply(const char *);
71 void resetinodebuf(void);
72 int setup(const char *);
73 struct ext2fs_dinode
* getnextinode(ino_t
);
74 uint64_t inonblock(struct ext2fs_dinode
*);
75 void inosnblock(struct ext2fs_dinode
*, uint64_t);