File indexing completed on 2024-05-12 04:51:14

0001 #ifndef ELTORITO_H
0002 #define ELTORITO_H 1
0003 
0004 #include "iso_fs.h"
0005 
0006 #define EL_TORITO_ID "EL TORITO SPECIFICATION\0\0\0\0\0\0\0\0\0"
0007 
0008 struct el_torito_boot_descriptor {
0009     char type   [ISODCL ( 1, 1)]; /* 711 */
0010     char id             [ISODCL (  2,   6)];
0011     char version            [ISODCL (  7,   7)]; /* 711 */
0012     char system_id          [ISODCL (  8,  39)]; /* achars */
0013     char unused             [ISODCL ( 40,  71)];
0014     char boot_catalog       [ISODCL ( 72,  75)]; /* 731 */
0015 };
0016 
0017 struct validation_entry {
0018     char type       [ISODCL (  1,  1)]; /* 1 */
0019     char platform   [ISODCL (  2,  2)];
0020     char unused     [ISODCL (  3,  4)];
0021     char id         [ISODCL (  5, 28)];
0022     char cheksum    [ISODCL ( 29, 30)];
0023     char key        [ISODCL ( 31, 31)]; /* 0x55 */
0024     char key2       [ISODCL ( 32, 32)]; /* 0xaa */
0025 };  
0026 
0027 struct default_entry {
0028     char bootid     [ISODCL (  1,  1)];  
0029     char media      [ISODCL (  2,  2)];
0030     char loadseg    [ISODCL (  3,  4)];
0031     char systype    [ISODCL (  5,  5)];
0032     char unused     [ISODCL (  6,  6)];
0033     char seccount   [ISODCL (  7,  8)];
0034     char start      [ISODCL (  9, 12)];
0035     char unused2    [ISODCL ( 13, 32)];
0036 };
0037 
0038 struct section_header {
0039     char headerid   [ISODCL (  1,  1)];  
0040     char platform   [ISODCL (  2,  2)];
0041     char entries    [ISODCL (  3,  4)];
0042     char id         [ISODCL (  5, 32)];
0043 };
0044     
0045 struct section_entry {
0046     char bootid     [ISODCL (  1,  1)];  
0047     char media      [ISODCL (  2,  2)];
0048     char loadseg    [ISODCL (  3,  4)];
0049     char systype    [ISODCL (  5,  5)];
0050     char unused     [ISODCL (  6,  6)];
0051     char seccount   [ISODCL (  7,  8)];
0052     char start      [ISODCL (  9, 12)];
0053     char selcrit    [ISODCL ( 13, 13)];
0054     char vendor_selcrit [ISODCL ( 14, 32)];
0055 };
0056 
0057 struct section_entry_ext {
0058     char extid      [ISODCL (  1,  1)];  
0059     char extrec     [ISODCL (  2,  2)];
0060     char vendor_selcrit [ISODCL (  3,  32)];
0061 };
0062 
0063 #endif