Commit Graph

319 Commits

Author SHA1 Message Date
Lev Walkin d1c28aa809 generate OER and PER by default. add -no-gen-example 2017-11-11 18:05:13 -08:00
Lev Walkin 3be4919d01 make -pdu=auto a default 2017-11-11 16:13:32 -08:00
Lev Walkin 5f4dbb751a earlier detection of unknown -pdu=Type 2017-11-11 14:52:11 -08:00
Lev Walkin a67d11061e name clashes using generic hashing 2017-11-06 00:07:53 -08:00
Lev Walkin 5e73c5058b add missing member 2017-10-26 00:38:43 -07:00
Lev Walkin 836686167d fix after UPER round-trip fuzz 2017-10-21 00:24:31 -07:00
Bi-Ruei, Chiu 156b0feb5c Fix duplication of selector functions
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.
2017-10-20 17:15:57 -07:00
Bi-Ruei, Chiu dcc822a090 Fix duplicate type names generated in headers file
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;
2017-10-20 17:15:57 -07:00
Bi-Ruei, Chiu 89cde74d4a Supply meaningful data for last %d argument of DEBUG() 2017-10-20 17:15:57 -07:00
Bi-Ruei, Chiu b6bd8d788b Use parenthesis to avoid ambiguity of operator precedence 2017-10-20 17:15:57 -07:00
Bi-Ruei, Chiu 742a196624 Fix 'FATAL: Does not look like criticality is a CLASS field reference (xxxx) denoting a type one line xxx' 2017-10-20 17:15:57 -07:00
Bi-Ruei, Chiu 069c07657e Fix crash during dealing with empty optinal fields of ioc cell 2017-10-20 17:15:57 -07:00
Lev Walkin 48e82d1f1f removed gcc-7 warnings 2017-10-19 03:07:27 -07:00
Lev Walkin bc09dd4845 generate constraints differently to avoid warnings 2017-10-19 02:16:35 -07:00
Lev Walkin 4bd9eaf7e1 force use variable 2017-10-19 01:16:42 -07:00
Lev Walkin 0b56b22ca5 fix default value cmp/set order 2017-10-18 00:40:32 -07:00
Lev Walkin 04ca1b5293 typo fix 2017-10-18 00:27:35 -07:00
Lev Walkin 37231fb195 forward and backward canonical map for CHOICE 2017-10-17 21:24:34 -07:00
Lev Walkin 22cef6cb93 BMPString and UniversalString fuzz testing 2017-10-16 20:33:07 -07:00
Lev Walkin e24bad1a56 fix under-replacement 2017-10-09 23:58:15 -07:00
Lev Walkin 40b8a7ae99 simpler makefile generation 2017-10-08 22:56:13 -07:00
Lev Walkin 45bae08c71 Merge pull request #214 from brchiu/fix_vlm_issue_211
Fix issue 211
2017-10-08 19:55:03 -07:00
Lev Walkin a4f8e94bc1 get rid of alloca() in compiler 2017-10-08 19:28:56 -07:00
Bi-Ruei, Chiu 3ed43b2539 Fix issue 211 2017-10-06 18:46:25 +08:00
Lev Walkin 4329272a64 for OER use IEEE754 binary32 and binary64 format over the wire 2017-10-05 00:33:32 -07:00
Lev Walkin afcc891c86 add OER binary32 and binary64 IEEE-754 formats for native REAL type 2017-10-04 23:48:35 -07:00
Lev Walkin b5450704fe generate float instead of double if constraints suggest this 2017-10-04 02:54:16 -07:00
Lev Walkin 026e21abe1 narrowing to support 32-bit floats 2017-10-04 00:49:01 -07:00
Lev Walkin b458fc0afd BSD compat 2017-10-02 08:18:36 +00:00
Lev Walkin 6d69204622 extend naming API 2017-09-29 23:15:30 -07:00
Lev Walkin 14e75ed755 upgrade to a new API 2017-09-29 23:15:13 -07:00
Lev Walkin 8a85b36d93 split Makefile.am.sample into Makefile.am.example and Makefile.am.libasncodecs 2017-09-26 22:54:44 -07:00
Lev Walkin 1711a5dd0e Merge branch 'master' of github.com:vlm/asn1c 2017-09-26 18:39:11 -07:00
Lev Walkin 2e93c223da emit cross-compilable attributes 2017-09-26 18:29:15 -07:00
Lev Walkin 09c8730753 Merge branch 'master' into fix_recent_memory_leak_and_access_violation 2017-09-26 18:12:15 -07:00
Lev Walkin 5230c64b7c pdu types leak fix 2017-09-26 18:10:06 -07:00
Lev Walkin 47fc74ca76 proper destruction of a name storage 2017-09-26 18:02:27 -07:00
Bi-Ruei, Chiu 59b1bc8e90 Fix some memory leakage and access violation in recent code 2017-09-20 07:30:05 +08:00
Lev Walkin 9023deafc9 naming correctness fix 2017-09-11 08:40:15 -07:00
Lev Walkin c66ccbcae5 duplicate identifier fix 2017-09-11 07:08:54 -07:00
Lev Walkin 2d0effcac2 -lm for REAL 2017-09-07 02:06:55 -07:00
Lev Walkin 154519a3a7 removed superfluous constraints duplication 2017-09-06 23:34:40 -07:00
Lev Walkin d523ea454d parse advanced WITH COMPONENTS 2017-09-06 22:15:08 -07:00
Lev Walkin 5efafc56b4 early suggestion of -fcompound-names 2017-09-05 03:43:00 -07:00
Lev Walkin c17e14e66b removed extra debug 2017-09-05 03:31:46 -07:00
Lev Walkin b46156d9be naming abstraction 2017-09-05 02:53:05 -07:00
Lev Walkin e0f2a5b46b 0..MAX is unsigned in constraints 2017-08-30 20:21:52 -07:00
Lev Walkin 6713bcb012 0..MAX constraint is positive for OER 2017-08-30 20:21:52 -07:00
Lev Walkin dfc9314a6d fix issue #195 2017-08-28 23:34:51 -07:00
Ryan Sleevi a93d9971d2 Add unittest, which revealed that default booleans were not set properly 2017-08-28 17:37:09 -07:00