1. 01 Nov, 2017 2 commits
  2. 28 Oct, 2017 1 commit
  3. 26 Oct, 2017 6 commits
  4. 24 Oct, 2017 14 commits
  5. 22 Oct, 2017 2 commits
  6. 21 Oct, 2017 15 commits
    • Lev Walkin's avatar
    • Lev Walkin's avatar
      regenerated · df2edbbd
      Lev Walkin authored
      df2edbbd
    • Lev Walkin's avatar
      d2a73606
    • Lev Walkin's avatar
      62155df0
    • Lev Walkin's avatar
      fix OER comparison API · 3c37385d
      Lev Walkin authored
      3c37385d
    • Lev Walkin's avatar
      fix after UPER round-trip fuzz · 83668616
      Lev Walkin authored
      83668616
    • Lev Walkin's avatar
      fix UPER BIT STRING trailer encoding · 5de82742
      Lev Walkin authored
      5de82742
    • Lev Walkin's avatar
      more debug · ba2c5727
      Lev Walkin authored
      ba2c5727
    • Lev Walkin's avatar
      verify unusual PER canonical order · 1418d985
      Lev Walkin authored
      1418d985
    • Bi-Ruei, Chiu's avatar
      bc6ef1f9
    • Bi-Ruei, Chiu's avatar
      Fix error during 'make check' · e460c3b7
      Bi-Ruei, Chiu authored
      e460c3b7
    • Bi-Ruei, Chiu's avatar
      Fix duplication of selector functions · 156b0feb
      Bi-Ruei, Chiu authored
      There will be two selector functions generated for the following ASN.1 excerpt.
      
      InitiatingMessage ::= SEQUENCE {
          procedureCode S1AP-ELEMENTARY-PROCEDURE.&procedureCode     ({S1AP-ELEMENTARY-PROCEDURES}),
          criticality   S1AP-ELEMENTARY-PROCEDURE.&criticality       ({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
          value         S1AP-ELEMENTARY-PROCEDURE.&InitiatingMessage ({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode})
      }
      
      This pull request enables different function names by adding field name after type name.
      156b0feb
    • Bi-Ruei, Chiu's avatar
      Fix duplicate type names generated in headers file · dcc822a0
      Bi-Ruei, Chiu authored
      For example, there are many 'enum value_PR' and 'struct value' generated if
      a class is instantiated as many instances.
      
      typedef enum value_PR {
          value_PR_NOTHING,    /* No components present */
          .....
      } value_PR;
      
      typedef struct ProtocolIE_Field_6563P5 {
          ....
          struct value {
              value_PR present;
              union value_u {
              } choice;
      
              /* Context for parsing across buffer boundaries */
              asn_struct_ctx_t _asn_ctx;
          } value;
      
          /* Context for parsing across buffer boundaries */
          asn_struct_ctx_t _asn_ctx;
      } ProtocolIE_Field_6563P5_t;
      dcc822a0
    • Bi-Ruei, Chiu's avatar
      Solve the problem that information object table with one entry can not be properly handled · 3e2de696
      Bi-Ruei, Chiu authored
      E-RABToBeSetupItemBearerSUReqIEs S1AP-PROTOCOL-IES ::= {
          { ID id-E-RABToBeSetupItemBearerSUReq   CRITICALITY reject	TYPE E-RABToBeSetupItemBearerSUReq	PRESENCE mandatory },
          ...
      }
      
      result in 'FATAL: Information Object Set E-RABToBeSetupItemBearerSUReqIEs contains no objects at line xxxx'
      
      If it contains more than one entry then there is no problem.
      
      E-RABSetupRequestIEs S1AP-PROTOCOL-IES ::= {
          { ID id-MME-UE-S1AP-ID                  CRITICALITY reject  TYPE MME-UE-S1AP-ID                     PRESENCE mandatory }|
          { ID id-eNB-UE-S1AP-ID                  CRITICALITY reject  TYPE ENB-UE-S1AP-ID                     PRESENCE mandatory }|
          { ID id-uEaggregateMaximumBitrate       CRITICALITY reject  TYPE UEAggregateMaximumBitrate          PRESENCE optional  }|
          { ID id-E-RABToBeSetupListBearerSUReq   CRITICALITY reject  TYPE E-RABToBeSetupListBearerSUReq      PRESENCE mandatory },
          ...
      }
      3e2de696
    • Bi-Ruei, Chiu's avatar
      Pass evaluated arguments to members and type references · 214c4919
      Bi-Ruei, Chiu authored
      One of the most tricky ASN.1 excerpt :
      
      E-RABDataForwardingItemIEs S1AP-PROTOCOL-IES ::= {
          { ID id-E-RABDataForwardingItem   CRITICALITY ignore   TYPE E-RABDataForwardingItem PRESENCE mandatory },
          ...
      }
      
      E-RABSubjecttoDataForwardingList ::= E-RAB-IE-ContainerList { {E-RABDataForwardingItemIEs} }
      
      E-RAB-IE-ContainerList { S1AP-PROTOCOL-IES : IEsSetParam } ::=
          ProtocolIE-ContainerList { 1, maxnoofE-RABs, {IEsSetParam} }
      
      ProtocolIE-ContainerList {INTEGER : lowerBound, INTEGER : upperBound, S1AP-PROTOCOL-IES : IEsSetParam} ::=
          SEQUENCE (SIZE (lowerBound..upperBound)) OF
          ProtocolIE-SingleContainer {{IEsSetParam}}
      
      ProtocolIE-SingleContainer {S1AP-PROTOCOL-IES : IEsSetParam} ::=
          ProtocolIE-Field {{IEsSetParam}}
      
      ProtocolIE-Field {S1AP-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE {
          id          S1AP-PROTOCOL-IES.&id           ({IEsSetParam}),
          criticality S1AP-PROTOCOL-IES.&criticality  ({IEsSetParam}{@id}),
          value       S1AP-PROTOCOL-IES.&Value        ({IEsSetParam}{@id})
      }
      214c4919