(libidn.info.gz) Introduction
Info Catalog
(libidn.info.gz) Top
(libidn.info.gz) Top
(libidn.info.gz) Preparation
1 Introduction
**************
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.
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.
The library is used by, e.g., GNU SASL and Shishi to process user
names and passwords. Libidn can be built into GNU Libc to enable a new
system-wide getaddrinfo flag for IDN processing.
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.
Menu
* Getting Started
* Features
* Library Overview
* Supported Platforms
* Getting help
* Commercial Support
* Downloading and Installing
* Bug Reports
* Contributing
Info Catalog
(libidn.info.gz) Top
(libidn.info.gz) Top
(libidn.info.gz) Preparation
automatically generated by
info2html