Home | History | Annotate | Download | only in linux
      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