1GNU Libtasn1 NEWS                                     -*- outline -*-
2
3* Noteworthy changes in release 4.18.0 (2021-11-09) [stable]
4- Improve GTK-DOC manual.  Closes: #35.
5- Improve --help and --version for tools with gnulib.  Closes: #37.
6- Update gnulib files and various maintenance fixes.
7
8* Noteworthy changes in release 4.17.0 (2021-05-13) [stable]
9- Print deprecation messages for deprecated macros, thanks to Tim Rühsen.
10- Fix some clang issues due to illegal pointers, thanks to Stefan Weil.
11- Restore handling of SIZE nodes, thanks to Dmitry Baryshkov.
12- Fix memory leak caught by oss-fuzz, thanks to Dmitry Baryshkov.
13- Gtk-doc fixes, thanks to Dmitry Baryshkov.
14- Fix bugs unveiled by Static Analysis, reported by Simo Sorce.
15- Update gnulib files and many build fixes.
16
17* Noteworthy changes in release 4.16.0 (released 2020-02-01) [stable]
18- asn1_decode_simple_ber: added support for constructed definite
19  octet strings. This allows this function decode the whole set of
20  BER encodings for OCTET STRINGs.
21- asn1_get_object_id_der: enhance the range of decoded OIDs (#25).
22  This also makes OID encoding and decoding more strict on invalid
23  input. This may break gnutls' test suite before 3.6.12 as it was
24  relying on decoding some invalid OIDs.
25- asn1_object_id_der: New function
26
27
28* Noteworthy changes in release 4.15.0 (released 2019-11-21) [stable]
29- The generated tree no longer contains ASN.1 built-in types even
30  if they are explicitly defined in the description. Previously
31  a warning was printed when these types were seen, now they are
32  ignored.
33- Several fixes in ASN.1 definition parser, preventing several
34  crashes and leaks in the tools due to improper ASN.1.
35- Switched to semantic versioning.
36
37
38* Noteworthy changes in release 4.14 (released 2019-07-21) [stable]
39- New #defines for version checking: ASN1_VERSION_MAJOR, ASN1_VERSION_MINOR,
40  ASN1_VERSION_PATCH, ASN1_VERSION_NUMBER. The next release will switch
41  to semantic version semantics.
42- Simplify ordering of SET OF elements by using qsort().
43- Marked explicitly const uses of asn1_node with the introduction
44  of the (compatible) asn1_node_const type.
45- Limit recursion in _asn1_expand_object_id() to detect infinite
46  recursion in incorrect .asn files (#4).
47- asn1_array2tree(): fixed thread safety issues.
48- Several fixes in gtk-doc generation.
49
50
51* Noteworthy changes in release 4.13 (released 2018-01-16) [stable]
52- On indefinite string decoding, set a maximum level of allowed recursions
53  (3) to protect the BER decoder from a stack exhaustion.
54
55* Noteworthy changes in release 4.12 (released 2017-05-29) [stable]
56- Corrected so-name version
57
58* Noteworthy changes in release 4.11 (released 2017-05-27) [stable]
59- Introduced the ASN1_TIME_ENCODING_ERROR error code to indicate
60  an invalid encoding in the DER time fields.
61- Introduced flag ASN1_DECODE_FLAG_ALLOW_INCORRECT_TIME. This flag
62  allows decoding errors in time fields even when in strict DER mode.
63  That is introduced in order to allow toleration of invalid times in
64  X.509 certificates (which are common) even though strict DER adherence
65  is enforced in other fields.
66- Added safety check in asn1_find_node(). That prevents a crash
67  when a very long variable name is provided by the developer.
68  Note that this to be exploited requires controlling the ASN.1
69  definitions used by the developer, i.e., the 'name' parameter of
70  asn1_write_value() or asn1_read_value(). The library is
71  not designed to protect against malicious manipulation of the
72  developer assigned variable names. Reported by Jakub Jirasek.
73
74* Noteworthy changes in release 4.10 (released 2017-01-16) [stable]
75- Updated gnulib
76- Removed -Werror from default compiler flags
77- Fixed undefined behavior when negating integers in _asn1_ltostr().
78  Issue found by oss-fuzz project (via gnutls):
79  https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=388
80- Pass the correct length to _asn1_get_indefinite_length_string in
81  asn1_get_length_ber. This addresses reading 1-byte past the end
82  of data. Issue found by oss-fuzz project (via gnutls):
83  https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=330
84  https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=331
85
86* Noteworthy changes in release 4.9 (released 2016-07-25) [stable]
87- Fixes to OID encoding of OIDs which have elements which exceed 2^32
88
89* Noteworthy changes in release 4.8 (released 2016-04-11) [stable]
90- Fixes to avoid reliance on C undefined behavior.
91- Fixes to avoid an infinite recursion when decoding without
92  the ASN1_DECODE_FLAG_STRICT_DER flag. Reported by Pascal Cuoq.
93- Combined all the BER octet string decoding functions to a single
94  one based on asn1_decode_simple_ber().
95
96* Noteworthy changes in release 4.7 (released 2015-09-14) [stable]
97- Fixed regression introduced in the decoding of multi-byte tags
98  fix.
99
100* Noteworthy changes in release 4.6 (released 2015-09-05) [stable]
101- Allow decoding OCTET STRINGs with multi-byte tags.
102- API and ABI changes since last version:
103  asn1_get_object_id_der: New function
104
105* Noteworthy changes in release 4.5 (released 2015-04-29) [stable]
106- Corrected an invalid memory access in octet string decoding.
107  Reported by Hanno Böck.
108
109* Noteworthy changes in release 4.4 (released 2015-03-29) [stable]
110- Corrected a two-byte stack overflow in asn1_der_decoding. Reported
111  by Hanno Böck.
112
113* Noteworthy changes in release 4.3 (released 2015-03-09) [stable]
114- Added asn1_decode_simple_ber()
115
116* Noteworthy changes in release 4.2 (released 2014-09-15) [stable]
117- Added sanity checks in the decoding of time when
118  ASN1_DECODE_FLAG_STRICT_DER is used.
119- Fixes in the decoding of OCTET STRING when close to the end
120  of the structure.
121
122* Noteworthy changes in release 4.1 (released 2014-08-23) [stable]
123- Corrected indefinite tag check in ANY constructions. That allows
124  the decoding of BER-encoded structures that contain indefinite
125  encoding within an ANY element.
126- Added DER decoding flag ASN1_DECODE_FLAG_STRICT_DER. Over the
127  years BER functionality was added to the decoder and this flag
128  provides the way to disable it.
129- API and ABI changes since last version:
130  ASN1_DECODE_FLAG_STRICT_DER: New definition
131
132* Noteworthy changes in release 4.0 (released 2014-06-26) [stable]
133- Optimized asn1_der_decoding_startEnd(). It no longer requires the
134  additional decoding step.
135- asn1_read_value() understands the ?CURRENT keyword, which can be used
136  to indicate the current element of a sequence, when the provided node
137  is a sequence element.
138- Several optimizations in DER decoding of structures with sequences
139  containing many elements.
140- asn1_der_decoding2() is introduced and allows flags to be passed on
141  the decoding process. Currently only ASN1_DECODE_FLAG_ALLOW_PADDING is
142  defined and that allows decoding DER structures that contain arbitrary
143  data past their end. Contributed by Karel Slany.
144- API and ABI changes since last version:
145  ASN1_DECODE_FLAG_ALLOW_PADDING: New definition
146  asn1_dup_node: New function
147  asn1_der_decoding2: New function
148  asn1_der_decoding_element: It is now an alias to asn1_der_decoding
149
150* Noteworthy changes in release 3.6 (released 2014-05-25) [stable]
151- Corrected an off-by-one error in ASN.1 DER tag decoding.
152- Several improvements and new safety checks on DER decoding;
153  issues found using Codenomicon TLS test suite.
154- Marked asn1_der_decoding_element() as deprecated. Use
155  asn1_der_decoding() instead.
156
157* Noteworthy changes in release 3.5 (released 2014-05-01) [stable]
158- Correctly handle decoding of recursive CHOICE options.
159- Allow deleting elements of SET OF. Patch by Jean-Louis Thekekara.
160- Several small bug fixes found by coverity.
161- Code improvements contributed by Kurt Roeckx.
162
163* Noteworthy changes in release 3.4 (released 2013-11-25) [stable]
164- Added asn1_delete_structure2() which allows zeroizing the contents
165  of all values in the structure prior to deinitialization.
166- The parser accepts negative numbers in an INTEGER range (but
167  still does no enforce them).
168
169* Noteworthy changes in release 3.3 (released 2013-03-23) [stable]
170- More precise overflow checks using gnulib's intprops module.
171- Updates to compile in Android systems.
172
173* Noteworthy changes in release 3.2 (released 2012-11-30) [stable]
174- Corrected buffer overflow in the error reporting of the parser (reported
175  by Andreas Metzler).
176
177* Noteworthy changes in release 3.1 (released 2012-11-24) [stable]
178- Completed rename of types:
179  ASN1_ARRAY_TYPE -> asn1_static_node (was asn1_static_node_t)
180- Added new types: VisibleString, NumericString, IA5String, TeletexString,
181  PrintableString, UniversalString, BMPString, UTF8String. When re-defined
182  a warning is being print instead of failing.
183- Parser outputs more detailed syntax error messages.
184- Added asn1_decode_simple_der() and asn1_encode_simple_der().
185- Added asn1_read_value_type() to return value and type.
186- Introduced ASN1_ETYPE_UTC_TIME and ASN1_ETYPE_GENERALIZED_TIME
187
188* Noteworthy changes in release 3.0 (2012-10-28) [stable]
189- Added tool in tests/ to benchmark X.509 structure decoding.
190- Added asn1_read_node_value() to obtain a node's value.
191- Optimizations in internal tree allocation.
192- Optimizations in tree search.
193- libtasn1.h no longer exports internal structures.
194- Types were renamed for consistency:
195  ASN1_DATA_NODE -> asn1_data_node_st
196  ASN1_ARRAY_TYPE -> asn1_static_node
197  ASN1_TYPE -> asn1_node
198  ASN1_TYPE_EMPTY -> NULL
199  static_struct_asn -> asn1_static_node_st
200  node_asn_struct -> asn1_node_st
201  node_asn -> asn1_node_st
202  (the old types are still available as definitions)
203
204* Noteworthy changes in release 2.13 (2012-05-31) [stable]
205- Updated fix for DER decoding issue to not depend on specific compilers.
206- Updated DER decoding check to apply to short form integers as well.
207
208* Noteworthy changes in release 2.12 (2012-03-19) [stable]
209- Cleanup license headers.
210- build: Update gnulib files.
211- Corrected DER decoding issue (reported by Matthew Hall).
212  Added self check to detect the problem, see tests/Test_overflow.c.
213  This problem can lead to at least remotely triggered crashes, see
214  further analysis on the libtasn1 mailing list.
215
216* Noteworthy changes in release 2.11 (2011-11-25) [stable]
217- qa: Now builds without compiler warnings with Solaris CC.
218- qa: Added clang analysis.  Fixed cyclomatic complexity output.
219- tests: Added self-test of bit string functions.
220- build: Added windows/libtasn14win.mk rules to produce Windows binaries.
221- build: Don't hard code path to perl in doc/gdoc.
222- Various minor fixes.
223
224* Noteworthy changes in release 2.10 (2011-10-25) [stable]
225- lib: Small optimization, possibly working around gcc/valgrind issue.
226- build: Update gnulib files.
227- asn1Coding: actually implement the -c parameter.
228- asn1Decoding: the -c parameter serves no purpose, remove it.
229- doc: Add examples to asn1Coding and asn1Decoding description.
230
231* Noteworthy changes in release 2.9 (2010-12-06) [stable]
232- tests: Link to gnulib to avoid build error related to 'rpl_ftello' on Solaris.
233  Reported by Dagobert Michelsen.
234- doc: Fix bug reporting address to point at help-libtasn1@gnu.org.
235- doc: Fix Returns: documentation in Texinfo.  Reported by Jeffrey Walton.
236- build: Update gnulib files.
237
238* Noteworthy changes in release 2.8 (2010-09-25) [stable]
239- Update gnulib files.
240- Use Libtool 2.2.10 to ease MinGW64 builds.
241
242* Noteworthy changes in release 2.7 (2010-05-20) [stable]
243- Doc: Build a PDF manual using GTK-DOC.
244- Doc: Fix of asn1_check_version, documentation was missing from last release.
245- Build: Avoid warnings about ignored visibility attributes on Windows.
246
247* Noteworthy changes in release 2.6 (2010-04-20) [stable]
248- Fix build failure on platforms without support for GNU LD version scripts.
249- libtasn1: Simplified implementation of asn1_check_version.
250- tests: Improved self-checks.
251- Update gnulib files, fix many syntax-check nits, indent code,
252  fix license templates.
253
254* Noteworthy changes in release 2.5 (2010-03-15) [stable]
255- doc: Improve GTK-DOC comments.
256- misc: Updated gnulib files.
257
258* Noteworthy changes in release 2.4 (2010-01-18) [stable]
259- Doc fixes.
260- Updated gnulib files.
261- Clean up copyright notices.
262
263* Noteworthy changes in release 2.3 (2009-07-29) [stable]
264- Libtasn1 is now an official GNU project.
265- Solve build problem on Tru64 related to TRUE/FALSE.
266- More careful decoding of OIDs.
267- Fixed warning in ASN1.y.
268- Use "Software libraries" info dircategory.
269- Drop GPL/LGPL copies from the manual (not needed there).
270- New configure parameters to set packaging specific information.
271  The parameters are --with-packager, --with-packager-version, and
272  --with-packager-bug-reports.  See
273  <http://article.gmane.org/gmane.comp.lib.gnulib.bugs/17791> for more
274  details.
275
276* Noteworthy changes in release 2.2 (2009-05-20) [stable]
277- Change how the ASN1_API decorator is used in libtasn1.h, for GTK-DOC.
278- Changed license of libtasn1.pc from GPLv3+ to LGPLv2.1+.
279  Reported by Jeff Cai <Jeff.Cai@Sun.COM>.
280- Building with many warning flags now requires --enable-gcc-warnings.
281- Some warnings fixed.
282
283* Noteworthy changes in release 2.1 (2009-04-17) [stable]
284- Fix compilation failure on platforms that can't generate empty archives,
285  e.g., Mac OS X.  Reported by David Reiser <dbreiser@gmail.com>.
286
287* Noteworthy changes in release 2.0 (2009-04-13) [stable]
288- Optimized tree generation.
289- ASN1 parser code re-generated using Bison 2.4.1.
290- Build with more warning flags.  Many compiler warnings fixed.
291- Compiled with -fvisibility=hidden by default if supported.
292  See http://gcc.gnu.org/wiki/Visibility
293- The libtasn1-config tool has been removed.
294  For application developers, please stop using libtasn1-config for
295  finding libtasn1, use proper autoconf checks or pkg-config instead.
296  For users that need a libtasn1 that provides a libtasn1-config
297  script (for use with older applications), use libtasn1 v1.x instead.
298  Version 1.x is still supported.
299
300* Noteworthy changes in release 1.8 (2009-01-16) [stable]
301- Fix crlf self-test under Mingw+Wine.
302- Fix build problems on platforms that lack stdint.h.
303  Reported by Dagobert Michelsen <dam@opencsw.org> in
304  <http://thread.gmane.org/gmane.comp.encryption.gpg.gnutls.devel/3377>.
305
306* Noteworthy changes in release 1.7 (2008-11-17) [stable]
307- Add libtasn1-config for compatibility.
308  Please stop use it as it will disappear in v2.0!
309  Use standard AC_CHECK_FUNCS autoconf tests or pkg-config instead.
310- Read PKCS#12 blob as binary file, fixes self-tests under Mingw.
311- Fix use of __attribute__ ((deprecated)) to work on non-GCC (#106548).
312
313* Noteworthy changes in release 1.6 (2008-11-10) [stable]
314- Fixed namespace violation for MAX_NAME_SIZE and MAX_ERROR_DESCRIPTION_SIZE.
315  The new names are ASN1_MAX_NAME_SIZE and ASN1_MAX_ERROR_DESCRIPTION_SIZE.
316- Fixed namespace violation for libtasn1_perror and libtasn1_strerror.
317  The new names are asn1_perror and asn1_strerror.
318- Fix namespace violation for LIBASN1_VERSION.
319  The new name is ASN1_VERSION.
320- Decoder can now decode BER encoded octet strings.
321- doc: Change license on the manual to GFDLv1.3+.
322- doc: Sync gdoc script with GnuTLS, changes license on man-pages to GAP.
323- doc: Improve gtk-doc manual.
324- Assumes system has strdup and string.h.
325- Remove libtasn1-config and libtasn1.m4,
326  use standard AC_CHECK_FUNCS autoconf tests or pkg-config instead.
327- Change detection of when to use a linker version script,
328  use --enable-ld-version-script or --disable-ld-version-script to
329  override auto-detection logic.
330- API and ABI changes since last version:
331  asn1_get_length_ber: New function.
332  ASN1_VERSION: New symbol, replaces LIBTASN1_VERSION.
333  asn1_strerror: New function, replaces libtasn1_strerror.
334  asn1_perror: New function, replaces libtasn1_perror.
335  libtasn1_strerror: Marked as deprecated.
336  libtasn1_perror: Marked as deprecated.
337  LIBTASN1_VERSION: Deprecated.
338
339* Noteworthy changes in release 1.5 (2008-07-29) [stable]
340- Update gnulib files.
341- Fix memory leaks, from Christian Grothoff <christian@grothoff.org>.
342
343* Noteworthy changes in release 1.4 (2008-04-21) [stable]
344- Update gnulib files.
345- Replace uses of alloca with malloc.
346
347* Noteworthy changes in release 1.3 (2008-02-01) [stable]
348- Handle 'INTEGER { ... } (a..b)' regression.
349  Revert parts of earlier fix.  asn1Parser can now again parse src/pkix.asn1.
350  The ASN1.c file was generated using Bison 2.3.
351- Move examples from src/ to new directory examples/.
352- Duplicate copy of divergated pkix.asn removed.
353- Merge unnecessary lib/defines.h into lib/int.h.
354- Configure no longer tries to use gcc -pipe.
355- Update gnulib files.
356- Fix mem leak in self-test.
357
358* Noteworthy changes in release 1.2 (2007-12-10) [stable]
359- Update gnulib files.
360
361* Noteworthy changes in release 1.1 (2007-08-31) [stable]
362- Fix bug that made asn1_check_version believe that 1.0 is older than 0.3.10.
363
364* Noteworthy changes in release 1.0 (2007-08-31) [stable]
365- The self-tests, command line tools and build infrastructure have
366  been re-licensed from GPLv2 to GPLv3.
367- Doc fixes.
368- Update gnulib files.
369
370* Noteworthy changes in release 0.3.10 (2007-05-25)
371- Update gnulib files.
372
373* Noteworthy changes in release 0.3.9 (2007-03-02)
374- In generated code, config.h is pulled in if HAVE_CONFIG_H.
375- Development changes: changed from CVS to GIT as an experiment.
376  I push my changes to <http://repo.or.cz/w/libtasn1.git>.
377- Autoconf 2.61 and automake 1.10 is required.
378
379* Noteworthy changes in release 0.3.8 (2006-11-16)
380- Fix reading of binary files in asn1Decoding, for Windows.
381
382* Noteworthy changes in release 0.3.7 (2006-10-19)
383- When asn1_der_coding encoded a TYPE_NULL and the output buffer is
384  NULL, it would not increment the counter properly, so the size of
385  the required buffer would be off by one.  Fixed.  Reported by
386  Stephen Wrobleski <steve@localtoast.org>.
387- Fix configure to respect user-definable flags.  Reported by "Diego
388  'Flameeyes' Pettenò" <flameeyes@gentoo.org>.
389- The --help and --version outputs from the tools have been improved.
390
391* Noteworthy changes in release 0.3.6 (2006-08-13)
392- Fix man pages to use \- instead of - for negative signs (as in "-1").
393- Add -I's when building in src/, so that unistd.h etc is found on
394  systems that doesn't have them.
395- Valgrind isn't used for cross-compilation by default, and there is
396  also --disable-valgrind-tests to unconditionally disable it.
397- Valgrind is invoked without parameters, put things you like into
398  ~/.valgrindrc instead.
399
400* Noteworthy changes in release 0.3.5 (2006-06-27)
401- Fix asn1_octet_der to handle writes of zero-length buffers, before
402  it did not write the ASN.1 length for a zero-length buffer.  This caused
403  ASN.1 encodings to be incorrect on 64-bit platforms.
404- Add self test that attempt to trigger the above bug.
405- Fix test of -Wno-pointer-sign.
406- Improve cross-compilation to MinGW by using AC_LIBTOOL_WIN32_DLL.
407
408* Noteworthy changes in release 0.3.4 (2006-05-10)
409- Really fix encodings.
410- Add new self test, tests/Test_encoding.c.
411- Self tests are ran under valgrind, if it is available.
412- We test for the -Wno-pointer-sign parameter before using it.
413
414* Noteworthy changes in release 0.3.3 (2006-05-07)
415- Add some 'const' to prototypes.
416- Remove some 'unsigned' keywords.
417- Corrected asn1_der_coding() bug introduced when it became reentrant.
418  Now it produces correct encodings.
419
420* Noteworthy changes in release 0.3.2
421- Corrected bug in asn1_der_coding() which overwrited some
422  data in the original structure.
423- The asn1Parser, asn1Coding and asn1Decoding programs are now installed.
424
425* Noteworthy changes in release 0.3.1
426- Support constant size bit strings, as in 'BIT STRING (SIZE(42))'.
427  Reported by Cyril Holweck <cyril.holweck@q-free.com>.
428- Add two more APIs required by GnuTLS.
429- New public APIs:
430  asn1_find_node function
431  asn1_copy_node
432
433* Noteworthy changes in release 0.3.0
434- Export DER utility functions, mostly so that GnuTLS can avoid using
435  libtasn1 internals.
436- The _asn1* symbols are not exported in the shared library file (when
437  using GNU ld).
438- The library can now be built using Visual Studio, and the project
439  files are included in windows/.
440- New public APIs:
441  asn1_get_tag_der
442  asn1_octet_der
443  asn1_get_octet_der
444  asn1_bit_der
445  asn1_get_bit_der
446  asn1_get_length_der
447  asn1_length_der
448
449* Noteworthy changes in release 0.2.18
450- Fix out-of-bounds access in DER decoding, reported by Evgeny Legerov.
451- Add 'const' keyword to some prototypes, thanks to Frediano ZIGLIO.
452- Fixed typo in src/Makefile.am to make it build with objdir != srcdir,
453  thanks to Bernard Leak.
454- Update of gnulib files.
455- Typo fixes in comments, e.g. finish libasn1 to libtasn1 renaming,
456  use LGPL boiler plate on some files in lib/.
457
458* Noteworthy changes in release 0.2.17
459- Fixed typo to make it build.
460
461* Noteworthy changes in release 0.2.16
462- * Noteworthy changes in release script added again.
463
464* Noteworthy changes in release 0.2.15
465- Gnulib is used to implement memmove if your system does not have it.
466- Simplified assert/error handling slightly.
467
468* Noteworthy changes in release 0.2.14
469- Some build fixes.
470- Pkg-config script 'libtasn1.pc' added.
471- Postal address to FSF in license updated.
472
473* Noteworthy changes in release 0.2.13
474- * Noteworthy changes in release number in libtasn1.h updated properly.
475
476* Noteworthy changes in release 0.2.12
477- Manual converted to Texinfo format.
478- Manual in GTK-DOC and DevHelp formats added.
479- Man pages for all functions added.
480- Various internal cleanups.
481
482* Noteworthy changes in release 0.2.11
483- Added the self test with "make check" target
484- Added management of ANY type with null length
485- Corrected some writes to invalid data.
486
487* Noteworthy changes in release 0.2.10
488- Added scripts to assist in libtasn1 version detection
489  from configure scripts.
490- Corrected a DER decoding bug which was reported
491  by Max Vozeler <max@hinterhof.net>.
492
493* Noteworthy changes in release 0.2.9
494- Accept negative numbers as range in INTEGER declarations
495
496* Noteworthy changes in release 0.2.8
497- Add asn1_delete_element function
498
499* Noteworthy changes in release 0.2.7
500- Added versioned symbols.
501
502* Noteworthy changes in release 0.2.6
503- ASN.1 parser accepts these kinds of integer definitions:
504  "INTEGER (5 | 10)" and
505  "INTEGER (5)"
506- Comments start at "--" and finish at the "end of line" or
507  with another "--".
508
509* Noteworthy changes in release 0.2.5
510- Bug fix in ordering procedure for SET OF and SEQUENCE OF
511  types coding.
512- Manage structured format (BER encoding) in
513  asn1_der_decoding, asn1_decoding_element and
514  asn1_der_decoding_startEnd for OCTET STRING type.
515- Manage SEQUENCE and SET empty structure.
516- Manage "indefinite length method" in asn1_der_decoding,
517  asn1_decoding_element and asn1_der_decoding_startEnd
518  for the following types:
519  SEQUENCE, SEQUENCE OF, SET, and SET OF.
520- Bug fix in asn1_read_value with NULL parameter in case
521  of BIT STRING
522
523* Noteworthy changes in release 0.2.4
524- Bug fix in asn1_der_coding with NULL parameter
525- Manage DEFAULT option with OBJECT IDENTIFIER
526
527* Noteworthy changes in release 0.2.3
528- Chenge asn1_find_structure_from_oid prototype
529- Chenge asn1_find_structure_from_oid prototype
530- Add ASN1_MEM_ALLOC_ERROR return value
531
532* Noteworthy changes in release 0.2.2
533- Add vector length check in asn1_der_coding function
534- Add vector length check in asn1_der_coding function
535- Add vector length check in asn1_read_value function
536- Add asn1_check_version function
537
538* Noteworthy changes in release 0.2.1
539- Add asn1_find_structure_from_oid function
540- Add asn1_read_tag function
541
542* Noteworthy changes in release 0.2.0
543- Support for other platforms
544- Change asn1_create_element function interface (dest_name not needed any more)
545- Change OBJECT IDENTIFIER syntax: numbers must be separated by dot in
546  asn1_write_element and asn1_read_element functions (e.g. "1.2.3.4")
547
548* Noteworthy changes in release 0.1.2
549- Added GeneralString type
550- Fixed a DER encoding bug when nested tags are used
551
552* Noteworthy changes in release 0.1.1
553- Renamed to libtasn1
554- Functions which return a string for error description
555  now accept a NULL argument.
556- License is now GNU Lesser GPL
557
558* Noteworthy changes in release 0.1.0
559- Initial release
560
561----------------------------------------------------------------------
562Copyright (C) 2002-2021 Free Software Foundation, Inc.
563Copying and distribution of this file, with or without modification,
564are permitted in any medium without royalty provided the copyright
565notice and this notice are preserved.
566