|
Classes |
| struct | stack |
Defines |
| #define | INODES_PER_BLOCK V1_INODES_PER_BLOCK |
| #define | INODE_SIZE V1_INODE_SIZE |
| #define | WORDS_PER_BLOCK (BLOCK_SIZE / (int) sizeof(bitchunk_t)) |
| #define | MAX_ZONES (V1_NR_DZONES+V1_INDIRECTS+(long)V1_INDIRECTS*V1_INDIRECTS) |
| #define | NR_DZONE_NUM V1_NR_DZONES |
| #define | NR_INDIRECTS V1_INDIRECTS |
| #define | NR_ZONE_NUMS V1_NR_TZONES |
| #define | ZONE_NUM_SIZE V1_ZONE_NUM_SIZE |
| #define | bit_nr u16_t |
| #define | Bit_nr U16_t |
| #define | block_nr block_t |
| #define | d_inode d1_inode |
| #define | d_inum d_ino |
| #define | dir_struct struct direct |
| #define | i_mode d1_mode |
| #define | i_nlinks d1_nlinks |
| #define | i_size d1_size |
| #define | i_zone d1_zone |
| #define | zone_nr zone1_t |
| #define | Zone_nr Zone1_t |
| #define | BLOCK_SIZE _STATIC_BLOCK_SIZE |
| #define | BITSHIFT 4 |
| #define | MAXPRINT 8 |
| #define | CINDIR 128 |
| #define | CDIRECT 16 |
| #define | BITMASK ((1 << BITSHIFT) - 1) |
| #define | setbit(w, b) (w[(b) >> BITSHIFT] |= 1 << ((b) & BITMASK)) |
| #define | clrbit(w, b) (w[(b) >> BITSHIFT] &= ~(1 << ((b) & BITMASK))) |
| #define | bitset(w, b) (w[(b) >> BITSHIFT] & (1 << ((b) & BITMASK))) |
| #define | ZONE_CT 360 |
| #define | INODE_CT 95 |
| #define | STICKY_BIT 01000 |
| #define | ztob(z) ((block_nr) (z) << sb.s_log_zone_size) |
| #define | btoa(b) ((long) (b) * BLOCK_SIZE) |
| #define | SCALE ((int) ztob(1)) |
| #define | FIRST ((zone_nr) sb.s_firstdatazone) |
| #define | N_SUPER 1 |
| #define | N_IMAP (sb.s_imap_blocks) |
| #define | N_ZMAP (sb.s_zmap_blocks) |
| #define | N_ILIST ((sb.s_ninodes+INODES_PER_BLOCK-1) / INODES_PER_BLOCK) |
| #define | N_DATA (sb.s_nzones - FIRST) |
| #define | BLK_SUPER (1) |
| #define | BLK_IMAP (BLK_SUPER + N_SUPER) |
| #define | BLK_ZMAP (BLK_IMAP + N_IMAP) |
| #define | BLK_ILIST (BLK_ZMAP + N_ZMAP) |
| #define | BLK_FIRST ztob(FIRST) |
| #define | ZONE_SIZE ((int) ztob(BLOCK_SIZE)) |
| #define | NLEVEL (NR_ZONE_NUMS - NR_DZONE_NUM + 1) |
| #define | zaddr(z) btoa(ztob(z)) |
| #define | inoaddr(i) ((long) (i - 1) * INODE_SIZE + btoa(BLK_ILIST)) |
| #define | INDCHUNK (CINDIR * ZONE_NUM_SIZE) |
| #define | DIRCHUNK (CDIRECT * DIR_ENTRY_SIZE) |
| #define | DOT 1 |
| #define | DOTDOT 2 |
Functions |
| | _PROTOTYPE (int main,(int argc, char **argv)) |
| | _PROTOTYPE (void initvars,(void)) |
| | _PROTOTYPE (void fatal,(char *s)) |
| | _PROTOTYPE (int eoln,(int c)) |
| | _PROTOTYPE (int yes,(char *question)) |
| | _PROTOTYPE (int atoo,(char *s)) |
| | _PROTOTYPE (int input,(char *buf, int size)) |
| | _PROTOTYPE (char *alloc,(unsigned nelem, unsigned elsize)) |
| | _PROTOTYPE (void printrec,(struct stack *sp)) |
| | _PROTOTYPE (void printpath,(int mode, int nlcr)) |
| | _PROTOTYPE (void devio,(block_nr bno, int dir)) |
| | _PROTOTYPE (void devread,(long offset, char *buf, int size)) |
| | _PROTOTYPE (void pr,(char *fmt, int cnt, char *s, char *p)) |
| | _PROTOTYPE (bit_nr getnumber,(char *s)) |
| | _PROTOTYPE (char **getlist,(char ***argv, char *type)) |
| | _PROTOTYPE (void lsi,(char **clist)) |
| | _PROTOTYPE (bitchunk_t *allocbitmap,(int nblk)) |
| | _PROTOTYPE (void loadbitmap,(bitchunk_t *bitmap, block_nr bno, int nblk)) |
| | _PROTOTYPE (void fillbitmap,(bitchunk_t *bitmap, Bit_nr lwb, Bit_nr upb, char **list)) |
| | _PROTOTYPE (void freebitmap,(bitchunk_t *p)) |
| | _PROTOTYPE (void chkword,(unsigned w1, unsigned w2, Bit_nr bit, char *type, int *n, int *report)) |
| | _PROTOTYPE (void chkmap,(bitchunk_t *cmap, bitchunk_t *dmap, Bit_nr bit, block_nr blkno, int nblk, char *type)) |
| | _PROTOTYPE (void counterror,(Ino_t ino)) |
| | _PROTOTYPE (void printperm,(mode_t mode, int shift, int special, int overlay)) |
| | _PROTOTYPE (void list,(Ino_t ino, d_inode *ip)) |
| | _PROTOTYPE (int Remove,(dir_struct *dp)) |
| | _PROTOTYPE (void make_printable_name,(char *dst, char *src, int n)) |
| | _PROTOTYPE (int chkdots,(Ino_t ino, off_t pos, dir_struct *dp, Ino_t exp)) |
| | _PROTOTYPE (int chkname,(Ino_t ino, dir_struct *dp)) |
| | _PROTOTYPE (int chkentry,(Ino_t ino, off_t pos, dir_struct *dp)) |
| | _PROTOTYPE (int chkdirzone,(Ino_t ino, d_inode *ip, off_t pos, Zone_nr zno)) |
| | _PROTOTYPE (void errzone,(char *mess, Zone_nr zno, int level, off_t pos)) |
| | _PROTOTYPE (int markzone,(Ino_t ino, Zone_nr zno, int level, off_t pos)) |
| | _PROTOTYPE (int chkindzone,(Ino_t ino, d_inode *ip, off_t *pos, Zone_nr zno, int level)) |
| | _PROTOTYPE (off_t jump,(int level)) |
| | _PROTOTYPE (int chkzones,(Ino_t ino, d_inode *ip, off_t *pos, zone_nr *zlist, int len, int level)) |
| | _PROTOTYPE (int chkfile,(Ino_t ino, d_inode *ip)) |
| | _PROTOTYPE (void chkdev,(char *f, char **clist, char **ilist, char **zlist)) |
| void | initvars () |
| void | fatal (char *s) |
| int | eoln (int c) |
| int | yes (char *question) |
| int | atoo (char *s) |
| int | input (char *buf, int size) |
| char * | alloc (unsigned nelem, unsigned elsize) |
| void | printname (char *s) |
| void | printrec (struct stack *sp) |
| void | printpath (int mode, int nlcr) |
| void | devopen () |
| void | devclose () |
| void | devio (block_nr bno, int dir) |
| void | devread (long offset, char *buf, int size) |
| void | devwrite (long offset, char *buf, int size) |
| void | pr (char *fmt, int cnt, char *s, char *p) |
| bit_nr | getnumber (char *s) |
| char ** | getlist (char ***argv, char *type) |
| void | lsuper () |
| void | getsuper () |
| void | chksuper () |
| void | lsi (char **clist) |
| bitchunk_t * | allocbitmap (int nblk) |
| void | loadbitmap (bitchunk_t *bitmap, block_nr bno, int nblk) |
| void | dumpbitmap (bitchunk_t *bitmap, block_nr bno, int nblk) |
| void | fillbitmap (bitchunk_t *bitmap, bit_nr lwb, bit_nr upb, char **list) |
| void | freebitmap (bitchunk_t *p) |
| void | getbitmaps () |
| void | putbitmaps () |
| void | chkword (unsigned w1, unsigned w2, bit_nr bit, char *type, int *n, int *report) |
| void | chkmap (bitchunk_t *cmap, bitchunk_t *dmap, bit_nr bit, block_nr blkno, int nblk, char *type) |
| void | chkilist () |
| void | getcount () |
| void | counterror (ino_t ino) |
| void | chkcount () |
| void | freecount () |
| void | printperm (mode_t mode, int shift, int special, int overlay) |
| void | list (ino_t ino, d_inode *ip) |
| int | Remove (dir_struct *dp) |
| void | make_printable_name (char *dst, char *src, int n) |
| int | chkdots (ino_t ino, off_t pos, dir_struct *dp, ino_t exp) |
| int | chkname (ino_t ino, dir_struct *dp) |
| int | chkentry (ino_t ino, off_t pos, dir_struct *dp) |
| int | chkdirzone (ino_t ino, d_inode *ip, off_t pos, zone_nr zno) |
| void | errzone (char *mess, zone_nr zno, int level, off_t pos) |
| int | markzone (ino_t ino, zone_nr zno, int level, off_t pos) |
| int | chkindzone (ino_t ino, d_inode *ip, off_t *pos, zone_nr zno, int level) |
| off_t | jump (int level) |
| int | zonechk (ino_t ino, d_inode *ip, off_t *pos, zone_nr zno, int level) |
| int | chkzones (ino_t ino, d_inode *ip, off_t *pos, zone_nr *zlist, int len, int level) |
| int | chkfile (ino_t ino, d_inode *ip) |
| int | chkdirectory (ino_t ino, d_inode *ip) |
| int | chkspecial (ino_t ino, d_inode *ip) |
| int | chkmode (ino_t ino, d_inode *ip) |
| int | chkinode (ino_t ino, d_inode *ip) |
| int | descendtree (dir_struct *dp) |
| void | chktree () |
| void | printtotal () |
| void | chkdev (char *f, char **clist, char **ilist, char **zlist) |
| int | main (int argc, char **argv) |
Variables |
| struct super_block | sb |
| char * | prog |
| char * | device |
| int | firstcnterr |
| bitchunk_t * | imap |
| bitchunk_t * | spec_imap |
| bitchunk_t * | zmap |
| bitchunk_t * | spec_zmap |
| bitchunk_t * | dirmap |
| char | rwbuf [BLOCK_SIZE] |
| block_nr | thisblk |
| char | nullbuf [BLOCK_SIZE] |
| nlink_t * | count |
| int | changed |
| struct stack * | ftop |
| int | dev |
| int | nfreeinode |
| int | nregular |
| int | ndirectory |
| int | nblkspec |
| int | ncharspec |
| int | nbadinode |
| int | npipe |
| int | nsyml |
| int | nfreezone |
| int | ztype [NLEVEL] |
| int | repair |
| int | automatic |
| int | listing |
| int | listsuper |
| int | firstlist |
| unsigned | part_offset |
| char | answer [] = "Answer questions with y or n. Then hit RETURN" |