void adjust(struct inodesc *, short);
int allocblk(void);
int allocdir(ino_t, ino_t, int);
void blkerror(ino_t, const char *, daddr_t);
int bread(int, char *, daddr_t, long);
void bufinit(void);
void bwrite(int, char *, daddr_t, long);
void cacheino(struct ext2fs_dinode *, ino_t);
int changeino(ino_t, const char *, ino_t);
int chkrange(daddr_t, int);
void ckfini(int);
int ckinode(struct ext2fs_dinode *, struct inodesc *);
void clri(struct inodesc *, const char *, int);
int dircheck(struct inodesc *, struct ext2fs_direct *);
void direrror(ino_t, const char *);
int dirscan(struct inodesc *);
int dofix(struct inodesc *, const char *);
void fileerror(ino_t, ino_t, const char *);
int findino(struct inodesc *);
int findname(struct inodesc *);
void flush(int, struct bufarea *);
void freeblk(daddr_t);
void freeino(ino_t);
void freeinodebuf(void);
int ftypeok(struct ext2fs_dinode *);
void getpathname(char *, size_t, ino_t, ino_t);
void inocleanup(void);
void inodirty(void);
u_int64_t inosize(struct ext2fs_dinode *);
void inossize(struct ext2fs_dinode *, u_int64_t);
int linkup(ino_t, ino_t);
int makeentry(ino_t, ino_t, const char *);
void pass1(void);
void pass1b(void);
void pass2(void);
void pass3(void);
void pass4(void);
int pass1check(struct inodesc *);
int pass4check(struct inodesc *);
void pass5(void);
void pinode(ino_t);
void propagate(void);
int reply(const char *);
void resetinodebuf(void);
int setup(const char *);
struct ext2fs_dinode * getnextinode(ino_t);
uint64_t inonblock(struct ext2fs_dinode *);
void inosnblock(struct ext2fs_dinode *, uint64_t);