5c526acb82c882e41b655c31f5fa4425c87b671cMark AndrewsIDN patch for bind-9.2.2
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews========================
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark AndrewsThis is a patch file for ISC BIND 9.2.2 to make it work with
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrewsinternationalized domain names. With this patch you'll get IDN-aware
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrewsdig/host/nslookup.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark AndrewsTo apply this patch, you should go to the top directory of the BIND
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrewsdistribution (where you see `README' file), then invoke `patch'
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrewscommand like this:
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews % patch -p0 < this-file
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark AndrewsThen follow the instructions described in `README.idnkit' to compile
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrewsand install.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark AndrewsIndex: README.idnkit
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrewsdiff -c /dev/null mdn/othersrc/bind9/README.idnkit:1.3
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** README.idnkit Tue Mar 11 08:55:20 2003
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- README.idnkit Mon Mar 10 09:47:41 2003
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 0 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 1,113 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ BIND-9 IDN patch
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ Japan Network Information Center (JPNIC)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ * What is this patch for?
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ This patch adds internationalized domain name (IDN) support to BIND-9.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ You'll get internationalized version of dig/host/nslookup commands.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ + internationalized dig/host/nslookup
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ dig/host/nslookup accepts non-ASCII domain names in the local
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ codeset (such as Shift JIS, Big5 or ISO8859-1) determined by
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ the locale information. The domain names are normalized and
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ converted to the encoding on the DNS protocol, and sent to DNS
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ servers. The replies are converted back to the local codeset
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ and displayed.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ * Compilation & installation
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ 0. Prerequisite
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ You have to build and install idnkit before building this patched version
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ of bind-9.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ 1. Running configure script
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ Run `configure' in the top directory. See `README' for the
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ configuration options.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ This patch adds the following 4 options to `configure'. You should
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ at least specify `--with-idn' option to enable IDN support.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ --with-idn[=IDN_PREFIX]
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ To enable IDN support, you have to specify `--with-idn' option.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ The argument IDN_PREFIX is the install prefix of idnkit. If
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ IDN_PREFIX is omitted, PREFIX (derived from `--prefix=PREFIX')
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ is assumed.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ --with-libiconv[=LIBICONV_PREFIX]
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ Specify this option if idnkit you have installed links GNU
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ libiconv. The argument LIBICONV_PREFIX is install prefix of
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ GNU libiconv. If the argument is omitted, PREFIX (derived
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ from `--prefix=PREFIX') is assumed.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ `--with-libiconv' is shorthand option for GNU libiconv.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ --with-libiconv=/usr/local
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ This is equivalent to:
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ --with-iconv='-L/usr/local/lib -R/usr/local/lib -liconv'
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ `--with-libiconv' assumes that your C compiler has `-R'
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ option, and that the option adds the specified run-time path
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ to an exacutable binary. If `-R' option of your compiler has
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ different meaning, or your compiler lacks the option, you
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ should use `--with-iconv' option instead. Binary command
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ without run-time path information might be unexecutable.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ In that case, you would see an error message like:
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ error in loading shared libraries: libiconv.so.2: cannot
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ open shared object file
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ If both `--with-libiconv' and `--with-iconv' options are
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ specified, `--with-iconv' is prior to `--with-libiconv'.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ --with-iconv=ICONV_LIBSPEC
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ If your libc doens't provide iconv(), you need to specify the
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ library containing iconv() with this option. `ICONV_LIBSPEC'
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ is the argument(s) to `cc' or `ld' to link the library, for
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ example, `--with-iconv="-L/usr/local/lib -liconv"'.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ You don't need to specify the header file directory for "iconv.h"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ to the compiler, as it isn't included directly by bind-9 with
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ this patch.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ --with-idnlib=IDN_LIBSPEC
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ With this option, you can explicitly specify the argument(s)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ to `cc' or `ld' to link the idnkit's library, `libidnkit'. If
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ this option is not specified, `-L${PREFIX}/lib -lidnkit' is
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ assumed, where ${PREFIX} is the installation prefix specified
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ with `--with-idn' option above. You may need to use this
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ option to specify extra argments, for example,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ `--with-idnlib="-L/usr/local/lib -R/usr/local/lib -lidnkit"'.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ Please consult `README' for other configuration options.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ Note that if you want to specify some extra header file directories,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ you should use the environment variable STD_CINCLUDES instead of
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ CFLAGS, as described in README.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ 2. Compilation and installation
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ After running "configure", just do
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ make
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ make install
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ for compiling and installing.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ * Contact information
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ Please see http//www.nic.ad.jp/en/idn/ for the latest news
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ about idnkit and this patch.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ Bug reports and comments on this kit should be sent to
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ mdnkit-bugs@nic.ad.jp and idn-cmt@nic.ad.jp, respectively.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ; $Id: bind-9.2.2-patch,v 1.1 2003/06/04 00:27:32 marka Exp $
5c526acb82c882e41b655c31f5fa4425c87b671cMark AndrewsIndex: config.h.in
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrewsdiff -c mdn/othersrc/bind9/config.h.in:1.1.1.6 mdn/othersrc/bind9/config.h.in:1.12
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** config.h.in Tue Nov 27 16:55:45 2001
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- config.h.in Tue Mar 19 16:45:35 2002
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 141,146 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 141,149 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews /* define if you have strerror in the C library. */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews #undef HAVE_STRERROR
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ /* Define if you have the setlocale function. */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #undef HAVE_SETLOCALE
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews /* Define if you have the <dlfcn.h> header file. */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews #undef HAVE_DLFCN_H
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 150,155 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 153,161 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews /* Define if you have the <linux/capability.h> header file. */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews #undef HAVE_LINUX_CAPABILITY_H
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ /* Define if you have the <locale.h> header file. */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #undef HAVE_LOCALE_H
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews /* Define if you have the <sys/prctl.h> header file. */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews #undef HAVE_SYS_PRCTL_H
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 176,178 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 182,188 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews /* Define if you have the socket library (-lsocket). */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews #undef HAVE_LIBSOCKET
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ /* define if idnkit support is to be included. */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #undef WITH_IDN
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark AndrewsIndex: configure
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrewsdiff -c mdn/othersrc/bind9/configure:1.1.1.10 mdn/othersrc/bind9/configure:1.16
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** configure Wed Mar 5 17:14:55 2003
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- configure Thu Mar 6 20:10:05 2003
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 1007,1012 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 1007,1016 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews --with-gnu-ld assume the C compiler uses GNU ld default=no
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews --with-pic try to use only PIC/non-PIC objects default=use both
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews --with-kame=PATH use Kame IPv6 default path /usr/local/v6
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ --with-idn=MPREFIX enable IDN support using idnkit default PREFIX
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ --with-libiconv=IPREFIX GNU libiconv are in IPREFIX default PREFIX
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ --with-iconv=LIBSPEC specify iconv library default -liconv
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ --with-idnlib=ARG specify libidnkit
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews Some influential environment variables:
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews CC C compiler command
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 7371,7377 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews case $host in
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews *-*-irix6*)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews # Find out which ABI we are using.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews! echo '#line 7374 "configure"' > conftest.$ac_ext
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews (eval $ac_compile) 2>&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews ac_status=$?
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 7375,7381 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews case $host in
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews *-*-irix6*)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews # Find out which ABI we are using.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews! echo '#line 7378 "configure"' > conftest.$ac_ext
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews (eval $ac_compile) 2>&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews ac_status=$?
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 7914,7920 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews save_CFLAGS="$CFLAGS"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews CFLAGS="$CFLAGS -o out/conftest2.$ac_objext"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews compiler_c_o=no
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews! if { (eval echo configure:7917: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews # The compiler can only warn and ignore the option if not recognized
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews # So say no if there are warnings
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews if test -s out/conftest.err; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 7918,7924 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews save_CFLAGS="$CFLAGS"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews CFLAGS="$CFLAGS -o out/conftest2.$ac_objext"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews compiler_c_o=no
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews! if { (eval echo configure:7921: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>out/conftest.err; } && test -s out/conftest2.$ac_objext; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews # The compiler can only warn and ignore the option if not recognized
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews # So say no if there are warnings
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews if test -s out/conftest.err; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 9599,9605 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews lt_status=$lt_dlunknown
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews cat > conftest.$ac_ext <<EOF
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews! #line 9602 "configure"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews #include "confdefs.h"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews #if HAVE_DLFCN_H
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 9603,9609 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews lt_status=$lt_dlunknown
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews cat > conftest.$ac_ext <<EOF
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews! #line 9606 "configure"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews #include "confdefs.h"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews #if HAVE_DLFCN_H
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 9697,9703 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews lt_status=$lt_dlunknown
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews cat > conftest.$ac_ext <<EOF
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews! #line 9700 "configure"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews #include "confdefs.h"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews #if HAVE_DLFCN_H
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 9701,9707 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews lt_status=$lt_dlunknown
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews cat > conftest.$ac_ext <<EOF
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews! #line 9704 "configure"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews #include "confdefs.h"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews #if HAVE_DLFCN_H
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 13265,13270 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 13269,13580 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews #
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ # IDN support
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ # Check whether --with-idn or --without-idn was given.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if test "${with_idn+set}" = set; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ withval="$with_idn"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ use_idn="$withval"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ else
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ use_idn="no"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fi;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ case "$use_idn" in
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ yes)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if test X$prefix = XNONE ; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ idn_path=/usr/local
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ else
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ idn_path=$prefix
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fi
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ;;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ no)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ;;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ *)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ idn_path="$use_idn"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ;;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ esac
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ iconvinc=
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ iconvlib=
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ # Check whether --with-libiconv or --without-libiconv was given.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if test "${with_libiconv+set}" = set; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ withval="$with_libiconv"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ use_libiconv="$withval"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ else
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ use_libiconv="no"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fi;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ case "$use_libiconv" in
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ yes)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if test X$prefix = XNONE ; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ iconvlib="-L/usr/local/lib -R/usr/local/lib -liconv"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ else
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ iconvlib="-L$prefix/lib -R$prefix/lib -liconv"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fi
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ;;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ no)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ iconvlib=
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ;;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ *)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ iconvlib="-L$use_libiconv/lib -R$use_libiconv/lib -liconv"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ;;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ esac
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ # Check whether --with-iconv or --without-iconv was given.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if test "${with_iconv+set}" = set; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ withval="$with_iconv"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ iconvlib="$withval"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fi;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ case "$iconvlib" in
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ no)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ iconvlib=
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ;;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ yes)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ iconvlib=-liconv
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ;;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ esac
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ # Check whether --with-idnlib or --without-idnlib was given.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if test "${with_idnlib+set}" = set; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ withval="$with_idnlib"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ idnlib="$withval"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ else
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ idnlib="no"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fi;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if test "$idnlib" = yes; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ { { echo "$as_me:$LINENO: error: You must specify ARG for --with-idnlib." >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "$as_me: error: You must specify ARG for --with-idnlib." >&2;}
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ { (exit 1); exit 1; }; }
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fi
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ IDNLIBS=
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if test "$use_idn" != no; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ cat >>confdefs.h <<\_ACEOF
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #define WITH_IDN 1
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ _ACEOF
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ STD_CINCLUDES="$STD_CINCLUDES -I$idn_path/include"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if test "$idnlib" != no; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ IDNLIBS="$idnlib $iconvlib"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ else
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ IDNLIBS="-L$idn_path/lib -lidnkit $iconvlib"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fi
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fi
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ for ac_header in locale.h
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ do
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if eval "test \"\${$as_ac_Header+set}\" = set"; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "$as_me:$LINENO: checking for $ac_header" >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if eval "test \"\${$as_ac_Header+set}\" = set"; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo $ECHO_N "(cached) $ECHO_C" >&6
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fi
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ else
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ # Is the header compilable?
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "$as_me:$LINENO: checking $ac_header usability" >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ cat >conftest.$ac_ext <<_ACEOF
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #line $LINENO "configure"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #include "confdefs.h"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ $ac_includes_default
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #include <$ac_header>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ _ACEOF
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ rm -f conftest.$ac_objext
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ (eval $ac_compile) 2>&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ac_status=$?
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ (exit $ac_status); } &&
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ { ac_try='test -s conftest.$ac_objext'
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ (eval $ac_try) 2>&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ac_status=$?
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ (exit $ac_status); }; }; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ac_header_compiler=yes
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ else
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "$as_me: failed program was:" >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ cat conftest.$ac_ext >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ac_header_compiler=no
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fi
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ rm -f conftest.$ac_objext conftest.$ac_ext
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "${ECHO_T}$ac_header_compiler" >&6
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ # Is the header present?
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "$as_me:$LINENO: checking $ac_header presence" >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ cat >conftest.$ac_ext <<_ACEOF
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #line $LINENO "configure"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #include "confdefs.h"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #include <$ac_header>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ _ACEOF
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ac_status=$?
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ egrep -v '^ *\+' conftest.er1 >conftest.err
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ rm -f conftest.er1
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ cat conftest.err >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ (exit $ac_status); } >/dev/null; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if test -s conftest.err; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ac_cpp_err=$ac_c_preproc_warn_flag
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ else
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ac_cpp_err=
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fi
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ else
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ac_cpp_err=yes
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fi
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if test -z "$ac_cpp_err"; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ac_header_preproc=yes
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ else
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "$as_me: failed program was:" >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ cat conftest.$ac_ext >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ac_header_preproc=no
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fi
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ rm -f conftest.err conftest.$ac_ext
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "${ECHO_T}$ac_header_preproc" >&6
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ # So? What about this header?
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ case $ac_header_compiler:$ac_header_preproc in
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ yes:no )
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;};;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ no:yes )
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;};;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ esac
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "$as_me:$LINENO: checking for $ac_header" >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if eval "test \"\${$as_ac_Header+set}\" = set"; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo $ECHO_N "(cached) $ECHO_C" >&6
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ else
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ eval "$as_ac_Header=$ac_header_preproc"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fi
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fi
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if test `eval echo '${'$as_ac_Header'}'` = yes; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ cat >>confdefs.h <<_ACEOF
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ _ACEOF
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fi
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ done
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ for ac_func in setlocale
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ do
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "$as_me:$LINENO: checking for $ac_func" >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if eval "test \"\${$as_ac_var+set}\" = set"; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo $ECHO_N "(cached) $ECHO_C" >&6
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ else
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ cat >conftest.$ac_ext <<_ACEOF
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #line $LINENO "configure"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #include "confdefs.h"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ /* From autoconf 2.57 */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ /* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ For example, HP-UX 11i <limits.h> declares gettimeofday. */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #define $ac_func innocuous_$ac_func
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ /* System header to define __stub macros and hopefully few prototypes,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ which can conflict with char $ac_func (); below.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ <limits.h> exists even on freestanding compilers. */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #ifdef __STDC__
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ # include <limits.h>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #else
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ # include <assert.h>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #endif
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #undef $ac_func
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ /* Override any gcc2 internal prototype to avoid an error. */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #ifdef __cplusplus
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ extern "C"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ {
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #endif
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ /* We use char because int might match the return type of a gcc2
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ builtin and then its argument prototype would still apply. */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ char $ac_func ();
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ /* The GNU C library defines this for functions which it implements
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ to always fail with ENOSYS. Some functions are actually named
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ something starting with __ and the normal name is an alias. */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #if defined (__stub_$ac_func) || defined (__stub___$ac_func)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ choke me
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #else
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ char (*f) () = $ac_func;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #endif
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #ifdef __cplusplus
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ }
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #endif
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #ifdef F77_DUMMY_MAIN
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ # ifdef __cplusplus
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ extern "C"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ # endif
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ int F77_DUMMY_MAIN() { return 1; }
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #endif
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ int
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ main ()
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ {
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ return f != $ac_func;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ return 0;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ }
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ _ACEOF
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ rm -f conftest.$ac_objext conftest$ac_exeext
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ (eval $ac_link) 2>&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ac_status=$?
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ (exit $ac_status); } &&
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ { ac_try='test -s conftest$ac_exeext'
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ (eval $ac_try) 2>&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ac_status=$?
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ (exit $ac_status); }; }; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ eval "$as_ac_var=yes"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ else
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "$as_me: failed program was:" >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ cat conftest.$ac_ext >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ eval "$as_ac_var=no"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fi
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ rm -f conftest.$ac_objext conftest$ac_exeext conftest.$ac_ext
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fi
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if test `eval echo '${'$as_ac_var'}'` = yes; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ cat >>confdefs.h <<_ACEOF
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ _ACEOF
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fi
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ done
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews # Substitutions
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews #
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 14061,14066 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 14371,14377 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews s,@PRINTSTYLE@,$PRINTSTYLE,;t t
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews s,@XMLDCL@,$XMLDCL,;t t
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews s,@DOCBOOK2MANSPEC@,$DOCBOOK2MANSPEC,;t t
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ s,@IDNLIBS@,$IDNLIBS,;t t
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews s,@BIND9_TOP_BUILDDIR@,$BIND9_TOP_BUILDDIR,;t t
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews s,@BIND9_ISC_BUILDINCLUDE@,$BIND9_ISC_BUILDINCLUDE,;t t
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews s,@BIND9_ISCCC_BUILDINCLUDE@,$BIND9_ISCCC_BUILDINCLUDE,;t t
5c526acb82c882e41b655c31f5fa4425c87b671cMark AndrewsIndex: configure.in
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrewsdiff -c mdn/othersrc/bind9/configure.in:1.1.1.10 mdn/othersrc/bind9/configure.in:1.16
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** configure.in Wed Mar 5 17:14:56 2003
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- configure.in Wed Mar 5 17:37:08 2003
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 1681,1686 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 1681,1762 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews NOM_PATH_FILE(DOCBOOK2MANSPEC, docbook2X/docbook2man-spec.pl, $sgmltrees)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews #
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ # IDN support
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ AC_ARG_WITH(idn,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ [ --with-idn[=MPREFIX] enable IDN support using idnkit [default PREFIX]],
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ use_idn="$withval", use_idn="no")
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ case "$use_idn" in
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ yes)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if test X$prefix = XNONE ; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ idn_path=/usr/local
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ else
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ idn_path=$prefix
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fi
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ;;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ no)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ;;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ *)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ idn_path="$use_idn"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ;;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ esac
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ iconvinc=
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ iconvlib=
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ AC_ARG_WITH(libiconv,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ [ --with-libiconv[=IPREFIX] GNU libiconv are in IPREFIX [default PREFIX]],
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ use_libiconv="$withval", use_libiconv="no")
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ case "$use_libiconv" in
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ yes)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if test X$prefix = XNONE ; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ iconvlib="-L/usr/local/lib -R/usr/local/lib -liconv"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ else
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ iconvlib="-L$prefix/lib -R$prefix/lib -liconv"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fi
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ;;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ no)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ iconvlib=
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ;;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ *)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ iconvlib="-L$use_libiconv/lib -R$use_libiconv/lib -liconv"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ;;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ esac
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ AC_ARG_WITH(iconv,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ [ --with-iconv[=LIBSPEC] specify iconv library [default -liconv]],
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ iconvlib="$withval")
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ case "$iconvlib" in
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ no)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ iconvlib=
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ;;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ yes)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ iconvlib=-liconv
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ;;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ esac
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ AC_ARG_WITH(idnlib,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ [ --with-idnlib=ARG specify libidnkit],
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ idnlib="$withval", idnlib="no")
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if test "$idnlib" = yes; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ AC_MSG_ERROR([You must specify ARG for --with-idnlib.])
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fi
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ IDNLIBS=
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if test "$use_idn" != no; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ AC_DEFINE(WITH_IDN, 1, [define if idnkit support is to be included.])
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ STD_CINCLUDES="$STD_CINCLUDES -I$idn_path/include"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if test "$idnlib" != no; then
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ IDNLIBS="$idnlib $iconvlib"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ else
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ IDNLIBS="-L$idn_path/lib -lidnkit $iconvlib"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fi
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fi
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ AC_SUBST(IDNLIBS)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ AC_CHECK_HEADERS(locale.h)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ AC_CHECK_FUNCS(setlocale)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews # Substitutions
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews #
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews AC_SUBST(BIND9_TOP_BUILDDIR)
5c526acb82c882e41b655c31f5fa4425c87b671cMark AndrewsIndex: bin/dig/Makefile.in
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrewsdiff -c mdn/othersrc/bind9/bin/dig/Makefile.in:1.1.1.6 mdn/othersrc/bind9/bin/dig/Makefile.in:1.3
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** bin/dig/Makefile.in Tue Nov 27 16:55:50 2001
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- bin/dig/Makefile.in Tue Mar 19 16:45:35 2002
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 36,42 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews DEPLIBS = ${DNSDEPLIBS} ${ISCDEPLIBS}
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews! LIBS = ${DNSLIBS} ${ISCLIBS} @LIBS@
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews SUBDIRS =
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 36,42 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews DEPLIBS = ${DNSDEPLIBS} ${ISCDEPLIBS}
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews! LIBS = ${DNSLIBS} ${ISCLIBS} @IDNLIBS@ @LIBS@
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews SUBDIRS =
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark AndrewsIndex: bin/dig/dig.1
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrewsdiff -c mdn/othersrc/bind9/bin/dig/dig.1:1.1.1.3 mdn/othersrc/bind9/bin/dig/dig.1:1.5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** bin/dig/dig.1 Wed Mar 5 17:14:57 2003
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- bin/dig/dig.1 Wed Mar 5 17:42:53 2003
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 349,354 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 349,365 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews \fI+noqr\fR which means that \fBdig\fR
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews will not print the initial query when it looks up the NS records for
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews isc.org.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ .SH "IDN SUPPORT"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ .PP
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ If \fBdig\fR has been built with IDN (internationalized
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ domain name) support, it can accept and display non-ASCII domain names.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ \fBdig\fR appropriately converts character encoding of
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ domain name before sending a request to DNS server or displaying a
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ reply from the server.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ If you'd like to turn off the IDN support for some reason, defines
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ the \fBIDN_DISABLE\fR environment variable.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ The IDN support is disabled if the the variable is set when
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ \fBdig\fR runs.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews .SH "FILES"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews .PP
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews \fI/etc/resolv.conf\fR
5c526acb82c882e41b655c31f5fa4425c87b671cMark AndrewsIndex: bin/dig/dig.docbook
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrewsdiff -c mdn/othersrc/bind9/bin/dig/dig.docbook:1.1.1.3 mdn/othersrc/bind9/bin/dig/dig.docbook:1.5
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** bin/dig/dig.docbook Wed Mar 5 17:14:57 2003
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- bin/dig/dig.docbook Wed Mar 5 17:42:53 2003
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 523,528 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 523,543 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews </refsect1>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews <refsect1>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ <title>IDN SUPPORT</title>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ <para>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ If <command>dig</command> has been built with IDN (internationalized
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ domain name) support, it can accept and display non-ASCII domain names.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ <command>dig</command> appropriately converts character encoding of
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ domain name before sending a request to DNS server or displaying a
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ reply from the server.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ If you'd like to turn off the IDN support for some reason, defines
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ the <envar>IDN_DISABLE</envar> environment variable.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ The IDN support is disabled if the the variable is set when
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ <command>dig</command> runs.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ </para>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ </refsect1>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ <refsect1>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews <title>FILES</title>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews <para>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews <filename>/etc/resolv.conf</filename>
5c526acb82c882e41b655c31f5fa4425c87b671cMark AndrewsIndex: bin/dig/dighost.c
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrewsdiff -c mdn/othersrc/bind9/bin/dig/dighost.c:1.1.1.13 mdn/othersrc/bind9/bin/dig/dighost.c:1.33
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** bin/dig/dighost.c Wed Mar 5 17:14:57 2003
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- bin/dig/dighost.c Wed Mar 5 17:42:53 2003
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 32,37 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 32,48 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews #include <string.h>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews #include <limits.h>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #ifdef HAVE_LOCALE_H
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #include <locale.h>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #endif
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #ifdef WITH_IDN
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #include <idn/result.h>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #include <idn/log.h>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #include <idn/resconf.h>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #include <idn/api.h>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #endif
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews #include <dns/byaddr.h>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews #include <dns/fixedname.h>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews #include <dns/message.h>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 130,135 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 141,158 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews isc_mutex_t lookup_lock;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews dig_lookup_t *current_lookup = NULL;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #ifdef WITH_IDN
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ static void initialize_idn(void);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ static isc_result_t output_filter(isc_buffer_t *buffer,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ unsigned int used_org,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ isc_boolean_t absolute);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ static idn_result_t append_textname(char *name, const char *origin,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ size_t namesize);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ static void idn_check_result(idn_result_t r, const char *msg);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #define MAXDLEN 256
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #endif
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews /*
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews * Apply and clear locks at the event level in global task.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews * Can I get rid of these using shutdown events? XXX
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 648,653 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 671,680 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews ISC_LIST_APPEND(server_list, srv, link);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews }
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #ifdef WITH_IDN
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ initialize_idn();
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #endif
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews if (keyfile[0] != 0)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews setup_file_key();
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews else if (keysecret[0] != 0)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 1168,1173 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 1195,1208 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews isc_buffer_t b;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews dns_compress_t cctx;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews char store[MXNAME];
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #ifdef WITH_IDN
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ idn_result_t mr;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ char utf8_textname[MXNAME], utf8_origin[MXNAME], idn_textname[MXNAME];
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #endif
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #ifdef WITH_IDN
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ dns_name_settotextfilter(output_filter);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #endif
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews REQUIRE(lookup != NULL);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews INSIST(!free_now);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 1196,1201 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 1231,1247 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews isc_buffer_init(&lookup->onamebuf, lookup->onamespace,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews sizeof(lookup->onamespace));
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #ifdef WITH_IDN
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ /*
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ * We cannot convert `textname' and `origin' separately.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ * `textname' doesn't contain TLD, but local mapping needs
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ * TLD.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ mr = idn_encodename(IDN_LOCALCONV | IDN_DELIMMAP, lookup->textname,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ utf8_textname, sizeof(utf8_textname));
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ idn_check_result(mr, "convert textname to UTF-8");
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #endif
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews /*
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews * If the name has too many dots, force the origin to be NULL
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews * (which produces an absolute lookup). Otherwise, take the origin
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 1204,1215 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 1250,1290 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews * is TRUE or we got a domain line in the resolv.conf file.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews /* XXX New search here? */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #ifdef WITH_IDN
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if ((count_dots(utf8_textname) >= ndots) || !usesearch)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ lookup->origin = NULL; /* Force abs lookup */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ else if (lookup->origin == NULL && lookup->new_search && usesearch) {
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ lookup->origin = ISC_LIST_HEAD(search_list);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ }
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #else
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews if ((count_dots(lookup->textname) >= ndots) || !usesearch)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews lookup->origin = NULL; /* Force abs lookup */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews else if (lookup->origin == NULL && lookup->new_search && usesearch) {
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews lookup->origin = ISC_LIST_HEAD(search_list);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews }
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #endif
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #ifdef WITH_IDN
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews if (lookup->origin != NULL) {
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ mr = idn_encodename(IDN_LOCALCONV | IDN_DELIMMAP,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ lookup->origin->origin, utf8_origin,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ sizeof(utf8_origin));
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ idn_check_result(mr, "convert origin to UTF-8");
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ mr = append_textname(utf8_textname, utf8_origin,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ sizeof(utf8_textname));
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ idn_check_result(mr, "append origin to textname");
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ }
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ mr = idn_encodename(IDN_LOCALMAP | IDN_NAMEPREP | IDN_ASCCHECK |
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ IDN_IDNCONV | IDN_LENCHECK, utf8_textname,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ idn_textname, sizeof(idn_textname));
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ idn_check_result(mr, "convert UTF-8 textname to IDN encoding");
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #endif
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #ifdef WITH_IDN
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if (0) {
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #else
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if (lookup->origin != NULL) {
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #endif
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews debug("trying origin %s", lookup->origin->origin);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews result = dns_message_gettempname(lookup->sendmsg,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews &lookup->oname);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 1254,1259 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 1329,1343 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews if (lookup->trace && lookup->trace_root)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews dns_name_clone(dns_rootname, lookup->name);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews else {
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #ifdef WITH_IDN
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ len = strlen(idn_textname);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ isc_buffer_init(&b, idn_textname, len);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ isc_buffer_add(&b, len);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ result = dns_name_fromtext(lookup->name, &b,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ dns_rootname,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ ISC_FALSE,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ &lookup->namebuf);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #else
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews len = strlen(lookup->textname);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews isc_buffer_init(&b, lookup->textname, len);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews isc_buffer_add(&b, len);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 1261,1266 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 1345,1351 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews dns_rootname,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews ISC_FALSE,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews &lookup->namebuf);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #endif
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews }
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews if (result != ISC_R_SUCCESS) {
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews dns_message_puttempname(lookup->sendmsg,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 2663,2665 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 2748,2848 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews if (mctx != NULL)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews isc_mem_destroy(&mctx);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews }
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #ifdef WITH_IDN
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ static void
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ initialize_idn(void) {
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ idn_result_t r;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #ifdef HAVE_SETLOCALE
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ /* Set locale */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ (void)setlocale(LC_ALL, "");
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #endif
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ /* Create configuration context. */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ r = idn_nameinit(1);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if (r != idn_success)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fatal("idn api initialization failed: %s",
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ idn_result_tostring(r));
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ /* Set domain name -> text post-conversion filter. */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ dns_name_settotextfilter(output_filter);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ }
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ static isc_result_t
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ output_filter(isc_buffer_t *buffer, unsigned int used_org,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ isc_boolean_t absolute)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ {
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ char tmp1[MAXDLEN], tmp2[MAXDLEN];
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ size_t fromlen, tolen;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ isc_boolean_t end_with_dot;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ /*
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ * Copy contents of 'buffer' to 'tmp1', supply trailing dot
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ * if 'absolute' is true, and terminate with NUL.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fromlen = isc_buffer_usedlength(buffer) - used_org;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if (fromlen >= MAXDLEN)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ return (ISC_R_SUCCESS);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ memcpy(tmp1, (char *)isc_buffer_base(buffer) + used_org, fromlen);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ end_with_dot = (tmp1[fromlen - 1] == '.') ? ISC_TRUE : ISC_FALSE;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if (absolute && !end_with_dot) {
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fromlen++;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if (fromlen >= MAXDLEN)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ return (ISC_R_SUCCESS);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ tmp1[fromlen - 1] = '.';
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ }
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ tmp1[fromlen] = '\0';
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ /*
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ * Convert contents of 'tmp1' to local encoding.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if (idn_decodename(IDN_DECODE_APP, tmp1, tmp2, MAXDLEN) != idn_success)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ return (ISC_R_SUCCESS);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ strcpy(tmp1, tmp2);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ /*
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ * Copy the converted contents in 'tmp1' back to 'buffer'.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ * If we have appended trailing dot, remove it.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ tolen = strlen(tmp1);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if (absolute && !end_with_dot && tmp1[tolen - 1] == '.')
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ tolen--;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if (isc_buffer_length(buffer) < used_org + tolen)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ return (ISC_R_NOSPACE);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ isc_buffer_subtract(buffer, isc_buffer_usedlength(buffer) - used_org);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ memcpy(isc_buffer_used(buffer), tmp1, tolen);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ isc_buffer_add(buffer, tolen);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ return (ISC_R_SUCCESS);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ }
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ static idn_result_t
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ append_textname(char *name, const char *origin, size_t namesize) {
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ size_t namelen = strlen(name);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ size_t originlen = strlen(origin);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ /* Already absolute? */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if (namelen > 0 && name[namelen - 1] == '.')
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ return idn_success;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ /* Append dot and origin */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if (namelen + 1 + originlen >= namesize)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ return idn_buffer_overflow;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ name[namelen++] = '.';
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ (void)strcpy(name + namelen, origin);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ return idn_success;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ }
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ static void
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ idn_check_result(idn_result_t r, const char *msg) {
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if (r != idn_success) {
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ exitcode = 1;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ fatal("%s: %s", msg, idn_result_tostring(r));
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ }
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ }
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #endif /* WITH_IDN */
5c526acb82c882e41b655c31f5fa4425c87b671cMark AndrewsIndex: bin/dig/host.1
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrewsdiff -c mdn/othersrc/bind9/bin/dig/host.1:1.1.1.2 mdn/othersrc/bind9/bin/dig/host.1:1.4
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** bin/dig/host.1 Wed Mar 5 17:14:57 2003
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- bin/dig/host.1 Wed Mar 5 17:42:53 2003
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 120,125 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 120,136 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews effectively wait forever for a reply. The time to wait for a response
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews will be set to the number of seconds given by the hardware's maximum
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews value for an integer quantity.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ .SH "IDN SUPPORT"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ .PP
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ If \fBhost\fR has been built with IDN (internationalized
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ domain name) support, it can accept and display non-ASCII domain names.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ \fBhost\fR appropriately converts character encoding of
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ domain name before sending a request to DNS server or displaying a
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ reply from the server.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ If you'd like to turn off the IDN support for some reason, defines
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ the \fBIDN_DISABLE\fR environment variable.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ The IDN support is disabled if the the variable is set when
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ \fBhost\fR runs.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews .SH "FILES"
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews .PP
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews \fI/etc/resolv.conf\fR
5c526acb82c882e41b655c31f5fa4425c87b671cMark AndrewsIndex: bin/dig/host.docbook
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrewsdiff -c mdn/othersrc/bind9/bin/dig/host.docbook:1.1.1.2 mdn/othersrc/bind9/bin/dig/host.docbook:1.4
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** bin/dig/host.docbook Wed Mar 5 17:14:57 2003
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- bin/dig/host.docbook Wed Mar 5 17:42:53 2003
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 181,186 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 181,201 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews </refsect1>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews <refsect1>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ <title>IDN SUPPORT</title>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ <para>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ If <command>host</command> has been built with IDN (internationalized
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ domain name) support, it can accept and display non-ASCII domain names.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ <command>host</command> appropriately converts character encoding of
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ domain name before sending a request to DNS server or displaying a
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ reply from the server.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ If you'd like to turn off the IDN support for some reason, defines
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ the <envar>IDN_DISABLE</envar> environment variable.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ The IDN support is disabled if the the variable is set when
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ <command>host</command> runs.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ </para>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ </refsect1>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ <refsect1>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews <title>FILES</title>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews <para>
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews <filename>/etc/resolv.conf</filename>
5c526acb82c882e41b655c31f5fa4425c87b671cMark AndrewsIndex: lib/dns/name.c
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrewsdiff -c mdn/othersrc/bind9/lib/dns/name.c:1.1.1.11 mdn/othersrc/bind9/lib/dns/name.c:1.15
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** lib/dns/name.c Wed Mar 5 17:16:22 2003
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- lib/dns/name.c Wed Mar 5 17:49:58 2003
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 194,199 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 194,206 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews /* XXXDCL make const? */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews dns_name_t *dns_wildcardname = &wild;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #ifdef WITH_IDN
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ /*
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ * dns_name_t to text post-conversion procedure.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ static dns_name_totextfilter_t totext_filter_proc = NULL;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #endif
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews static void
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews set_offsets(const dns_name_t *name, unsigned char *offsets,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews dns_name_t *set_name);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 1684,1689 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 1691,1699 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews unsigned int labels;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews isc_boolean_t saw_root = ISC_FALSE;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews char num[4];
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #ifdef WITH_IDN
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ unsigned int oused = target->used;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #endif
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews /*
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews * This function assumes the name is in proper uncompressed
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 1861,1866 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 1871,1880 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews isc_buffer_add(target, tlen - trem);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #ifdef WITH_IDN
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ if (totext_filter_proc != NULL)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ return ((*totext_filter_proc)(target, oused, saw_root));
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #endif
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews return (ISC_R_SUCCESS);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews }
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 3325,3327 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 3339,3347 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews return (ISC_R_SUCCESS);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews }
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #ifdef WITH_IDN
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ void
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ dns_name_settotextfilter(dns_name_totextfilter_t proc) {
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ totext_filter_proc = proc;
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ }
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #endif
5c526acb82c882e41b655c31f5fa4425c87b671cMark AndrewsIndex: lib/dns/include/dns/name.h
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrewsdiff -c mdn/othersrc/bind9/lib/dns/include/dns/name.h:1.1.1.7 mdn/othersrc/bind9/lib/dns/include/dns/name.h:1.10
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** lib/dns/include/dns/name.h Wed May 22 17:15:29 2002
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- lib/dns/include/dns/name.h Mon May 27 12:10:15 2002
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 219,224 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 219,235 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews #define DNS_NAME_MAXWIRE 255
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #ifdef WITH_IDN
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ /*
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ * Text output filter procedure.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ * 'target' is the buffer to be converted. The region to be converted
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ * is from 'buffer'->base + 'used_org' to the end of the used region.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ typedef isc_result_t (*dns_name_totextfilter_t)(isc_buffer_t *target,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ unsigned int used_org,
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ isc_boolean_t absolute);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #endif
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews /***
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews *** Initialization
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews ***/
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews***************
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews*** 1244,1249 ****
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews--- 1255,1268 ----
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews * 'size' > 0.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews *
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #ifdef WITH_IDN
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ void
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ dns_name_settotextfilter(dns_name_totextfilter_t proc);
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ /*
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ * Call 'proc' at the end of dns_name_totext.
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews+ #endif /* WITH_IDN */
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews #define DNS_NAME_FORMATSIZE (DNS_NAME_MAXTEXT + 1)
5c526acb82c882e41b655c31f5fa4425c87b671cMark Andrews /*