3.4 0x06Primary Stream
This section provides an example of a 0x06Primary stream (1) that contains an IRMDSTransformInfo structure (section 2.2.6). Note that the first portion of this structure consists of a TransformInfoHeader structure (section 2.1.8).
-
-
00000000: 58 00 00 00 01 00 00 00 4C 00 00 00 7B 00 43 00 00000010: 37 00 33 00 44 00 46 00 41 00 43 00 44 00 2D 00 00000020: 30 00 36 00 31 00 46 00 2D 00 34 00 33 00 42 00 00000030: 30 00 2D 00 38 00 42 00 36 00 34 00 2D 00 30 00 00000040: 43 00 36 00 32 00 30 00 44 00 32 00 41 00 38 00 00000050: 42 00 35 00 30 00 7D 00 3E 00 00 00 4D 00 69 00 00000060: 63 00 72 00 69 00 73 00 6F 00 66 00 74 00 2E 00 00000070: 4D 00 65 00 74 00 61 00 64 00 61 00 74 00 61 00 00000080: 2E 00 44 00 52 00 4D 00 54 00 72 00 61 00 6E 00 00000090: 73 00 66 00 6F 00 72 00 6D 00 00 00 01 00 00 00 000000A0: 01 00 00 00 01 00 00 00 04 00 00 00 26 2F 00 00 000000B0: 3C 3F 78 6D 6C 20 76 65 72 73 69 6F 6E 3D 22 31
-
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
3 |
|
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
TransformInfoHeader.TransformLength |
|||||||||||||||||||||||||||||||
TransformInfoHeader.TransformType |
|||||||||||||||||||||||||||||||
TransformInfoHeader.TransformID (variable) |
|||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
TransformInfoHeader.TransformName (variable) |
|||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
TransformInfoHeader.ReaderVersion.vMajor |
TransformInfoHeader.ReaderVersion.vMinor |
||||||||||||||||||||||||||||||
TransformInfoHeader.UpdaterVersion.vMajor |
TransformInfoHeader.UpdaterVersion.vMinor |
||||||||||||||||||||||||||||||
TransformInfoHeader.WriterVersion.vMajor |
TransformInfoHeader.WriterVersion.vMinor |
||||||||||||||||||||||||||||||
ExtensibilityHeader |
|||||||||||||||||||||||||||||||
XrMLLicense (variable) |
|||||||||||||||||||||||||||||||
... |
TransformInfoHeader.TransformLength (4 bytes): 0x00000058 specifies the number of bytes in this structure before TransformInfoHeader.TransformName.
TransformInfoHeader.TransformType (4 bytes): 0x00000001 specifies the type of transform to be applied.
TransformInfoHeader.TransformID (variable): "{C73DFACD-061F-43B0-8B64-0C620D2A8B50}" specifies a unique, invariant identifier associated with this transform. This string is contained in a UNICODE-LP-P4 structure (section 2.1.2); therefore, the first 4 bytes of the structure contain 0x0000004C, which specifies the length, in bytes, of the string. The string is not null-terminated.
TransformInfoHeader.TransformName (variable): "Microsoft.Metadata.DRMTransform" specifies the logical name of the transform. This string is contained in a UNICODE-LP-P4 structure; therefore, the first 4 bytes of the structure contain 0x0000003E, which specifies the length, in bytes, of the string. The string is not null-terminated; however, the structure is padded with 2 bytes to ensure that its length is a multiple of 4 bytes.
TransformInfoHeader.ReaderVersion.vMajor (2 bytes): 0x0001 specifies the major component of the reader version of the software component that created this structure.
TransformInfoHeader.ReaderVersion.vMinor (2 bytes): 0x0000 specifies the minor component of the reader version of the software component that created this structure.
TransformInfoHeader.UpdaterVersion.vMajor (2 bytes): 0x0001 specifies the major component of the updater version of the software component that created this structure.
TransformInfoHeader.UpdaterVersion.vMinor (2 bytes): 0x0000 specifies the minor component of the updater version of the software component that created this structure.
TransformInfoHeader.WriterVersion.vMajor (2 bytes): 0x0001 specifies the major component of the writer version of the software component that created this structure.
TransformInfoHeader.WriterVersion.vMinor (2 bytes): 0x0000 specifies the minor component of the writer version of the software component that created this structure.
ExtensibilityHeader (4 bytes): 0x00000004 specifies that no further information exists in the ExtensibilityHeader structure (section 2.2.5).
XrMLLicense (variable): An XrML license as described in [MS-RMPR]. This string is contained in a UTF-8-LP-P4 structure (section 2.1.3); therefore, the first 4 bytes of the structure contain 0x00002F26, which specifies the length, in bytes, of the string. The string is not null-terminated; however, the structure is padded with 2 bytes to ensure that its length is a multiple of 4 bytes.