64 lines
1.5 KiB
C
64 lines
1.5 KiB
C
|
/****************************************************************************
|
||
|
****************************************************************************
|
||
|
***
|
||
|
*** This header was automatically generated from a Linux kernel header
|
||
|
*** of the same name, to make information necessary for userspace to
|
||
|
*** call into the kernel available to libc. It contains only constants,
|
||
|
*** structures, and macros generated from the original header, and thus,
|
||
|
*** contains no copyrightable information.
|
||
|
***
|
||
|
****************************************************************************
|
||
|
****************************************************************************/
|
||
|
#ifndef __EFS_FS_I_H__
|
||
|
#define __EFS_FS_I_H__
|
||
|
|
||
|
typedef int32_t efs_block_t;
|
||
|
typedef uint32_t efs_ino_t;
|
||
|
|
||
|
#define EFS_DIRECTEXTENTS 12
|
||
|
|
||
|
typedef union extent_u {
|
||
|
unsigned char raw[8];
|
||
|
struct extent_s {
|
||
|
unsigned int ex_magic:8;
|
||
|
unsigned int ex_bn:24;
|
||
|
unsigned int ex_length:8;
|
||
|
unsigned int ex_offset:24;
|
||
|
} cooked;
|
||
|
} efs_extent;
|
||
|
|
||
|
typedef struct edevs {
|
||
|
__be16 odev;
|
||
|
__be32 ndev;
|
||
|
} efs_devs;
|
||
|
|
||
|
struct efs_dinode {
|
||
|
__be16 di_mode;
|
||
|
__be16 di_nlink;
|
||
|
__be16 di_uid;
|
||
|
__be16 di_gid;
|
||
|
__be32 di_size;
|
||
|
__be32 di_atime;
|
||
|
__be32 di_mtime;
|
||
|
__be32 di_ctime;
|
||
|
__be32 di_gen;
|
||
|
__be16 di_numextents;
|
||
|
u_char di_version;
|
||
|
u_char di_spare;
|
||
|
union di_addr {
|
||
|
efs_extent di_extents[EFS_DIRECTEXTENTS];
|
||
|
efs_devs di_dev;
|
||
|
} di_u;
|
||
|
};
|
||
|
|
||
|
struct efs_inode_info {
|
||
|
int numextents;
|
||
|
int lastextent;
|
||
|
|
||
|
efs_extent extents[EFS_DIRECTEXTENTS];
|
||
|
struct inode vfs_inode;
|
||
|
};
|
||
|
|
||
|
#endif
|
||
|
|