diff options
Diffstat (limited to 'fs/udf/ecma_167.h')
-rw-r--r-- | fs/udf/ecma_167.h | 191 |
1 files changed, 68 insertions, 123 deletions
diff --git a/fs/udf/ecma_167.h b/fs/udf/ecma_167.h index f81f2ebbf50..56387711589 100644 --- a/fs/udf/ecma_167.h +++ b/fs/udf/ecma_167.h @@ -38,8 +38,7 @@ #define _ECMA_167_H 1 /* Character set specification (ECMA 167r3 1/7.2.1) */ -typedef struct -{ +typedef struct { uint8_t charSetType; uint8_t charSetInfo[63]; } __attribute__ ((packed)) charspec; @@ -58,8 +57,7 @@ typedef struct typedef uint8_t dstring; /* Timestamp (ECMA 167r3 1/7.3) */ -typedef struct -{ +typedef struct { __le16 typeAndTimezone; __le16 year; uint8_t month; @@ -72,8 +70,7 @@ typedef struct uint8_t microseconds; } __attribute__ ((packed)) timestamp; -typedef struct -{ +typedef struct { uint16_t typeAndTimezone; int16_t year; uint8_t month; @@ -94,8 +91,7 @@ typedef struct #define TIMESTAMP_TIMEZONE_MASK 0x0FFF /* Entity identifier (ECMA 167r3 1/7.4) */ -typedef struct -{ +typedef struct { uint8_t flags; uint8_t ident[23]; uint8_t identSuffix[8]; @@ -107,8 +103,7 @@ typedef struct /* Volume Structure Descriptor (ECMA 167r3 2/9.1) */ #define VSD_STD_ID_LEN 5 -struct volStructDesc -{ +struct volStructDesc { uint8_t structType; uint8_t stdIdent[VSD_STD_ID_LEN]; uint8_t structVersion; @@ -127,8 +122,7 @@ struct volStructDesc #define VSD_STD_ID_TEA01 "TEA01" /* (2/9.3) */ /* Beginning Extended Area Descriptor (ECMA 167r3 2/9.2) */ -struct beginningExtendedAreaDesc -{ +struct beginningExtendedAreaDesc { uint8_t structType; uint8_t stdIdent[VSD_STD_ID_LEN]; uint8_t structVersion; @@ -136,8 +130,7 @@ struct beginningExtendedAreaDesc } __attribute__ ((packed)); /* Terminating Extended Area Descriptor (ECMA 167r3 2/9.3) */ -struct terminatingExtendedAreaDesc -{ +struct terminatingExtendedAreaDesc { uint8_t structType; uint8_t stdIdent[VSD_STD_ID_LEN]; uint8_t structVersion; @@ -145,8 +138,7 @@ struct terminatingExtendedAreaDesc } __attribute__ ((packed)); /* Boot Descriptor (ECMA 167r3 2/9.4) */ -struct bootDesc -{ +struct bootDesc { uint8_t structType; uint8_t stdIdent[VSD_STD_ID_LEN]; uint8_t structVersion; @@ -167,21 +159,18 @@ struct bootDesc #define BOOT_FLAGS_ERASE 0x01 /* Extent Descriptor (ECMA 167r3 3/7.1) */ -typedef struct -{ +typedef struct { __le32 extLength; __le32 extLocation; } __attribute__ ((packed)) extent_ad; -typedef struct -{ +typedef struct { uint32_t extLength; uint32_t extLocation; } kernel_extent_ad; /* Descriptor Tag (ECMA 167r3 3/7.2) */ -typedef struct -{ +typedef struct { __le16 tagIdent; __le16 descVersion; uint8_t tagChecksum; @@ -204,18 +193,16 @@ typedef struct #define TAG_IDENT_LVID 0x0009 /* NSR Descriptor (ECMA 167r3 3/9.1) */ -struct NSRDesc -{ +struct NSRDesc { uint8_t structType; uint8_t stdIdent[VSD_STD_ID_LEN]; uint8_t structVersion; uint8_t reserved; uint8_t structData[2040]; } __attribute__ ((packed)); - + /* Primary Volume Descriptor (ECMA 167r3 3/10.1) */ -struct primaryVolDesc -{ +struct primaryVolDesc { tag descTag; __le32 volDescSeqNum; __le32 primaryVolDescNum; @@ -244,8 +231,7 @@ struct primaryVolDesc #define PVD_FLAGS_VSID_COMMON 0x0001 /* Anchor Volume Descriptor Pointer (ECMA 167r3 3/10.2) */ -struct anchorVolDescPtr -{ +struct anchorVolDescPtr { tag descTag; extent_ad mainVolDescSeqExt; extent_ad reserveVolDescSeqExt; @@ -253,8 +239,7 @@ struct anchorVolDescPtr } __attribute__ ((packed)); /* Volume Descriptor Pointer (ECMA 167r3 3/10.3) */ -struct volDescPtr -{ +struct volDescPtr { tag descTag; __le32 volDescSeqNum; extent_ad nextVolDescSeqExt; @@ -262,8 +247,7 @@ struct volDescPtr } __attribute__ ((packed)); /* Implementation Use Volume Descriptor (ECMA 167r3 3/10.4) */ -struct impUseVolDesc -{ +struct impUseVolDesc { tag descTag; __le32 volDescSeqNum; regid impIdent; @@ -271,20 +255,19 @@ struct impUseVolDesc } __attribute__ ((packed)); /* Partition Descriptor (ECMA 167r3 3/10.5) */ -struct partitionDesc -{ - tag descTag; - __le32 volDescSeqNum; - __le16 partitionFlags; - __le16 partitionNumber; - regid partitionContents; - uint8_t partitionContentsUse[128]; - __le32 accessType; - __le32 partitionStartingLocation; - __le32 partitionLength; - regid impIdent; - uint8_t impUse[128]; - uint8_t reserved[156]; +struct partitionDesc { + tag descTag; + __le32 volDescSeqNum; + __le16 partitionFlags; + __le16 partitionNumber; + regid partitionContents; + uint8_t partitionContentsUse[128]; + __le32 accessType; + __le32 partitionStartingLocation; + __le32 partitionLength; + regid impIdent; + uint8_t impUse[128]; + uint8_t reserved[156]; } __attribute__ ((packed)); /* Partition Flags (ECMA 167r3 3/10.5.3) */ @@ -307,8 +290,7 @@ struct partitionDesc #define PD_ACCESS_TYPE_OVERWRITABLE 0x00000004 /* Logical Volume Descriptor (ECMA 167r3 3/10.6) */ -struct logicalVolDesc -{ +struct logicalVolDesc { tag descTag; __le32 volDescSeqNum; charspec descCharSet; @@ -325,8 +307,7 @@ struct logicalVolDesc } __attribute__ ((packed)); /* Generic Partition Map (ECMA 167r3 3/10.7.1) */ -struct genericPartitionMap -{ +struct genericPartitionMap { uint8_t partitionMapType; uint8_t partitionMapLength; uint8_t partitionMapping[0]; @@ -338,8 +319,7 @@ struct genericPartitionMap #define GP_PARTITION_MAP_TYPE_2 0x02 /* Type 1 Partition Map (ECMA 167r3 3/10.7.2) */ -struct genericPartitionMap1 -{ +struct genericPartitionMap1 { uint8_t partitionMapType; uint8_t partitionMapLength; __le16 volSeqNum; @@ -347,16 +327,14 @@ struct genericPartitionMap1 } __attribute__ ((packed)); /* Type 2 Partition Map (ECMA 167r3 3/10.7.3) */ -struct genericPartitionMap2 -{ +struct genericPartitionMap2 { uint8_t partitionMapType; - uint8_t partitionMapLength; + uint8_t partitionMapLength; uint8_t partitionIdent[62]; } __attribute__ ((packed)); /* Unallocated Space Descriptor (ECMA 167r3 3/10.8) */ -struct unallocSpaceDesc -{ +struct unallocSpaceDesc { tag descTag; __le32 volDescSeqNum; __le32 numAllocDescs; @@ -364,15 +342,13 @@ struct unallocSpaceDesc } __attribute__ ((packed)); /* Terminating Descriptor (ECMA 167r3 3/10.9) */ -struct terminatingDesc -{ +struct terminatingDesc { tag descTag; uint8_t reserved[496]; } __attribute__ ((packed)); /* Logical Volume Integrity Descriptor (ECMA 167r3 3/10.10) */ -struct logicalVolIntegrityDesc -{ +struct logicalVolIntegrityDesc { tag descTag; timestamp recordingDateAndTime; __le32 integrityType; @@ -390,52 +366,45 @@ struct logicalVolIntegrityDesc #define LVID_INTEGRITY_TYPE_CLOSE 0x00000001 /* Recorded Address (ECMA 167r3 4/7.1) */ -typedef struct -{ +typedef struct { __le32 logicalBlockNum; __le16 partitionReferenceNum; } __attribute__ ((packed)) lb_addr; /* ... and its in-core analog */ -typedef struct -{ +typedef struct { uint32_t logicalBlockNum; uint16_t partitionReferenceNum; } kernel_lb_addr; /* Short Allocation Descriptor (ECMA 167r3 4/14.14.1) */ -typedef struct -{ +typedef struct { __le32 extLength; __le32 extPosition; } __attribute__ ((packed)) short_ad; /* Long Allocation Descriptor (ECMA 167r3 4/14.14.2) */ -typedef struct -{ +typedef struct { __le32 extLength; lb_addr extLocation; uint8_t impUse[6]; } __attribute__ ((packed)) long_ad; -typedef struct -{ +typedef struct { uint32_t extLength; kernel_lb_addr extLocation; uint8_t impUse[6]; } kernel_long_ad; /* Extended Allocation Descriptor (ECMA 167r3 4/14.14.3) */ -typedef struct -{ +typedef struct { __le32 extLength; __le32 recordedLength; __le32 informationLength; lb_addr extLocation; } __attribute__ ((packed)) ext_ad; -typedef struct -{ +typedef struct { uint32_t extLength; uint32_t recordedLength; uint32_t informationLength; @@ -458,8 +427,7 @@ typedef struct #define TAG_IDENT_EFE 0x010A /* File Set Descriptor (ECMA 167r3 4/14.1) */ -struct fileSetDesc -{ +struct fileSetDesc { tag descTag; timestamp recordingDateAndTime; __le16 interchangeLvl; @@ -482,8 +450,7 @@ struct fileSetDesc } __attribute__ ((packed)); /* Partition Header Descriptor (ECMA 167r3 4/14.3) */ -struct partitionHeaderDesc -{ +struct partitionHeaderDesc { short_ad unallocSpaceTable; short_ad unallocSpaceBitmap; short_ad partitionIntegrityTable; @@ -493,8 +460,7 @@ struct partitionHeaderDesc } __attribute__ ((packed)); /* File Identifier Descriptor (ECMA 167r3 4/14.4) */ -struct fileIdentDesc -{ +struct fileIdentDesc { tag descTag; __le16 fileVersionNum; uint8_t fileCharacteristics; @@ -514,16 +480,14 @@ struct fileIdentDesc #define FID_FILE_CHAR_METADATA 0x10 /* Allocation Ext Descriptor (ECMA 167r3 4/14.5) */ -struct allocExtDesc -{ +struct allocExtDesc { tag descTag; __le32 previousAllocExtLocation; __le32 lengthAllocDescs; } __attribute__ ((packed)); /* ICB Tag (ECMA 167r3 4/14.6) */ -typedef struct -{ +typedef struct { __le32 priorRecordedNumDirectEntries; __le16 strategyType; __le16 strategyParameter; @@ -576,23 +540,20 @@ typedef struct #define ICBTAG_FLAG_STREAM 0x2000 /* Indirect Entry (ECMA 167r3 4/14.7) */ -struct indirectEntry -{ +struct indirectEntry { tag descTag; icbtag icbTag; long_ad indirectICB; } __attribute__ ((packed)); /* Terminal Entry (ECMA 167r3 4/14.8) */ -struct terminalEntry -{ +struct terminalEntry { tag descTag; icbtag icbTag; } __attribute__ ((packed)); /* File Entry (ECMA 167r3 4/14.9) */ -struct fileEntry -{ +struct fileEntry { tag descTag; icbtag icbTag; __le32 uid; @@ -655,16 +616,14 @@ struct fileEntry #define FE_RECORD_DISPLAY_ATTR_3 0x03 /* Extended Attribute Header Descriptor (ECMA 167r3 4/14.10.1) */ -struct extendedAttrHeaderDesc -{ +struct extendedAttrHeaderDesc { tag descTag; __le32 impAttrLocation; __le32 appAttrLocation; } __attribute__ ((packed)); /* Generic Format (ECMA 167r3 4/14.10.2) */ -struct genericFormat -{ +struct genericFormat { __le32 attrType; uint8_t attrSubtype; uint8_t reserved[3]; @@ -673,8 +632,7 @@ struct genericFormat } __attribute__ ((packed)); /* Character Set Information (ECMA 167r3 4/14.10.3) */ -struct charSetInfo -{ +struct charSetInfo { __le32 attrType; uint8_t attrSubtype; uint8_t reserved[3]; @@ -685,8 +643,7 @@ struct charSetInfo } __attribute__ ((packed)); /* Alternate Permissions (ECMA 167r3 4/14.10.4) */ -struct altPerms -{ +struct altPerms { __le32 attrType; uint8_t attrSubtype; uint8_t reserved[3]; @@ -697,8 +654,7 @@ struct altPerms } __attribute__ ((packed)); /* File Times Extended Attribute (ECMA 167r3 4/14.10.5) */ -struct fileTimesExtAttr -{ +struct fileTimesExtAttr { __le32 attrType; uint8_t attrSubtype; uint8_t reserved[3]; @@ -715,8 +671,7 @@ struct fileTimesExtAttr #define FTE_BACKUP 0x00000002 /* Information Times Extended Attribute (ECMA 167r3 4/14.10.6) */ -struct infoTimesExtAttr -{ +struct infoTimesExtAttr { __le32 attrType; uint8_t attrSubtype; uint8_t reserved[3]; @@ -727,8 +682,7 @@ struct infoTimesExtAttr } __attribute__ ((packed)); /* Device Specification (ECMA 167r3 4/14.10.7) */ -struct deviceSpec -{ +struct deviceSpec { __le32 attrType; uint8_t attrSubtype; uint8_t reserved[3]; @@ -740,8 +694,7 @@ struct deviceSpec } __attribute__ ((packed)); /* Implementation Use Extended Attr (ECMA 167r3 4/14.10.8) */ -struct impUseExtAttr -{ +struct impUseExtAttr { __le32 attrType; uint8_t attrSubtype; uint8_t reserved[3]; @@ -752,8 +705,7 @@ struct impUseExtAttr } __attribute__ ((packed)); /* Application Use Extended Attribute (ECMA 167r3 4/14.10.9) */ -struct appUseExtAttr -{ +struct appUseExtAttr { __le32 attrType; uint8_t attrSubtype; uint8_t reserved[3]; @@ -771,10 +723,8 @@ struct appUseExtAttr #define EXTATTR_IMP_USE 2048 #define EXTATTR_APP_USE 65536 - /* Unallocated Space Entry (ECMA 167r3 4/14.11) */ -struct unallocSpaceEntry -{ +struct unallocSpaceEntry { tag descTag; icbtag icbTag; __le32 lengthAllocDescs; @@ -782,8 +732,7 @@ struct unallocSpaceEntry } __attribute__ ((packed)); /* Space Bitmap Descriptor (ECMA 167r3 4/14.12) */ -struct spaceBitmapDesc -{ +struct spaceBitmapDesc { tag descTag; __le32 numOfBits; __le32 numOfBytes; @@ -791,8 +740,7 @@ struct spaceBitmapDesc } __attribute__ ((packed)); /* Partition Integrity Entry (ECMA 167r3 4/14.13) */ -struct partitionIntegrityEntry -{ +struct partitionIntegrityEntry { tag descTag; icbtag icbTag; timestamp recordingDateAndTime; @@ -815,15 +763,13 @@ struct partitionIntegrityEntry /* Extended Allocation Descriptor (ECMA 167r3 4/14.14.3) */ /* Logical Volume Header Descriptor (ECMA 167r3 4/14.15) */ -struct logicalVolHeaderDesc -{ +struct logicalVolHeaderDesc { __le64 uniqueID; uint8_t reserved[24]; } __attribute__ ((packed)); /* Path Component (ECMA 167r3 4/14.16.1) */ -struct pathComponent -{ +struct pathComponent { uint8_t componentType; uint8_t lengthComponentIdent; __le16 componentFileVersionNum; @@ -831,8 +777,7 @@ struct pathComponent } __attribute__ ((packed)); /* File Entry (ECMA 167r3 4/14.17) */ -struct extendedFileEntry -{ +struct extendedFileEntry { tag descTag; icbtag icbTag; __le32 uid; |