GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  NET::IDN::OVERVIEW (3)

.ds Aq ’

NAME

Net::IDN::Overwiew - Internationalized Domain Names for Applications (IDNA)

CONTENTS

DESCRIPTION

The Net::IDN::* modules provide a framework for the handling of Internationalized Domain Names for Applications (IDNA) in perl programmes.

This document provides an overview of the available modules in order to allow you to choose the best module for the task at hand.

    AVAILABLE MODULES

HIGH-LEVEL (USE THIS)
Net::IDN::Encode provides a high-level interface for converting domain names (and for convenience, email addresses).

Use this module if you just want to convert domain names and don’t care about how this is done internally.

Currently, this module uses Net::IDN::UTS46. However, this might change in the future if another specification (e.g. a revision of IDNA2008) becomes more appropriate.

The author aims for Net::IDN::Encode to always use the specification that will provide the least surprising results.

STANDARD-SPECIFIC

These modules implement different versions of the the IDNA specifications. Use one of these modules only if you require compatibility with a specific incarnation of IDNA.
Net::IDN::IDNA2003 implements the orginal IDNA specification, released in 2003 (IDNA2003), which is now obsolete.

IDNA2003 is defined in RFC 3490 <http://tools.ietf.org/rfc/3490> and related documents.

Net::IDN::UTS46 implements Unicode Technical Standard #46 (UTS #46 <http://unicode.org/reports/tr46/>), Unicode IDNA Compatibility Processing. This specification supports all domain names allowed under either IDNA2003 or IDNA2008.
ENCODING
Net::IDN::Punycode performs the actual conversion between the ASCII and Unicode form of strings. Punycode is defined in RFC 3492 <http://tools.ietf.org/rfc/3492> and related documents.

Usually, it is not a good idea to use this module directly. If you convert domain labels (or other strings) without proper prepration, you may end up with an ASCII encoding that is not interoperable or poses security issues due to spoofing.

Even if you think that your domain names are valid and in already-mapped format, you might be fooled by different Unicode normalization forms (for example, some environments might automatically convert your data to NFD, which breaks IDNA).

DEPRECATED/COMPATIBILITY

These modules are only maintained in order to not break applications that might rely on them
Encode::Punycode provides an Encode plugin for Punycode. As Punycode is not a general-purpose encoding, there are limited applications.
IDNA::Punycode has an API depending on global variables. Don’t use this module.

    DISTRIBUTIONS

Net-IDN-Encode is the main distribution covering the most common cases for converting domain names between ASCII and Unicode.

The author tries to keep the dependency chain as small as possible; currently this distribution only depends on perl 5.8.5 (including the core module Unicode::Normalize ).

Net-IDN-IDNA2003 provides the Net::IDN::IDNA2003 module. This is separate because it has an dependency on Unicode::Stringprep (through Net::IDN::Nameprep).
Encode-Punycode
IDNA-Punycode are separate because they are of limited use to the average user/perl programmer.

AUTHOR

Claus Faerber <CFAERBER@cpan.org>
Search for    or go to Top of page |  Section 3 |  Main Index


perl v5.20.3 NET::IDN::OVERVIEW (3) 2016-03-17

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.