1
2				idnkit
3	     -- internationalized domain name toolkit --
4			       version 2
5	       Japan Registry Services Co., Ltd.(JPRS)
6
7
8Table of contents of this file:
9
10  1. Overview
11  2. Components
12  3. Directory structure of this distribution
13  4. Supported systems
14  5. Contact information
15
16See the file INSTALL for compilation and installation instructions.
17See the file NEWS for a list of major changes in the current release.
18See the file UPDATE-TABLES, if you would like to update code point
19tables derived from Unicode Character Database (UCD) or IDNA parameters.
20
21
221. Overview
23
24idnkit, which was originally known as mDNkit, is a toolkit for handling
25internationalized domain names (IDN).
26
27idnkit version 1 (1.0, 1.1, ...) supports IDNA2003 which consists of
28the following RFCs:
29
30    + RFC3454: Preparation of Internationalized Strings ("stringprep")
31    + RFC3490: Internationalizing Domain Names in Applications (IDNA)
32    + RFC3491: Nameprep: A Stringprep Profile for Internationalized Domain
33               Names (IDN)
34    + RFC3492: Punycode: A Bootstring encoding of Unicode
35               for Internationalized Domain Names in Applications (IDNA)
36
37idnkit version 2 (2.0, 2.1, ...), supports IDNA2008 which consists of RFCs
38listed below:
39
40    + RFC3492: Punycode: A Bootstring encoding of Unicode
41               for Internationalized Domain Names in Applications (IDNA)
42    + RFC5890: Internationalized Domain Names for Applications (IDNA):
43               Definitions and Document Framework
44    + RFC5891: Internationalized Domain Names for Applications (IDNA):
45               Background, Explanation, and Rationale
46    + RFC5892: The Unicode code points and IDNA
47    + RFC5893: Right-to-left scripts for IDNA
48    + RFC5894: Internationalized Domain Names in Applications (IDNA):
49               Protocol
50    + RFC5895: Mapping Characters in IDNA2008
51    + RFC6452: The Unicode Code Points and Internationalized Domain Names
52               for Applications (IDNA) - Unicode 6.0
53
54Please note that idnkit version 2 doesn't support IDNA2003 any longer.
55
56
572. Compnenets
58
59idnkit provides the following components.
60
61    + library for handling internationalized domain names
62      (libidnkit, libidnkitlite)
63	Those libraries implement encoding/decoding conversions of
64	internationalized domain name.  They provide easy-to-use APIs
65	for handling internationalized domain name in your applications.
66
67	Both libraries provide almost the same API.  The difference
68	between them is that libidnkit internally uses iconv() function
69	to provide encoding conversion from UTF-8 to the local encoding
70	(such as iso-8859-1, usually determined by the current locale),
71	and vise versa.	 'idncheck', 'idncmp' and 'idnconv2' commands
72	in this toolkit use libidnkit.
73
74	libidnkitlite is lightweight version of libidnkit.  Since it
75	always assumes the local encoding is UTF-8, it never uses
76	iconv().
77
78	The libraries also provides some functions convenient for
79	applications to operate internationalized domain name.
80	See the online manual libidnkit(3) for more details.
81
82    + 'idnconv2' command
83	This command can convert internationalized domain name written
84	in local encoding (e.g. EUC-JP) to Punycode or the opposite
85	direction.
86
87	It can also convert named.conf and zone master files for BIND.
88
89	For users who want install idnkit version 1 and 2 on the same
90	system, the command in idnkit version 2 has been renamed from
91	'idnconv' to 'idnconv2'.
92
93    + 'idncmp' command
94	This command takes two domain names as its command line arguments,
95	and checks whether the domain names are equivalent or not in view
96	of IDNA2008.  The result is written to standard error.
97
98    + 'idncheck' command
99	This command takes a domain names as its command line argument,
100	and checks whether it is a valid domain name.  The result is
101	written to standard error.
102
103    + patch to idnkit version 1.0
104	A patch file to fix bugs in idnkit version 1.0.
105
1063. Directory structure of this distribution
107
108The following is a directory structure of this distribution with some
109important files and their brief description.
110
111    +README             this file
112    +README.ja          .. in Japanese
113    +INSTALL            compilation and installation instructions.
114    +INSTALL.ja         .. in Japanese
115    +LICENSE.txt        license
116    +UPDATE-TABLES      how to update code point tables
117    +NEWS               what's new in this version
118    +ChangeLog          list of changes
119    +configure          the 'configure' script
120    +conf/              sample configuration files
121    +data/              data files used to generate code point tables
122    +man/               online manuals
123    +map/               sample map files
124    +include/
125    |   +idn/           header files for libidnkit and libindkitlite
126    |       +auto/      header files generated by utilities
127    +lib/               source for libidnkit and libidnkitlite
128    |       +auto/      source files generated by utilities
129    +patch/             patch for idnkit version 1.0
130    +test/              test suite
131    +tools/
132    |   +idncheck/      source for idncheck command
133    |   +idncmp/        source for idncmp command
134    |   +idnconv/       source for idnconv2 command
135    +util/              scripts to generate code point tables
136
137
1384. Supported systems
139
140We've tested on the following systems:
141
142    --------------------------------------------------------------------
143    OS                              iconv library      configure options
144    ====================================================================
145    CentOS release 5.4              standard library   (none)
146    for Intel x86                   (glibc)
147    --------------------------------------------------------------------
148    Cygwin 1.7.5                    GNU libiconv       (none)
149    (Windows XP Professional SP3)
150    for Intel x86                   1.13
151    --------------------------------------------------------------------
152    Solaris 10                      standard library   (none)
153    for Sparc                       (libc)
154    --------------------------------------------------------------------
155
156
1575. Contact information
158
159The latest version and information about idnkit can be found at:
160
161	http://jprs.co.jp/idn/
162
163Send bug reports and comments to
164
165	idnkit-info@jprs.co.jp
166