1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889 |
- /* vi: set sw=4 ts=4: */
- /*
- * ext2fsP.h --- private header file for ext2 library
- *
- * Copyright (C) 1997 Theodore Ts'o.
- *
- * %Begin-Header%
- * This file may be redistributed under the terms of the GNU Public
- * License.
- * %End-Header%
- */
- #include "ext2fs.h"
- /*
- * Badblocks list
- */
- struct ext2_struct_u32_list {
- int magic;
- int num;
- int size;
- __u32 *list;
- int badblocks_flags;
- };
- struct ext2_struct_u32_iterate {
- int magic;
- ext2_u32_list bb;
- int ptr;
- };
- /*
- * Directory block iterator definition
- */
- struct ext2_struct_dblist {
- int magic;
- ext2_filsys fs;
- ext2_ino_t size;
- ext2_ino_t count;
- int sorted;
- struct ext2_db_entry * list;
- };
- /*
- * For directory iterators
- */
- struct dir_context {
- ext2_ino_t dir;
- int flags;
- char *buf;
- int (*func)(ext2_ino_t dir,
- int entry,
- struct ext2_dir_entry *dirent,
- int offset,
- int blocksize,
- char *buf,
- void *priv_data);
- void *priv_data;
- errcode_t errcode;
- };
- /*
- * Inode cache structure
- */
- struct ext2_inode_cache {
- void * buffer;
- blk_t buffer_blk;
- int cache_last;
- int cache_size;
- int refcount;
- struct ext2_inode_cache_ent *cache;
- };
- struct ext2_inode_cache_ent {
- ext2_ino_t ino;
- struct ext2_inode inode;
- };
- /* Function prototypes */
- extern int ext2fs_process_dir_block(ext2_filsys fs,
- blk_t *blocknr,
- e2_blkcnt_t blockcnt,
- blk_t ref_block,
- int ref_offset,
- void *priv_data);
|