ASN1C 7.9.2 was released on October 9, 2025. Changes in this release include the following:
- Fixed a problem that could cause a "Bad input parameters to function" error when activating a license key on macOS systems (A1C-1796).
- Fixed a bug with the C++ libraries in the 64-bit Linux distributions for systems with older versions of glibc that could cause an undefined reference to __cxa_throw_bad_array_new_length during linking (A1C-1778).
- Fixed a bug that could cause an exception saying the System.Windows.Forms DLL could not be found when using the C# run-time (A1C-1775).
- Fixed a bug in resolving a parameter in a parameterized type when the actual parameter was defined in a different module than the parameterized type definition. This was discovered when compiling the updated PKIX CMP 2023 module. (A1C-1755)
- Fixed a problem that could cause ASN1C to get an exception while generating Java or C# code for JSON when the ASN.1 included the CONTAINING clause (A1C-1770).
- Fixed a problem with the ASN1C GUI where a license key pasted into the key window in dark mode would be difficult to see (A1C-1730).
- Fixed a problem with C# run-time source distributions where the provided makefile would create asn1rt.dll instead of asn1rtcs.dll.
- Fixed some problems with the Visual Studio projects included in C# run-time source distributions.
- Fixed a C++ generation problem where a decode operation attempted to null a non-pointer character array if the "-static" option was specified (A1C-1762).
ASN1C 7.9.1 was released on June 25, 2025. Changes in this release include the following:
- Fix for C++ generation where rtxEnum.h was erroneously included inside a namespace declaration (A1C-1658).
- Fixed an issue where uncompilable C or C++ code might be generated for an element where the type was a doubly constrained OCTET STRING (A1C-1656).
- Removed unnecessary references to PER functionality from the C and C++ employee_loop avn samples. The readers in these samples don't do any PER operations.
- Fixed a bug in generated Go unaligned PER code in decoding an OCTET STRING with a contents constraint (i.e CONTAINING clause) (A1C-1695).
- Fixed a bug that could cause unexecutable Python code to be generated if -trace wasn't specified on the asn1c command line.
- Fixed a bug in C/C++ aligned and unaligned PER code generation in which a constraint check was not being generated on the number of bits in small BIT STRINGs with size constraints (A1C-1715).
ASN1C 7.9.0 was released on March 4, 2025. New features in this release include the following:
- Support has been added for aligned PER (PER), unaligned PER (UPER), and OER encoding and decoding in Python.
- Support has been added for .NET v7 through .NET v9 as well as .NET Standard v2.
- The number of source files generated when -depends is used has been reduced. Before, source files for some unused import files were added. These have now been removed.
- A new asn1names print format (-prtfmt asn1names) is now supported, in addition to bractext and details. The new format will use ASN.1 names in generated print output where possible rather than program language names.
- Use of the -strict qualifier will now cause constraint violations seen during C/C++ decoding to be treated as fatal errors.
- The -hexstr option has been added to generated reader programs to allow a hexadecimal string to be passed into a reader for decoding.
- Dark mode added to the ASN1C GUI.
- For Go language code generation, if one binary encoding rule (e.g. -ber, -per) and one text encoding rule (either -xml or -json) are selected, the generated main.go file writer first decodes a text representation of the message using the text encoding rule and will then encode a binary representation of the message using the binary encoding rule. The reader will do the opposite: decode the binary message and encode into the textual format.
The following defects were fixed in this release:
- Fixed a bug in golang JSON BIT STRING unmarshalling code in which a zero length string would cause an error.