[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Libidn 1.20 released

From: Simon Josefsson
Subject: Libidn 1.20 released
Date: Tue, 01 Mar 2011 16:04:26 +0100
User-agent: Gnus/5.110014 (No Gnus v0.14) Emacs/23.2 (gnu/linux)

GNU Libidn is a fully documented implementation of the Stringprep,
Punycode and IDNA specifications.  Libidn's purpose is to encode and
decode internationalized domain names.  The native C, C# and Java
libraries are available under the GNU Lesser General Public License
version 2.1 or later.

Noteworthy changes since the last release (from NEWS file):

* Version 1.20 (released 2011-03-01) [stable]

** libidn: Fix bug in ToUnicode to compare 'xn--' case-insensitively.
The problem is typically noticed when an upper ACE case string is
converted to Unicode.  Before, this would return the input rather than
converting the ACE form to Unicode.  Reported by Stepan Golosunov
<address@hidden> in <>.

** tests: Added self-test tst_idna3 to catch any regression of problem above.

** idn: Only print copyright and license blurb when used interactively.
Reported by "Andrew O. Shadoura" <address@hidden> and Roman Mamedov
<address@hidden> in <> and
<> respectively.

** Update gnulib files and translations.

** API and ABI is backwards compatible with the previous version.

The 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.

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

Also included is a command line tool, several self tests, code
examples, and more, all licensed under the GNU General Public License
version 3.0 or later.

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 for more details.

The project page of the library is available at:

All manual formats are available from:

Specifically, the following formats are available.

The main manual: - HTML format - PDF format

API Reference manual: - GTK-DOC HTML - GTK-DOC PDF

Doxygen documentation: - HTML format - PDF format

JavaDoc output for the Java API:

If you need help to use Libidn, or want to help others, you are
invited to join our help-libidn mailing list, see:

Here are the compressed sources (3.2MB):

Here are GPG detached signatures:

Here are the build reports for various platforms:

Daily builds of the package are available from:

For code coverage and cyclomatic code complexity charts:

The software is cryptographically signed by the author using an
OpenPGP key identified by the following information:

pub   1280R/B565716F 2002-05-05 [expires: 2011-03-30]
      Key fingerprint = 0424 D4EE 81A0 E3D1 19C6  F835 EDA2 1E94 B565 716F
uid                  Simon Josefsson <address@hidden>
uid                  Simon Josefsson <address@hidden>
sub   1280R/4D5D40AE 2002-05-05 [expires: 2011-03-30]

The key is available from:

Here are the SHA-1 and SHA-224 signatures:

2518486487c275b9d6f133b4688318b951af1580  libidn-1.20.tar.gz

cfa4e765869da22ffa238b3442c992fc779a42d1539fb94896539131  libidn-1.20.tar.gz

Happy hacking,

Attachment: pgpXqw4oss2c_.pgp
Description: PGP signature

reply via email to

[Prev in Thread] Current Thread [Next in Thread]