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