Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MultimediaSystemControlMessage parse failed #475

Open
johnhypo opened this issue May 4, 2023 · 2 comments
Open

MultimediaSystemControlMessage parse failed #475

johnhypo opened this issue May 4, 2023 · 2 comments

Comments

@johnhypo
Copy link

johnhypo commented May 4, 2023

I download H235-SECURITY-MESSAGES.asn, H323-MESSAGES.asn and MULTIMEDIA-SYSTEM-CONTROL.asn from wireshark source code.
I put H235-SECURITY-MESSAGES.asn and MULTIMEDIA-SYSTEM-CONTROL.asn into directory standard-modules.
And I compiled successfully with cmd:asn1c -pdu=all -fcompound-names H323-MESSAGES.asn.
However, the generated converter example failed to parse PDU with cmd:converter-example -aper -p MultimediaSystemControlMessage h245request.bin.
Problem 1
It can't parse MultiplexCapability.

MultiplexCapability ::= CHOICE {
  nonStandard                 NonStandardParameter,
  h222Capability              H222Capability,
  h223Capability              H223Capability,
  v76Capability               V76Capability,
  ...,
  h2250Capability             H2250Capability,
  genericMultiplexCapability  GenericCapability
}

It seems asn1c has problem when it parse extension. Converter successfully regconized h2250Capability if I detete "..."

MultiplexCapability ::= CHOICE {
  nonStandard                 NonStandardParameter,
  h222Capability              H222Capability,
  h223Capability              H223Capability,
  v76Capability               V76Capability,
  -- ...,
  h2250Capability             H2250Capability,
  genericMultiplexCapability  GenericCapability
}

Problem 2
Converter example failed to parse mediaDistributionCapability.

MultipointCapability ::= SEQUENCE {
  multicastCapability          BOOLEAN,
  multiUniCastConference       BOOLEAN,
  mediaDistributionCapability  SEQUENCE OF MediaDistributionCapability
  -- ...
}

MediaDistributionCapability ::= SEQUENCE {
  centralizedControl  BOOLEAN,
  distributedControl  BOOLEAN, -- for further study in

  -- ITU-T Rec. H.323
  centralizedAudio    BOOLEAN,
  distributedAudio    BOOLEAN,
  centralizedVideo    BOOLEAN,
  distributedVideo    BOOLEAN,
  centralizedData     SEQUENCE OF DataApplicationCapability OPTIONAL,
  distributedData     SEQUENCE OF DataApplicationCapability OPTIONAL,
  -- for further study in
  -- ITU-T Rec. H.323
  -- ...
}

Error info:
Decoding member "multiUniCastConference" in MultipointCapability (constr_SEQUENCE_aper.c:130)
[PER got 1<=1430 bits => span 107 +13[3..1432]:00 (1429) => 0x0] (asn_bit_data.c:139)
BOOLEAN decoded as FALSE (BOOLEAN_aper.c:39)
Decoding member "mediaDistributionCapability" in MultipointCapability (constr_SEQUENCE_aper.c:130)
Aligning 5 bits (aper_support.c:13)
[PER got 5<=1429 bits => span 112 +13[8..1432]:00 (1424) => 0x0] (asn_bit_data.c:139)
[PER got 8<=1424 bits => span 120 +14[8..1424]:fa (1416) => 0xfa] (asn_bit_data.c:139)
Got to decode -1 elements (eff -1) (constr_SET_OF_aper.c:152)
Failed decode mediaDistributionCapability in MultipointCapability (constr_SEQUENCE_aper.c:146)
Failed decode receiveMultipointCapability in H2250Capability (constr_SEQUENCE_aper.c:146)

How to solve this problem?
Help!!!
image

@velichkov
Copy link
Contributor

Hi @johnhypo,

The aper support in the master branch is not very good. Try the vlm_master branch from mouse07410 fork that contains an alternative aper implementation.

@johnhypo
Copy link
Author

johnhypo commented May 5, 2023 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants