GNU Libidn

This manual is last updated 1 November 2003 for version 0.3.4 of GNU Libidn.

Copyright © 2002, 2003 Simon Josefsson.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with the Invariant Sections including “Commercial Support”, with the Front-Cover Texts being “A GNU Manual,” and with the Back-Cover Texts as in (a) below. A copy of the license is included in the section entitled “GNU Free Documentation License.”

(a) The FSF's Back-Cover Text is: “You have freedom to copy and modify this GNU Manual, like GNU software. Copies published by the Free Software Foundation raise funds for GNU development.”


Table of Contents
1. GNU Libidn
2. Introduction
2.1. Getting Started
2.2. Features
2.3. Supported Platforms
2.4. Commercial Support
2.5. Downloading and Installing
2.6. Bug Reports
2.7. Contributing
3. Preparation
3.1. Header
3.2. Initialization
3.3. Version Check
3.4. Building the source
3.5. Autoconf tests
3.5.1. Autoconf test via pkg-config
3.5.2. Standalone Autoconf test
4. Utility Functions
4.1. Header file stringprep.h
4.2. Unicode Encoding Transformation
4.3. Unicode Normalization
4.4. Character Set Conversion
5. Stringprep Functions
5.1. Header file stringprep.h
5.2. Defining A Stringprep Profile
5.3. Return Codes
5.4. Control Flags
5.5. Core Functions
5.6. Stringprep Profile Macros
6. Punycode Functions
6.1. Header file punycode.h
6.2. Return Codes
6.3. Unicode Code Point Type
6.4. Core Functions
7. IDNA Functions
7.1. Header file idna.h
7.2. Return Codes
7.3. Control Flags
7.4. Prefix String
7.5. Core Functions
7.6. Simplified ToASCII Interface
7.7. Simplified ToUnicode Interface
8. Examples
8.1. Example 1
8.2. Example 2
8.3. Example 3
8.4. Example 4
9. Invoking idn
10. Name
11. Description
12. Options
13. Environment Variables
14. Emacs API
14.1. Punycode Emacs API
14.2. IDNA Emacs API
15. Acknowledgements
Concept Index
Function and Variable Index
A. Copying The Library
A.1. Preamble
A.2. How to Apply These Terms to Your New Libraries
B. Copying This Manual
B.1. GNU Free Documentation License
B.2. How to use this License for your documents