GNU Libidn is a fully documented implementation of the Stringprep, Punycode and IDNA specifications. Libidn's purpose is to encode and decode internationalized domain name strings. There are native C, C# and Java libraries.
Noteworthy changes since the last release (from NEWS file): * Version 1.25 (released 2012-05-23) [stable] ** MSVC: Build fixes related to _GL_ATTRIBUTE_CONST and _GL_ATTRIBUTE_PURE. Reported by Bartosz Brachaczek <b.brachac...@gmail.com>. ** examples: Fix compiler warning about ignoring return value from fgets. ** tests: Ship with a valgrind suppressions file for the strlen issue. See tests/libidn.supp and bottom of HACKING for discussion. ** Update gnulib files and translations. ** API and ABI is backwards compatible with the previous version. The C library contains a generic Stringprep implementation. Profiles for Nameprep, iSCSI, SASL, XMPP and Kerberos V5 are included. Punycode and ASCII Compatible Encoding (ACE) via IDNA are supported. A mechanism to define Top-Level Domain (TLD) specific validation tables, and to compare strings against those tables, is included. Default tables for some TLDs are also included. The Stringprep API consists of two main functions, one for converting data from the system's native representation into UTF-8, and one function to perform the Stringprep processing. Adding a new Stringprep profile for your application within the API is straightforward. The Punycode API consists of one encoding function and one decoding function. The IDNA API consists of the ToASCII and ToUnicode functions, as well as an high-level interface for converting entire domain names to and from the ACE encoded form. The TLD API consists of one set of functions to extract the TLD name from a domain string, one set of functions to locate the proper TLD table to use based on the TLD name, and core functions to validate a string against a TLD table, and some utility wrappers to perform all the steps in one call. Libidn is developed for the GNU/Linux system, but runs on over 20 Unix platforms (including Solaris, IRIX, AIX, and Tru64) and Windows. The library is written in C and (parts of) the API is also accessible from C++, Emacs Lisp, Python and Java. A native Java and C# port is included. Also included is a command line tool, several self tests, code examples, and more. Improving Libidn is costly, but you can help! We are looking for organizations that find Libidn useful and wish to contribute back. You can contribute by reporting bugs, improve the software, or donate money or equipment. Commercial support contracts for Libidn are available, and they help finance continued maintenance. Simon Josefsson Datakonsult AB, a Stockholm based privately held company, is currently funding Libidn maintenance. We are always looking for interesting development projects. See http://josefsson.org/ for more details. The project page of the library is available at: https://www.gnu.org/software/libidn/ All manual formats are available from: https://www.gnu.org/software/libidn/manual/ Specifically, the following formats are available. The main manual: https://www.gnu.org/software/libidn/manual/libidn.html - HTML format https://www.gnu.org/software/libidn/manual/libidn.pdf - PDF format API Reference manual: https://www.gnu.org/software/libidn/reference/intro.html - GTK-DOC HTML https://www.gnu.org/software/libidn/reference/libidn.pdf - GTK-DOC PDF Doxygen documentation: https://www.gnu.org/software/libidn/doxygen/index.html - HTML format https://www.gnu.org/software/libidn/doxygen/libidn.pdf - PDF format JavaDoc output for the Java API: https://www.gnu.org/software/libidn/javadoc/ If you need help to use Libidn, or want to help others, you are invited to join our help-libidn mailing list, see: https://lists.gnu.org/mailman/listinfo/help-libidn Here are the compressed sources (3.2MB): ftp://ftp.gnu.org/gnu/libidn/libidn-1.25.tar.gz http://ftp.gnu.org/gnu/libidn/libidn-1.25.tar.gz Here are GPG detached signatures: ftp://ftp.gnu.org/gnu/libidn/libidn-1.25.tar.gz.sig http://ftp.gnu.org/gnu/libidn/libidn-1.25.tar.gz.sig Here are the SHA-1 and SHA-224 signatures: 92e64fd5a6428bda6ade2c3cde475b76455cd7dd libidn-1.25.tar.gz 99c62bb5fe91b3d04b6c8b1a1971c02ed9b383375f85644ad510e315 libidn-1.25.tar.gz We also provide Windows binaries built using MinGW-w64 with the build script win32/libidn4win.mk, for 32-bit and 64-bit x86 architecures: ftp://ftp.gnu.org/gnu/libidn/libidn-1.25-win32.zip ftp://ftp.gnu.org/gnu/libidn/libidn-1.25-win32.zip.sig ftp://ftp.gnu.org/gnu/libidn/libidn-1.25-win64.zip ftp://ftp.gnu.org/gnu/libidn/libidn-1.25-win64.zip.sig Here are the SHA-1 and SHA-224 signatures: c2a736922059891ee8f99de9298b9cecda395a0b libidn-1.25-win32.zip 10f61aff34f2fbe6c04b142def549cce4636db4e9df261397fc27f13 libidn-1.25-win32.zip a0201ce2305ac9e38d9849dab6eac075d5eaaca1 libidn-1.25-win64.zip 520d8e841c6f378422b2c667d4fdbf856d16b50b1b750522f74b44d3 libidn-1.25-win64.zip The software is cryptographically signed by the author using an OpenPGP key identified by the following information: pub 1280R/B565716F 2002-05-05 [expires: 2013-05-10] Key fingerprint = 0424 D4EE 81A0 E3D1 19C6 F835 EDA2 1E94 B565 716F uid Simon Josefsson <si...@josefsson.org> sub 1280R/4D5D40AE 2002-05-05 [expires: 2013-05-10] The key is available from: http://josefsson.org/key.txt dns:b565716f.josefsson.org?TYPE=CERT Code coverage, clang-analyzer output, and cyclomatic code complexity charts: https://www.gnu.org/software/libidn/coverage/ https://www.gnu.org/software/libidn/clang-analyzer/ https://www.gnu.org/software/libidn/cyclo/ Happy hacking, Simon
pgpGlqiedogDY.pgp
Description: PGP signature
_______________________________________________ GNU Announcement mailing list <info-gnu@gnu.org> https://lists.gnu.org/mailman/listinfo/info-gnu