Issue decoding NAS messages with variant FORCEOMIT
Dear Support,
In the context of ETSI TTF project, we are facing issues to decode NAS messages using variants. Here is an example:
  type record NAS_KeySetIdentifier {                            /* 24.301 cl. 9.9.3.21 */
    IEI4_Type                   iei                   optional, /* present in case of TV; omit in case of V */
    B1_Type                     tsc,                            // Type of security context: 0 = cached, 1 = mapped
    NAS_KsiValue                nasKeySetId
  } with {
    variant "FIELDORDER(msb)";
    variant "FORCEOMIT(iei)";
  }
We add the FORCEOMIT(iei) variant to instruct the TITAN codec to force iei as omitted. Unfortunately, here is the decoded message we got:
    ngNasKSI := {
        iei := '0'H,
        tsc := '1'B,
        nasKeySetId := '001'B
    }
The 'iei' field was decoded.
I attached a small project to highlight the issue. In this project, we have the same kind of issue with the NG_MobileIdentity data structure:
  type record NG_MobileIdentity {                              // 24.501 cl. 9.11.3.4
    IEI8_Type            iei                   optional, /* present in case of TLV; omit in case of LV */
    Type6Length_Type     iel,
    BcdDigit_Bit         idDigit1,                // 1st identitity digit
    B1_Type              oddEvenInd,              // Odd/even indicator or Spare
    NAS_IdType           typeOfId,                // Type of identity
    octetstring          otherDigits length (1..infinity) optional  // Other identity digits, could be any length @sic R5-192389, @sic R5w190307 sic@ sic@
  } with { 
    variant "FIELDORDER(msb),FORCEOMIT(iei)";
    variant (iel) "LENGTHTO (idDigit1, oddEvenInd, typeOfId, otherDigits)";
  };
Here is the decoded NAS message using Wireshark:
Many thanks for your support,
Yann Garcia
Senior Software Engineer
Microsoft MCAD.net Certified
**************************************
FSCOM SARL
Le Montespan B2
6,  Avenue des Alpes 
F-06600 Antibes, FRANCE
************************************************
Tel: +33 (0)4 92 94 49 08 (GMT+1)
Mobile: +33 (0)6 68 94 57 76 (GMT+1)
Email: yann.garcia@fscom.fr
Skype: yann.garcia
SlackID: U0263576GG3, U02T8HUD2KX
LinkedIn: linkedin.com/in/yann-garcia-b145944