42614ed3f3
64 bit block pointers, extended attribute storage, and a few other things. This commit does not yet include the code to manipulate the extended storage (for e.g. ACLs), this will be done later. Originally written by Kirk McKusick and Network Associates Laboratories for FreeBSD.
76 lines
2.7 KiB
C
76 lines
2.7 KiB
C
/* $NetBSD: extern.h,v 1.5 2003/04/02 10:39:27 fvdl Exp $ */
|
|
|
|
/*
|
|
* Copyright (c) 1994 James A. Jegers
|
|
* All rights reserved.
|
|
*
|
|
* Redistribution and use in source and binary forms, with or without
|
|
* modification, are permitted provided that the following conditions
|
|
* are met:
|
|
* 1. Redistributions of source code must retain the above copyright
|
|
* notice, this list of conditions and the following disclaimer.
|
|
* 2. The name of the author may not be used to endorse or promote products
|
|
* derived from this software without specific prior written permission
|
|
*
|
|
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
|
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
|
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
|
* IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
|
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
|
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
*/
|
|
|
|
void adjust(struct inodesc *, short);
|
|
int allocblk(long);
|
|
int allocdir(ino_t, ino_t, int);
|
|
void blkerror(ino_t, char *, daddr_t);
|
|
void cacheino(struct ufs1_dinode *, ino_t);
|
|
int changeino(ino_t, char *, ino_t);
|
|
struct fstab;
|
|
void checkinode(ino_t, struct inodesc *);
|
|
int chkrange(daddr_t, int);
|
|
void ckfini(int);
|
|
int ckinode(struct ufs1_dinode *, struct inodesc *);
|
|
void clri(struct inodesc *, char *, int);
|
|
int dircheck(struct inodesc *, struct direct *);
|
|
void direrror(ino_t, char *);
|
|
int dirscan(struct inodesc *);
|
|
int dofix(struct inodesc *, char *);
|
|
void fileerror(ino_t, ino_t, char *);
|
|
int findino(struct inodesc *);
|
|
int findname(struct inodesc *);
|
|
void flush(int, struct ubufarea *);
|
|
void freeblk(daddr_t, long);
|
|
void freeino(ino_t);
|
|
void freeinodebuf(void);
|
|
int ftypeok(struct ufs1_dinode *);
|
|
void getpathname(char *, ino_t, ino_t);
|
|
void inocleanup(void);
|
|
void inodirty(struct inode *);
|
|
int linkup(ino_t, ino_t);
|
|
int makeentry(ino_t, ino_t, char *);
|
|
void pass0(void);
|
|
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 pass6(void);
|
|
int pass6check(struct inodesc *);
|
|
void pinode(ino_t);
|
|
void propagate(void);
|
|
int reply(char *);
|
|
void resetinodebuf(void);
|
|
int setup(const char *);
|
|
struct ufs1_dinode *getnextinode(ino_t);
|
|
void catch(int);
|
|
void catchquit(int);
|
|
void voidquit(int);
|