Asn1 Release Notes
Asn1 01.08.31
Fixed errors and malfunctions
-
The ASN.1 language feature
COMPONENTS OF
is now
implemented.
Own Id: OTP-2515
-
The new parser handles imports when one import ends with FROM, a modulename and a reference to a objectidentifier followed by imports from other modules.
Own Id: OTP-3463
-
The compiler did not check that a name mentioned as EXPORTED
actually is defined within the module.
This is now corrected.
Own Id: OTP-3659
-
Do not generate record in .hrl file for SET types
Own Id: OTP-4025
-
Fixed internal error when using BIT STRINGs with Named Number List in combination with
compact_bit_string
and ber_bin
options.
Own Id: OTP-4026
Aux Id: OTP-3982
-
The atom 'com' can now be used in ENUMERATED as an EnumerationItem.
Own Id: OTP-4037
Aux Id: Seq 7036
-
ber: Now it is possible (again) to encode data format "{Type,Value}" in a SEQUENCE OF RequestParameter, when RequestParameter is of type ENUMERATED. The {Type,Value}
notation is not recommended for use, it is redundant and exist only for very ancient backwards compatibility reasons. The "feature" might be removed in forthcoming versions.
Own Id: OTP-4057
Aux Id: Seq 7066
-
A bug in the parser, that caused failure on COMPONENTS OF is now removed.
Own Id: OTP-4058
Improvements and new features
-
Now supporting most common use of parameterization according to X.683
Own Id: OTP-3978
-
PER: Now supporting most common use of Information Objects according to X.681. A new parser has been implemented. The error messages due to syntax errors are slightly different than previous. TableConstraint part of X.682 now also supported.
Own Id: OTP-3979
-
New compiler option added:
ber_bin
. The compiler generates code with new bit syntax. Run time functions uses bit syntax when feasible. Higher encoding/decoding performance in most cases.
Own Id: OTP-3981
-
A more compact format of BIT STRING in Erlang is now available by use of the compiler option
compact_bit_string
. It is much faster when large BIT STRINGs are used.
Own Id: OTP-3982
-
Now possible to merge many ASN.1 input files to one Erlang file by use of a configuration file that lists the ASN.1 files.
Own Id: OTP-3983
-
New documentation in User's Guide in section:
3.1: New compile-time functions and options are described.
4.6: New compact format of BIT STRING is described.
4.8: Additional comments on character strings.
7: New section describing ASN.1 Information Objects.
8: New section describing Parameterization.
Reference Manual/asn1ct New compile options are described.
Own Id: OTP-3984
Aux Id: OTP-3978, OTP-3979, OTP-3981, OTP-3982, OTP-3983
-
Added the functionality to invoke ASN1Mod:encode (and decode).
Own Id: OTP-3985
-
Performance improvements by removing not necessary use of apply when calling asn1rt:encode. Also other general improvements.
Own Id: OTP-3988
-
Removed bug caused by use of nested indefinite length
Own Id: OTP-3994
-
Unnecessary external function calls in generated code are now generated as internal function calls.
Own Id: OTP-4073
-
PER: A new option
per_bin
is now supported. When used
the generated encode/decode functions use binaries and
the bit syntax to get better performance than the old
per
variant which used lists.
All values input to encode and returned from decode are compatible
between per
and per_bin
except for open types which are
represented as binaries with per_bin and octet lists with per.
We recommend that you use per_bin instead of per from now on, the use of binaries will be the default in coming versions and all improvements and optimizations for PER will be concentrated to that solution.
Own Id: OTP-4094
-
Support for DER implemented. Used by flag +der when compiling. Include the full BER encoding plus: sorting of SET components, sorting of encoded elements in SET OF, full check of default values in SET and SEQUENCE. See new documentation on DER in
user_guide sections 1.3.1; 1.4.11; 1.4.12; 1.4.14; 1.4.16
and 1.10, in the reference manual for asn1ct.
Own Id: OTP-4103
Asn1 01.08.31
Known problems
-
The compiler does not always check that a value referenced by name
does exist.
Own Id: OTP-3277
You can find release notes for older versions
here.