• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * This header was generated from the Linux kernel headers by update_headers.py,
3  * to provide necessary information from kernel to userspace, such as constants,
4  * structures, and macros, and thus, contains no copyrightable information.
5  */
6 #ifndef _LINUX_QNX4_FS_H
7 #define _LINUX_QNX4_FS_H
8 #include <linux/types.h>
9 #include <linux/qnxtypes.h>
10 #include <linux/magic.h>
11 #define QNX4_ROOT_INO 1
12 #define QNX4_MAX_XTNTS_PER_XBLK	60
13 #define QNX4_FILE_USED          0x01
14 #define QNX4_FILE_MODIFIED      0x02
15 #define QNX4_FILE_BUSY          0x04
16 #define QNX4_FILE_LINK          0x08
17 #define QNX4_FILE_INODE         0x10
18 #define QNX4_FILE_FSYSCLEAN     0x20
19 #define QNX4_I_MAP_SLOTS	8
20 #define QNX4_Z_MAP_SLOTS	64
21 #define QNX4_VALID_FS		0x0001
22 #define QNX4_ERROR_FS		0x0002
23 #define QNX4_BLOCK_SIZE         0x200
24 #define QNX4_BLOCK_SIZE_BITS    9
25 #define QNX4_DIR_ENTRY_SIZE     0x040
26 #define QNX4_DIR_ENTRY_SIZE_BITS 6
27 #define QNX4_XBLK_ENTRY_SIZE    0x200
28 #define QNX4_INODES_PER_BLOCK   0x08
29 #define QNX4_SHORT_NAME_MAX	16
30 #define QNX4_NAME_MAX		48
31 struct qnx4_inode_entry {
32 	char		di_fname[QNX4_SHORT_NAME_MAX];
33 	qnx4_off_t	di_size;
34 	qnx4_xtnt_t	di_first_xtnt;
35 	__le32		di_xblk;
36 	__le32		di_ftime;
37 	__le32		di_mtime;
38 	__le32		di_atime;
39 	__le32		di_ctime;
40 	qnx4_nxtnt_t	di_num_xtnts;
41 	qnx4_mode_t	di_mode;
42 	qnx4_muid_t	di_uid;
43 	qnx4_mgid_t	di_gid;
44 	qnx4_nlink_t	di_nlink;
45 	__u8		di_zero[4];
46 	qnx4_ftype_t	di_type;
47 	__u8		di_status;
48 };
49 struct qnx4_link_info {
50 	char		dl_fname[QNX4_NAME_MAX];
51 	__le32		dl_inode_blk;
52 	__u8		dl_inode_ndx;
53 	__u8		dl_spare[10];
54 	__u8		dl_status;
55 };
56 struct qnx4_xblk {
57 	__le32		xblk_next_xblk;
58 	__le32		xblk_prev_xblk;
59 	__u8		xblk_num_xtnts;
60 	__u8		xblk_spare[3];
61 	__le32		xblk_num_blocks;
62 	qnx4_xtnt_t	xblk_xtnts[QNX4_MAX_XTNTS_PER_XBLK];
63 	char		xblk_signature[8];
64 	qnx4_xtnt_t	xblk_first_xtnt;
65 };
66 struct qnx4_super_block {
67 	struct qnx4_inode_entry RootDir;
68 	struct qnx4_inode_entry Inode;
69 	struct qnx4_inode_entry Boot;
70 	struct qnx4_inode_entry AltBoot;
71 };
72 #endif
73