aboutsummaryrefslogtreecommitdiffstats
path: root/lib/asn1/doc/src/notes.xml
diff options
context:
space:
mode:
Diffstat (limited to 'lib/asn1/doc/src/notes.xml')
-rw-r--r--lib/asn1/doc/src/notes.xml168
1 files changed, 161 insertions, 7 deletions
diff --git a/lib/asn1/doc/src/notes.xml b/lib/asn1/doc/src/notes.xml
index 5cd7a1c4b8..4b5bba742c 100644
--- a/lib/asn1/doc/src/notes.xml
+++ b/lib/asn1/doc/src/notes.xml
@@ -4,7 +4,7 @@
<chapter>
<header>
<copyright>
- <year>2004</year><year>2012</year>
+ <year>2004</year><year>2013</year>
<holder>Ericsson AB. All Rights Reserved.</holder>
</copyright>
<legalnotice>
@@ -31,23 +31,73 @@
<p>This document describes the changes made to the asn1 application.</p>
-<section><title>Asn1 1.8.1.2</title>
+<section><title>Asn1 2.0.2</title>
<section><title>Fixed Bugs and Malfunctions</title>
<list>
<item>
<p>
- Open types greater than 16383 bytes will now be correctly
- encoded and decoded.</p>
+ Fix some Makefile rules that didn't support silent rules.
+ Thanks to Anthony Ramine.</p>
<p>
- Own Id: OTP-11223 Aux Id: seq12386 </p>
+ Own Id: OTP-11111</p>
+ </item>
+ <item>
+ <p>PER/UPER: A semi-constrained INTEGER with a non-zero
+ lower bound would be incorrectly decoded. This bug was
+ introduced in R16.</p>
+ <p>PER/UPER: Given <c>INTEGER (10..MAX, ...)</c>,
+ attempting to decode any integer below 10 would cause the
+ encoder to enter an infinite loop.</p>
+ <p>PER/UPER: For a type with an extensible SIZE
+ constraint, sizes outside of the root range were
+ incorrectly encoded.</p>
+ <p>Given a constraint such as <c>(SIZE (5, ...))</c>,
+ encoding a size less than 5 would fail (PER/UPER).
+ Similarly, for BER decoding would fail.</p>
+ <p>PER: The encoder did not align a known multiplier
+ string (such as IA5String) of length 16 bits (exactly) to
+ an octet boundary.</p>
+ <p>In rare circumstances, DEFAULT values for the UPER
+ backend could be wrongly encoded.</p>
+ <p>
+ Own Id: OTP-11134</p>
+ </item>
+ <item>
+ <p>UPER: The compiler would crash when compiling an
+ ENUMERATED having more than 63 extended values.</p>
+ <p>PER/UPER: A SEQUENCE with more 64 extended values
+ could not be decoded.</p>
+ <p>
+ Own Id: OTP-11153</p>
+ </item>
+ <item>
+ <p>
+ When decoding a SEQUENCE defined inline inside a an
+ extension addition group, the record named generated by
+ the decoding code would not match the name in the
+ generated .hrl file.</p>
+ <p>
+ Own Id: OTP-11154 Aux Id: seq12339 </p>
+ </item>
+ </list>
+ </section>
+
+
+ <section><title>Improvements and New Features</title>
+ <list>
+ <item>
+ <p> Postscript files no longer needed for the generation
+ of PDF files have been removed. </p>
+ <p>
+ Own Id: OTP-11016</p>
</item>
</list>
</section>
</section>
-<section><title>Asn1 1.8.1.1</title>
+<section><title>Asn1 2.0.1.2</title>
<section><title>Fixed Bugs and Malfunctions</title>
<list>
@@ -64,6 +114,110 @@
</section>
+<section><title>Asn1 2.0.1.1</title>
+
+ <section><title>Fixed Bugs and Malfunctions</title>
+ <list>
+ <item>
+ <p>The generated decoder for the 'per' and 'uper'
+ backends did not correctly decode ENUMERATEDs with a
+ single value.</p>
+ <p>The generated encoder for the 'per' and 'uper'
+ backends generated an empty binary for a top-level type
+ that did not need to be encoded (such as an ENUMERATED
+ with a single value). The correct result should be a
+ binary containing a 0 byte.</p>
+ <p>
+ Own Id: OTP-10916 Aux Id: seq12270 </p>
+ </item>
+ </list>
+ </section>
+
+</section>
+
+<section><title>Asn1 2.0.1</title>
+
+ <section><title>Fixed Bugs and Malfunctions</title>
+ <list>
+ <item>
+ <p>
+ Fixed broken table constraints within a SET OF or
+ SEQUENCE OF for the BER backend.</p>
+ <p>
+ Own Id: OTP-10853 Aux Id: seq12245 </p>
+ </item>
+ </list>
+ </section>
+
+</section>
+
+<section><title>Asn1 2.0</title>
+
+ <section><title>Fixed Bugs and Malfunctions</title>
+ <list>
+ <item>
+ <p>
+ Encoding SEQUENCEs with multiple extension addition
+ groups with optional values could fail (depending both on
+ the specification and whether all values were provided).</p>
+ <p>
+ Own Id: OTP-10664</p>
+ </item>
+ </list>
+ </section>
+
+
+ <section><title>Improvements and New Features</title>
+ <list>
+ <item>
+ <p>The options for the ASN.1 compiler has been
+ drastically simplified. The backend is chosen by using
+ <c>ber</c>, <c>per</c>, or <c>uper</c>. The options
+ <c>optimize</c>, <c>nif</c>, and <c>driver</c> are no
+ longer needed. The old options will still work, but will
+ issue a warning.</p>
+ <p>Another change is that generated <c>encode/2</c>
+ function will always return a binary (some backends used
+ to return an iolist).</p>
+ <p>
+ *** POTENTIAL INCOMPATIBILITY ***</p>
+ <p>
+ Own Id: OTP-10410 Aux Id: kunagi-254 [165] </p>
+ </item>
+ <item>
+ <p>
+ The ASN.1 compiler generates faster decode functions for
+ PER and UPER. Some minor improvements have also been made
+ for PER/UPER encoding, and to the BER backend.</p>
+ <p>
+ Own Id: OTP-10519 Aux Id: kunagi-322 [233] </p>
+ </item>
+ <item>
+ <p>The ASN.1 compiler will now always include necessary
+ run-time functions in the generated Erlang modules
+ (except for <c>asn1rt_nif</c> which is still neeeded). If
+ the option '<c>inline</c>' is used the ASN.1 compiler
+ will generate a warning. But if
+ '<c>{inline,OutputFile}</c>' is use, the ASN.1 compiler
+ will refuse to compile the file. (Use a <c>.set.asn</c>
+ file if you need to remove the output file.)</p>
+ <p>The '<c>BIT STRING</c>' type will now be decoded as
+ Erlang bitstrings by default. Use the new
+ <c>legacy_bit_string</c> option to encode as lists of
+ ones and zeroes. (The <c>compact_bit_string</c> option
+ still works as before.)</p>
+ <p>Open types are now always returned as binaries (when
+ there is no information allowing them to be decoded).</p>
+ <p>
+ *** POTENTIAL INCOMPATIBILITY ***</p>
+ <p>
+ Own Id: OTP-10588 Aux Id: kunagi-341 [252] </p>
+ </item>
+ </list>
+ </section>
+
+</section>
+
<section><title>Asn1 1.8.1</title>
<section><title>Fixed Bugs and Malfunctions</title>
@@ -545,7 +699,7 @@
ENUMERATION type, the compilation will be terminated with an
error code.<br/>
Below follows an example on how to use the option from the command line with <c>erlc</c>:<br/>
- <c>erlc -bper_bin +optimize +driver +"{n2n,'CauseMisc'}" +"{n2n,'CausePcl'}" MyModyle.asn</c>
+ <c>erlc -bper+"{n2n,'CauseMisc'}" +"{n2n,'CausePcl'}" MyModyle.asn</c>
</p>
<p>
Own Id: OTP-8136 Aux Id: seq11347 </p>