1 /****************************************************************************
2  ****************************************************************************
3  ***
4  ***   This header was automatically generated from a Linux kernel header
5  ***   of the same name, to make information necessary for userspace to
6  ***   call into the kernel available to libc.  It contains only constants,
7  ***   structures, and macros generated from the original header, and thus,
8  ***   contains no copyrightable information.
9  ***
10  ***   To edit the content of this header, modify the corresponding
11  ***   source file (e.g. under external/kernel-headers/original/) then
12  ***   run bionic/libc/kernel/tools/update_all.py
13  ***
14  ***   Any manual change here will be lost the next time this script will
15  ***   be run. You've been warned!
16  ***
17  ****************************************************************************
18  ****************************************************************************/
19 #ifndef _ISOFS_FS_H
20 #define _ISOFS_FS_H
21 #include <linux/types.h>
22 #include <linux/magic.h>
23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
24 #define ISODCL(from, to) (to - from + 1)
25 struct iso_volume_descriptor {
26  char type[ISODCL(1,1)];
27  char id[ISODCL(2,6)];
28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
29  char version[ISODCL(7,7)];
30  char data[ISODCL(8,2048)];
31 };
32 #define ISO_VD_PRIMARY 1
33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
34 #define ISO_VD_SUPPLEMENTARY 2
35 #define ISO_VD_END 255
36 #define ISO_STANDARD_ID "CD001"
37 struct iso_primary_descriptor {
38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
39  char type [ISODCL ( 1, 1)];
40  char id [ISODCL ( 2, 6)];
41  char version [ISODCL ( 7, 7)];
42  char unused1 [ISODCL ( 8, 8)];
43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
44  char system_id [ISODCL ( 9, 40)];
45  char volume_id [ISODCL ( 41, 72)];
46  char unused2 [ISODCL ( 73, 80)];
47  char volume_space_size [ISODCL ( 81, 88)];
48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
49  char unused3 [ISODCL ( 89, 120)];
50  char volume_set_size [ISODCL (121, 124)];
51  char volume_sequence_number [ISODCL (125, 128)];
52  char logical_block_size [ISODCL (129, 132)];
53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
54  char path_table_size [ISODCL (133, 140)];
55  char type_l_path_table [ISODCL (141, 144)];
56  char opt_type_l_path_table [ISODCL (145, 148)];
57  char type_m_path_table [ISODCL (149, 152)];
58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
59  char opt_type_m_path_table [ISODCL (153, 156)];
60  char root_directory_record [ISODCL (157, 190)];
61  char volume_set_id [ISODCL (191, 318)];
62  char publisher_id [ISODCL (319, 446)];
63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
64  char preparer_id [ISODCL (447, 574)];
65  char application_id [ISODCL (575, 702)];
66  char copyright_file_id [ISODCL (703, 739)];
67  char abstract_file_id [ISODCL (740, 776)];
68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
69  char bibliographic_file_id [ISODCL (777, 813)];
70  char creation_date [ISODCL (814, 830)];
71  char modification_date [ISODCL (831, 847)];
72  char expiration_date [ISODCL (848, 864)];
73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
74  char effective_date [ISODCL (865, 881)];
75  char file_structure_version [ISODCL (882, 882)];
76  char unused4 [ISODCL (883, 883)];
77  char application_data [ISODCL (884, 1395)];
78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
79  char unused5 [ISODCL (1396, 2048)];
80 };
81 struct iso_supplementary_descriptor {
82  char type [ISODCL ( 1, 1)];
83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
84  char id [ISODCL ( 2, 6)];
85  char version [ISODCL ( 7, 7)];
86  char flags [ISODCL ( 8, 8)];
87  char system_id [ISODCL ( 9, 40)];
88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
89  char volume_id [ISODCL ( 41, 72)];
90  char unused2 [ISODCL ( 73, 80)];
91  char volume_space_size [ISODCL ( 81, 88)];
92  char escape [ISODCL ( 89, 120)];
93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
94  char volume_set_size [ISODCL (121, 124)];
95  char volume_sequence_number [ISODCL (125, 128)];
96  char logical_block_size [ISODCL (129, 132)];
97  char path_table_size [ISODCL (133, 140)];
98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
99  char type_l_path_table [ISODCL (141, 144)];
100  char opt_type_l_path_table [ISODCL (145, 148)];
101  char type_m_path_table [ISODCL (149, 152)];
102  char opt_type_m_path_table [ISODCL (153, 156)];
103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
104  char root_directory_record [ISODCL (157, 190)];
105  char volume_set_id [ISODCL (191, 318)];
106  char publisher_id [ISODCL (319, 446)];
107  char preparer_id [ISODCL (447, 574)];
108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
109  char application_id [ISODCL (575, 702)];
110  char copyright_file_id [ISODCL (703, 739)];
111  char abstract_file_id [ISODCL (740, 776)];
112  char bibliographic_file_id [ISODCL (777, 813)];
113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
114  char creation_date [ISODCL (814, 830)];
115  char modification_date [ISODCL (831, 847)];
116  char expiration_date [ISODCL (848, 864)];
117  char effective_date [ISODCL (865, 881)];
118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
119  char file_structure_version [ISODCL (882, 882)];
120  char unused4 [ISODCL (883, 883)];
121  char application_data [ISODCL (884, 1395)];
122  char unused5 [ISODCL (1396, 2048)];
123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
124 };
125 #define HS_STANDARD_ID "CDROM"
126 struct hs_volume_descriptor {
127  char foo [ISODCL ( 1, 8)];
128 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
129  char type [ISODCL ( 9, 9)];
130  char id [ISODCL ( 10, 14)];
131  char version [ISODCL ( 15, 15)];
132  char data[ISODCL(16,2048)];
133 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
134 };
135 struct hs_primary_descriptor {
136  char foo [ISODCL ( 1, 8)];
137  char type [ISODCL ( 9, 9)];
138 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
139  char id [ISODCL ( 10, 14)];
140  char version [ISODCL ( 15, 15)];
141  char unused1 [ISODCL ( 16, 16)];
142  char system_id [ISODCL ( 17, 48)];
143 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
144  char volume_id [ISODCL ( 49, 80)];
145  char unused2 [ISODCL ( 81, 88)];
146  char volume_space_size [ISODCL ( 89, 96)];
147  char unused3 [ISODCL ( 97, 128)];
148 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
149  char volume_set_size [ISODCL (129, 132)];
150  char volume_sequence_number [ISODCL (133, 136)];
151  char logical_block_size [ISODCL (137, 140)];
152  char path_table_size [ISODCL (141, 148)];
153 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
154  char type_l_path_table [ISODCL (149, 152)];
155  char unused4 [ISODCL (153, 180)];
156  char root_directory_record [ISODCL (181, 214)];
157 };
158 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
159 struct iso_path_table{
160  unsigned char name_len[2];
161  char extent[4];
162  char parent[2];
163 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
164  char name[0];
165 } __attribute__((packed));
166 struct iso_directory_record {
167  char length [ISODCL (1, 1)];
168 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
169  char ext_attr_length [ISODCL (2, 2)];
170  char extent [ISODCL (3, 10)];
171  char size [ISODCL (11, 18)];
172  char date [ISODCL (19, 25)];
173 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
174  char flags [ISODCL (26, 26)];
175  char file_unit_size [ISODCL (27, 27)];
176  char interleave [ISODCL (28, 28)];
177  char volume_sequence_number [ISODCL (29, 32)];
178 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
179  unsigned char name_len [ISODCL (33, 33)];
180  char name [0];
181 } __attribute__((packed));
182 #define ISOFS_BLOCK_BITS 11
183 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
184 #define ISOFS_BLOCK_SIZE 2048
185 #define ISOFS_BUFFER_SIZE(INODE) ((INODE)->i_sb->s_blocksize)
186 #define ISOFS_BUFFER_BITS(INODE) ((INODE)->i_sb->s_blocksize_bits)
187 #endif
188 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
189