VirtualBox

Changeset 69059 in vbox for trunk/include/iprt/formats


Ignore:
Timestamp:
Oct 12, 2017 12:31:42 PM (8 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
118339
Message:

UDF: Some more structures.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/iprt/formats/udf.h

    r69035 r69059  
    840840    /** 0x02: Reserved \#1. */
    841841    uint16_t        uReserved1;
    842     /** 0x04: Partition number (UDF_ENTITY_ID_VPM_PARTITION_TYPE,
     842    /** 0x04: Partition ID type (UDF_ENTITY_ID_VPM_PARTITION_TYPE,
    843843     *  UDF_ENTITY_ID_SPM_PARTITION_TYPE, or UDF_ENTITY_ID_MPM_PARTITION_TYPE). */
    844844    UDFENTITYID     idPartitionType;
     
    847847    /** 0x26: Partition number. */
    848848    uint16_t        uPartitionNo;
    849     /** 0x28: Reserved \#2. */
    850     uint8_t         abReserved2[24];
     849    /** 0x28: Data specific to the partition ID type. */
     850    union
     851    {
     852        /** 0x28: Generic view. */
     853        uint8_t     ab[24];
     854
     855        /** UDF_ENTITY_ID_VPM_PARTITION_TYPE. */
     856        struct
     857        {
     858            /** 0x28: Reserved. */
     859            uint8_t         abReserved2[24];
     860        } Vpm;
     861
     862        /** UDF_ENTITY_ID_SPM_PARTITION_TYPE. */
     863        struct
     864        {
     865            /** 0x28: Packet length in blocks.   */
     866            uint16_t        cBlocksPerPacket;
     867            /** 0x2a: Number of sparing tables. */
     868            uint8_t         cSparingTables;
     869            /** 0x2b: Reserved padding byte. */
     870            uint8_t         bReserved2;
     871            /** 0x2c: The size of each sparing table. */
     872            uint32_t        cbSparingTable;
     873            /** 0x30: The sparing table locations (logical block). */
     874            uint32_t        aoffSparingTables[4];
     875        } Spm;
     876
     877        /** UDF_ENTITY_ID_MPM_PARTITION_TYPE. */
     878        struct
     879        {
     880            /** 0x28: Metadata file entry location (logical block). */
     881            uint32_t        offMetadataFile;
     882            /** 0x2c: Metadata mirror file entry location (logical block). */
     883            uint32_t        offMetadataMirrorFile;
     884            /** 0x30: Metadata bitmap file entry location (logical block). */
     885            uint32_t        offMetadataBitmapFile;
     886            /** 0x34: The metadata allocation unit (logical blocks) */
     887            uint32_t        cBlocksAllocationUnit;
     888            /** 0x38: The metadata allocation unit alignment (logical blocks). */
     889            uint16_t        cBlocksAlignmentUnit;
     890            /** 0x3a: Flags, UDFPARTMAPMETADATA_F_XXX. */
     891            uint8_t         fFlags;
     892            /** 0x3b: Reserved. */
     893            uint8_t         abReserved2[5];
     894        } Mpm;
     895    } u;
    851896} UDFPARTMAPTYPE2;
    852897AssertCompileSize(UDFPARTMAPTYPE2, 64);
    853898/** Pointer to a type 2 partition map. */
    854899typedef UDFPARTMAPTYPE2 *PUDFPARTMAPTYPE2;
    855 /** Pointer to a const type 2 partition map1. */
     900/** Pointer to a const type 2 partition map. */
    856901typedef UDFPARTMAPTYPE2 const *PCUDFPARTMAPTYPE2;
     902
     903/** @name UDFPARTMAPMETADATA_F_XXX
     904 * @{ */
     905/** Indicates that the metadata is mirrored too, not just the file entry. */
     906#define UDFPARTMAPMETADATA_F_DATA_MIRRORED      UINT8_C(1)
     907/** @} */
    857908
    858909
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette