Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
Net::IDN::Overview(3) User Contributed Perl DocumentationNet::IDN::Overview(3)

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

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 original 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
	   preparation,	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>

perl v5.24.1			  2017-07-02		 Net::IDN::Overview(3)

NAME | DESCRIPTION | AUTHOR

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=Net::IDN::Overview&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help