Libtasn1 is the ASN.1 library used by GnuTLS, GNU Shishi and some other packages. It was written by Fabio Fiorina, and has been shipped as part of GnuTLS for some time but is now a proper GNU package.
The goal of this implementation is to be highly portable, and only require an ANSI C89 platform.
For status information on what's happening with the package, see the NEWS file from live sources.
Libtasn1 is licensed under the GNU Lesser General Public License version 2.1 or later.
Libtasn1 can be found on the main GNU ftp server: http://ftp.gnu.org/gnu/libtasn1/ (via http) and ftp://ftp.gnu.org/gnu/libtasn1/ (via ftp). It can also be found on one of the mirrors of ftp.gnu.org; please use a mirror if possible.
All official releases are signed with an OpenPGP key with fingerprint 0xB565716F.
The Libtasn1 manual is available online. Quick links to the most popular formats:
Everything related to Libtasn1 is discussed on the help-libtasn1 mailing list.
Announcements about Libtasn1 and most other GNU software are made on <email@example.com>.
The goal is to provide a library of high quality. We use autoconf, automake, and libtool to achieve high portability and gnulib to support a platform independent coding style. The self-tests are run under valgrind to catch serious memory problems. Each API function is documented in the source code using GTK-DOC.
To help identify which functions in the library source that may be improved from a code readability purpose, we publish a Libtasn1 Cyclomatic Complexity Report.
To be useful, self-tests needs to excercise as much of the library code as possible. To help identify parts that needs additional self-tests, we use GCC/LCOV to produce a Code Coverage Report.
You can also read the clang static analyzer output.
$ git clone git://git.savannah.gnu.org/libtasn1.git
The online git interface is available.
Libtasn1 is currently being maintained by Simon Josefsson and Nikos Mavrogiannopoulos. Please use the mailing lists above for contact.
Please remember that development of Libtasn1, and GNU in general, is a volunteer effort, and you also can contribute. For information, please read How to help GNU.