Skip to content

ST 2109 S-ADM Payload Length 2 bytes short in ST 2110-41 #13

@knneth

Description

@knneth

The ST 2109 S-ADM Payload Value has a fixed header of 2 bytes (version, format) before the S-ADM XML metadata, but these 2 bytes don't appear to be included in the ST 2109 S-ADM Payload Length field.

The S-ADM Payload Length field is BER encoded in GetSadmST2127Header():

unsigned int berLengthSize = BERLengthEncode(payloadLength, &buff[6]);

... where payloadLength is assumed to equal the compressed size max_payload_size as set in get_sadm_payload() without the 2-byte header, but I have not verified that.

Potential fix:

unsigned int berLengthSize = BERLengthEncode(2 + payloadLength, &buff[6]); 

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions