[tor-commits] [torsocks/master] Move patches directory to docs and update DEBUG readme

hoganrobert at torproject.org hoganrobert at torproject.org
Sun Feb 27 12:56:17 UTC 2011


commit e75c0be29dcb41c5451d352c959ff2f48379c704
Author: Robert Hogan <robert at roberthogan.net>
Date:   Sun Feb 27 12:48:35 2011 +0000

    Move patches directory to docs and update DEBUG readme
---
 doc/DEBUG                         |    4 -
 doc/notes/DEBUG                   |    8 +
 doc/patches/README                |   88 +
 doc/patches/README.TORDNS         |  187 +
 doc/patches/compilewarnings.patch |  739 +++
 doc/patches/conffile.patch        |   11 +
 doc/patches/getaddrbyhost.patch   |  696 +++
 doc/patches/getpeername.patch     |  350 ++
 doc/patches/infiniteloop.patch    |   20 +
 doc/patches/localaddresses.patch  |   15 +
 doc/patches/tordns.patch          |11004 +++++++++++++++++++++++++++++++++++++
 patches/README                    |   88 -
 patches/README.TORDNS             |  187 -
 patches/compilewarnings.patch     |  739 ---
 patches/conffile.patch            |   11 -
 patches/getaddrbyhost.patch       |  696 ---
 patches/getpeername.patch         |  350 --
 patches/infiniteloop.patch        |   20 -
 patches/localaddresses.patch      |   15 -
 patches/tordns.patch              |11004 -------------------------------------
 20 files changed, 13118 insertions(+), 13114 deletions(-)

diff --git a/doc/DEBUG b/doc/DEBUG
deleted file mode 100644
index d780d82..0000000
--- a/doc/DEBUG
+++ /dev/null
@@ -1,4 +0,0 @@
-gdb ./gethostbyaddr
-set environment LD_PRELOAD /home/robert/Development/torsocks-svn/torsocks/debug/src/.libs/libtorsocks.so
-b our_gethostbyaddr
-run
diff --git a/doc/notes/DEBUG b/doc/notes/DEBUG
new file mode 100644
index 0000000..53797b0
--- /dev/null
+++ b/doc/notes/DEBUG
@@ -0,0 +1,8 @@
+You can set breakpoints in libtorsocks using the following technique. Say you
+want to debug torsocks when it's wrapping a program called gethostbyaddr, that
+calls gethostbyaddr():
+
+gdb ./gethostbyaddr
+set environment LD_PRELOAD /path/to/libtorsocks.so
+b our_gethostbyaddr
+run
diff --git a/doc/patches/README b/doc/patches/README
new file mode 100644
index 0000000..2f921a9
--- /dev/null
+++ b/doc/patches/README
@@ -0,0 +1,88 @@
+This is a list of the patches applied to tsocks between it's last
+official release and 15/06/08. All changes applied to the source after
+that date are recorded in the Changelog.
+
+NB: These patches are stored for historical reasons only. I have not
+    confirmed that they all apply cleanly to the tsocks source. I do not
+    know in what order they should be applied.
+
+File: getaddrbyhost.patch (Robert Hogan)
+Date: 18/06/08
+Description:
+Add support for getaddrbyhost.
+
+File: compilewarnings.patch (Robert Hogan)
+Date: 2007
+Description:
+  Suppresses a number of compile warnings. Also introduces reasonable defaults
+  for use of Tor.
+
+
+File: getpeername.patch (Peter Palfrader <weasel at debian.org>)
+Date: Sat, 27 Mar 2004 13:20:56 +0100
+Description:
+  "If we are not done setting up the connection yet, getpeername() should
+  return -1 and ENOTCONN.
+
+  This is necessary since some applications, when using non-blocking connect,
+  (like ircII) use getpeername() to find out if they are connected already.
+
+  This results in races sometimes, where the client sends data to the socket
+  before we are done with the socks connection setup.  Another solution would
+  be to intercept send().
+
+  This could be extended to actually set the peername to the peer the
+  client application has requested, but not for now.
+
+  this patch is almost the same, only it uses state != DONE  instead of
+  state == CONNECTING to find out when to send ENOTCONN back.
+
+  this patch tries to also do continue the socks setup in getpeername(),
+  if it isn't done yet."
+
+
+File: infiniteloop.patch (Peter Palfrader <weasel at debian.org>)
+Date: Sat, 20 Mar 2004 11:41:41 +0100
+Description:
+  "If the server just disconnects when tsocks expects a reply, tsocks
+  will get stuck in an infinite busy loop."
+
+
+File: localaddresses.patch (Roger Dingledine)
+Date: Sat, 01 Apr 2006 18:17:50 -0500
+Description:
+  "I just noticed that tsocks hard-codes the 127.0.0.0/8 subnet
+  as being "local", meaning it won't ever go through the socks
+  proxy.
+
+  The Tor controller's mapaddress command can assign virtual addresses
+  in the 127/8 space: see section 3.8 of
+  http://tor.eff.org/cvs/tor/doc/control-spec.txt
+
+  We think this behavior should be allowed. Here's a patch to tsocks to
+  make it not always hard-code its local network."
+
+
+File: conffile.patch ( Roderick Schertler <roderick at argon.org>)
+Date: Fri, 03 Jun 2005 08:43:59 -0400
+Description: tsocks(8) says TSOCKS_CONFFILE but should say TSOCKS_CONF_FILE
+Details:
+  "The tsocks(8) man page says TSOCKS_CONFFILE but should say
+  TSOCKS_CONF_FILE.  Though this is a documentation error I don't think
+  it qualifies as minor.  For me the program didn't work at all because
+  I needed to run it with an alternative config file, and I needed to
+  download the source to figure out the problem."
+
+
+File: tordns.patch (Total Information Security)
+Date: 2005-10-XX (?)
+Original Reference: http://www.totalinfosecurity.com/patches/tor.php
+Description:
+  "Patch from Total Information Security to resolve the DNS leakage problem
+  and allow access to addresses with nonstandard hostnames (e.g. those ending
+  in .onion)."
+
+Notes:
+  'Total Information Security' appears to be defunct so the original link for
+  the patch is now dead. The patch stored here was taken from :
+  https://bugs.gentoo.org/show_bug.cgi?id=148550
diff --git a/doc/patches/README.TORDNS b/doc/patches/README.TORDNS
new file mode 100644
index 0000000..0b7dafd
--- /dev/null
+++ b/doc/patches/README.TORDNS
@@ -0,0 +1,187 @@
+
+TORDNS
+======
+
+What is it?
+-----------
+
+This patch modifies the tsocks library to use SOCKS for name resolution.
+
+
+Why should I use it?
+--------------------
+
+* It's easier.
+
+When using this patch you don't (always..) need to run 'tor-resolve' when 
+using 'torify' anymore.  Also, 'torify' now works directly with SSH without 
+the need for connect scripts or other fiddling. [As long as SSH is not 
+installed suid root].
+
+* It allows you to use programs which are not SOCKS aware to connect to 
+.onion sites. 
+
+For example, you can ssh directly to a .onion site, or use telnet / netcat
+without hassle.  
+
+
+QUICK: what do I need to do to make it work?
+--------------------------------------------
+
+Configuration instructions:
+
+1) Get the sources
+
+wget http://ftp1.sourceforge.net/tsocks/tsocks-1.8beta5.tar.gz
+wget http://www.totalinfosecurity.com/patches/tor-tsocks/tordns-1.8b5.patch
+
+2) Unpack and apply the tsocks patch
+
+tar xzvf tsocks-1.8beta5.tar.gz
+cd tsocks-1.8
+patch -p1 < ../tordns-1.8b5.patch
+
+3) Configure, compile and install
+
+NOTE: The default 'configure' settings for tsocks have been changed by 
+this patch.  The --disable-hostnames option (don't try to use DNS to look
+up SOCKS servers) is now enabled by default.  Also, tordns is enabled 
+by default.
+
+./configure 
+make 
+make install 
+
+All the tordns config options have sane default values which you should
+not need to change.  
+
+
+Why did I need to use 'tor-resolve' with 'torify' in the first place?
+---------------------------------------------------------------------
+
+Because if you run "torify telnet bar.foo.com 31337", for example, then 
+you're leaking information about what sites you're visiting to DNS servers.  
+
+The tor-resolve utility resolves names through tor using SOCKS, in a way
+that shouldn't compromise your privacy.
+
+
+What won't work with this?
+--------------------------
+
+The 'tordns' feature for tsocks only works with applications using the 
+standard c library name lookup mechanisms.
+
+Some programs roll their own name lookup functions, for example, 'curl' 
+uses the 'adns' library, not the standard c library name lookup calls.  
+In this case, you'll still be leaking DNS requests.
+
+However, it seems that most programs which go to the trouble of implementing 
+asynchronous DNS requests or doing other tricky things have native SOCKS or
+HTTP proxy support.  
+
+Requests for reverse name lookups are not intercepted.
+
+Finally, the tsocks library is NOT thread-safe, with or without this patch.
+You should not 'torify' multithreaded applications.
+
+
+How does it work?
+-----------------
+
+This patch adds interceptors for common name resolution calls to tsocks.  
+Specifically, the 'gethostbyname', 'getaddrinfo' and 'getipnodebyname' library 
+functions. (gethostbyname_r is not supported).
+
+When a call to one of these functions is intercepted, a SOCKS4A resolve 
+request is used to retrieve the relevant information, and the results are
+cached. 
+
+When the application calls 'connect', the cache is consulted and instead
+of making a SOCKS5 request and supplying the IP address, we connect using 
+the name.  This prevents those messages in the tor logs which look like:
+
+  Sep 23 10:12:20.901 [warn] fetch_from_buf_socks(): Your application (using s
+  ocks5 on port 80) is giving Tor only an IP address. Applications that do DNS
+  resolves themselves may leak information. Consider using Socks4A (e.g. via
+  privoxy or socat) instead.
+
+There are special provisions for handling .onion sites.  When a program asks
+to resolve a name ending in '.onion', no name lookup is performed.  A bogus IP 
+address is returned. The range of unused IP addresses to hand out is called the 
+"deadpool".  This IP address doesn't mean anything in particular, and could be 
+considered a cookie associated with the name.  When the application eventually 
+calls 'connect' with this bogus IP, the cache is consulted and the result is a 
+SOCKS5 request which includes the name of the .onion site.
+
+The default deadpool range is '127.0.69.0/255.255.255.0'.  NOTE: if a resolve
+request results in an IP from the deadpool range then the response is rejected,
+and it appears to the application that the lookup failed.
+
+The lookup cache is kept in mmap'd memory and shared across fork() calls.
+This is because some programs perform name lookups in a child process and 
+then invoke 'connect' in the parent as a kind of "poor man's async DNS".  
+
+
+Advanced configuration options
+------------------------------
+
+The following options have been added to the tsocks configuration file:
+
+tordns_enable
+
+  The default value is 'true'.  If you set it to 'false', tsocks should work 
+  just like it did without the tordns patch.  
+
+  
+tordns_deadpool_range
+
+  The default value is '127.0.69.0/255.255.255.0'.  This specifies what range
+  of IP addresses will be handed to the application as "cookies" for .onion
+  names.  Of course, you should pick a block of addresses which you aren't 
+  going to ever need to actually connect to.    
+
+
+tordns_cache_size
+
+  This specifies the number of IP addresses looked up through socks to cache.
+  The default value is 256. The default value is 256.  Each entry consumes 260 
+  bytes of memory, so the default adds 66,560 bytes of overhead to each 
+  'torified' process. NOTE: if the number of IP addresses in 
+  tordns_deadpool_range is less than the value specified for tordns_cache_size, 
+  then the cache will be shrunk to fit the deadpool range. This is to prevent 
+  duplicate deadpool addresses from ever appearing in the cache.
+
+
+TODO
+----
+
+* Think about how local names get resolved.  Is it important?  For example,
+  if I 'telnet localhost' which using tordns, what should happen?  Should
+  we search through /etc/hosts ourselves or what?  
+  
+* What about the isc library calls like res_init and so on?  How widely are
+  they use?  Does this present a more elegant way to implement this stuff?
+
+* Perhaps intercept res_query etc and try to do something appropriate.
+
+* It should be possible to make this thread-safe with --enable-threads.
+
+* validateconf needs to be updated to understand (and show information about)
+  the tordns configuration options.
+
+* Perhaps intercept reverse name lookups?
+
+* In fact, one could modify tsocks further to play nicely with tor.  For 
+  example, you could prevent nonlocal UDP traffic from being sent at all,
+  and so on.
+
+
+******************************************************
+Questions or comments, please contact:
+Blair Strang (bls at totalinfosecurity.com)
+Caleb Anderson (caleb.anderson at totalinfosecurity.com)
+Carl Purvis (carl.purvis at totalinfosecurity.com)
+
+Total Information Security Ltd.
+http://www.totalinfosecurity.com/
diff --git a/doc/patches/compilewarnings.patch b/doc/patches/compilewarnings.patch
new file mode 100644
index 0000000..9c93be1
--- /dev/null
+++ b/doc/patches/compilewarnings.patch
@@ -0,0 +1,739 @@
+Only in /home/robert/Development/tork/src/tsocks/: .#Makefile.in.1.12
+Only in /home/robert/Development/tork/src/tsocks/: .deps
+Only in /home/robert/Development/tork/src/tsocks/: .libs
+Common subdirectories: /backup/robert/Development/torsocks/CVS and /home/robert/Development/tork/src/tsocks/CVS
+diff -u -x Makefile.am -x Makefile.in -x configure -x INSTALL -x README.TORDNS -x COPYING -x Changelog -x Doxyfile -x FAQ -x TODO /backup/robert/Development/torsocks/ChangeLog /home/robert/Development/tork/src/tsocks/ChangeLog
+--- /backup/robert/Development/torsocks/ChangeLog	2008-06-15 10:43:02.000000000 +0100
++++ /home/robert/Development/tork/src/tsocks/ChangeLog	2007-09-30 16:13:34.000000000 +0100
+@@ -1,15 +1,5 @@
+-version 1.81 - 2006.11.17 ruben at ugr.es
+-  Integrated and resolved the conflicts for the following
+-  patches:
+-    -DNS from totalinfosecurity mentioned below
+-    -Infinite Loop from weasel
+-    -Getpeername from weasel
+-    -Documentation patch from Roderick Schertler
+-    -Localhost patch from Roger Dingledine
+-  (patches 1, 3, 4, 5 and 7 from 
+-  http://wiki.noreply.org/noreply/TheOnionRouter/TSocksPatches)
+-  Patches 2 and 6 were not applied because I don't have access to
+-  osx or bsd and can't test them. (And the bsd patch breaks linux)
++Renamed for TorK to avoid conflicts with existing tsocks installations.
++Robert Hogan
+ 
+ version 1.80tordns - 2005.10.4 bls at totalinfosecurity.com
+    Intercept gethostbyname() and friends, added --tordns
+Only in /home/robert/Development/tork/src/tsocks/: Makefile
+Only in /home/robert/Development/tork/src/tsocks/: Makefile.am~
+Only in /home/robert/Development/tork/src/tsocks/: Makefile.in~
+Only in /home/robert/Development/tork/src/tsocks/: README
+Only in /home/robert/Development/tork/src/tsocks/: TODO~
+Only in /backup/robert/Development/torsocks: acconfig.h
+Only in /home/robert/Development/tork/src/tsocks/: aclocal
+diff -u -x Makefile.am -x Makefile.in -x configure -x INSTALL -x README.TORDNS -x COPYING -x Changelog -x Doxyfile -x FAQ -x TODO /backup/robert/Development/torsocks/common.c /home/robert/Development/tork/src/tsocks/common.c
+--- /backup/robert/Development/torsocks/common.c	2008-06-15 10:43:02.000000000 +0100
++++ /home/robert/Development/tork/src/tsocks/common.c	2008-04-05 22:36:40.000000000 +0100
+@@ -4,7 +4,7 @@
+ 
+ */
+ 
+-#include <config.h>
++#include <config.h>
+ #include <stdio.h>
+ #include <netdb.h>
+ #include <common.h>
+@@ -15,6 +15,7 @@
+ #include <time.h>
+ #include <unistd.h>
+ #include <arpa/inet.h>
++#include <sys/types.h>
+ #include <netinet/in.h>
+ 
+ /* Globals */
+@@ -37,7 +38,7 @@
+ 			#ifdef HAVE_GETHOSTBYNAME
+ 			if ((new = gethostbyname(host)) == (struct hostent *) 0) {
+ 			#endif
+-				return(-1);
++				return(0);
+ 			#ifdef HAVE_GETHOSTBYNAME
+ 			} else {
+ 				ip = ((struct in_addr *) * new->h_addr_list);
+@@ -47,7 +48,7 @@
+ 			}
+ 			#endif
+ 		} else
+-			return(-1);
++			return(0);
+ 	}
+ 
+ 	return (hostaddr);
+@@ -99,10 +100,10 @@
+     return nbits;
+ }
+ 
+-void show_msg(int level, char *fmt, ...) {
+-	va_list ap;
+-	int saveerr;
+-	extern char *progname;
++void show_msg(int level, const char *fmt, ...) {
++   va_list ap;
++   int saveerr;
++/*   extern char *progname; */
+    char timestring[20];
+    time_t timestamp;
+ 
+@@ -128,7 +129,7 @@
+       fprintf(logfile, "%s ", timestring);
+    }
+ 
+-   // fputs(progname, logfile);
++   /* fputs(progname, logfile); */
+ 
+    if (logstamp) {
+       fprintf(logfile, "(%d)", getpid());
+Only in /home/robert/Development/tork/src/tsocks/: common.c~
+diff -u -x Makefile.am -x Makefile.in -x configure -x INSTALL -x README.TORDNS -x COPYING -x Changelog -x Doxyfile -x FAQ -x TODO /backup/robert/Development/torsocks/common.h /home/robert/Development/tork/src/tsocks/common.h
+--- /backup/robert/Development/torsocks/common.h	2008-06-15 10:43:02.000000000 +0100
++++ /home/robert/Development/tork/src/tsocks/common.h	2007-11-02 20:23:55.000000000 +0000
+@@ -1,7 +1,7 @@
+ /* Common functions provided in common.c */
+ 
+ void set_log_options(int, char *, int);
+-void show_msg(int level, char *, ...);
++void show_msg(int level, const char *, ...);
+ int count_netmask_bits(uint32_t mask);
+ unsigned int resolve_ip(char *, int, int);
+ 
+Only in /home/robert/Development/tork/src/tsocks/: common.lo
+Only in /backup/robert/Development/torsocks: config.guess
+Only in /backup/robert/Development/torsocks: config.h.in
+Only in /backup/robert/Development/torsocks: config.status
+Only in /backup/robert/Development/torsocks: config.sub
+Only in /backup/robert/Development/torsocks: configure.in
+diff -u -x Makefile.am -x Makefile.in -x configure -x INSTALL -x README.TORDNS -x COPYING -x Changelog -x Doxyfile -x FAQ -x TODO /backup/robert/Development/torsocks/dead_pool.c /home/robert/Development/tork/src/tsocks/dead_pool.c
+--- /backup/robert/Development/torsocks/dead_pool.c	2008-06-15 10:43:02.000000000 +0100
++++ /home/robert/Development/tork/src/tsocks/dead_pool.c	2008-04-05 22:35:46.000000000 +0100
+@@ -1,5 +1,6 @@
+ #include <stdio.h>
+ #include <sys/socket.h>
++#include <sys/types.h>
+ #include <netinet/in.h>
+ #include <arpa/inet.h>
+ #include <netdb.h>
+@@ -29,10 +30,11 @@
+ }
+ 
+ dead_pool *
+-init_pool(int pool_size, struct in_addr deadrange_base, 
++init_pool(unsigned int pool_size, struct in_addr deadrange_base, 
+     struct in_addr deadrange_mask, char *sockshost, uint16_t socksport)
+ {
+-    int i, deadrange_bits, deadrange_width, deadrange_size;
++    unsigned int i, deadrange_size, deadrange_width;
++    int deadrange_bits;
+     struct in_addr socks_server;
+     dead_pool *newpool = NULL;
+ 
+@@ -182,7 +184,7 @@
+ int 
+ search_pool_for_name(dead_pool *pool, const char *name) 
+ {
+-  int i;
++  unsigned int i;
+   for(i=0; i < pool->n_entries; i++){
+     if(strcmp(name, pool->entries[i].name) == 0){
+       return i;
+@@ -194,7 +196,7 @@
+ char *
+ get_pool_entry(dead_pool *pool, struct in_addr *addr)
+ {
+-  int i;
++  unsigned int i;
+   uint32_t intaddr = addr->s_addr;
+ 
+   if(pool == NULL) {
+Only in /home/robert/Development/tork/src/tsocks/: dead_pool.c~
+diff -u -x Makefile.am -x Makefile.in -x configure -x INSTALL -x README.TORDNS -x COPYING -x Changelog -x Doxyfile -x FAQ -x TODO /backup/robert/Development/torsocks/dead_pool.h /home/robert/Development/tork/src/tsocks/dead_pool.h
+--- /backup/robert/Development/torsocks/dead_pool.h	2008-06-15 10:43:02.000000000 +0100
++++ /home/robert/Development/tork/src/tsocks/dead_pool.h	2007-11-02 20:59:58.000000000 +0000
+@@ -1,7 +1,7 @@
+ #ifndef _DEAD_POOL_H
+ #define _DEAD_POOL_H
+ 
+-#include <config.h>
++#include <config.h>
+ 
+ extern int (*realconnect)(CONNECT_SIGNATURE);
+ extern int (*realclose)(CLOSE_SIGNATURE);
+@@ -16,7 +16,7 @@
+ 
+ struct struct_dead_pool {
+   pool_ent *entries;            /* Points to array of pool entries */
+-  int n_entries;                /* Number of entries in the deadpool */
++  unsigned int n_entries;       /* Number of entries in the deadpool */
+   unsigned int deadrange_base;  /* Deadrange start IP in host byte order */
+   unsigned int deadrange_mask;  /* Deadrange netmask in host byte order */
+   unsigned int deadrange_size;  /* Number of IPs in the deadrange */
+@@ -29,7 +29,7 @@
+ 
+ typedef struct struct_dead_pool dead_pool;
+ 
+-dead_pool *init_pool(int deadpool_size, struct in_addr deadrange_base, 
++dead_pool *init_pool(unsigned int deadpool_size, struct in_addr deadrange_base, 
+     struct in_addr deadrange_mask, char *sockshost, uint16_t socksport);
+ int is_dead_address(dead_pool *pool, uint32_t addr);
+ char *get_pool_entry(dead_pool *pool, struct in_addr *addr);
+Only in /home/robert/Development/tork/src/tsocks/: dead_pool.lo
+Only in /home/robert/Development/tork/src/tsocks/: getpeername.patch
+Only in /home/robert/Development/tork/src/tsocks/: infiniteloop.patch
+diff -u -x Makefile.am -x Makefile.in -x configure -x INSTALL -x README.TORDNS -x COPYING -x Changelog -x Doxyfile -x FAQ -x TODO /backup/robert/Development/torsocks/inspectsocks.c /home/robert/Development/tork/src/tsocks/inspectsocks.c
+--- /backup/robert/Development/torsocks/inspectsocks.c	2008-06-15 10:43:02.000000000 +0100
++++ /home/robert/Development/tork/src/tsocks/inspectsocks.c	2008-04-05 22:36:40.000000000 +0100
+@@ -23,11 +23,11 @@
+ */
+ 
+ /* Global configuration variables */ 
+-char *progname = "inspectsocks";	   /* Name for error msgs      */
++const char *progname = "inspectsocks";	   /* Name for error msgs      */
+ int defaultport	= 1080;			   /* Default SOCKS port       */
+ 
+ /* Header Files */
+-#include <config.h>
++#include <config.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <unistd.h>
+@@ -35,6 +35,7 @@
+ #include <sys/socket.h>
+ #include <string.h>
+ #include <strings.h>
++#include <sys/types.h>
+ #include <netinet/in.h>
+ #include <arpa/inet.h>
+ #include <errno.h>
+@@ -44,7 +45,7 @@
+                  int reqlen, void *rep, int replen);
+ 
+ int main(int argc, char *argv[]) {
+-	char *usage = "Usage: <socks server name/ip> [portno]";
++	const char *usage = "Usage: <socks server name/ip> [portno]";
+ 	char req[9];
+ 	char resp[100];
+ 	unsigned short int portno = defaultport;
+@@ -68,7 +69,7 @@
+ 			}
+ 		case 2:
+ 			if ((server.sin_addr.s_addr = resolve_ip(argv[1], 1,HOSTNAMES))
+-                            ==  -1) {
++                            ==  0) {
+ 				show_msg(MSGERR, "Invalid IP/host specified (%s)\n", argv[1]);
+ 				show_msg(MSGERR, "%s\n", usage);
+ 				exit(1);
+Only in /home/robert/Development/tork/src/tsocks/: inspectsocks.c~
+Only in /home/robert/Development/tork/src/tsocks/: libtorksocks.la
+diff -u -x Makefile.am -x Makefile.in -x configure -x INSTALL -x README.TORDNS -x COPYING -x Changelog -x Doxyfile -x FAQ -x TODO /backup/robert/Development/torsocks/parser.c /home/robert/Development/tork/src/tsocks/parser.c
+--- /backup/robert/Development/torsocks/parser.c	2008-06-15 10:43:02.000000000 +0100
++++ /home/robert/Development/tork/src/tsocks/parser.c	2008-04-05 22:25:54.000000000 +0100
+@@ -12,7 +12,7 @@
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <errno.h>
+-#include <config.h>
++#include <config.h>
+ #include "common.h"
+ #include "parser.h"
+ 
+@@ -24,15 +24,15 @@
+ static int check_server(struct serverent *);
+ static int tokenize(char *, int, char *[]);
+ static int handle_path(struct parsedfile *, int, int, char *[]);
+-static int handle_endpath(struct parsedfile *, int, int, char *[]);
+-static int handle_reaches(struct parsedfile *, int, char *);
++static int handle_endpath(struct parsedfile *, int, int);
++static int handle_reaches(int, char *);
+ static int handle_server(struct parsedfile *, int, char *);
+ static int handle_type(struct parsedfile *config, int, char *);
+ static int handle_port(struct parsedfile *config, int, char *);
+-static int handle_local(struct parsedfile *, int, char *);
++static int handle_local(struct parsedfile *, int, const char *);
+ static int handle_tordns_enabled(struct parsedfile *, int, char *);
+-static int handle_tordns_deadpool_range(struct parsedfile *, int, char *);
+-static int handle_tordns_cache_size(struct parsedfile *, int, char *);
++static int handle_tordns_deadpool_range(struct parsedfile *, int, const char *);
++static int handle_tordns_cache_size(struct parsedfile *, char *);
+ static int handle_defuser(struct parsedfile *, int, char *);
+ static int handle_defpass(struct parsedfile *, int, char *);
+ static int make_netent(char *value, struct netent **ent);
+@@ -54,6 +54,7 @@
+    config->tordns_cache_size = 256;
+    config->tordns_enabled = 1;
+ 
++
+ 	/* If a filename wasn't provided, use the default */
+ 	if (filename == NULL) {
+ 		strncpy(line, CONF_FILE, sizeof(line) - 1);
+@@ -62,15 +63,19 @@
+ 		filename = line;
+ 	}
+ 
+-	/* Read the configuration file */
++	/* If there is no configuration file use reasonable defaults for Tor */
+ 	if ((conf = fopen(filename, "r")) == NULL) {
+ 		show_msg(MSGERR, "Could not open socks configuration file "
+ 			   "(%s), assuming all networks local\n", filename);
+-        handle_local(config, 0, "0.0.0.0/0.0.0.0");
++        memset(&(config->defaultserver), 0x0, sizeof(config->defaultserver));
++		check_server(&(config->defaultserver));
++		handle_local(config, 0, "127.0.0.0/255.0.0.0");
++/*        handle_local(config, 0, "0.0.0.0/0.0.0.0");*/
+ 		rc = 1; /* Severe errors reading configuration */
+ 	}	
+ 	else {
+-      memset(&(config->defaultserver), 0x0, sizeof(config->defaultserver));
++
++        memset(&(config->defaultserver), 0x0, sizeof(config->defaultserver));
+ 
+ 		while (NULL != fgets(line, MAXLINE, conf)) {
+ 			/* This line _SHOULD_ end in \n so we  */
+@@ -82,11 +87,8 @@
+ 		} 
+ 		fclose(conf);
+ 
+-		if (!config->localnets) {
+-                        /* Use 127.0.0.1/255.0.0.0 by default */
+-                        handle_local(config, 0, "127.0.0.0/255.0.0.0");
+-                }
+-
++		/* Always add the 127.0.0.1/255.0.0.0 subnet to local */
++		handle_local(config, 0, "127.0.0.0/255.0.0.0");
+ 
+ 		/* Check default server */
+ 		check_server(&(config->defaultserver));
+@@ -108,9 +110,14 @@
+ /* Check server entries (and establish defaults) */
+ static int check_server(struct serverent *server) {
+ 
+-	/* Default to the default SOCKS port */
++	/* Default to the default Tor Socks port */
+ 	if (server->port == 0) {
+-		server->port = 1080;
++		server->port = 9050;
++	}
++
++	/* Default to a presumably local installation of Tor */
++	if (server->address == NULL) {
++		server->address = strdup("127.0.0.1");
+ 	}
+ 
+ 	/* Default to SOCKS V4 */
+@@ -137,7 +144,7 @@
+ 	/* Set the spare slots to an empty string to simplify */
+ 	/* processing                                         */
+ 	for (i = nowords; i < 10; i++) 
+-		words[i] = "";
++		words[i] = NULL;
+ 
+ 	if (nowords > 0) {
+ 		/* Now this can either be a "path" block starter or */
+@@ -146,7 +153,7 @@
+ 		if (!strcmp(words[0], "path")) {
+ 			handle_path(config, lineno, nowords, words);
+ 		} else if (!strcmp(words[0], "}")) {
+-			handle_endpath(config, lineno, nowords, words);
++			handle_endpath(config, lineno, nowords);
+ 		} else {
+ 			/* Has to be a pair */
+ 			if ((nowords != 3) || (strcmp(words[1], "="))) {
+@@ -154,7 +161,7 @@
+ 					   "on line %d in configuration "
+ 					   "file, \"%s\"\n", lineno, savedline);
+ 			} else if (!strcmp(words[0], "reaches")) {
+-				handle_reaches(config, lineno, words[2]);
++				handle_reaches(lineno, words[2]);
+ 			} else if (!strcmp(words[0], "server")) {
+ 				handle_server(config, lineno, words[2]);
+ 			} else if (!strcmp(words[0], "server_port")) {
+@@ -172,7 +179,7 @@
+             } else if (!strcmp(words[0], "tordns_deadpool_range")) {
+                 handle_tordns_deadpool_range(config, lineno, words[2]);
+             } else if (!strcmp(words[0], "tordns_cache_size")) {
+-                handle_tordns_cache_size(config, lineno, words[2]);
++                handle_tordns_cache_size(config, words[2]);
+             } else {
+ 				show_msg(MSGERR, "Invalid pair type (%s) specified "
+ 					   "on line %d in configuration file, "
+@@ -244,7 +251,7 @@
+ 	return(0);
+ }
+ 
+-static int handle_endpath(struct parsedfile *config, int lineno, int nowords, char *words[]) {
++static int handle_endpath(struct parsedfile *config, int lineno, int nowords) {
+ 
+ 	if (nowords != 1) {
+ 		show_msg(MSGERR, "Badly formed path close statement on line "
+@@ -261,7 +268,7 @@
+ 	return(0);
+ }
+ 
+-static int handle_reaches(struct parsedfile *config, int lineno, char *value) {
++static int handle_reaches(int lineno, char *value) {
+ 	int rc;
+ 	struct netent *ent;
+ 
+@@ -465,7 +472,7 @@
+     return 0;
+ }
+ 
+-static int handle_tordns_cache_size(struct parsedfile *config, int lineno,
++static int handle_tordns_cache_size(struct parsedfile *config,
+                            char *value)
+ {
+     char *endptr;
+@@ -489,7 +496,7 @@
+ }
+ 
+ static int handle_tordns_deadpool_range(struct parsedfile *config, int lineno, 
+-                           char *value)
++                           const char *value)
+ {
+     int rc;
+     struct netent *ent;
+@@ -508,7 +515,7 @@
+         return(0);
+     }
+ 
+-    rc = make_netent(value, &ent);
++    rc = make_netent((char *)value, &ent);
+     /* This is copied from handle_local and should probably be folded into
+        a generic whinge() function or something */
+     switch(rc) {
+@@ -559,7 +566,7 @@
+     return 0;
+ }
+ 
+-static int handle_local(struct parsedfile *config, int lineno, char *value) {
++static int handle_local(struct parsedfile *config, int lineno, const char *value) {
+ 	int rc;
+ 	struct netent *ent;
+ 
+@@ -571,7 +578,7 @@
+ 		return(0);
+ 	}
+ 
+-	rc = make_netent(value, &ent);
++	rc = make_netent((char *)value, &ent);
+ 	switch(rc) {
+ 		case 1:
+ 			show_msg(MSGERR, "Local network specification (%s) is not validly "
+@@ -777,7 +784,7 @@
+ /* standard strsep and this function is that this one will          */
+ /* set *separator to the character separator found if it isn't null */
+ char *strsplit(char *separator, char **text, const char *search) {
+-   int len;
++   unsigned int len;
+    char *ret;
+ 
+    ret = *text;
+Only in /home/robert/Development/tork/src/tsocks/: parser.c~
+diff -u -x Makefile.am -x Makefile.in -x configure -x INSTALL -x README.TORDNS -x COPYING -x Changelog -x Doxyfile -x FAQ -x TODO /backup/robert/Development/torsocks/parser.h /home/robert/Development/tork/src/tsocks/parser.h
+--- /backup/robert/Development/torsocks/parser.h	2008-06-15 10:43:02.000000000 +0100
++++ /home/robert/Development/tork/src/tsocks/parser.h	2007-11-02 21:00:20.000000000 +0000
+@@ -35,7 +35,7 @@
+    struct serverent *paths;
+    int tordns_enabled;
+    int tordns_failopen;
+-   int tordns_cache_size;
++   unsigned int tordns_cache_size;
+    struct netent *tordns_deadpool_range;
+ };
+ 
+Only in /home/robert/Development/tork/src/tsocks/: parser.lo
+Only in /home/robert/Development/tork/src/tsocks/: soname.diff
+Only in /home/robert/Development/tork/src/tsocks/: stamp-h2
+Only in /home/robert/Development/tork/src/tsocks/: tork-tsocks.conf
+Only in /home/robert/Development/tork/src/tsocks/: torkify
+Only in /home/robert/Development/tork/src/tsocks/: torkify.1
+Only in /home/robert/Development/tork/src/tsocks/: torkify.in
+Only in /backup/robert/Development/torsocks: torksock.diff
+Only in /home/robert/Development/tork/src/tsocks/: torksocks
+Only in /home/robert/Development/tork/src/tsocks/: torksocks.1
+Only in /home/robert/Development/tork/src/tsocks/: torksocks.8
+Only in /home/robert/Development/tork/src/tsocks/: torksocks.announce
+Only in /home/robert/Development/tork/src/tsocks/: torksocks.conf.5
+Only in /backup/robert/Development/torsocks: torksocks.diff
+Only in /home/robert/Development/tork/src/tsocks/: torksocks.in
+Only in /home/robert/Development/tork/src/tsocks/: torksocks.in~
+Only in /backup/robert/Development/torsocks: torksocks2.diff
+Only in /backup/robert/Development/torsocks: torksockscols.diff
+Only in /backup/robert/Development/torsocks: tsocks
+Only in /backup/robert/Development/torsocks: tsocks.1
+Only in /backup/robert/Development/torsocks: tsocks.8
+Only in /backup/robert/Development/torsocks: tsocks.announce
+diff -u -x Makefile.am -x Makefile.in -x configure -x INSTALL -x README.TORDNS -x COPYING -x Changelog -x Doxyfile -x FAQ -x TODO /backup/robert/Development/torsocks/tsocks.c /home/robert/Development/tork/src/tsocks/tsocks.c
+--- /backup/robert/Development/torsocks/tsocks.c	2008-06-15 10:43:01.000000000 +0100
++++ /home/robert/Development/tork/src/tsocks/tsocks.c	2008-06-14 20:11:26.000000000 +0100
+@@ -21,14 +21,14 @@
+ */
+ 
+ /* PreProcessor Defines */
+-#include <config.h>
++#include <config.h>
+ 
+ #ifdef USE_GNU_SOURCE
+ #define _GNU_SOURCE
+ #endif
+ 
+ /* Global configuration variables */
+-char *progname = "libtsocks";         	   /* Name used in err msgs    */
++const char *progname = "libtsocks";         	   /* Name used in err msgs    */
+ 
+ /* Header Files */
+ #include <stdio.h>
+@@ -39,6 +39,7 @@
+ #include <sys/socket.h>
+ #include <string.h>
+ #include <strings.h>
++#include <sys/types.h>
+ #include <netinet/in.h>
+ #include <arpa/inet.h>
+ #include <sys/poll.h>
+@@ -76,7 +77,7 @@
+ static char *conffile = NULL;
+ 
+ /* Exported Function Prototypes */
+-void _init(void);
++void __attribute__ ((constructor)) tsocks_init(void);
+ int connect(CONNECT_SIGNATURE);
+ int select(SELECT_SIGNATURE);
+ int poll(POLL_SIGNATURE);
+@@ -114,11 +115,11 @@
+ static int read_socksv5_connect(struct connreq *conn);
+ static int read_socksv5_auth(struct connreq *conn);
+ #ifdef USE_TOR_DNS
+-static int deadpool_init();
++static int deadpool_init(void);
+ static int send_socksv4a_request(struct connreq *conn, const char *onion_host);
+ #endif
+ 
+-void _init(void) {
++void tsocks_init(void) {
+ #ifdef USE_OLD_DLSYM
+ 	void *lib;
+ #endif
+@@ -139,50 +140,49 @@
+ 	#ifdef USE_SOCKS_DNS
+ 	realresinit = dlsym(RTLD_NEXT, "res_init");
+ 	#endif
+-        #ifdef USE_TOR_DNS
+-	realgethostbyname = dlsym(RTLD_NEXT, "gethostbyname");
+-	realgetaddrinfo = dlsym(RTLD_NEXT, "getaddrinfo");
+-	realgetipnodebyname = dlsym(RTLD_NEXT, "getipnodebyname");
+-        #endif
++    #ifdef USE_TOR_DNS
++    realgethostbyname = dlsym(RTLD_NEXT, "gethostbyname");
++    realgetaddrinfo = dlsym(RTLD_NEXT, "getaddrinfo");
++    realgetipnodebyname = dlsym(RTLD_NEXT, "getipnodebyname");
++    #endif
+ #else
+ 	lib = dlopen(LIBCONNECT, RTLD_LAZY);
+ 	realconnect = dlsym(lib, "connect");
+ 	realselect = dlsym(lib, "select");
+ 	realpoll = dlsym(lib, "poll");
+-	realgetpeername = dlsym(lib, "getpeername");
+ 	#ifdef USE_SOCKS_DNS
+ 	realresinit = dlsym(lib, "res_init");
+ 	#endif
+-	#ifdef USE_TOR_DNS
+-	realgethostbyname = dlsym(lib, "gethostbyname");
+-	realgetaddrinfo = dlsym(lib, "getaddrinfo");
+-	realgetipnodebyname = dlsym(RTLD_NEXT, "getipnodebyname");
+-        #endif
+-	dlclose(lib);
++    #ifdef USE_TOR_DNS
++    realgethostbyname = dlsym(lib, "gethostbyname");
++    realgetaddrinfo = dlsym(lib, "getaddrinfo");
++    realgetipnodebyname = dlsym(RTLD_NEXT, "getipnodebyname");
++    #endif
++    dlclose(lib);	
+ 	lib = dlopen(LIBC, RTLD_LAZY);
+ 	realclose = dlsym(lib, "close");
+-	dlclose(lib);
++	dlclose(lib);	
+ #endif
+ #ifdef USE_TOR_DNS
+-     /* Unfortunately, we can't do this lazily because otherwise our mmap'd
+-        area won't be shared across fork()s. */
+-     deadpool_init();
+-#endif
+-
++    /* Unfortunately, we can't do this lazily because otherwise our mmap'd
++       area won't be shared across fork()s. */
++    deadpool_init();
++#endif 
+ }
+ 
+ static int get_environment() {
+    static int done = 0;
++#ifdef ALLOW_MSG_OUTPUT
+    int loglevel = MSGERR;
+    char *logfile = NULL;
+    char *env;
+-
++#endif
+    if (done)
+       return(0);
+ 
+    /* Determine the logging level */
+ #ifndef ALLOW_MSG_OUTPUT
+-   set_log_options(-1, stderr, 0);
++   set_log_options(-1, (char *)stderr, 0);
+ #else
+    if ((env = getenv("TSOCKS_DEBUG")))
+       loglevel = atoi(env);
+@@ -212,7 +212,7 @@
+    config = malloc(sizeof(*config));
+    if (!config)
+       return(0);
+-	read_config(conffile, config);
++   read_config(conffile, config);
+    if (config->paths)
+       show_msg(MSGDEBUG, "First lineno for first path is %d\n", config->paths->lineno);
+ 
+@@ -222,14 +222,15 @@
+ }
+ 
+ int connect(CONNECT_SIGNATURE) {
+-	struct sockaddr_in *connaddr;
+-	struct sockaddr_in peer_address;
+-	struct sockaddr_in server_address;
+-   int gotvalidserver = 0, rc, namelen = sizeof(peer_address);
+-	int sock_type = -1;
+-	int sock_type_len = sizeof(sock_type);
+-	unsigned int res = -1;
+-	struct serverent *path;
++   struct sockaddr_in *connaddr;
++   struct sockaddr_in peer_address;
++   struct sockaddr_in server_address;
++   int gotvalidserver = 0, rc;
++   unsigned int namelen = sizeof(peer_address);
++   int sock_type = -1;
++   unsigned int sock_type_len = sizeof(sock_type);
++   int res = -1;
++   struct serverent *path;
+    struct connreq *newconn;
+ 
+    get_environment();
+@@ -248,6 +249,14 @@
+ 	getsockopt(__fd, SOL_SOCKET, SO_TYPE, 
+ 		   (void *) &sock_type, &sock_type_len);
+ 
++    show_msg(MSGDEBUG, "sin_family: %i "
++                        "\n",
++                     connaddr->sin_family);
++
++    show_msg(MSGDEBUG, "sockopt: %i "
++                        "\n",
++                     sock_type);
++
+ 	/* If this isn't an INET socket for a TCP stream we can't  */
+ 	/* handle it, just call the real connect now               */
+    if ((connaddr->sin_family != AF_INET) ||
+@@ -564,7 +573,8 @@
+ 
+ int poll(POLL_SIGNATURE) {
+    int nevents = 0;
+-   int rc = 0, i;
++   int rc = 0;
++   unsigned int i;
+    int setevents = 0;
+    int monitoring = 0;
+    struct connreq *conn, *nextconn;
+@@ -1354,7 +1364,7 @@
+ #endif
+ 
+ #ifdef USE_TOR_DNS
+-static int deadpool_init()
++static int deadpool_init(void)
+ {
+   if(!pool) {
+       get_environment();
+Only in /home/robert/Development/tork/src/tsocks/: tsocks.c.rej
+Only in /backup/robert/Development/torsocks: tsocks.conf.5
+Only in /home/robert/Development/tork/src/tsocks/: tsocks.c~
+diff -u -x Makefile.am -x Makefile.in -x configure -x INSTALL -x README.TORDNS -x COPYING -x Changelog -x Doxyfile -x FAQ -x TODO /backup/robert/Development/torsocks/tsocks.h /home/robert/Development/tork/src/tsocks/tsocks.h
+--- /backup/robert/Development/torsocks/tsocks.h	2008-06-15 10:43:01.000000000 +0100
++++ /home/robert/Development/tork/src/tsocks/tsocks.h	2007-11-02 20:35:02.000000000 +0000
+@@ -50,8 +50,8 @@
+    int selectevents;
+ 
+    /* Buffer for sending and receiving on the socket */
+-   int datalen;
+-   int datadone;
++   unsigned int datalen;
++   unsigned int datadone;
+    char buffer[2048];
+ 
+    struct connreq *next;
+Only in /backup/robert/Development/torsocks: tsocks.kdevelop
+Only in /backup/robert/Development/torsocks: tsocks.kdevelop.pcs
+Only in /backup/robert/Development/torsocks: tsocks.kdevses
+Only in /home/robert/Development/tork/src/tsocks/: tsocks.lo
+diff -u -x Makefile.am -x Makefile.in -x configure -x INSTALL -x README.TORDNS -x COPYING -x Changelog -x Doxyfile -x FAQ -x TODO /backup/robert/Development/torsocks/validateconf.c /home/robert/Development/tork/src/tsocks/validateconf.c
+--- /backup/robert/Development/torsocks/validateconf.c	2008-06-15 10:43:01.000000000 +0100
++++ /home/robert/Development/tork/src/tsocks/validateconf.c	2008-04-05 22:36:40.000000000 +0100
+@@ -23,16 +23,17 @@
+ */
+ 
+ /* Global configuration variables */ 
+-char *progname = "validateconf";	      /* Name for error msgs      */
++const char *progname = "validateconf";	      /* Name for error msgs      */
+ 
+ /* Header Files */
+-#include <config.h>
++#include <config.h>
+ #include <stdio.h>
+ #include <stdlib.h>
+ #include <unistd.h>
+ #include <sys/types.h>
+ #include <sys/socket.h>
+ #include <string.h>
++#include <sys/types.h>
+ #include <netinet/in.h>
+ #include <arpa/inet.h>
+ #include <errno.h>
+@@ -44,7 +45,7 @@
+ void test_host(struct parsedfile *config, char *);
+ 
+ int main(int argc, char *argv[]) {
+-	char *usage = "Usage: [-f conf file] [-t hostname/ip[:port]]"; 
++	const char *usage = "Usage: [-f conf file] [-t hostname/ip[:port]]"; 
+ 	char *filename = NULL;
+ 	char *testhost = NULL;
+    struct parsedfile config;
+@@ -103,7 +104,7 @@
+    }
+ 
+ 	/* First resolve the host to an ip */
+-	if ((hostaddr.s_addr = resolve_ip(hostname, 0, 1)) == -1) {
++	if ((hostaddr.s_addr = resolve_ip(hostname, 0, 1)) == 0) {
+ 		fprintf(stderr, "Error: Cannot resolve %s\n", host);
+ 		return;
+ 	} else {
+@@ -187,13 +188,13 @@
+ 	if (server->address != NULL) 
+ 		printf("Server:       %s (%s)\n", server->address, 
+ 	       		((res.s_addr = resolve_ip(server->address, 0, 
+-						  HOSTNAMES)) == -1 
++						  HOSTNAMES)) == 0 
+ 			 ? "Invalid!" : inet_ntoa(res)));
+ 	else
+ 		printf("Server:       ERROR! None specified\n");
+ 
+ 	/* Check the server is on a local net */
+-	if ((server->address != NULL) && (res.s_addr != -1) && 
++	if ((server->address != NULL) && (res.s_addr != 0) && 
+ 	    (is_local(config, &res))) 
+ 		fprintf(stderr, "Error: Server is not on a network "
+ 				"specified as local\n");
+Only in /home/robert/Development/tork/src/tsocks/: validateconf.c~
diff --git a/doc/patches/conffile.patch b/doc/patches/conffile.patch
new file mode 100644
index 0000000..1dd6491
--- /dev/null
+++ b/doc/patches/conffile.patch
@@ -0,0 +1,11 @@
+--- tsocks.8.~1~        2002-03-16 05:20:51.000000000 -0500
++++ tsocks.8    2005-06-03 08:37:39.000000000 -0400
+@@ -59,7 +59,7 @@
+ variables as follows: 
+ 
+ .TP
+-.I TSOCKS_CONFFILE
++.I TSOCKS_CONF_FILE
+ This environment variable overrides the default location of the tsocks 
+ configuration file. This variable is not honored if the program tsocks
+ is embedded in is setuid. In addition this environment variable can
diff --git a/doc/patches/getaddrbyhost.patch b/doc/patches/getaddrbyhost.patch
new file mode 100644
index 0000000..29b2234
--- /dev/null
+++ b/doc/patches/getaddrbyhost.patch
@@ -0,0 +1,696 @@
+Index: common.c
+===================================================================
+RCS file: /cvsroot/tork/torsocks/common.c,v
+retrieving revision 1.2
+diff -p -U3 -r1.2 common.c
+--- common.c	15 Jun 2008 10:01:03 -0000	1.2
++++ common.c	18 Jun 2008 21:21:34 -0000
+@@ -26,6 +26,52 @@ char logfilename[256];    /* Name of fil
+ FILE *logfile = NULL;     /* File to which messages should be logged */
+ int logstamp = 0;         /* Timestamp (and pid stamp) messages */
+ 
++
++/**
++ * Read a 16-bit value beginning at <b>cp</b>.  Equivalent to
++ * *(uint16_t*)(cp), but will not cause segfaults on platforms that forbid
++ * unaligned memory access.
++ */
++uint16_t
++get_uint16(const char *cp)
++{
++  uint16_t v;
++  memcpy(&v,cp,2);
++  return v;
++}
++/**
++ * Read a 32-bit value beginning at <b>cp</b>.  Equivalent to
++ * *(uint32_t*)(cp), but will not cause segfaults on platforms that forbid
++ * unaligned memory access.
++ */
++uint32_t
++get_uint32(const char *cp)
++{
++  uint32_t v;
++  memcpy(&v,cp,4);
++  return v;
++}
++/**
++ * Set a 16-bit value beginning at <b>cp</b> to <b>v</b>. Equivalent to
++ * *(uint16_t)(cp) = v, but will not cause segfaults on platforms that forbid
++ * unaligned memory access. */
++void
++set_uint16(char *cp, uint16_t v)
++{
++  memcpy(cp,&v,2);
++}
++/**
++ * Set a 32-bit value beginning at <b>cp</b> to <b>v</b>. Equivalent to
++ * *(uint32_t)(cp) = v, but will not cause segfaults on platforms that forbid
++ * unaligned memory access. */
++void
++set_uint32(char *cp, uint32_t v)
++{
++  memcpy(cp,&v,4);
++}
++
++
++
+ unsigned int resolve_ip(char *host, int showmsg, int allownames) {
+ 	struct hostent *new;
+ 	unsigned int	hostaddr;
+Index: dead_pool.c
+===================================================================
+RCS file: /cvsroot/tork/torsocks/dead_pool.c,v
+retrieving revision 1.2
+diff -p -U3 -r1.2 dead_pool.c
+--- dead_pool.c	15 Jun 2008 10:02:41 -0000	1.2
++++ dead_pool.c	18 Jun 2008 21:21:35 -0000
+@@ -15,7 +15,8 @@ void get_next_dead_address(dead_pool *po
+ 
+ static int
+ do_resolve(const char *hostname, uint32_t sockshost, uint16_t socksport,
+-           uint32_t *result_addr);
++           uint32_t *result_addr, const void *addr,
++           int version, int reverse, char **result_hostname);
+ 
+ /* Compares the last strlen(s2) characters of s1 with s2.  Returns as for
+    strcasecmp. */
+@@ -77,6 +78,8 @@ init_pool(unsigned int pool_size, struct
+         return NULL;
+     }
+ 
++    show_msg(MSGWARN, "init_pool: sockshost %s ", sockshost);
++
+     /* Initialize the dead_pool structure */
+ #ifdef HAVE_INET_ATON
+     inet_aton(sockshost, &socks_server);
+@@ -139,6 +142,7 @@ store_pool_entry(dead_pool *pool, char *
+   int oldpos;
+   int rc;
+   uint32_t intaddr;
++  char *result_hostname;
+ 
+   show_msg(MSGDEBUG, "store_pool_entry: storing '%s'\n", hostname);
+   show_msg(MSGDEBUG, "store_pool_entry: write pos is: %d\n", pool->write_pos);
+@@ -156,7 +160,9 @@ store_pool_entry(dead_pool *pool, char *
+   if(strcasecmpend(hostname, ".onion") == 0) {
+       get_next_dead_address(pool, &pool->entries[position].ip);
+   } else {
+-      rc = do_resolve(hostname, pool->sockshost, pool->socksport, &intaddr);
++      rc = do_resolve(hostname, pool->sockshost, pool->socksport, &intaddr, 0,
++                  4 /*SOCKS5*/, 0 /*Reverse*/, &result_hostname);
++
+       if(rc != 0) {
+           show_msg(MSGWARN, "failed to resolve: %s\n", hostname);
+           return -1;
+@@ -237,7 +243,32 @@ build_socks4a_resolve_request(char **out
+   return len;
+ }
+ 
++static int
++build_socks5_resolve_ptr_request(char **out, const void *_addr)
++{
++  size_t len;
++  const struct in_addr *addr=_addr;
++
++  len = 12;
++  *out = malloc(len);
++  (*out)[0] = 5;      /* SOCKS version 5 */
++  (*out)[1] = '\xF1'; /* Command: reverse resolve.
++                         see doc/socks-extensions.txt*/
++  (*out)[2] = '\x00'; /* RSV */
++  (*out)[3] = '\x01'; /* ATYP: IP V4 address: X'01' */
++
++  set_uint32((*out)+4, addr->s_addr);/*IP*/
++  set_uint16((*out)+4+4, 0); /* port */
++
++//   memcpy((*out)+4, &addr.s_addr,4); /*IP*/
++//   memcpy((*out)+4+4, *(uint32_t)0, 2); /* port */
++
++  return len;
++}
++
+ #define RESPONSE_LEN 8
++#define SOCKS5_LEN 4
++#define METHODRESPONSE_LEN 2
+ 
+ static int
+ parse_socks4a_resolve_response(const char *response, size_t len,
+@@ -272,43 +303,188 @@ parse_socks4a_resolve_response(const cha
+ }
+ 
+ static int
++parse_socks5_resolve_ptr_response(int s,const char *response, size_t len,
++                               uint32_t *result_addr, char ***result_hostname)
++{
++    char reply_buf[4];
++    int r;
++
++    len=0;
++    while (len < SOCKS5_LEN) {
++      r = recv(s, reply_buf+len, SOCKS5_LEN-len, 0);
++      if (r==0) {
++        show_msg(MSGWARN, "do_resolve: EOF while reading SOCKS5 response\n"); 
++        return -1;
++      }
++      if (r<0) {
++        show_msg(MSGWARN, "do_resolve: error reading SOCKS5 response\n"); 
++        return -1;
++      }
++      len += r;
++    }
++
++    if (reply_buf[0] != 5) {
++      show_msg(MSGWARN, "Bad SOCKS5 reply version.");
++      return -1;
++    }
++    if (reply_buf[1] != 0) {
++      show_msg(MSGWARN,"Got status response '%u': SOCKS5 request failed.",
++               (unsigned)reply_buf[1]);
++      return -1;
++    }
++    if (reply_buf[3] == 1) {
++      /* IPv4 address */
++      len=0;
++      while (len < SOCKS5_LEN) {
++        r = recv(s, reply_buf+len, SOCKS5_LEN-len, 0);
++        if (r==0) {
++          show_msg(MSGWARN, "do_resolve: EOF while reading SOCKS5 response\n"); 
++          return -1;
++        }
++        if (r<0) {
++          show_msg(MSGWARN, "do_resolve: error reading address in SOCKS5 response\n"); 
++          return -1;
++        }
++        len += r;
++      }
++      *result_addr = ntohl(get_uint32(reply_buf));
++    } else if (reply_buf[3] == 3) {
++      size_t result_len;
++      len=0;
++      while (len < 1) {
++        r = recv(s, reply_buf+len, 1-len, 0);
++        if (r==0) {
++          show_msg(MSGWARN, "do_resolve: EOF while reading SOCKS5 response\n"); 
++          return -1;
++        }
++        if (r<0) {
++          show_msg(MSGWARN, "do_resolve: error reading address length in SOCKS5 response\n"); 
++          return -1;
++        }
++        len += r;
++      }
++      result_len = *(uint8_t*)(reply_buf);
++      **result_hostname = malloc(result_len+1);
++      len=0;
++      while (len < (int) result_len) {
++        r = recv(s, **result_hostname+len, result_len-len, 0);
++        if (r==0) {
++          show_msg(MSGWARN, "do_resolve: EOF while reading SOCKS5 response\n"); 
++          return -1;
++        }
++        if (r<0) {
++          show_msg(MSGWARN, "do_resolve: error reading hostname in SOCKS5 response\n");
++          return -1;
++        }
++        len += r;
++      }
++
++      (**result_hostname)[result_len] = '\0';
++    }
++
++  return 0;
++}
++
++static int
+ do_resolve(const char *hostname, uint32_t sockshost, uint16_t socksport,
+-           uint32_t *result_addr)
++           uint32_t *result_addr, const void *addr,
++           int version, int reverse, char **result_hostname)
+ {
+   int s;
+   struct sockaddr_in socksaddr;
+-  char *req, *cp;
+-  int r, len;
++  char *req, *cp=NULL;
++  int r, len, hslen;
+   char response_buf[RESPONSE_LEN];
++  const char *handshake="\x05\x01\x00";
+ 
+   show_msg(MSGDEBUG, "do_resolve: resolving %s\n", hostname);
+ 
++  /* Create SOCKS connection */
+   s = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);
+   if (s<0) {
+     show_msg(MSGWARN, "do_resolve: problem creating socket\n"); 
+     return -1;
+   }
+ 
++  /* Connect to SOCKS server */
+   memset(&socksaddr, 0, sizeof(socksaddr));
+   socksaddr.sin_family = AF_INET;
+   socksaddr.sin_port = htons(socksport);
+   socksaddr.sin_addr.s_addr = htonl(sockshost);
+   if (realconnect(s, (struct sockaddr*)&socksaddr, sizeof(socksaddr))) {
+     show_msg(MSGWARN, "do_resolve: error connecting to SOCKS server\n");
++    realclose(s);
+     return -1;
+   }
+ 
+-  if ((len = build_socks4a_resolve_request(&req, "", hostname))<0) {
+-    show_msg(MSGWARN, "do_resolve: error generating SOCKS request\n"); 
+-    return -1;
++  /* If a SOCKS5 connection, perform handshake */
++  if (version == 5) {
++    char method_buf[2];
++    hslen=3;
++    while (hslen) {
++      r = send(s, handshake, hslen, 0);
++      if (r<0) {
++        show_msg(MSGWARN, "do_resolve: error sending SOCKS5 method list.\n");
++        realclose(s);
++        return -1;
++      }
++      hslen -= r;
++      handshake += r;
++    }
++
++    len = 0;
++    while (len < METHODRESPONSE_LEN) {
++      r = recv(s, method_buf+len, METHODRESPONSE_LEN-len, 0);
++      if (r==0) {
++        show_msg(MSGWARN, "do_resolve: EOF while reading SOCKS response\n");
++        realclose(s);
++        return -1;
++      }
++      if (r<0) {
++        show_msg(MSGWARN, "do_resolve: error reading SOCKS response\n");
++        realclose(s);
++        return -1;
++      }
++      len += r;
++    }
++
++    if (method_buf[0] != '\x05') {
++      show_msg(MSGWARN, "Unrecognized socks version: %u",
++              (unsigned)method_buf[0]);
++      realclose(s);
++      return -1;
++    }
++    if (method_buf[1] != '\x00') {
++      show_msg(MSGWARN, "Unrecognized socks authentication method: %u",
++              (unsigned)method_buf[1]);
++      realclose(s);
++      return -1;
++    }
++  }
++
++  /* Create SOCKS request */
++  if (reverse) {
++    if ((len = build_socks5_resolve_ptr_request(&req, addr))<0) {
++      show_msg(MSGWARN, "do_resolve: error generating reverse SOCKS request\n");
++      realclose(s);
++      return -1;
++    }
++  }else{
++    if ((len = build_socks4a_resolve_request(&req, "", hostname))<0) {
++      show_msg(MSGWARN, "do_resolve: error generating SOCKS request\n");
++      realclose(s);
++      return -1;
++    }
+   }
+ 
++  /* Send SOCKS request */
+   cp = req;
+   while (len) {
+     r = send(s, cp, len, 0);
+     if (r<0) {
+       show_msg(MSGWARN, "do_resolve: error sending SOCKS request\n"); 
+       free(req);
++      realclose(s);
+       return -1;
+     }
+     len -= r;
+@@ -316,26 +492,40 @@ do_resolve(const char *hostname, uint32_
+   }
+   free(req);
+ 
+-  len = 0;
+-  while (len < RESPONSE_LEN) {
+-    r = recv(s, response_buf+len, RESPONSE_LEN-len, 0);
+-    if (r==0) {
+-      show_msg(MSGWARN, "do_resolve: EOF while reading SOCKS response\n"); 
++  /* Handle SOCKS Response */
++  if (reverse) {
++    if (parse_socks5_resolve_ptr_response(s, response_buf, RESPONSE_LEN,
++                                          result_addr, &result_hostname) < 0){
++      show_msg(MSGWARN, "do_resolve: error parsing SOCKS response\n");
++      realclose(s);
+       return -1;
+     }
+-    if (r<0) {
+-      show_msg(MSGWARN, "do_resolve: error reading SOCKS response\n"); 
++  }else{
++    /* Process SOCKS response */
++    len = 0;
++    while (len < RESPONSE_LEN) {
++      r = recv(s, response_buf+len, RESPONSE_LEN-len, 0);
++      if (r==0) {
++        show_msg(MSGWARN, "do_resolve: EOF while reading SOCKS response\n");
++        realclose(s);
++        return -1;
++      }
++      if (r<0) {
++        show_msg(MSGWARN, "do_resolve: error reading SOCKS response\n");
++        realclose(s);
++        return -1;
++      }
++      len += r;
++    }
++    realclose(s);
++
++    /* Parse SOCKS response */
++    if (parse_socks4a_resolve_response(response_buf, RESPONSE_LEN, result_addr) < 0){
++      show_msg(MSGWARN, "do_resolve: error parsing SOCKS response\n");
+       return -1;
+     }
+-    len += r;
+   }
+ 
+-  realclose(s);
+-
+-  if (parse_socks4a_resolve_response(response_buf, RESPONSE_LEN, result_addr) < 0){
+-    show_msg(MSGWARN, "do_resolve: error parsing SOCKS response\n");
+-    return -1;
+-  }
+ 
+   show_msg(MSGDEBUG, "do_resolve: success\n");
+ 
+@@ -343,6 +533,53 @@ do_resolve(const char *hostname, uint32_
+ }
+ 
+ struct hostent *
++our_gethostbyaddr(dead_pool *pool, const void *_addr, socklen_t len, int type)
++{
++  const struct in_addr *addr=_addr;
++  static struct hostent he;
++  uint32_t intaddr=0;
++  char *result_hostname=NULL;
++  int rc=0;
++  static char *addrs[2];
++  static char *aliases[2];
++
++  rc = do_resolve("", pool->sockshost, pool->socksport, &intaddr, addr,
++                  5 /*SOCKS5*/, 1 /*Reverse*/, &result_hostname);
++
++
++  if(rc != 0) {
++      show_msg(MSGWARN, "failed to reverse resolve: %s\n",
++               inet_ntoa(*((struct in_addr *)addr)));
++      result_hostname=NULL;
++      addrs[0] = NULL;
++      addrs[1] = NULL;
++  }else{
++      addrs[0] = (char *)addr;
++      addrs[1] = NULL;
++  }
++
++  if (result_hostname)
++    he.h_name = result_hostname;
++  else
++    he.h_name = inet_ntoa(*((struct in_addr *)addr));
++
++//   aliases = malloc(sizeof(char *));
++  aliases[0] = NULL;
++  aliases[1] = NULL;
++
++  he.h_aliases = aliases;
++  he.h_length    = len;
++  he.h_addrtype  = type;
++  he.h_addr_list = addrs;
++
++  show_msg(MSGDEBUG, "our_gethostbyaddr: resolved '%s' to: '%s'\n",
++           inet_ntoa(*((struct in_addr *)he.h_addr)), result_hostname);
++
++  return &he;
++
++}
++
++struct hostent *
+ our_gethostbyname(dead_pool *pool, const char *name)
+ {
+   int pos;
+Index: inspectsocks.c
+===================================================================
+RCS file: /cvsroot/tork/torsocks/inspectsocks.c,v
+retrieving revision 1.1.1.1
+diff -p -U3 -r1.1.1.1 inspectsocks.c
+--- inspectsocks.c	15 Jun 2008 09:43:02 -0000	1.1.1.1
++++ inspectsocks.c	18 Jun 2008 21:21:35 -0000
+@@ -23,7 +23,7 @@
+ */
+ 
+ /* Global configuration variables */ 
+-char *progname = "inspectsocks";	   /* Name for error msgs      */
++const char *progname = "inspectsocks";	   /* Name for error msgs      */
+ int defaultport	= 1080;			   /* Default SOCKS port       */
+ 
+ /* Header Files */
+@@ -35,6 +35,7 @@ int defaultport	= 1080;			   /* Default 
+ #include <sys/socket.h>
+ #include <string.h>
+ #include <strings.h>
++#include <sys/types.h>
+ #include <netinet/in.h>
+ #include <arpa/inet.h>
+ #include <errno.h>
+@@ -44,7 +45,7 @@ int send_request(struct sockaddr_in *ser
+                  int reqlen, void *rep, int replen);
+ 
+ int main(int argc, char *argv[]) {
+-	char *usage = "Usage: <socks server name/ip> [portno]";
++	const char *usage = "Usage: <socks server name/ip> [portno]";
+ 	char req[9];
+ 	char resp[100];
+ 	unsigned short int portno = defaultport;
+@@ -68,7 +69,7 @@ int main(int argc, char *argv[]) {
+ 			}
+ 		case 2:
+ 			if ((server.sin_addr.s_addr = resolve_ip(argv[1], 1,HOSTNAMES))
+-                            ==  -1) {
++                            ==  0) {
+ 				show_msg(MSGERR, "Invalid IP/host specified (%s)\n", argv[1]);
+ 				show_msg(MSGERR, "%s\n", usage);
+ 				exit(1);
+Index: tsocks.c
+===================================================================
+RCS file: /cvsroot/tork/torsocks/tsocks.c,v
+retrieving revision 1.2
+diff -p -U3 -r1.2 tsocks.c
+--- tsocks.c	15 Jun 2008 10:06:03 -0000	1.2
++++ tsocks.c	18 Jun 2008 21:21:37 -0000
+@@ -63,6 +63,7 @@ static int (*realresinit)(void);
+ #ifdef USE_TOR_DNS
+ static dead_pool *pool = NULL;
+ static struct hostent *(*realgethostbyname)(GETHOSTBYNAME_SIGNATURE);
++static struct hostent *(*realgethostbyaddr)(GETHOSTBYADDR_SIGNATURE);
+ int (*realgetaddrinfo)(GETADDRINFO_SIGNATURE);
+ static struct hostent *(*realgetipnodebyname)(GETIPNODEBYNAME_SIGNATURE);
+ #endif
+@@ -77,7 +78,7 @@ static int suid = 0;
+ static char *conffile = NULL;
+ 
+ /* Exported Function Prototypes */
+-void __attribute__ ((constructor)) tsocks_init(void);
++void __attribute__ ((constructor)) _init(void);
+ int connect(CONNECT_SIGNATURE);
+ int select(SELECT_SIGNATURE);
+ int poll(POLL_SIGNATURE);
+@@ -88,6 +89,7 @@ int res_init(void);
+ #endif
+ #ifdef USE_TOR_DNS
+ struct hostent *gethostbyname(GETHOSTBYNAME_SIGNATURE);
++struct hostent *gethostbyaddr(GETHOSTBYADDR_SIGNATURE);
+ int getaddrinfo(GETADDRINFO_SIGNATURE);
+ struct hostent *getipnodebyname(GETIPNODEBYNAME_SIGNATURE);
+ #endif 
+@@ -119,11 +121,12 @@ static int deadpool_init(void);
+ static int send_socksv4a_request(struct connreq *conn, const char *onion_host);
+ #endif
+ 
+-void tsocks_init(void) {
++void _init(void) {
+ #ifdef USE_OLD_DLSYM
+ 	void *lib;
+ #endif
+ 
++    show_msg(MSGWARN, "In tsocks_init \n");
+ 	/* We could do all our initialization here, but to be honest */
+ 	/* most programs that are run won't use our services, so     */
+ 	/* we do our general initialization on first call            */
+@@ -142,6 +145,7 @@ void tsocks_init(void) {
+ 	#endif
+     #ifdef USE_TOR_DNS
+     realgethostbyname = dlsym(RTLD_NEXT, "gethostbyname");
++    //realgethostbyaddr = dlsym(RTLD_NEXT, "gethostbyaddr");
+     realgetaddrinfo = dlsym(RTLD_NEXT, "getaddrinfo");
+     realgetipnodebyname = dlsym(RTLD_NEXT, "getipnodebyname");
+     #endif
+@@ -155,6 +159,7 @@ void tsocks_init(void) {
+ 	#endif
+     #ifdef USE_TOR_DNS
+     realgethostbyname = dlsym(lib, "gethostbyname");
++    realgethostbyaddr = dlsym(lib, "gethostbyaddr");
+     realgetaddrinfo = dlsym(lib, "getaddrinfo");
+     realgetipnodebyname = dlsym(RTLD_NEXT, "getipnodebyname");
+     #endif
+@@ -1100,6 +1105,7 @@ static int send_socksv5_connect(struct c
+    conn->datalen = sizeof(constring);
+ 
+ #ifdef USE_TOR_DNS
++
+    show_msg(MSGDEBUG, "send_socksv5_connect: looking for: %s\n",
+             inet_ntoa(conn->connaddr.sin_addr));
+ 
+@@ -1394,6 +1400,15 @@ struct hostent *gethostbyname(GETHOSTBYN
+   }  
+ }
+ 
++struct hostent *gethostbyaddr(GETHOSTBYADDR_SIGNATURE)
++{
++  if(pool) {
++      return our_gethostbyaddr(pool, addr, len, type);
++  } else {
++      return realgethostbyaddr(addr, len, type);
++  }  
++}
++
+ int getaddrinfo(GETADDRINFO_SIGNATURE)
+ {
+   if(pool) {
+Index: common.h
+===================================================================
+RCS file: /cvsroot/tork/torsocks/common.h,v
+retrieving revision 1.2
+diff -p -U3 -r1.2 common.h
+--- common.h	15 Jun 2008 10:01:41 -0000	1.2
++++ common.h	18 Jun 2008 21:21:37 -0000
+@@ -1,4 +1,33 @@
+ /* Common functions provided in common.c */
++/* GCC has several useful attributes. */
++#if defined(__GNUC__) && __GNUC__ >= 3
++#define ATTR_NORETURN __attribute__((noreturn))
++#define ATTR_PURE __attribute__((pure))
++#define ATTR_CONST __attribute__((const))
++#define ATTR_MALLOC __attribute__((malloc))
++#define ATTR_NORETURN __attribute__((noreturn))
++#define ATTR_NONNULL(x) __attribute__((nonnull x))
++/** Macro: Evaluates to <b>exp</b> and hints the compiler that the value
++ * of <b>exp</b> will probably be true. */
++#define PREDICT_LIKELY(exp) __builtin_expect((exp), 1)
++/** Macro: Evaluates to <b>exp</b> and hints the compiler that the value
++ * of <b>exp</b> will probably be false. */
++#define PREDICT_UNLIKELY(exp) __builtin_expect((exp), 0)
++#else
++#define ATTR_NORETURN
++#define ATTR_PURE
++#define ATTR_CONST
++#define ATTR_MALLOC
++#define ATTR_NORETURN
++#define ATTR_NONNULL(x)
++#define PREDICT_LIKELY(exp) (exp)
++#define PREDICT_UNLIKELY(exp) (exp)
++#endif
++
++uint16_t get_uint16(const char *cp) ATTR_PURE ATTR_NONNULL((1));
++uint32_t get_uint32(const char *cp) ATTR_PURE ATTR_NONNULL((1));
++void set_uint16(char *cp, uint16_t v) ATTR_NONNULL((1));
++void set_uint32(char *cp, uint32_t v) ATTR_NONNULL((1));
+ 
+ void set_log_options(int, char *, int);
+ void show_msg(int level, const char *, ...);
+Index: dead_pool.h
+===================================================================
+RCS file: /cvsroot/tork/torsocks/dead_pool.h,v
+retrieving revision 1.2
+diff -p -U3 -r1.2 dead_pool.h
+--- dead_pool.h	15 Jun 2008 10:02:53 -0000	1.2
++++ dead_pool.h	18 Jun 2008 21:21:38 -0000
+@@ -35,6 +35,8 @@ int is_dead_address(dead_pool *pool, uin
+ char *get_pool_entry(dead_pool *pool, struct in_addr *addr);
+ int search_pool_for_name(dead_pool *pool, const char *name);
+ struct hostent *our_gethostbyname(dead_pool *pool, const char *name);
++struct hostent *our_gethostbyaddr(dead_pool *pool, const void *addr,
++                                  socklen_t len, int type);
+ int our_getaddrinfo(dead_pool *pool, const char *node, const char *service, 
+     void *hints, void *res);
+ struct hostent *our_getipnodebyname(dead_pool *pool, const char *name, 
+Index: parser.h
+===================================================================
+RCS file: /cvsroot/tork/torsocks/parser.h,v
+retrieving revision 1.1.1.1
+diff -p -U3 -r1.1.1.1 parser.h
+--- parser.h	15 Jun 2008 09:43:02 -0000	1.1.1.1
++++ parser.h	18 Jun 2008 21:21:38 -0000
+@@ -35,7 +35,7 @@ struct parsedfile {
+    struct serverent *paths;
+    int tordns_enabled;
+    int tordns_failopen;
+-   int tordns_cache_size;
++   unsigned int tordns_cache_size;
+    struct netent *tordns_deadpool_range;
+ };
+ 
+Index: tsocks.h
+===================================================================
+RCS file: /cvsroot/tork/torsocks/tsocks.h,v
+retrieving revision 1.1.1.1
+diff -p -U3 -r1.1.1.1 tsocks.h
+--- tsocks.h	15 Jun 2008 09:43:01 -0000	1.1.1.1
++++ tsocks.h	18 Jun 2008 21:21:38 -0000
+@@ -50,8 +50,8 @@ struct connreq {
+    int selectevents;
+ 
+    /* Buffer for sending and receiving on the socket */
+-   int datalen;
+-   int datadone;
++   unsigned int datalen;
++   unsigned int datadone;
+    char buffer[2048];
+ 
+    struct connreq *next;
+Index: config.h.in
+===================================================================
+RCS file: /cvsroot/tork/torsocks/config.h.in,v
+retrieving revision 1.1.1.1
+diff -p -U3 -r1.1.1.1 config.h.in
+--- config.h.in	15 Jun 2008 09:43:02 -0000	1.1.1.1
++++ config.h.in	18 Jun 2008 21:21:38 -0000
+@@ -83,6 +83,9 @@ in inspectsocks */
+ #undef GETIPNODEBYNAME_SIGNATURE
+ 
+ 
++/* Description */
++#undef GETHOSTBYADDR_SIGNATURE
++
+ /* Define to 1 if you have the <inttypes.h> header file. */
+ #undef HAVE_INTTYPES_H
+ 
+Index: configure.in
+===================================================================
+RCS file: /cvsroot/tork/torsocks/configure.in,v
+retrieving revision 1.1.1.1
+diff -p -U3 -r1.1.1.1 configure.in
+--- configure.in	15 Jun 2008 09:43:00 -0000	1.1.1.1
++++ configure.in	18 Jun 2008 21:21:38 -0000
+@@ -384,6 +384,10 @@ dnl Emit signature for gethostbyname
+ PROTO="const char *name"
+ AC_DEFINE_UNQUOTED(GETHOSTBYNAME_SIGNATURE, [${PROTO}])
+ 
++dnl Emit signature for gethostbyaddr
++PROTO="const void *addr, socklen_t len, int type"
++AC_DEFINE_UNQUOTED(GETHOSTBYADDR_SIGNATURE, [${PROTO}], [Description])
++
+ dnl Emit signature for getaddrinfo
+ PROTO="const char *node, const char *service, void *hints, void *res"
+ AC_DEFINE_UNQUOTED(GETADDRINFO_SIGNATURE, [${PROTO}])
diff --git a/doc/patches/getpeername.patch b/doc/patches/getpeername.patch
new file mode 100644
index 0000000..f66d133
--- /dev/null
+++ b/doc/patches/getpeername.patch
@@ -0,0 +1,350 @@
+diff -ur tsocks-1.8beta5.orig/acconfig.h tsocks-1.8beta5.clean/acconfig.h
+--- tsocks-1.8beta5.orig/acconfig.h	Sat May 18 06:59:38 2002
++++ tsocks-1.8beta5.clean/acconfig.h	Sat Mar 27 11:12:03 2004
+@@ -43,6 +43,9 @@
+ /* Prototype and function header for close function */
+ #undef CLOSE_SIGNATURE
+ 
++/* Prototype and function header for getpeername function */
++#undef GETPEERNAME_SIGNATURE
++
+ /* Work out which function we have for conversion from string IPs to 
+ numerical ones */
+ #undef HAVE_INET_ADDR
+diff -ur tsocks-1.8beta5.orig/config.h.in tsocks-1.8beta5.clean/config.h.in
+--- tsocks-1.8beta5.orig/config.h.in	Sat May 18 06:59:42 2002
++++ tsocks-1.8beta5.clean/config.h.in	Sat Mar 27 11:21:58 2004
+@@ -46,6 +46,9 @@
+ /* Prototype and function header for close function */
+ #undef CLOSE_SIGNATURE
+ 
++/* Prototype and function header for close function */
++#undef GETPEERNAME_SIGNATURE
++
+ /* Work out which function we have for conversion from string IPs to 
+ numerical ones */
+ #undef HAVE_INET_ADDR
+diff -ur tsocks-1.8beta5.orig/config.status tsocks-1.8beta5.clean/config.status
+--- tsocks-1.8beta5.orig/config.status	Sat Mar 27 11:25:17 2004
++++ tsocks-1.8beta5.clean/config.status	Sat Mar 27 11:22:01 2004
+@@ -2,9 +2,9 @@
+ # Generated automatically by configure.
+ # Run this file to recreate the current configuration.
+ # This directory was configured as follows,
+-# on host inky:
++# on host seppia:
+ #
+-# ./configure  --prefix=/usr --libdir=/usr/lib --mandir=/usr/share/man --with-conf=/etc/tsocks.conf --enable-socksdns --enable-hostnames
++# ./configure 
+ #
+ # Compiler output produced by configure, useful for debugging
+ # configure, is in ./config.log if it exists.
+@@ -14,8 +14,8 @@
+ do
+   case "$ac_option" in
+   -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
+-    echo "running ${CONFIG_SHELL-/bin/sh} ./configure  --prefix=/usr --libdir=/usr/lib --mandir=/usr/share/man --with-conf=/etc/tsocks.conf --enable-socksdns --enable-hostnames --no-create --no-recursion"
+-    exec ${CONFIG_SHELL-/bin/sh} ./configure  --prefix=/usr --libdir=/usr/lib --mandir=/usr/share/man --with-conf=/etc/tsocks.conf --enable-socksdns --enable-hostnames --no-create --no-recursion ;;
++    echo "running ${CONFIG_SHELL-/bin/sh} ./configure  --no-create --no-recursion"
++    exec ${CONFIG_SHELL-/bin/sh} ./configure  --no-create --no-recursion ;;
+   -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
+     echo "./config.status generated by autoconf version 2.13"
+     exit 0 ;;
+@@ -53,11 +53,11 @@
+ s%@sysconfdir@%${prefix}/etc%g
+ s%@sharedstatedir@%${prefix}/com%g
+ s%@localstatedir@%${prefix}/var%g
+-s%@libdir@%/usr/lib%g
++s%@libdir@%/lib%g
+ s%@includedir@%${prefix}/include%g
+ s%@oldincludedir@%/usr/include%g
+ s%@infodir@%${prefix}/info%g
+-s%@mandir@%/usr/share/man%g
++s%@mandir@%${prefix}/man%g
+ s%@host@%i686-pc-linux-gnu%g
+ s%@host_alias@%i686-pc-linux-gnu%g
+ s%@host_cpu@%i686%g
+@@ -255,15 +255,15 @@
+   mv conftest.out conftest.in
+ 
+   cat > conftest.frag <<CEOF
+-${ac_dA}USE_SOCKS_DNS${ac_dB}USE_SOCKS_DNS${ac_dC}1${ac_dD}
+-${ac_uA}USE_SOCKS_DNS${ac_uB}USE_SOCKS_DNS${ac_uC}1${ac_uD}
+-${ac_eA}USE_SOCKS_DNS${ac_eB}USE_SOCKS_DNS${ac_eC}1${ac_eD}
+ ${ac_dA}ALLOW_ENV_CONFIG${ac_dB}ALLOW_ENV_CONFIG${ac_dC}1${ac_dD}
+ ${ac_uA}ALLOW_ENV_CONFIG${ac_uB}ALLOW_ENV_CONFIG${ac_uC}1${ac_uD}
+ ${ac_eA}ALLOW_ENV_CONFIG${ac_eB}ALLOW_ENV_CONFIG${ac_eC}1${ac_eD}
+ ${ac_dA}ALLOW_MSG_OUTPUT${ac_dB}ALLOW_MSG_OUTPUT${ac_dC}1${ac_dD}
+ ${ac_uA}ALLOW_MSG_OUTPUT${ac_uB}ALLOW_MSG_OUTPUT${ac_uC}1${ac_uD}
+ ${ac_eA}ALLOW_MSG_OUTPUT${ac_eB}ALLOW_MSG_OUTPUT${ac_eC}1${ac_eD}
++${ac_dA}HOSTNAMES${ac_dB}HOSTNAMES${ac_dC}1${ac_dD}
++${ac_uA}HOSTNAMES${ac_uB}HOSTNAMES${ac_uC}1${ac_uD}
++${ac_eA}HOSTNAMES${ac_eB}HOSTNAMES${ac_eC}1${ac_eD}
+ ${ac_dA}SELECT_SIGNATURE${ac_dB}SELECT_SIGNATURE${ac_dC}int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout${ac_dD}
+ ${ac_uA}SELECT_SIGNATURE${ac_uB}SELECT_SIGNATURE${ac_uC}int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout${ac_uD}
+ ${ac_eA}SELECT_SIGNATURE${ac_eB}SELECT_SIGNATURE${ac_eC}int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout${ac_eD}
+@@ -282,15 +282,18 @@
+ ${ac_dA}CLOSE_SIGNATURE${ac_dB}CLOSE_SIGNATURE${ac_dC}int fd${ac_dD}
+ ${ac_uA}CLOSE_SIGNATURE${ac_uB}CLOSE_SIGNATURE${ac_uC}int fd${ac_uD}
+ ${ac_eA}CLOSE_SIGNATURE${ac_eB}CLOSE_SIGNATURE${ac_eC}int fd${ac_eD}
+-${ac_dA}POLL_SIGNATURE${ac_dB}POLL_SIGNATURE${ac_dC}struct pollfd *ufds, unsigned long nfds, int timeout${ac_dD}
+-${ac_uA}POLL_SIGNATURE${ac_uB}POLL_SIGNATURE${ac_uC}struct pollfd *ufds, unsigned long nfds, int timeout${ac_uD}
+-${ac_eA}POLL_SIGNATURE${ac_eB}POLL_SIGNATURE${ac_eC}struct pollfd *ufds, unsigned long nfds, int timeout${ac_eD}
++${ac_dA}GETPEERNAME_SIGNATURE${ac_dB}GETPEERNAME_SIGNATURE${ac_dC}int __fd, struct sockaddr * __name, socklen_t *__namelen${ac_dD}
++${ac_uA}GETPEERNAME_SIGNATURE${ac_uB}GETPEERNAME_SIGNATURE${ac_uC}int __fd, struct sockaddr * __name, socklen_t *__namelen${ac_uD}
++${ac_eA}GETPEERNAME_SIGNATURE${ac_eB}GETPEERNAME_SIGNATURE${ac_eC}int __fd, struct sockaddr * __name, socklen_t *__namelen${ac_eD}
+ CEOF
+   sed -f conftest.frag conftest.in > conftest.out
+   rm -f conftest.in
+   mv conftest.out conftest.in
+ 
+   cat > conftest.frag <<CEOF
++${ac_dA}POLL_SIGNATURE${ac_dB}POLL_SIGNATURE${ac_dC}struct pollfd *ufds, unsigned long nfds, int timeout${ac_dD}
++${ac_uA}POLL_SIGNATURE${ac_uB}POLL_SIGNATURE${ac_uC}struct pollfd *ufds, unsigned long nfds, int timeout${ac_uD}
++${ac_eA}POLL_SIGNATURE${ac_eB}POLL_SIGNATURE${ac_eC}struct pollfd *ufds, unsigned long nfds, int timeout${ac_eD}
+ s%^[ 	]*#[ 	]*undef[ 	][ 	]*[a-zA-Z_][a-zA-Z_0-9]*%/* & */%
+ CEOF
+   sed -f conftest.frag conftest.in > conftest.out
+diff -ur tsocks-1.8beta5.orig/configure tsocks-1.8beta5.clean/configure
+--- tsocks-1.8beta5.orig/configure	Tue Jul 16 00:51:08 2002
++++ tsocks-1.8beta5.clean/configure	Sat Mar 27 11:12:05 2004
+@@ -2225,14 +2225,60 @@
+ EOF
+ 
+ 
++
++echo $ac_n "checking for correct getpeername prototype""... $ac_c" 1>&6
++echo "configure:2231: checking for correct getpeername prototype" >&5
++PROTO=
++PROTO1='int __fd, const struct sockaddr * __name, int *__namelen'
++PROTO2='int __fd, const struct sockaddr_in * __name, socklen_t *__namelen'
++PROTO3='int __fd, struct sockaddr * __name, socklen_t *__namelen'
++PROTO4='int __fd, const struct sockaddr * __name, socklen_t *__namelen'
++for testproto in "${PROTO1}" \
++                 "${PROTO2}" \
++                 "${PROTO3}" \
++                 "${PROTO4}" 
++do
++  if test "${PROTO}" = ""; then
++    cat > conftest.$ac_ext <<EOF
++#line 2244 "configure"
++#include "confdefs.h"
++
++      #include <sys/socket.h>
++      int getpeername($testproto);
++    
++int main() {
++
++; return 0; }
++EOF
++if { (eval echo configure:2254: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
++  rm -rf conftest*
++  PROTO="$testproto";
++else
++  echo "configure: failed program was:" >&5
++  cat conftest.$ac_ext >&5
++fi
++rm -f conftest*
++  fi
++done
++if test "${PROTO}" = ""; then
++  { echo "configure: error: "no match found!"" 1>&2; exit 1; }
++fi
++echo "$ac_t""getpeername(${PROTO})" 1>&6
++cat >> confdefs.h <<EOF
++#define GETPEERNAME_SIGNATURE ${PROTO}
++EOF
++
++
++
++
+ echo $ac_n "checking for correct poll prototype""... $ac_c" 1>&6
+-echo "configure:2230: checking for correct poll prototype" >&5
++echo "configure:2276: checking for correct poll prototype" >&5
+ PROTO=
+ for testproto in 'struct pollfd *ufds, unsigned long nfds, int timeout' 
+ do
+   if test "${PROTO}" = ""; then
+     cat > conftest.$ac_ext <<EOF
+-#line 2236 "configure"
++#line 2282 "configure"
+ #include "confdefs.h"
+ 
+       #include <sys/poll.h>
+@@ -2242,7 +2288,7 @@
+ 
+ ; return 0; }
+ EOF
+-if { (eval echo configure:2246: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
++if { (eval echo configure:2292: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+   rm -rf conftest*
+   PROTO="$testproto";
+ else
+diff -ur tsocks-1.8beta5.orig/configure.in tsocks-1.8beta5.clean/configure.in
+--- tsocks-1.8beta5.orig/configure.in	Tue Jul 16 00:51:03 2002
++++ tsocks-1.8beta5.clean/configure.in	Sat Mar 27 11:11:02 2004
+@@ -309,6 +309,34 @@
+ AC_MSG_RESULT([close(${PROTO})])
+ AC_DEFINE_UNQUOTED(CLOSE_SIGNATURE, [${PROTO}])
+ 
++
++dnl Find the correct getpeername prototype on this machine 
++AC_MSG_CHECKING(for correct getpeername prototype)
++PROTO=
++PROTO1='int __fd, const struct sockaddr * __name, int *__namelen'
++PROTO2='int __fd, const struct sockaddr_in * __name, socklen_t *__namelen'
++PROTO3='int __fd, struct sockaddr * __name, socklen_t *__namelen'
++PROTO4='int __fd, const struct sockaddr * __name, socklen_t *__namelen'
++for testproto in "${PROTO1}" \
++                 "${PROTO2}" \
++                 "${PROTO3}" \
++                 "${PROTO4}" 
++do
++  if test "${PROTO}" = ""; then
++    AC_TRY_COMPILE([
++      #include <sys/socket.h>
++      int getpeername($testproto);
++    ],,[PROTO="$testproto";],)
++  fi
++done
++if test "${PROTO}" = ""; then
++  AC_MSG_ERROR("no match found!")
++fi
++AC_MSG_RESULT([getpeername(${PROTO})])
++AC_DEFINE_UNQUOTED(GETPEERNAME_SIGNATURE, [${PROTO}])
++
++
++
+ dnl Find the correct poll prototype on this machine 
+ AC_MSG_CHECKING(for correct poll prototype)
+ PROTO=
+Only in tsocks-1.8beta5.clean: ld-pre
+Only in tsocks-1.8beta5.clean: sel
+diff -ur tsocks-1.8beta5.orig/tsocks.c tsocks-1.8beta5.clean/tsocks.c
+--- tsocks-1.8beta5.orig/tsocks.c	Tue Jul 16 00:50:52 2002
++++ tsocks-1.8beta5.clean/tsocks.c	Sat Mar 27 13:17:58 2004
+@@ -62,6 +62,7 @@
+ static int (*realselect)(SELECT_SIGNATURE);
+ static int (*realpoll)(POLL_SIGNATURE);
+ static int (*realclose)(CLOSE_SIGNATURE);
++static int (*realgetpeername)(GETPEERNAME_SIGNATURE);
+ static struct parsedfile *config;
+ static struct connreq *requests = NULL;
+ static int suid = 0;
+@@ -73,6 +74,7 @@
+ int select(SELECT_SIGNATURE);
+ int poll(POLL_SIGNATURE);
+ int close(CLOSE_SIGNATURE);
++int getpeername(GETPEERNAME_SIGNATURE);
+ #ifdef USE_SOCKS_DNS
+ int res_init(void);
+ #endif
+@@ -109,14 +111,15 @@
+ 	/* most programs that are run won't use our services, so     */
+ 	/* we do our general initialization on first call            */
+ 
+-   /* Determine the logging level */
+-   suid = (getuid() != geteuid());
++	/* Determine the logging level */
++	suid = (getuid() != geteuid());
+ 
+ #ifndef USE_OLD_DLSYM
+ 	realconnect = dlsym(RTLD_NEXT, "connect");
+ 	realselect = dlsym(RTLD_NEXT, "select");
+ 	realpoll = dlsym(RTLD_NEXT, "poll");
+ 	realclose = dlsym(RTLD_NEXT, "close");
++	realgetpeername = dlsym(RTLD_NEXT, "getpeername");
+ 	#ifdef USE_SOCKS_DNS
+ 	realresinit = dlsym(RTLD_NEXT, "res_init");
+ 	#endif
+@@ -125,14 +128,15 @@
+ 	realconnect = dlsym(lib, "connect");
+ 	realselect = dlsym(lib, "select");
+ 	realpoll = dlsym(lib, "poll");
++	realgetpeername = dlsym(lib, "getpeername");
+ 	#ifdef USE_SOCKS_DNS
+ 	realresinit = dlsym(lib, "res_init");
+ 	#endif
+-	dlclose(lib);	
++	dlclose(lib);
+ 
+ 	lib = dlopen(LIBC, RTLD_LAZY);
+-   realclose = dlsym(lib, "close");
+-	dlclose(lib);	
++	realclose = dlsym(lib, "close");
++	dlclose(lib);
+ #endif
+ }
+ 
+@@ -348,8 +352,10 @@
+ 
+    /* If we're not currently managing any requests we can just 
+     * leave here */
+-   if (!requests)
++   if (!requests) {
++      show_msg(MSGDEBUG, "No requests waiting, calling real select\n");
+       return(realselect(n, readfds, writefds, exceptfds, timeout));
++   }
+ 
+    get_environment();
+ 
+@@ -703,6 +709,50 @@
+    return(rc);
+ }
+ 
++/* If we are not done setting up the connection yet, return
++ * -1 and ENOTCONN, otherwise call getpeername
++ *
++ * This is necessary since some applications, when using non-blocking connect,
++ * (like ircII) use getpeername() to find out if they are connected already.
++ *
++ * This results in races sometimes, where the client sends data to the socket
++ * before we are done with the socks connection setup.  Another solution would
++ * be to intercept send().
++ * 
++ * This could be extended to actually set the peername to the peer the
++ * client application has requested, but not for now.
++ *
++ * PP, Sat, 27 Mar 2004 11:30:23 +0100
++ */
++int getpeername(GETPEERNAME_SIGNATURE) {
++   struct connreq *conn;
++   int rc;
++
++    if (realgetpeername == NULL) {
++        show_msg(MSGERR, "Unresolved symbol: getpeername\n");
++        return(-1);
++    }
++
++   show_msg(MSGDEBUG, "Call to getpeername for fd %d\n", __fd);
++
++
++   rc = realgetpeername(__fd, __name, __namelen);
++   if (rc == -1)
++       return rc;
++
++   /* Are we handling this connect? */
++   if ((conn = find_socks_request(__fd, 1))) {
++       /* While we are at it, we might was well try to do something useful */
++       handle_request(conn);
++
++       if (conn->state != DONE) {
++           errno = ENOTCONN;
++           return(-1);
++       }
++   }
++   return rc;
++}
++
+ static struct connreq *new_socks_request(int sockid, struct sockaddr_in *connaddr, 
+                                          struct sockaddr_in *serveraddr, 
+                                          struct serverent *path) {
+@@ -852,7 +902,7 @@
+                     sizeof(conn->serveraddr));
+ 
+    show_msg(MSGDEBUG, "Connect returned %d, errno is %d\n", rc, errno); 
+-	if (rc) {
++   if (rc) {
+       if (errno != EINPROGRESS) {
+          show_msg(MSGERR, "Error %d attempting to connect to SOCKS "
+                   "server (%s)\n", errno, strerror(errno));
diff --git a/doc/patches/infiniteloop.patch b/doc/patches/infiniteloop.patch
new file mode 100644
index 0000000..4b0deb9
--- /dev/null
+++ b/doc/patches/infiniteloop.patch
@@ -0,0 +1,20 @@
+--- tsocks-1.8.orig/tsocks.c    2002-03-13 14:02:04.000000000 +0100
++++ tsocks-1.8/tsocks.c 2004-03-20 11:30:57.000000000 +0100
+@@ -951,14 +951,18 @@
+    show_msg(MSGDEBUG, "Reading from server (expecting %d bytes)\n", conn->datalen);
+    while ((rc == 0) && (conn->datadone != conn->datalen)) {
+       rc = recv(conn->sockid, conn->buffer + conn->datadone, 
+                 conn->datalen - conn->datadone, 0);
+       if (rc > 0) {
+          conn->datadone += rc;
+          rc = 0;
++      } else if (rc == 0) {
++         show_msg(MSGDEBUG, "Peer has shutdown but we only read %d of %d bytes.\n",
++            conn->datadone, conn->datalen);
++         rc = ENOTCONN; /* ENOTCONN seems like the most fitting error message */
+       } else {
+          if (errno != EWOULDBLOCK)
+             show_msg(MSGDEBUG, "Read failed, %s\n", strerror(errno));
+          rc = errno;
+       }
+    }
diff --git a/doc/patches/localaddresses.patch b/doc/patches/localaddresses.patch
new file mode 100644
index 0000000..d69c7e8
--- /dev/null
+++ b/doc/patches/localaddresses.patch
@@ -0,0 +1,15 @@
+--- parser.c.old        2006-04-01 17:54:46.687832056 -0500
++++ parser.c    2006-04-01 17:55:47.552579208 -0500
+@@ -74,8 +74,10 @@
+                } 
+                fclose(conf);
+ 
+-               /* Always add the 127.0.0.1/255.0.0.0 subnet to local */
+-               handle_local(config, 0, "127.0.0.0/255.0.0.0");
++               if (!config->localnets) {
++                       /* Use 127.0.0.1/255.0.0.0 by default */
++                       handle_local(config, 0, "127.0.0.0/255.0.0.0");
++               }
+ 
+                /* Check default server */
+                check_server(&(config->defaultserver));
diff --git a/doc/patches/tordns.patch b/doc/patches/tordns.patch
new file mode 100644
index 0000000..bf8d79b
--- /dev/null
+++ b/doc/patches/tordns.patch
@@ -0,0 +1,11004 @@
+diff -rN -U 5 tsocks-1.8/acconfig.h tsocks/acconfig.h
+--- tsocks-1.8/acconfig.h	2002-05-18 16:59:38.000000000 +1200
++++ tsocks/acconfig.h	2005-10-01 17:22:09.000000000 +1200
+@@ -51,10 +51,13 @@
+ /* We use strsep which isn't on all machines, but we provide our own
+ definition of it for those which don't have it, this causes us to define
+ our version */
+ #undef DEFINE_STRSEP
+ 
++/* Should we resolve DNS entries in a way which works well with tor? */
++#undef USE_TOR_DNS
++
+ /* Allow the use of DNS names in the socks configuration file for socks
+ servers. This doesn't work if socksified DNS is enabled for obvious
+ reasons, it also introduces overhead, but people seem to want it */
+ #define HOSTNAMES 0
+ 
+@@ -62,5 +65,16 @@
+ in inspectsocks */
+ #undef HAVE_GETHOSTBYNAME
+ 
+ /* Location of configuration file (typically /etc/tsocks.conf) */
+ #undef CONF_FILE 
++
++/* Define to indicate the correct signature for gethostbyname_r */
++#undef HAVE_FUNC_GETHOSTBYNAME_R_6
++#undef HAVE_FUNC_GETHOSTBYNAME_R_5
++#undef HAVE_FUNC_GETHOSTBYNAME_R_3
++
++/* Signatures for name resolution stuff */
++#undef GETHOSTBYNAME_SIGNATURE
++#undef GETADDRINFO_SIGNATURE
++#undef GETIPNODEBYNAME_SIGNATURE
++
+diff -rN -U 5 tsocks-1.8/aclocal/ac_c_gethostbyname_r.m4 tsocks/aclocal/ac_c_gethostbyname_r.m4
+--- tsocks-1.8/aclocal/ac_c_gethostbyname_r.m4	1970-01-01 12:00:00.000000000 +1200
++++ tsocks/aclocal/ac_c_gethostbyname_r.m4	2005-09-27 05:55:58.000000000 +1200
+@@ -0,0 +1,132 @@
++dnl http://autoconf-archive.cryp.to/ax_func_which_gethostbyname_r.html
++
++AC_DEFUN([AX_FUNC_WHICH_GETHOSTBYNAME_R], [
++
++    AC_LANG_PUSH(C)
++    AC_MSG_CHECKING([how many arguments gethostbyname_r() takes])
++
++    AC_CACHE_VAL(ac_cv_func_which_gethostbyname_r, [
++
++################################################################
++
++ac_cv_func_which_gethostbyname_r=unknown
++
++#
++# ONE ARGUMENT (sanity check)
++#
++
++# This should fail, as there is no variant of gethostbyname_r() that takes
++# a single argument. If it actually compiles, then we can assume that
++# netdb.h is not declaring the function, and the compiler is thereby
++# assuming an implicit prototype. In which case, we're out of luck.
++#
++AC_COMPILE_IFELSE(
++    AC_LANG_PROGRAM(
++        [[#include <netdb.h>]],
++        [[
++            char *name = "www.gnu.org";
++            (void)gethostbyname_r(name) /* ; */
++        ]]),
++    ac_cv_func_which_gethostbyname_r=no)
++
++#
++# SIX ARGUMENTS
++# (e.g. Linux)
++#
++
++if test "$ac_cv_func_which_gethostbyname_r" = "unknown"; then
++
++AC_COMPILE_IFELSE(
++    AC_LANG_PROGRAM(
++        [[#include <netdb.h>]],
++        [[
++            char *name = "www.gnu.org";
++            struct hostent ret, *retp;
++            char buf@<:@1024@:>@;
++            int buflen = 1024;
++            int my_h_errno;
++            (void)gethostbyname_r(name, &ret, buf, buflen, &retp, &my_h_errno) /* ; */
++        ]]),
++    ac_cv_func_which_gethostbyname_r=six)
++
++fi
++
++#
++# FIVE ARGUMENTS
++# (e.g. Solaris)
++#
++
++if test "$ac_cv_func_which_gethostbyname_r" = "unknown"; then
++
++AC_COMPILE_IFELSE(
++    AC_LANG_PROGRAM(
++        [[#include <netdb.h>]],
++        [[
++            char *name = "www.gnu.org";
++            struct hostent ret;
++            char buf@<:@1024@:>@;
++            int buflen = 1024;
++            int my_h_errno;
++            (void)gethostbyname_r(name, &ret, buf, buflen, &my_h_errno) /* ; */
++        ]]),
++    ac_cv_func_which_gethostbyname_r=five)
++
++fi
++
++#
++# THREE ARGUMENTS
++# (e.g. AIX, HP-UX, Tru64)
++#
++
++if test "$ac_cv_func_which_gethostbyname_r" = "unknown"; then
++
++AC_COMPILE_IFELSE(
++    AC_LANG_PROGRAM(
++        [[#include <netdb.h>]],
++        [[
++            char *name = "www.gnu.org";
++            struct hostent ret;
++            struct hostent_data data;
++            (void)gethostbyname_r(name, &ret, &data) /* ; */
++        ]]),
++    ac_cv_func_which_gethostbyname_r=three)
++
++fi
++
++################################################################
++
++]) dnl end AC_CACHE_VAL
++
++case "$ac_cv_func_which_gethostbyname_r" in
++    three)
++    AC_MSG_RESULT([three])
++    AC_DEFINE(HAVE_FUNC_GETHOSTBYNAME_R_3)
++    ;;
++
++    five)
++    AC_MSG_RESULT([five])
++    AC_DEFINE(HAVE_FUNC_GETHOSTBYNAME_R_5)
++    ;;
++
++    six)
++    AC_MSG_RESULT([six])
++    AC_DEFINE(HAVE_FUNC_GETHOSTBYNAME_R_6)
++    ;;
++
++    no)
++    AC_MSG_RESULT([cannot find function declaration in netdb.h])
++    ;;
++
++    unknown)
++    AC_MSG_RESULT([can't tell])
++    ;;
++
++    *)
++    AC_MSG_ERROR([internal error])
++    ;;
++esac
++
++AC_LANG_POP(C)
++
++]) dnl end AC_DEFUN
++
+diff -rN -U 5 tsocks-1.8/autogen.sh tsocks/autogen.sh
+--- tsocks-1.8/autogen.sh	1970-01-01 12:00:00.000000000 +1200
++++ tsocks/autogen.sh	2005-10-01 17:54:45.000000000 +1200
+@@ -0,0 +1,6 @@
++#!/bin/sh
++
++aclocal -I aclocal
++autoconf
++autoheader
++
+diff -rN -U 5 tsocks-1.8/ChangeLog tsocks/ChangeLog
+--- tsocks-1.8/ChangeLog	2002-05-18 17:22:26.000000000 +1200
++++ tsocks/ChangeLog	2005-10-02 16:03:18.000000000 +1300
+@@ -1,5 +1,9 @@
++version 1.80tordns - 2005.10.4 bls at totalinfosecurity.com
++   Intercept gethostbyname() and friends, added --tordns
++   option for better name resolution with Tor.
++
+ version 1.80Beta5 - 2002.?.?? delius at progsoc.uts.edu.au
+    Intercept close() to fix problems with tsocks and 
+       kmail 
+    Add FAQ to distribution
+ 
+diff -rN -U 5 tsocks-1.8/common.c tsocks/common.c
+--- tsocks-1.8/common.c	2002-07-16 10:35:06.000000000 +1200
++++ tsocks/common.c	2005-10-01 21:37:00.000000000 +1200
+@@ -76,10 +76,31 @@
+    }
+ 
+    logstamp = timestamp;
+ }
+ 
++/* Count the bits in a netmask.  This is a little bit buggy; it assumes 
++   all the zeroes are on the right... */
++
++int count_netmask_bits(uint32_t mask)
++{
++    int i;
++    int nbits = 0;
++
++    for(i=0; i<32; i++) {
++        if((mask >> i) & 1) {
++            nbits++;
++        } 
++    }
++    mask = ~mask;
++    mask = ntohl(mask);
++    if(mask & (mask+1)) {
++        return -1;  /* Noncontiguous */
++    }
++    return nbits;
++}
++
+ void show_msg(int level, char *fmt, ...) {
+ 	va_list ap;
+ 	int saveerr;
+ 	extern char *progname;
+    char timestring[20];
+@@ -105,11 +126,11 @@
+       strftime(timestring, sizeof(timestring),  "%H:%M:%S", 
+                localtime(&timestamp));
+       fprintf(logfile, "%s ", timestring);
+    }
+ 
+-   fputs(progname, logfile);
++   // fputs(progname, logfile);
+ 
+    if (logstamp) {
+       fprintf(logfile, "(%d)", getpid());
+    }
+    
+diff -rN -U 5 tsocks-1.8/common.h tsocks/common.h
+--- tsocks-1.8/common.h	2002-07-16 10:27:00.000000000 +1200
++++ tsocks/common.h	2005-09-27 10:48:20.000000000 +1200
+@@ -1,9 +1,10 @@
+ /* Common functions provided in common.c */
+ 
+ void set_log_options(int, char *, int);
+ void show_msg(int level, char *, ...);
++int count_netmask_bits(uint32_t mask);
+ unsigned int resolve_ip(char *, int, int);
+ 
+ #define MSGNONE   -1
+ #define MSGERR    0
+ #define MSGWARN   1
+diff -rN -U 5 tsocks-1.8/config.h.in tsocks/config.h.in
+--- tsocks-1.8/config.h.in	2002-05-18 16:59:42.000000000 +1200
++++ tsocks/config.h.in	2005-10-01 17:23:20.000000000 +1200
+@@ -1,9 +1,7 @@
+-/* config.h.in.  Generated automatically from configure.in by autoheader.  */
+-
+-/* Define if you have the ANSI C header files.  */
+-#undef STDC_HEADERS
++/* config.h.in.  Generated from configure.in by autoheader.  */
++/* accconfig.h -- `autoheader' will generate config.h.in for tsocks . */
+ 
+ /* Allow tsocks to generate messages to stderr when errors are
+ encountered, this is really important and should only be disabled if
+ you're REALLY sure. It can also be turned off at run time, see the man
+ page for details */
+@@ -49,10 +47,18 @@
+ /* Work out which function we have for conversion from string IPs to 
+ numerical ones */
+ #undef HAVE_INET_ADDR
+ #undef HAVE_INET_ATON
+ 
++/* We use strsep which isn't on all machines, but we provide our own
++definition of it for those which don't have it, this causes us to define
++our version */
++#undef DEFINE_STRSEP
++
++/* Should we resolve DNS entries in a way which works well with tor? */
++#undef USE_TOR_DNS
++
+ /* Allow the use of DNS names in the socks configuration file for socks
+ servers. This doesn't work if socksified DNS is enabled for obvious
+ reasons, it also introduces overhead, but people seem to want it */
+ #define HOSTNAMES 0
+ 
+@@ -61,28 +67,90 @@
+ #undef HAVE_GETHOSTBYNAME
+ 
+ /* Location of configuration file (typically /etc/tsocks.conf) */
+ #undef CONF_FILE 
+ 
+-/* Define if you have the strcspn function.  */
++/* Define to indicate the correct signature for gethostbyname_r */
++#undef HAVE_FUNC_GETHOSTBYNAME_R_6
++#undef HAVE_FUNC_GETHOSTBYNAME_R_5
++#undef HAVE_FUNC_GETHOSTBYNAME_R_3
++
++/* Signatures for name resolution stuff */
++#undef GETHOSTBYNAME_SIGNATURE
++#undef GETADDRINFO_SIGNATURE
++#undef GETIPNODEBYNAME_SIGNATURE
++
++
++/* Define to 1 if you have the <inttypes.h> header file. */
++#undef HAVE_INTTYPES_H
++
++/* Define to 1 if you have the `dl' library (-ldl). */
++#undef HAVE_LIBDL
++
++/* Define to 1 if you have the `socket' library (-lsocket). */
++#undef HAVE_LIBSOCKET
++
++/* Define to 1 if you have the <memory.h> header file. */
++#undef HAVE_MEMORY_H
++
++/* Define to 1 if you have the `mmap' function. */
++#undef HAVE_MMAP
++
++/* Define to 1 if you have the <stdint.h> header file. */
++#undef HAVE_STDINT_H
++
++/* Define to 1 if you have the <stdlib.h> header file. */
++#undef HAVE_STDLIB_H
++
++/* Define to 1 if you have the `strcasecmp' function. */
++#undef HAVE_STRCASECMP
++
++/* Define to 1 if you have the `strcspn' function. */
+ #undef HAVE_STRCSPN
+ 
+-/* Define if you have the strdup function.  */
++/* Define to 1 if you have the `strdup' function. */
+ #undef HAVE_STRDUP
+ 
+-/* Define if you have the strerror function.  */
++/* Define to 1 if you have the `strerror' function. */
+ #undef HAVE_STRERROR
+ 
+-/* Define if you have the strspn function.  */
++/* Define to 1 if you have the <strings.h> header file. */
++#undef HAVE_STRINGS_H
++
++/* Define to 1 if you have the <string.h> header file. */
++#undef HAVE_STRING_H
++
++/* Define to 1 if you have the `strncasecmp' function. */
++#undef HAVE_STRNCASECMP
++
++/* Define to 1 if you have the `strspn' function. */
+ #undef HAVE_STRSPN
+ 
+-/* Define if you have the strtol function.  */
++/* Define to 1 if you have the `strtol' function. */
+ #undef HAVE_STRTOL
+ 
+-/* Define if you have the <unistd.h> header file.  */
++/* Define to 1 if you have the <sys/stat.h> header file. */
++#undef HAVE_SYS_STAT_H
++
++/* Define to 1 if you have the <sys/types.h> header file. */
++#undef HAVE_SYS_TYPES_H
++
++/* Define to 1 if you have the <unistd.h> header file. */
+ #undef HAVE_UNISTD_H
+ 
+-/* Define if you have the dl library (-ldl).  */
+-#undef HAVE_LIBDL
++/* Define to the address where bug reports for this package should be sent. */
++#undef PACKAGE_BUGREPORT
+ 
+-/* Define if you have the socket library (-lsocket).  */
+-#undef HAVE_LIBSOCKET
++/* Define to the full name of this package. */
++#undef PACKAGE_NAME
++
++/* Define to the full name and version of this package. */
++#undef PACKAGE_STRING
++
++/* Define to the one symbol short name of this package. */
++#undef PACKAGE_TARNAME
++
++/* Define to the version of this package. */
++#undef PACKAGE_VERSION
++
++/* Define to 1 if you have the ANSI C header files. */
++#undef STDC_HEADERS
+diff -rN -U 5 tsocks-1.8/config.status tsocks/config.status
+--- tsocks-1.8/config.status	2002-07-16 10:51:14.000000000 +1200
++++ tsocks/config.status	1970-01-01 12:00:00.000000000 +1200
+@@ -1,312 +0,0 @@
+-#! /bin/sh
+-# Generated automatically by configure.
+-# Run this file to recreate the current configuration.
+-# This directory was configured as follows,
+-# on host cardini.homenet:
+-#
+-# ./configure 
+-#
+-# Compiler output produced by configure, useful for debugging
+-# configure, is in ./config.log if it exists.
+-
+-ac_cs_usage="Usage: ./config.status [--recheck] [--version] [--help]"
+-for ac_option
+-do
+-  case "$ac_option" in
+-  -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
+-    echo "running ${CONFIG_SHELL-/bin/sh} ./configure  --no-create --no-recursion"
+-    exec ${CONFIG_SHELL-/bin/sh} ./configure  --no-create --no-recursion ;;
+-  -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
+-    echo "./config.status generated by autoconf version 2.13"
+-    exit 0 ;;
+-  -help | --help | --hel | --he | --h)
+-    echo "$ac_cs_usage"; exit 0 ;;
+-  *) echo "$ac_cs_usage"; exit 1 ;;
+-  esac
+-done
+-
+-ac_given_srcdir=.
+-ac_given_INSTALL="/usr/bin/install -c"
+-
+-trap 'rm -fr Makefile config.h conftest*; exit 1' 1 2 15
+-
+-# Protect against being on the right side of a sed subst in config.status.
+-sed 's/%@/@@/; s/@%/@@/; s/%g$/@g/; /@g$/s/[\\&%]/\\&/g;
+- s/@@/%@/; s/@@/@%/; s/@g$/%g/' > conftest.subs <<\CEOF
+-/^[ 	]*VPATH[ 	]*=[^:]*$/d
+-
+-s%@SHELL@%/bin/sh%g
+-s%@CFLAGS@%-g -O2 -Wall%g
+-s%@CPPFLAGS@%%g
+-s%@CXXFLAGS@%%g
+-s%@FFLAGS@%%g
+-s%@DEFS@%-DHAVE_CONFIG_H%g
+-s%@LDFLAGS@%%g
+-s%@LIBS@% -lc%g
+-s%@exec_prefix@%${prefix}%g
+-s%@prefix@%/usr%g
+-s%@program_transform_name@%s,x,x,%g
+-s%@bindir@%${exec_prefix}/bin%g
+-s%@sbindir@%${exec_prefix}/sbin%g
+-s%@libexecdir@%${exec_prefix}/libexec%g
+-s%@datadir@%${prefix}/share%g
+-s%@sysconfdir@%${prefix}/etc%g
+-s%@sharedstatedir@%${prefix}/com%g
+-s%@localstatedir@%${prefix}/var%g
+-s%@libdir@%/lib%g
+-s%@includedir@%${prefix}/include%g
+-s%@oldincludedir@%/usr/include%g
+-s%@infodir@%${prefix}/info%g
+-s%@mandir@%${prefix}/man%g
+-s%@host@%i586-pc-linux-gnu%g
+-s%@host_alias@%i586-pc-linux-gnu%g
+-s%@host_cpu@%i586%g
+-s%@host_vendor@%pc%g
+-s%@host_os@%linux-gnu%g
+-s%@CC@%gcc%g
+-s%@INSTALL_PROGRAM@%${INSTALL}%g
+-s%@INSTALL_SCRIPT@%${INSTALL_PROGRAM}%g
+-s%@INSTALL_DATA@%${INSTALL} -m 644%g
+-s%@LN_S@%ln -s%g
+-s%@CPP@%gcc -E%g
+-s%@FIND@%%g
+-s%@TAIL@%%g
+-s%@SPECIALLIBS@%-ldl %g
+-
+-CEOF
+-
+-# Split the substitutions into bite-sized pieces for seds with
+-# small command number limits, like on Digital OSF/1 and HP-UX.
+-ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script.
+-ac_file=1 # Number of current file.
+-ac_beg=1 # First line for current file.
+-ac_end=$ac_max_sed_cmds # Line after last line for current file.
+-ac_more_lines=:
+-ac_sed_cmds=""
+-while $ac_more_lines; do
+-  if test $ac_beg -gt 1; then
+-    sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file
+-  else
+-    sed "${ac_end}q" conftest.subs > conftest.s$ac_file
+-  fi
+-  if test ! -s conftest.s$ac_file; then
+-    ac_more_lines=false
+-    rm -f conftest.s$ac_file
+-  else
+-    if test -z "$ac_sed_cmds"; then
+-      ac_sed_cmds="sed -f conftest.s$ac_file"
+-    else
+-      ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file"
+-    fi
+-    ac_file=`expr $ac_file + 1`
+-    ac_beg=$ac_end
+-    ac_end=`expr $ac_end + $ac_max_sed_cmds`
+-  fi
+-done
+-if test -z "$ac_sed_cmds"; then
+-  ac_sed_cmds=cat
+-fi
+-
+-CONFIG_FILES=${CONFIG_FILES-"Makefile"}
+-for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
+-  # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
+-  case "$ac_file" in
+-  *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
+-       ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
+-  *) ac_file_in="${ac_file}.in" ;;
+-  esac
+-
+-  # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories.
+-
+-  # Remove last slash and all that follows it.  Not all systems have dirname.
+-  ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
+-  if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
+-    # The file is in a subdirectory.
+-    test ! -d "$ac_dir" && mkdir "$ac_dir"
+-    ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`"
+-    # A "../" for each directory in $ac_dir_suffix.
+-    ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'`
+-  else
+-    ac_dir_suffix= ac_dots=
+-  fi
+-
+-  case "$ac_given_srcdir" in
+-  .)  srcdir=.
+-      if test -z "$ac_dots"; then top_srcdir=.
+-      else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;;
+-  /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;;
+-  *) # Relative path.
+-    srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix"
+-    top_srcdir="$ac_dots$ac_given_srcdir" ;;
+-  esac
+-
+-  case "$ac_given_INSTALL" in
+-  [/$]*) INSTALL="$ac_given_INSTALL" ;;
+-  *) INSTALL="$ac_dots$ac_given_INSTALL" ;;
+-  esac
+-
+-  echo creating "$ac_file"
+-  rm -f "$ac_file"
+-  configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure."
+-  case "$ac_file" in
+-  *Makefile*) ac_comsub="1i\\
+-# $configure_input" ;;
+-  *) ac_comsub= ;;
+-  esac
+-
+-  ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
+-  sed -e "$ac_comsub
+-s%@configure_input@%$configure_input%g
+-s%@srcdir@%$srcdir%g
+-s%@top_srcdir@%$top_srcdir%g
+-s%@INSTALL@%$INSTALL%g
+-" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file
+-fi; done
+-rm -f conftest.s*
+-
+-# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where
+-# NAME is the cpp macro being defined and VALUE is the value it is being given.
+-#
+-# ac_d sets the value in "#define NAME VALUE" lines.
+-ac_dA='s%^\([ 	]*\)#\([ 	]*define[ 	][ 	]*\)'
+-ac_dB='\([ 	][ 	]*\)[^ 	]*%\1#\2'
+-ac_dC='\3'
+-ac_dD='%g'
+-# ac_u turns "#undef NAME" with trailing blanks into "#define NAME VALUE".
+-ac_uA='s%^\([ 	]*\)#\([ 	]*\)undef\([ 	][ 	]*\)'
+-ac_uB='\([ 	]\)%\1#\2define\3'
+-ac_uC=' '
+-ac_uD='\4%g'
+-# ac_e turns "#undef NAME" without trailing blanks into "#define NAME VALUE".
+-ac_eA='s%^\([ 	]*\)#\([ 	]*\)undef\([ 	][ 	]*\)'
+-ac_eB='$%\1#\2define\3'
+-ac_eC=' '
+-ac_eD='%g'
+-
+-if test "${CONFIG_HEADERS+set}" != set; then
+-  CONFIG_HEADERS="config.h"
+-fi
+-for ac_file in .. $CONFIG_HEADERS; do if test "x$ac_file" != x..; then
+-  # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
+-  case "$ac_file" in
+-  *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
+-       ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
+-  *) ac_file_in="${ac_file}.in" ;;
+-  esac
+-
+-  echo creating $ac_file
+-
+-  rm -f conftest.frag conftest.in conftest.out
+-  ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
+-  cat $ac_file_inputs > conftest.in
+-
+-  cat > conftest.frag <<CEOF
+-${ac_dA}CONF_FILE${ac_dB}CONF_FILE${ac_dC}"/etc/tsocks.conf"${ac_dD}
+-${ac_uA}CONF_FILE${ac_uB}CONF_FILE${ac_uC}"/etc/tsocks.conf"${ac_uD}
+-${ac_eA}CONF_FILE${ac_eB}CONF_FILE${ac_eC}"/etc/tsocks.conf"${ac_eD}
+-${ac_dA}STDC_HEADERS${ac_dB}STDC_HEADERS${ac_dC}1${ac_dD}
+-${ac_uA}STDC_HEADERS${ac_uB}STDC_HEADERS${ac_uC}1${ac_uD}
+-${ac_eA}STDC_HEADERS${ac_eB}STDC_HEADERS${ac_eC}1${ac_eD}
+-${ac_dA}HAVE_UNISTD_H${ac_dB}HAVE_UNISTD_H${ac_dC}1${ac_dD}
+-${ac_uA}HAVE_UNISTD_H${ac_uB}HAVE_UNISTD_H${ac_uC}1${ac_uD}
+-${ac_eA}HAVE_UNISTD_H${ac_eB}HAVE_UNISTD_H${ac_eC}1${ac_eD}
+-${ac_dA}HAVE_STRCSPN${ac_dB}HAVE_STRCSPN${ac_dC}1${ac_dD}
+-${ac_uA}HAVE_STRCSPN${ac_uB}HAVE_STRCSPN${ac_uC}1${ac_uD}
+-${ac_eA}HAVE_STRCSPN${ac_eB}HAVE_STRCSPN${ac_eC}1${ac_eD}
+-CEOF
+-  sed -f conftest.frag conftest.in > conftest.out
+-  rm -f conftest.in
+-  mv conftest.out conftest.in
+-
+-  cat > conftest.frag <<CEOF
+-${ac_dA}HAVE_STRDUP${ac_dB}HAVE_STRDUP${ac_dC}1${ac_dD}
+-${ac_uA}HAVE_STRDUP${ac_uB}HAVE_STRDUP${ac_uC}1${ac_uD}
+-${ac_eA}HAVE_STRDUP${ac_eB}HAVE_STRDUP${ac_eC}1${ac_eD}
+-${ac_dA}HAVE_STRERROR${ac_dB}HAVE_STRERROR${ac_dC}1${ac_dD}
+-${ac_uA}HAVE_STRERROR${ac_uB}HAVE_STRERROR${ac_uC}1${ac_uD}
+-${ac_eA}HAVE_STRERROR${ac_eB}HAVE_STRERROR${ac_eC}1${ac_eD}
+-${ac_dA}HAVE_STRSPN${ac_dB}HAVE_STRSPN${ac_dC}1${ac_dD}
+-${ac_uA}HAVE_STRSPN${ac_uB}HAVE_STRSPN${ac_uC}1${ac_uD}
+-${ac_eA}HAVE_STRSPN${ac_eB}HAVE_STRSPN${ac_eC}1${ac_eD}
+-${ac_dA}HAVE_STRTOL${ac_dB}HAVE_STRTOL${ac_dC}1${ac_dD}
+-${ac_uA}HAVE_STRTOL${ac_uB}HAVE_STRTOL${ac_uC}1${ac_uD}
+-${ac_eA}HAVE_STRTOL${ac_eB}HAVE_STRTOL${ac_eC}1${ac_eD}
+-CEOF
+-  sed -f conftest.frag conftest.in > conftest.out
+-  rm -f conftest.in
+-  mv conftest.out conftest.in
+-
+-  cat > conftest.frag <<CEOF
+-${ac_dA}HAVE_INET_ATON${ac_dB}HAVE_INET_ATON${ac_dC}1${ac_dD}
+-${ac_uA}HAVE_INET_ATON${ac_uB}HAVE_INET_ATON${ac_uC}1${ac_uD}
+-${ac_eA}HAVE_INET_ATON${ac_eB}HAVE_INET_ATON${ac_eC}1${ac_eD}
+-${ac_dA}HAVE_GETHOSTBYNAME${ac_dB}HAVE_GETHOSTBYNAME${ac_dC}1${ac_dD}
+-${ac_uA}HAVE_GETHOSTBYNAME${ac_uB}HAVE_GETHOSTBYNAME${ac_uC}1${ac_uD}
+-${ac_eA}HAVE_GETHOSTBYNAME${ac_eB}HAVE_GETHOSTBYNAME${ac_eC}1${ac_eD}
+-${ac_dA}HAVE_LIBDL${ac_dB}HAVE_LIBDL${ac_dC}1${ac_dD}
+-${ac_uA}HAVE_LIBDL${ac_uB}HAVE_LIBDL${ac_uC}1${ac_uD}
+-${ac_eA}HAVE_LIBDL${ac_eB}HAVE_LIBDL${ac_eC}1${ac_eD}
+-${ac_dA}ALLOW_ENV_CONFIG${ac_dB}ALLOW_ENV_CONFIG${ac_dC}1${ac_dD}
+-${ac_uA}ALLOW_ENV_CONFIG${ac_uB}ALLOW_ENV_CONFIG${ac_uC}1${ac_uD}
+-${ac_eA}ALLOW_ENV_CONFIG${ac_eB}ALLOW_ENV_CONFIG${ac_eC}1${ac_eD}
+-CEOF
+-  sed -f conftest.frag conftest.in > conftest.out
+-  rm -f conftest.in
+-  mv conftest.out conftest.in
+-
+-  cat > conftest.frag <<CEOF
+-${ac_dA}ALLOW_MSG_OUTPUT${ac_dB}ALLOW_MSG_OUTPUT${ac_dC}1${ac_dD}
+-${ac_uA}ALLOW_MSG_OUTPUT${ac_uB}ALLOW_MSG_OUTPUT${ac_uC}1${ac_uD}
+-${ac_eA}ALLOW_MSG_OUTPUT${ac_eB}ALLOW_MSG_OUTPUT${ac_eC}1${ac_eD}
+-${ac_dA}HOSTNAMES${ac_dB}HOSTNAMES${ac_dC}1${ac_dD}
+-${ac_uA}HOSTNAMES${ac_uB}HOSTNAMES${ac_uC}1${ac_uD}
+-${ac_eA}HOSTNAMES${ac_eB}HOSTNAMES${ac_eC}1${ac_eD}
+-${ac_dA}SELECT_SIGNATURE${ac_dB}SELECT_SIGNATURE${ac_dC}int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout${ac_dD}
+-${ac_uA}SELECT_SIGNATURE${ac_uB}SELECT_SIGNATURE${ac_uC}int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout${ac_uD}
+-${ac_eA}SELECT_SIGNATURE${ac_eB}SELECT_SIGNATURE${ac_eC}int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout${ac_eD}
+-${ac_dA}CONNECT_SIGNATURE${ac_dB}CONNECT_SIGNATURE${ac_dC}int __fd, const struct sockaddr_in * __addr, socklen_t __len${ac_dD}
+-${ac_uA}CONNECT_SIGNATURE${ac_uB}CONNECT_SIGNATURE${ac_uC}int __fd, const struct sockaddr_in * __addr, socklen_t __len${ac_uD}
+-${ac_eA}CONNECT_SIGNATURE${ac_eB}CONNECT_SIGNATURE${ac_eC}int __fd, const struct sockaddr_in * __addr, socklen_t __len${ac_eD}
+-CEOF
+-  sed -f conftest.frag conftest.in > conftest.out
+-  rm -f conftest.in
+-  mv conftest.out conftest.in
+-
+-  cat > conftest.frag <<CEOF
+-${ac_dA}CONNECT_SOCKARG${ac_dB}CONNECT_SOCKARG${ac_dC}struct sockaddr_in *${ac_dD}
+-${ac_uA}CONNECT_SOCKARG${ac_uB}CONNECT_SOCKARG${ac_uC}struct sockaddr_in *${ac_uD}
+-${ac_eA}CONNECT_SOCKARG${ac_eB}CONNECT_SOCKARG${ac_eC}struct sockaddr_in *${ac_eD}
+-${ac_dA}CLOSE_SIGNATURE${ac_dB}CLOSE_SIGNATURE${ac_dC}int fd${ac_dD}
+-${ac_uA}CLOSE_SIGNATURE${ac_uB}CLOSE_SIGNATURE${ac_uC}int fd${ac_uD}
+-${ac_eA}CLOSE_SIGNATURE${ac_eB}CLOSE_SIGNATURE${ac_eC}int fd${ac_eD}
+-${ac_dA}POLL_SIGNATURE${ac_dB}POLL_SIGNATURE${ac_dC}struct pollfd *ufds, unsigned long nfds, int timeout${ac_dD}
+-${ac_uA}POLL_SIGNATURE${ac_uB}POLL_SIGNATURE${ac_uC}struct pollfd *ufds, unsigned long nfds, int timeout${ac_uD}
+-${ac_eA}POLL_SIGNATURE${ac_eB}POLL_SIGNATURE${ac_eC}struct pollfd *ufds, unsigned long nfds, int timeout${ac_eD}
+-s%^[ 	]*#[ 	]*undef[ 	][ 	]*[a-zA-Z_][a-zA-Z_0-9]*%/* & */%
+-CEOF
+-  sed -f conftest.frag conftest.in > conftest.out
+-  rm -f conftest.in
+-  mv conftest.out conftest.in
+-
+-  rm -f conftest.frag conftest.h
+-  echo "/* $ac_file.  Generated automatically by configure.  */" > conftest.h
+-  cat conftest.in >> conftest.h
+-  rm -f conftest.in
+-  if cmp -s $ac_file conftest.h 2>/dev/null; then
+-    echo "$ac_file is unchanged"
+-    rm -f conftest.h
+-  else
+-    # Remove last slash and all that follows it.  Not all systems have dirname.
+-      ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
+-      if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
+-      # The file is in a subdirectory.
+-      test ! -d "$ac_dir" && mkdir "$ac_dir"
+-    fi
+-    rm -f $ac_file
+-    mv conftest.h $ac_file
+-  fi
+-fi; done
+-
+-
+-
+-exit 0
+diff -rN -U 5 tsocks-1.8/configure tsocks/configure
+--- tsocks-1.8/configure	2002-07-16 10:51:08.000000000 +1200
++++ tsocks/configure	2005-10-02 21:57:17.000000000 +1300
+@@ -1,53 +1,345 @@
+ #! /bin/sh
+-
+ # Guess values for system-dependent variables and create Makefiles.
+-# Generated automatically using autoconf version 2.13 
+-# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
++# Generated by GNU Autoconf 2.59.
+ #
++# Copyright (C) 2003 Free Software Foundation, Inc.
+ # This configure script is free software; the Free Software Foundation
+ # gives unlimited permission to copy, distribute and modify it.
++## --------------------- ##
++## M4sh Initialization.  ##
++## --------------------- ##
++
++# Be Bourne compatible
++if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
++  emulate sh
++  NULLCMD=:
++  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
++  # is contrary to our usage.  Disable this feature.
++  alias -g '${1+"$@"}'='"$@"'
++elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
++  set -o posix
++fi
++DUALCASE=1; export DUALCASE # for MKS sh
++
++# Support unset when possible.
++if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
++  as_unset=unset
++else
++  as_unset=false
++fi
++
++
++# Work around bugs in pre-3.0 UWIN ksh.
++$as_unset ENV MAIL MAILPATH
++PS1='$ '
++PS2='> '
++PS4='+ '
++
++# NLS nuisances.
++for as_var in \
++  LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
++  LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
++  LC_TELEPHONE LC_TIME
++do
++  if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
++    eval $as_var=C; export $as_var
++  else
++    $as_unset $as_var
++  fi
++done
++
++# Required to use basename.
++if expr a : '\(a\)' >/dev/null 2>&1; then
++  as_expr=expr
++else
++  as_expr=false
++fi
++
++if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
++  as_basename=basename
++else
++  as_basename=false
++fi
++
++
++# Name of the executable.
++as_me=`$as_basename "$0" ||
++$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
++	 X"$0" : 'X\(//\)$' \| \
++	 X"$0" : 'X\(/\)$' \| \
++	 .     : '\(.\)' 2>/dev/null ||
++echo X/"$0" |
++    sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
++  	  /^X\/\(\/\/\)$/{ s//\1/; q; }
++  	  /^X\/\(\/\).*/{ s//\1/; q; }
++  	  s/.*/./; q'`
++
++
++# PATH needs CR, and LINENO needs CR and PATH.
++# Avoid depending upon Character Ranges.
++as_cr_letters='abcdefghijklmnopqrstuvwxyz'
++as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
++as_cr_Letters=$as_cr_letters$as_cr_LETTERS
++as_cr_digits='0123456789'
++as_cr_alnum=$as_cr_Letters$as_cr_digits
++
++# The user is always right.
++if test "${PATH_SEPARATOR+set}" != set; then
++  echo "#! /bin/sh" >conf$$.sh
++  echo  "exit 0"   >>conf$$.sh
++  chmod +x conf$$.sh
++  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
++    PATH_SEPARATOR=';'
++  else
++    PATH_SEPARATOR=:
++  fi
++  rm -f conf$$.sh
++fi
++
++
++  as_lineno_1=$LINENO
++  as_lineno_2=$LINENO
++  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
++  test "x$as_lineno_1" != "x$as_lineno_2" &&
++  test "x$as_lineno_3"  = "x$as_lineno_2"  || {
++  # Find who we are.  Look in the path if we contain no path at all
++  # relative or not.
++  case $0 in
++    *[\\/]* ) as_myself=$0 ;;
++    *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
++done
++
++       ;;
++  esac
++  # We did not find ourselves, most probably we were run as `sh COMMAND'
++  # in which case we are not to be found in the path.
++  if test "x$as_myself" = x; then
++    as_myself=$0
++  fi
++  if test ! -f "$as_myself"; then
++    { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2
++   { (exit 1); exit 1; }; }
++  fi
++  case $CONFIG_SHELL in
++  '')
++    as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for as_base in sh bash ksh sh5; do
++	 case $as_dir in
++	 /*)
++	   if ("$as_dir/$as_base" -c '
++  as_lineno_1=$LINENO
++  as_lineno_2=$LINENO
++  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
++  test "x$as_lineno_1" != "x$as_lineno_2" &&
++  test "x$as_lineno_3"  = "x$as_lineno_2" ') 2>/dev/null; then
++	     $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; }
++	     $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
++	     CONFIG_SHELL=$as_dir/$as_base
++	     export CONFIG_SHELL
++	     exec "$CONFIG_SHELL" "$0" ${1+"$@"}
++	   fi;;
++	 esac
++       done
++done
++;;
++  esac
++
++  # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
++  # uniformly replaced by the line number.  The first 'sed' inserts a
++  # line-number line before each line; the second 'sed' does the real
++  # work.  The second script uses 'N' to pair each line-number line
++  # with the numbered line, and appends trailing '-' during
++  # substitution so that $LINENO is not a special case at line end.
++  # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
++  # second 'sed' script.  Blame Lee E. McMahon for sed's syntax.  :-)
++  sed '=' <$as_myself |
++    sed '
++      N
++      s,$,-,
++      : loop
++      s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
++      t loop
++      s,-$,,
++      s,^['$as_cr_digits']*\n,,
++    ' >$as_me.lineno &&
++  chmod +x $as_me.lineno ||
++    { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
++   { (exit 1); exit 1; }; }
++
++  # Don't try to exec as it changes $[0], causing all sort of problems
++  # (the dirname of $[0] is not the place where we might find the
++  # original and so on.  Autoconf is especially sensible to this).
++  . ./$as_me.lineno
++  # Exit status is that of the last command.
++  exit
++}
++
++
++case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
++  *c*,-n*) ECHO_N= ECHO_C='
++' ECHO_T='	' ;;
++  *c*,*  ) ECHO_N=-n ECHO_C= ECHO_T= ;;
++  *)       ECHO_N= ECHO_C='\c' ECHO_T= ;;
++esac
++
++if expr a : '\(a\)' >/dev/null 2>&1; then
++  as_expr=expr
++else
++  as_expr=false
++fi
++
++rm -f conf$$ conf$$.exe conf$$.file
++echo >conf$$.file
++if ln -s conf$$.file conf$$ 2>/dev/null; then
++  # We could just check for DJGPP; but this test a) works b) is more generic
++  # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
++  if test -f conf$$.exe; then
++    # Don't use ln at all; we don't have any links
++    as_ln_s='cp -p'
++  else
++    as_ln_s='ln -s'
++  fi
++elif ln conf$$.file conf$$ 2>/dev/null; then
++  as_ln_s=ln
++else
++  as_ln_s='cp -p'
++fi
++rm -f conf$$ conf$$.exe conf$$.file
++
++if mkdir -p . 2>/dev/null; then
++  as_mkdir_p=:
++else
++  test -d ./-p && rmdir ./-p
++  as_mkdir_p=false
++fi
++
++as_executable_p="test -f"
++
++# Sed expression to map a string onto a valid CPP name.
++as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
++
++# Sed expression to map a string onto a valid variable name.
++as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
++
++
++# IFS
++# We need space, tab and new line, in precisely that order.
++as_nl='
++'
++IFS=" 	$as_nl"
++
++# CDPATH.
++$as_unset CDPATH
++
+ 
+-# Defaults:
+-ac_help=
++# Name of the host.
++# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
++# so uname gets run too.
++ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
++
++exec 6>&1
++
++#
++# Initializations.
++#
+ ac_default_prefix=/usr/local
+-# Any additions from configure.in:
++ac_config_libobj_dir=.
++cross_compiling=no
++subdirs=
++MFLAGS=
++MAKEFLAGS=
++SHELL=${CONFIG_SHELL-/bin/sh}
++
++# Maximum number of lines to put in a shell here document.
++# This variable seems obsolete.  It should probably be removed, and
++# only ac_max_sed_lines should be used.
++: ${ac_max_here_lines=38}
++
++# Identity of this package.
++PACKAGE_NAME=
++PACKAGE_TARNAME=
++PACKAGE_VERSION=
++PACKAGE_STRING=
++PACKAGE_BUGREPORT=
++
++ac_unique_file="saveme.c"
+ ac_default_prefix=/usr
+-ac_help="$ac_help
+-  --enable-socksdns	      force dns lookups to use tcp "
+-ac_help="$ac_help
+-  --disable-debug         disable ALL error messages from tsocks "
+-ac_help="$ac_help
+-  --enable-oldmethod	   use the old method to override connect "
+-ac_help="$ac_help
+-  --disable-hostnames	   disable hostname lookups for socks servers "
+-ac_help="$ac_help
+-  --disable-envconf       do not allow TSOCKS_CONF_FILE to specify configuration file "
+-ac_help="$ac_help
+-  --with-conf=<file>      location of configuration file (/etc/tsocks.conf default)"
++# Factoring default headers for most tests.
++ac_includes_default="\
++#include <stdio.h>
++#if HAVE_SYS_TYPES_H
++# include <sys/types.h>
++#endif
++#if HAVE_SYS_STAT_H
++# include <sys/stat.h>
++#endif
++#if STDC_HEADERS
++# include <stdlib.h>
++# include <stddef.h>
++#else
++# if HAVE_STDLIB_H
++#  include <stdlib.h>
++# endif
++#endif
++#if HAVE_STRING_H
++# if !STDC_HEADERS && HAVE_MEMORY_H
++#  include <memory.h>
++# endif
++# include <string.h>
++#endif
++#if HAVE_STRINGS_H
++# include <strings.h>
++#endif
++#if HAVE_INTTYPES_H
++# include <inttypes.h>
++#else
++# if HAVE_STDINT_H
++#  include <stdint.h>
++# endif
++#endif
++#if HAVE_UNISTD_H
++# include <unistd.h>
++#endif"
++
++ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S CPP EGREP DEADPOOL_O FIND TAIL SPECIALLIBS LIBOBJS LTLIBOBJS'
++ac_subst_files=''
+ 
+ # Initialize some variables set by options.
++ac_init_help=
++ac_init_version=false
+ # The variables have the same names as the options, with
+ # dashes changed to underlines.
+-build=NONE
+-cache_file=./config.cache
++cache_file=/dev/null
+ exec_prefix=NONE
+-host=NONE
+ no_create=
+-nonopt=NONE
+ no_recursion=
+ prefix=NONE
+ program_prefix=NONE
+ program_suffix=NONE
+ program_transform_name=s,x,x,
+ silent=
+ site=
+ srcdir=
+-target=NONE
+ verbose=
+ x_includes=NONE
+ x_libraries=NONE
++
++# Installation directory options.
++# These are left unexpanded so users can "make install exec_prefix=/foo"
++# and all the variables that are supposed to be based on exec_prefix
++# by default will actually change.
++# Use braces instead of parens because sh, perl, etc. also accept them.
+ bindir='${exec_prefix}/bin'
+ sbindir='${exec_prefix}/sbin'
+ libexecdir='${exec_prefix}/libexec'
+ datadir='${prefix}/share'
+ sysconfdir='${prefix}/etc'
+@@ -57,199 +349,143 @@
+ includedir='${prefix}/include'
+ oldincludedir='/usr/include'
+ infodir='${prefix}/info'
+ mandir='${prefix}/man'
+ 
+-# Initialize some other variables.
+-subdirs=
+-MFLAGS= MAKEFLAGS=
+-SHELL=${CONFIG_SHELL-/bin/sh}
+-# Maximum number of lines to put in a shell here document.
+-ac_max_here_lines=12
+-
+ ac_prev=
+ for ac_option
+ do
+-
+   # If the previous option needs an argument, assign it.
+   if test -n "$ac_prev"; then
+     eval "$ac_prev=\$ac_option"
+     ac_prev=
+     continue
+   fi
+ 
+-  case "$ac_option" in
+-  -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
+-  *) ac_optarg= ;;
+-  esac
++  ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'`
+ 
+   # Accept the important Cygnus configure options, so we can diagnose typos.
+ 
+-  case "$ac_option" in
++  case $ac_option in
+ 
+   -bindir | --bindir | --bindi | --bind | --bin | --bi)
+     ac_prev=bindir ;;
+   -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
+-    bindir="$ac_optarg" ;;
++    bindir=$ac_optarg ;;
+ 
+   -build | --build | --buil | --bui | --bu)
+-    ac_prev=build ;;
++    ac_prev=build_alias ;;
+   -build=* | --build=* | --buil=* | --bui=* | --bu=*)
+-    build="$ac_optarg" ;;
++    build_alias=$ac_optarg ;;
+ 
+   -cache-file | --cache-file | --cache-fil | --cache-fi \
+   | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
+     ac_prev=cache_file ;;
+   -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
+   | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
+-    cache_file="$ac_optarg" ;;
++    cache_file=$ac_optarg ;;
++
++  --config-cache | -C)
++    cache_file=config.cache ;;
+ 
+   -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
+     ac_prev=datadir ;;
+   -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
+   | --da=*)
+-    datadir="$ac_optarg" ;;
++    datadir=$ac_optarg ;;
+ 
+   -disable-* | --disable-*)
+-    ac_feature=`echo $ac_option|sed -e 's/-*disable-//'`
++    ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
+     # Reject names that are not valid shell variable names.
+-    if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then
+-      { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
+-    fi
+-    ac_feature=`echo $ac_feature| sed 's/-/_/g'`
+-    eval "enable_${ac_feature}=no" ;;
++    expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
++      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
++   { (exit 1); exit 1; }; }
++    ac_feature=`echo $ac_feature | sed 's/-/_/g'`
++    eval "enable_$ac_feature=no" ;;
+ 
+   -enable-* | --enable-*)
+-    ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'`
++    ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
+     # Reject names that are not valid shell variable names.
+-    if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then
+-      { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
+-    fi
+-    ac_feature=`echo $ac_feature| sed 's/-/_/g'`
+-    case "$ac_option" in
+-      *=*) ;;
++    expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
++      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
++   { (exit 1); exit 1; }; }
++    ac_feature=`echo $ac_feature | sed 's/-/_/g'`
++    case $ac_option in
++      *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
+       *) ac_optarg=yes ;;
+     esac
+-    eval "enable_${ac_feature}='$ac_optarg'" ;;
++    eval "enable_$ac_feature='$ac_optarg'" ;;
+ 
+   -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
+   | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
+   | --exec | --exe | --ex)
+     ac_prev=exec_prefix ;;
+   -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
+   | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
+   | --exec=* | --exe=* | --ex=*)
+-    exec_prefix="$ac_optarg" ;;
++    exec_prefix=$ac_optarg ;;
+ 
+   -gas | --gas | --ga | --g)
+     # Obsolete; use --with-gas.
+     with_gas=yes ;;
+ 
+-  -help | --help | --hel | --he)
+-    # Omit some internal or obsolete options to make the list less imposing.
+-    # This message is too long to be a string in the A/UX 3.1 sh.
+-    cat << EOF
+-Usage: configure [options] [host]
+-Options: [defaults in brackets after descriptions]
+-Configuration:
+-  --cache-file=FILE       cache test results in FILE
+-  --help                  print this message
+-  --no-create             do not create output files
+-  --quiet, --silent       do not print \`checking...' messages
+-  --version               print the version of autoconf that created configure
+-Directory and file names:
+-  --prefix=PREFIX         install architecture-independent files in PREFIX
+-                          [$ac_default_prefix]
+-  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
+-                          [same as prefix]
+-  --bindir=DIR            user executables in DIR [EPREFIX/bin]
+-  --sbindir=DIR           system admin executables in DIR [EPREFIX/sbin]
+-  --libexecdir=DIR        program executables in DIR [EPREFIX/libexec]
+-  --datadir=DIR           read-only architecture-independent data in DIR
+-                          [PREFIX/share]
+-  --sysconfdir=DIR        read-only single-machine data in DIR [PREFIX/etc]
+-  --sharedstatedir=DIR    modifiable architecture-independent data in DIR
+-                          [PREFIX/com]
+-  --localstatedir=DIR     modifiable single-machine data in DIR [PREFIX/var]
+-  --libdir=DIR            object code libraries in DIR [EPREFIX/lib]
+-  --includedir=DIR        C header files in DIR [PREFIX/include]
+-  --oldincludedir=DIR     C header files for non-gcc in DIR [/usr/include]
+-  --infodir=DIR           info documentation in DIR [PREFIX/info]
+-  --mandir=DIR            man documentation in DIR [PREFIX/man]
+-  --srcdir=DIR            find the sources in DIR [configure dir or ..]
+-  --program-prefix=PREFIX prepend PREFIX to installed program names
+-  --program-suffix=SUFFIX append SUFFIX to installed program names
+-  --program-transform-name=PROGRAM
+-                          run sed PROGRAM on installed program names
+-EOF
+-    cat << EOF
+-Host type:
+-  --build=BUILD           configure for building on BUILD [BUILD=HOST]
+-  --host=HOST             configure for HOST [guessed]
+-  --target=TARGET         configure for TARGET [TARGET=HOST]
+-Features and packages:
+-  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
+-  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
+-  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
+-  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
+-  --x-includes=DIR        X include files are in DIR
+-  --x-libraries=DIR       X library files are in DIR
+-EOF
+-    if test -n "$ac_help"; then
+-      echo "--enable and --with options recognized:$ac_help"
+-    fi
+-    exit 0 ;;
++  -help | --help | --hel | --he | -h)
++    ac_init_help=long ;;
++  -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
++    ac_init_help=recursive ;;
++  -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
++    ac_init_help=short ;;
+ 
+   -host | --host | --hos | --ho)
+-    ac_prev=host ;;
++    ac_prev=host_alias ;;
+   -host=* | --host=* | --hos=* | --ho=*)
+-    host="$ac_optarg" ;;
++    host_alias=$ac_optarg ;;
+ 
+   -includedir | --includedir | --includedi | --included | --include \
+   | --includ | --inclu | --incl | --inc)
+     ac_prev=includedir ;;
+   -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
+   | --includ=* | --inclu=* | --incl=* | --inc=*)
+-    includedir="$ac_optarg" ;;
++    includedir=$ac_optarg ;;
+ 
+   -infodir | --infodir | --infodi | --infod | --info | --inf)
+     ac_prev=infodir ;;
+   -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
+-    infodir="$ac_optarg" ;;
++    infodir=$ac_optarg ;;
+ 
+   -libdir | --libdir | --libdi | --libd)
+     ac_prev=libdir ;;
+   -libdir=* | --libdir=* | --libdi=* | --libd=*)
+-    libdir="$ac_optarg" ;;
++    libdir=$ac_optarg ;;
+ 
+   -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
+   | --libexe | --libex | --libe)
+     ac_prev=libexecdir ;;
+   -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
+   | --libexe=* | --libex=* | --libe=*)
+-    libexecdir="$ac_optarg" ;;
++    libexecdir=$ac_optarg ;;
+ 
+   -localstatedir | --localstatedir | --localstatedi | --localstated \
+   | --localstate | --localstat | --localsta | --localst \
+   | --locals | --local | --loca | --loc | --lo)
+     ac_prev=localstatedir ;;
+   -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
+   | --localstate=* | --localstat=* | --localsta=* | --localst=* \
+   | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
+-    localstatedir="$ac_optarg" ;;
++    localstatedir=$ac_optarg ;;
+ 
+   -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
+     ac_prev=mandir ;;
+   -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
+-    mandir="$ac_optarg" ;;
++    mandir=$ac_optarg ;;
+ 
+   -nfp | --nfp | --nf)
+     # Obsolete; use --without-fp.
+     with_fp=no ;;
+ 
+   -no-create | --no-create | --no-creat | --no-crea | --no-cre \
+-  | --no-cr | --no-c)
++  | --no-cr | --no-c | -n)
+     no_create=yes ;;
+ 
+   -no-recursion | --no-recursion | --no-recursio | --no-recursi \
+   | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
+     no_recursion=yes ;;
+@@ -259,30 +495,30 @@
+   | --oldin | --oldi | --old | --ol | --o)
+     ac_prev=oldincludedir ;;
+   -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
+   | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
+   | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
+-    oldincludedir="$ac_optarg" ;;
++    oldincludedir=$ac_optarg ;;
+ 
+   -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
+     ac_prev=prefix ;;
+   -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
+-    prefix="$ac_optarg" ;;
++    prefix=$ac_optarg ;;
+ 
+   -program-prefix | --program-prefix | --program-prefi | --program-pref \
+   | --program-pre | --program-pr | --program-p)
+     ac_prev=program_prefix ;;
+   -program-prefix=* | --program-prefix=* | --program-prefi=* \
+   | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
+-    program_prefix="$ac_optarg" ;;
++    program_prefix=$ac_optarg ;;
+ 
+   -program-suffix | --program-suffix | --program-suffi | --program-suff \
+   | --program-suf | --program-su | --program-s)
+     ac_prev=program_suffix ;;
+   -program-suffix=* | --program-suffix=* | --program-suffi=* \
+   | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
+-    program_suffix="$ac_optarg" ;;
++    program_suffix=$ac_optarg ;;
+ 
+   -program-transform-name | --program-transform-name \
+   | --program-transform-nam | --program-transform-na \
+   | --program-transform-n | --program-transform- \
+   | --program-transform | --program-transfor \
+@@ -295,305 +531,842 @@
+   | --program-transform-n=* | --program-transform-=* \
+   | --program-transform=* | --program-transfor=* \
+   | --program-transfo=* | --program-transf=* \
+   | --program-trans=* | --program-tran=* \
+   | --progr-tra=* | --program-tr=* | --program-t=*)
+-    program_transform_name="$ac_optarg" ;;
++    program_transform_name=$ac_optarg ;;
+ 
+   -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+   | -silent | --silent | --silen | --sile | --sil)
+     silent=yes ;;
+ 
+   -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
+     ac_prev=sbindir ;;
+   -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
+   | --sbi=* | --sb=*)
+-    sbindir="$ac_optarg" ;;
++    sbindir=$ac_optarg ;;
+ 
+   -sharedstatedir | --sharedstatedir | --sharedstatedi \
+   | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
+   | --sharedst | --shareds | --shared | --share | --shar \
+   | --sha | --sh)
+     ac_prev=sharedstatedir ;;
+   -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
+   | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
+   | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
+   | --sha=* | --sh=*)
+-    sharedstatedir="$ac_optarg" ;;
++    sharedstatedir=$ac_optarg ;;
+ 
+   -site | --site | --sit)
+     ac_prev=site ;;
+   -site=* | --site=* | --sit=*)
+-    site="$ac_optarg" ;;
++    site=$ac_optarg ;;
+ 
+   -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
+     ac_prev=srcdir ;;
+   -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
+-    srcdir="$ac_optarg" ;;
++    srcdir=$ac_optarg ;;
+ 
+   -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
+   | --syscon | --sysco | --sysc | --sys | --sy)
+     ac_prev=sysconfdir ;;
+   -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
+   | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
+-    sysconfdir="$ac_optarg" ;;
++    sysconfdir=$ac_optarg ;;
+ 
+   -target | --target | --targe | --targ | --tar | --ta | --t)
+-    ac_prev=target ;;
++    ac_prev=target_alias ;;
+   -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
+-    target="$ac_optarg" ;;
++    target_alias=$ac_optarg ;;
+ 
+   -v | -verbose | --verbose | --verbos | --verbo | --verb)
+     verbose=yes ;;
+ 
+-  -version | --version | --versio | --versi | --vers)
+-    echo "configure generated by autoconf version 2.13"
+-    exit 0 ;;
++  -version | --version | --versio | --versi | --vers | -V)
++    ac_init_version=: ;;
+ 
+   -with-* | --with-*)
+-    ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'`
++    ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
+     # Reject names that are not valid shell variable names.
+-    if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then
+-      { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
+-    fi
++    expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
++      { echo "$as_me: error: invalid package name: $ac_package" >&2
++   { (exit 1); exit 1; }; }
+     ac_package=`echo $ac_package| sed 's/-/_/g'`
+-    case "$ac_option" in
+-      *=*) ;;
++    case $ac_option in
++      *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
+       *) ac_optarg=yes ;;
+     esac
+-    eval "with_${ac_package}='$ac_optarg'" ;;
++    eval "with_$ac_package='$ac_optarg'" ;;
+ 
+   -without-* | --without-*)
+-    ac_package=`echo $ac_option|sed -e 's/-*without-//'`
++    ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'`
+     # Reject names that are not valid shell variable names.
+-    if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then
+-      { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
+-    fi
+-    ac_package=`echo $ac_package| sed 's/-/_/g'`
+-    eval "with_${ac_package}=no" ;;
++    expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
++      { echo "$as_me: error: invalid package name: $ac_package" >&2
++   { (exit 1); exit 1; }; }
++    ac_package=`echo $ac_package | sed 's/-/_/g'`
++    eval "with_$ac_package=no" ;;
+ 
+   --x)
+     # Obsolete; use --with-x.
+     with_x=yes ;;
+ 
+   -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
+   | --x-incl | --x-inc | --x-in | --x-i)
+     ac_prev=x_includes ;;
+   -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
+   | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
+-    x_includes="$ac_optarg" ;;
++    x_includes=$ac_optarg ;;
+ 
+   -x-libraries | --x-libraries | --x-librarie | --x-librari \
+   | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
+     ac_prev=x_libraries ;;
+   -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
+   | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
+-    x_libraries="$ac_optarg" ;;
++    x_libraries=$ac_optarg ;;
+ 
+-  -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; }
++  -*) { echo "$as_me: error: unrecognized option: $ac_option
++Try \`$0 --help' for more information." >&2
++   { (exit 1); exit 1; }; }
+     ;;
+ 
++  *=*)
++    ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
++    # Reject names that are not valid shell variable names.
++    expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
++      { echo "$as_me: error: invalid variable name: $ac_envvar" >&2
++   { (exit 1); exit 1; }; }
++    ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`
++    eval "$ac_envvar='$ac_optarg'"
++    export $ac_envvar ;;
++
+   *)
+-    if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then
+-      echo "configure: warning: $ac_option: invalid host type" 1>&2
+-    fi
+-    if test "x$nonopt" != xNONE; then
+-      { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; }
+-    fi
+-    nonopt="$ac_option"
++    # FIXME: should be removed in autoconf 3.0.
++    echo "$as_me: WARNING: you should use --build, --host, --target" >&2
++    expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
++      echo "$as_me: WARNING: invalid host type: $ac_option" >&2
++    : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
+     ;;
+ 
+   esac
+ done
+ 
+ if test -n "$ac_prev"; then
+-  { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; }
+-fi
+-
+-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
+-
+-# File descriptor usage:
+-# 0 standard input
+-# 1 file creation
+-# 2 errors and warnings
+-# 3 some systems may open it to /dev/tty
+-# 4 used on the Kubota Titan
+-# 6 checking for... messages and results
+-# 5 compiler messages saved in config.log
+-if test "$silent" = yes; then
+-  exec 6>/dev/null
+-else
+-  exec 6>&1
++  ac_option=--`echo $ac_prev | sed 's/_/-/g'`
++  { echo "$as_me: error: missing argument to $ac_option" >&2
++   { (exit 1); exit 1; }; }
+ fi
+-exec 5>./config.log
+ 
+-echo "\
+-This file contains any messages produced by compilers while
+-running configure, to aid debugging if configure makes a mistake.
+-" 1>&5
++# Be sure to have absolute paths.
++for ac_var in exec_prefix prefix
++do
++  eval ac_val=$`echo $ac_var`
++  case $ac_val in
++    [\\/$]* | ?:[\\/]* | NONE | '' ) ;;
++    *)  { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
++   { (exit 1); exit 1; }; };;
++  esac
++done
+ 
+-# Strip out --no-create and --no-recursion so they do not pile up.
+-# Also quote any args containing shell metacharacters.
+-ac_configure_args=
+-for ac_arg
++# Be sure to have absolute paths.
++for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \
++	      localstatedir libdir includedir oldincludedir infodir mandir
+ do
+-  case "$ac_arg" in
+-  -no-create | --no-create | --no-creat | --no-crea | --no-cre \
+-  | --no-cr | --no-c) ;;
+-  -no-recursion | --no-recursion | --no-recursio | --no-recursi \
+-  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;;
+-  *" "*|*"	"*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
+-  ac_configure_args="$ac_configure_args '$ac_arg'" ;;
+-  *) ac_configure_args="$ac_configure_args $ac_arg" ;;
++  eval ac_val=$`echo $ac_var`
++  case $ac_val in
++    [\\/$]* | ?:[\\/]* ) ;;
++    *)  { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
++   { (exit 1); exit 1; }; };;
+   esac
+ done
+ 
+-# NLS nuisances.
+-# Only set these to C if already set.  These must not be set unconditionally
+-# because not all systems understand e.g. LANG=C (notably SCO).
+-# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
+-# Non-C LC_CTYPE values break the ctype check.
+-if test "${LANG+set}"   = set; then LANG=C;   export LANG;   fi
+-if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
+-if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
+-if test "${LC_CTYPE+set}"    = set; then LC_CTYPE=C;    export LC_CTYPE;    fi
++# There might be people who depend on the old broken behavior: `$host'
++# used to hold the argument of --host etc.
++# FIXME: To remove some day.
++build=$build_alias
++host=$host_alias
++target=$target_alias
++
++# FIXME: To remove some day.
++if test "x$host_alias" != x; then
++  if test "x$build_alias" = x; then
++    cross_compiling=maybe
++    echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
++    If a cross compiler is detected then cross compile mode will be used." >&2
++  elif test "x$build_alias" != "x$host_alias"; then
++    cross_compiling=yes
++  fi
++fi
+ 
+-# confdefs.h avoids OS command line length limits that DEFS can exceed.
+-rm -rf conftest* confdefs.h
+-# AIX cpp loses on an empty file, so make sure it contains at least a newline.
+-echo > confdefs.h
++ac_tool_prefix=
++test -n "$host_alias" && ac_tool_prefix=$host_alias-
++
++test "$silent" = yes && exec 6>/dev/null
+ 
+-# A filename unique to this package, relative to the directory that
+-# configure is in, which we can look for to find out if srcdir is correct.
+-ac_unique_file=saveme.c
+ 
+ # Find the source files, if location was not specified.
+ if test -z "$srcdir"; then
+   ac_srcdir_defaulted=yes
+   # Try the directory containing this script, then its parent.
+-  ac_prog=$0
+-  ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'`
+-  test "x$ac_confdir" = "x$ac_prog" && ac_confdir=.
++  ac_confdir=`(dirname "$0") 2>/dev/null ||
++$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
++	 X"$0" : 'X\(//\)[^/]' \| \
++	 X"$0" : 'X\(//\)$' \| \
++	 X"$0" : 'X\(/\)' \| \
++	 .     : '\(.\)' 2>/dev/null ||
++echo X"$0" |
++    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
++  	  /^X\(\/\/\)[^/].*/{ s//\1/; q; }
++  	  /^X\(\/\/\)$/{ s//\1/; q; }
++  	  /^X\(\/\).*/{ s//\1/; q; }
++  	  s/.*/./; q'`
+   srcdir=$ac_confdir
+   if test ! -r $srcdir/$ac_unique_file; then
+     srcdir=..
+   fi
+ else
+   ac_srcdir_defaulted=no
+ fi
+ if test ! -r $srcdir/$ac_unique_file; then
+   if test "$ac_srcdir_defaulted" = yes; then
+-    { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; }
++    { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2
++   { (exit 1); exit 1; }; }
+   else
+-    { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; }
++    { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2
++   { (exit 1); exit 1; }; }
+   fi
+ fi
+-srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'`
++(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null ||
++  { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2
++   { (exit 1); exit 1; }; }
++srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'`
++ac_env_build_alias_set=${build_alias+set}
++ac_env_build_alias_value=$build_alias
++ac_cv_env_build_alias_set=${build_alias+set}
++ac_cv_env_build_alias_value=$build_alias
++ac_env_host_alias_set=${host_alias+set}
++ac_env_host_alias_value=$host_alias
++ac_cv_env_host_alias_set=${host_alias+set}
++ac_cv_env_host_alias_value=$host_alias
++ac_env_target_alias_set=${target_alias+set}
++ac_env_target_alias_value=$target_alias
++ac_cv_env_target_alias_set=${target_alias+set}
++ac_cv_env_target_alias_value=$target_alias
++ac_env_CC_set=${CC+set}
++ac_env_CC_value=$CC
++ac_cv_env_CC_set=${CC+set}
++ac_cv_env_CC_value=$CC
++ac_env_CFLAGS_set=${CFLAGS+set}
++ac_env_CFLAGS_value=$CFLAGS
++ac_cv_env_CFLAGS_set=${CFLAGS+set}
++ac_cv_env_CFLAGS_value=$CFLAGS
++ac_env_LDFLAGS_set=${LDFLAGS+set}
++ac_env_LDFLAGS_value=$LDFLAGS
++ac_cv_env_LDFLAGS_set=${LDFLAGS+set}
++ac_cv_env_LDFLAGS_value=$LDFLAGS
++ac_env_CPPFLAGS_set=${CPPFLAGS+set}
++ac_env_CPPFLAGS_value=$CPPFLAGS
++ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set}
++ac_cv_env_CPPFLAGS_value=$CPPFLAGS
++ac_env_CPP_set=${CPP+set}
++ac_env_CPP_value=$CPP
++ac_cv_env_CPP_set=${CPP+set}
++ac_cv_env_CPP_value=$CPP
++
++#
++# Report the --help message.
++#
++if test "$ac_init_help" = "long"; then
++  # Omit some internal or obsolete options to make the list less imposing.
++  # This message is too long to be a string in the A/UX 3.1 sh.
++  cat <<_ACEOF
++\`configure' configures this package to adapt to many kinds of systems.
++
++Usage: $0 [OPTION]... [VAR=VALUE]...
++
++To assign environment variables (e.g., CC, CFLAGS...), specify them as
++VAR=VALUE.  See below for descriptions of some of the useful variables.
++
++Defaults for the options are specified in brackets.
++
++Configuration:
++  -h, --help              display this help and exit
++      --help=short        display options specific to this package
++      --help=recursive    display the short help of all the included packages
++  -V, --version           display version information and exit
++  -q, --quiet, --silent   do not print \`checking...' messages
++      --cache-file=FILE   cache test results in FILE [disabled]
++  -C, --config-cache      alias for \`--cache-file=config.cache'
++  -n, --no-create         do not create output files
++      --srcdir=DIR        find the sources in DIR [configure dir or \`..']
++
++_ACEOF
++
++  cat <<_ACEOF
++Installation directories:
++  --prefix=PREFIX         install architecture-independent files in PREFIX
++			  [$ac_default_prefix]
++  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
++			  [PREFIX]
++
++By default, \`make install' will install all the files in
++\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc.  You can specify
++an installation prefix other than \`$ac_default_prefix' using \`--prefix',
++for instance \`--prefix=\$HOME'.
++
++For better control, use the options below.
++
++Fine tuning of the installation directories:
++  --bindir=DIR           user executables [EPREFIX/bin]
++  --sbindir=DIR          system admin executables [EPREFIX/sbin]
++  --libexecdir=DIR       program executables [EPREFIX/libexec]
++  --datadir=DIR          read-only architecture-independent data [PREFIX/share]
++  --sysconfdir=DIR       read-only single-machine data [PREFIX/etc]
++  --sharedstatedir=DIR   modifiable architecture-independent data [PREFIX/com]
++  --localstatedir=DIR    modifiable single-machine data [PREFIX/var]
++  --libdir=DIR           object code libraries [EPREFIX/lib]
++  --includedir=DIR       C header files [PREFIX/include]
++  --oldincludedir=DIR    C header files for non-gcc [/usr/include]
++  --infodir=DIR          info documentation [PREFIX/info]
++  --mandir=DIR           man documentation [PREFIX/man]
++_ACEOF
++
++  cat <<\_ACEOF
++
++System types:
++  --build=BUILD     configure for building on BUILD [guessed]
++  --host=HOST       cross-compile to build programs to run on HOST [BUILD]
++_ACEOF
++fi
++
++if test -n "$ac_init_help"; then
++
++  cat <<\_ACEOF
++
++Optional Features:
++  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
++  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
++  --enable-socksdns       force dns lookups to use tcp
++  --disable-tordns         don't override name lookup calls to use SOCKS
++  --disable-debug         disable ALL error messages from tsocks
++  --enable-oldmethod      use the old method to override connect
++  --enable-hostnames      enable hostname lookups for socks servers
++  --disable-envconf       do not allow TSOCKS_CONF_FILE to specify configuration file
++
++Optional Packages:
++  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
++  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
++  --with-conf=<file>      location of configuration file (/etc/tsocks.conf default)
++
++Some influential environment variables:
++  CC          C compiler command
++  CFLAGS      C compiler flags
++  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
++              nonstandard directory <lib dir>
++  CPPFLAGS    C/C++ preprocessor flags, e.g. -I<include dir> if you have
++              headers in a nonstandard directory <include dir>
++  CPP         C preprocessor
++
++Use these variables to override the choices made by `configure' or to help
++it to find libraries and programs with nonstandard names/locations.
++
++_ACEOF
++fi
++
++if test "$ac_init_help" = "recursive"; then
++  # If there are subdirs, report their specific --help.
++  ac_popdir=`pwd`
++  for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
++    test -d $ac_dir || continue
++    ac_builddir=.
++
++if test "$ac_dir" != .; then
++  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
++  # A "../" for each directory in $ac_dir_suffix.
++  ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
++else
++  ac_dir_suffix= ac_top_builddir=
++fi
++
++case $srcdir in
++  .)  # No --srcdir option.  We are building in place.
++    ac_srcdir=.
++    if test -z "$ac_top_builddir"; then
++       ac_top_srcdir=.
++    else
++       ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
++    fi ;;
++  [\\/]* | ?:[\\/]* )  # Absolute path.
++    ac_srcdir=$srcdir$ac_dir_suffix;
++    ac_top_srcdir=$srcdir ;;
++  *) # Relative path.
++    ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
++    ac_top_srcdir=$ac_top_builddir$srcdir ;;
++esac
++
++# Do not use `cd foo && pwd` to compute absolute paths, because
++# the directories may not exist.
++case `pwd` in
++.) ac_abs_builddir="$ac_dir";;
++*)
++  case "$ac_dir" in
++  .) ac_abs_builddir=`pwd`;;
++  [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
++  *) ac_abs_builddir=`pwd`/"$ac_dir";;
++  esac;;
++esac
++case $ac_abs_builddir in
++.) ac_abs_top_builddir=${ac_top_builddir}.;;
++*)
++  case ${ac_top_builddir}. in
++  .) ac_abs_top_builddir=$ac_abs_builddir;;
++  [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
++  *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
++  esac;;
++esac
++case $ac_abs_builddir in
++.) ac_abs_srcdir=$ac_srcdir;;
++*)
++  case $ac_srcdir in
++  .) ac_abs_srcdir=$ac_abs_builddir;;
++  [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
++  *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
++  esac;;
++esac
++case $ac_abs_builddir in
++.) ac_abs_top_srcdir=$ac_top_srcdir;;
++*)
++  case $ac_top_srcdir in
++  .) ac_abs_top_srcdir=$ac_abs_builddir;;
++  [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
++  *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
++  esac;;
++esac
++
++    cd $ac_dir
++    # Check for guested configure; otherwise get Cygnus style configure.
++    if test -f $ac_srcdir/configure.gnu; then
++      echo
++      $SHELL $ac_srcdir/configure.gnu  --help=recursive
++    elif test -f $ac_srcdir/configure; then
++      echo
++      $SHELL $ac_srcdir/configure  --help=recursive
++    elif test -f $ac_srcdir/configure.ac ||
++	   test -f $ac_srcdir/configure.in; then
++      echo
++      $ac_configure --help
++    else
++      echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
++    fi
++    cd "$ac_popdir"
++  done
++fi
++
++test -n "$ac_init_help" && exit 0
++if $ac_init_version; then
++  cat <<\_ACEOF
++
++Copyright (C) 2003 Free Software Foundation, Inc.
++This configure script is free software; the Free Software Foundation
++gives unlimited permission to copy, distribute and modify it.
++_ACEOF
++  exit 0
++fi
++exec 5>config.log
++cat >&5 <<_ACEOF
++This file contains any messages produced by compilers while
++running configure, to aid debugging if configure makes a mistake.
++
++It was created by $as_me, which was
++generated by GNU Autoconf 2.59.  Invocation command line was
++
++  $ $0 $@
++
++_ACEOF
++{
++cat <<_ASUNAME
++## --------- ##
++## Platform. ##
++## --------- ##
++
++hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
++uname -m = `(uname -m) 2>/dev/null || echo unknown`
++uname -r = `(uname -r) 2>/dev/null || echo unknown`
++uname -s = `(uname -s) 2>/dev/null || echo unknown`
++uname -v = `(uname -v) 2>/dev/null || echo unknown`
++
++/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
++/bin/uname -X     = `(/bin/uname -X) 2>/dev/null     || echo unknown`
++
++/bin/arch              = `(/bin/arch) 2>/dev/null              || echo unknown`
++/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null       || echo unknown`
++/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
++hostinfo               = `(hostinfo) 2>/dev/null               || echo unknown`
++/bin/machine           = `(/bin/machine) 2>/dev/null           || echo unknown`
++/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null       || echo unknown`
++/bin/universe          = `(/bin/universe) 2>/dev/null          || echo unknown`
++
++_ASUNAME
++
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  echo "PATH: $as_dir"
++done
++
++} >&5
++
++cat >&5 <<_ACEOF
++
++
++## ----------- ##
++## Core tests. ##
++## ----------- ##
++
++_ACEOF
++
++
++# Keep a trace of the command line.
++# Strip out --no-create and --no-recursion so they do not pile up.
++# Strip out --silent because we don't want to record it for future runs.
++# Also quote any args containing shell meta-characters.
++# Make two passes to allow for proper duplicate-argument suppression.
++ac_configure_args=
++ac_configure_args0=
++ac_configure_args1=
++ac_sep=
++ac_must_keep_next=false
++for ac_pass in 1 2
++do
++  for ac_arg
++  do
++    case $ac_arg in
++    -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
++    -q | -quiet | --quiet | --quie | --qui | --qu | --q \
++    | -silent | --silent | --silen | --sile | --sil)
++      continue ;;
++    *" "*|*"	"*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
++      ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
++    esac
++    case $ac_pass in
++    1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
++    2)
++      ac_configure_args1="$ac_configure_args1 '$ac_arg'"
++      if test $ac_must_keep_next = true; then
++	ac_must_keep_next=false # Got value, back to normal.
++      else
++	case $ac_arg in
++	  *=* | --config-cache | -C | -disable-* | --disable-* \
++	  | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
++	  | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
++	  | -with-* | --with-* | -without-* | --without-* | --x)
++	    case "$ac_configure_args0 " in
++	      "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
++	    esac
++	    ;;
++	  -* ) ac_must_keep_next=true ;;
++	esac
++      fi
++      ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'"
++      # Get rid of the leading space.
++      ac_sep=" "
++      ;;
++    esac
++  done
++done
++$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; }
++$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; }
++
++# When interrupted or exit'd, cleanup temporary files, and complete
++# config.log.  We remove comments because anyway the quotes in there
++# would cause problems or look ugly.
++# WARNING: Be sure not to use single quotes in there, as some shells,
++# such as our DU 5.0 friend, will then `close' the trap.
++trap 'exit_status=$?
++  # Save into config.log some information that might help in debugging.
++  {
++    echo
++
++    cat <<\_ASBOX
++## ---------------- ##
++## Cache variables. ##
++## ---------------- ##
++_ASBOX
++    echo
++    # The following way of writing the cache mishandles newlines in values,
++{
++  (set) 2>&1 |
++    case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in
++    *ac_space=\ *)
++      sed -n \
++	"s/'"'"'/'"'"'\\\\'"'"''"'"'/g;
++	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p"
++      ;;
++    *)
++      sed -n \
++	"s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
++      ;;
++    esac;
++}
++    echo
++
++    cat <<\_ASBOX
++## ----------------- ##
++## Output variables. ##
++## ----------------- ##
++_ASBOX
++    echo
++    for ac_var in $ac_subst_vars
++    do
++      eval ac_val=$`echo $ac_var`
++      echo "$ac_var='"'"'$ac_val'"'"'"
++    done | sort
++    echo
++
++    if test -n "$ac_subst_files"; then
++      cat <<\_ASBOX
++## ------------- ##
++## Output files. ##
++## ------------- ##
++_ASBOX
++      echo
++      for ac_var in $ac_subst_files
++      do
++	eval ac_val=$`echo $ac_var`
++	echo "$ac_var='"'"'$ac_val'"'"'"
++      done | sort
++      echo
++    fi
++
++    if test -s confdefs.h; then
++      cat <<\_ASBOX
++## ----------- ##
++## confdefs.h. ##
++## ----------- ##
++_ASBOX
++      echo
++      sed "/^$/d" confdefs.h | sort
++      echo
++    fi
++    test "$ac_signal" != 0 &&
++      echo "$as_me: caught signal $ac_signal"
++    echo "$as_me: exit $exit_status"
++  } >&5
++  rm -f core *.core &&
++  rm -rf conftest* confdefs* conf$$* $ac_clean_files &&
++    exit $exit_status
++     ' 0
++for ac_signal in 1 2 13 15; do
++  trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
++done
++ac_signal=0
++
++# confdefs.h avoids OS command line length limits that DEFS can exceed.
++rm -rf conftest* confdefs.h
++# AIX cpp loses on an empty file, so make sure it contains at least a newline.
++echo >confdefs.h
++
++# Predefined preprocessor variables.
++
++cat >>confdefs.h <<_ACEOF
++#define PACKAGE_NAME "$PACKAGE_NAME"
++_ACEOF
++
++
++cat >>confdefs.h <<_ACEOF
++#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
++_ACEOF
+ 
++
++cat >>confdefs.h <<_ACEOF
++#define PACKAGE_VERSION "$PACKAGE_VERSION"
++_ACEOF
++
++
++cat >>confdefs.h <<_ACEOF
++#define PACKAGE_STRING "$PACKAGE_STRING"
++_ACEOF
++
++
++cat >>confdefs.h <<_ACEOF
++#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
++_ACEOF
++
++
++# Let the site file select an alternate cache file if it wants to.
+ # Prefer explicitly selected file to automatically selected ones.
+ if test -z "$CONFIG_SITE"; then
+   if test "x$prefix" != xNONE; then
+     CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
+   else
+     CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
+   fi
+ fi
+ for ac_site_file in $CONFIG_SITE; do
+   if test -r "$ac_site_file"; then
+-    echo "loading site script $ac_site_file"
++    { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
++echo "$as_me: loading site script $ac_site_file" >&6;}
++    sed 's/^/| /' "$ac_site_file" >&5
+     . "$ac_site_file"
+   fi
+ done
+ 
+ if test -r "$cache_file"; then
+-  echo "loading cache $cache_file"
+-  . $cache_file
++  # Some versions of bash will fail to source /dev/null (special
++  # files actually), so we avoid doing that.
++  if test -f "$cache_file"; then
++    { echo "$as_me:$LINENO: loading cache $cache_file" >&5
++echo "$as_me: loading cache $cache_file" >&6;}
++    case $cache_file in
++      [\\/]* | ?:[\\/]* ) . $cache_file;;
++      *)                      . ./$cache_file;;
++    esac
++  fi
+ else
+-  echo "creating cache $cache_file"
+-  > $cache_file
++  { echo "$as_me:$LINENO: creating cache $cache_file" >&5
++echo "$as_me: creating cache $cache_file" >&6;}
++  >$cache_file
++fi
++
++# Check that the precious variables saved in the cache have kept the same
++# value.
++ac_cache_corrupted=false
++for ac_var in `(set) 2>&1 |
++	       sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do
++  eval ac_old_set=\$ac_cv_env_${ac_var}_set
++  eval ac_new_set=\$ac_env_${ac_var}_set
++  eval ac_old_val="\$ac_cv_env_${ac_var}_value"
++  eval ac_new_val="\$ac_env_${ac_var}_value"
++  case $ac_old_set,$ac_new_set in
++    set,)
++      { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
++echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
++      ac_cache_corrupted=: ;;
++    ,set)
++      { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5
++echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
++      ac_cache_corrupted=: ;;
++    ,);;
++    *)
++      if test "x$ac_old_val" != "x$ac_new_val"; then
++	{ echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
++echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
++	{ echo "$as_me:$LINENO:   former value:  $ac_old_val" >&5
++echo "$as_me:   former value:  $ac_old_val" >&2;}
++	{ echo "$as_me:$LINENO:   current value: $ac_new_val" >&5
++echo "$as_me:   current value: $ac_new_val" >&2;}
++	ac_cache_corrupted=:
++      fi;;
++  esac
++  # Pass precious variables to config.status.
++  if test "$ac_new_set" = set; then
++    case $ac_new_val in
++    *" "*|*"	"*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
++      ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
++    *) ac_arg=$ac_var=$ac_new_val ;;
++    esac
++    case " $ac_configure_args " in
++      *" '$ac_arg' "*) ;; # Avoid dups.  Use of quotes ensures accuracy.
++      *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
++    esac
++  fi
++done
++if $ac_cache_corrupted; then
++  { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5
++echo "$as_me: error: changes in the environment can compromise the build" >&2;}
++  { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
++echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
++   { (exit 1); exit 1; }; }
+ fi
+ 
+ ac_ext=c
+-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
+ ac_cpp='$CPP $CPPFLAGS'
+-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
+-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
+-cross_compiling=$ac_cv_prog_cc_cross
+-
+-ac_exeext=
+-ac_objext=o
+-if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
+-  # Stardent Vistra SVR4 grep lacks -e, says ghazi at caip.rutgers.edu.
+-  if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
+-    ac_n= ac_c='
+-' ac_t='	'
+-  else
+-    ac_n=-n ac_c= ac_t=
+-  fi
+-else
+-  ac_n= ac_c='\c' ac_t=
+-fi
++ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
++ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
++ac_compiler_gnu=$ac_cv_c_compiler_gnu
++
++
++
++
++
++
++
++
++
++
++
++
++
+ 
+ 
+ 
+ 
+ 
+ 
++          ac_config_headers="$ac_config_headers config.h"
++
++
++
++
+ test "$libdir" = "\${exec_prefix}/lib" && libdir="/lib"
+ 
+ # Check whether --enable-socksdns or --disable-socksdns was given.
+ if test "${enable_socksdns+set}" = set; then
+   enableval="$enable_socksdns"
+-  :
+-fi
+ 
++fi;
++# Check whether --enable-tordns or --disable-tordns was given.
++if test "${enable_tordns+set}" = set; then
++  enableval="$enable_tordns"
++
++fi;
+ # Check whether --enable-debug or --disable-debug was given.
+ if test "${enable_debug+set}" = set; then
+   enableval="$enable_debug"
+-  :
+-fi
+ 
++fi;
+ # Check whether --enable-oldmethod or --disable-oldmethod was given.
+ if test "${enable_oldmethod+set}" = set; then
+   enableval="$enable_oldmethod"
+-  :
+-fi
+ 
++fi;
+ # Check whether --enable-hostnames or --disable-hostnames was given.
+ if test "${enable_hostnames+set}" = set; then
+   enableval="$enable_hostnames"
+-  :
+-fi
+ 
++fi;
+ # Check whether --enable-envconf or --disable-envconf was given.
+ if test "${enable_envconf+set}" = set; then
+   enableval="$enable_envconf"
+-  :
+-fi
++
++fi;
+ 
+ # Check whether --with-conf or --without-conf was given.
+ if test "${with_conf+set}" = set; then
+   withval="$with_conf"
+-  
++
+ if test "${withval}" = "yes" ; then
+-  { echo "configure: error: "--with-conf requires the location of the configuration file as an argument"" 1>&2; exit 1; }
++  { { echo "$as_me:$LINENO: error: \"--with-conf requires the location of the configuration file as an argument\"" >&5
++echo "$as_me: error: \"--with-conf requires the location of the configuration file as an argument\"" >&2;}
++   { (exit 1); exit 1; }; }
+ else
+-  cat >> confdefs.h <<EOF
++  cat >>confdefs.h <<_ACEOF
+ #define CONF_FILE "${withval}"
+-EOF
++_ACEOF
+ 
+ fi
+ 
+ else
+-  
+-  cat >> confdefs.h <<EOF
+-#define CONF_FILE "/etc/tsocks.conf"
+-EOF
+ 
++  cat >>confdefs.h <<_ACEOF
++#define CONF_FILE "/etc/tsocks.conf"
++_ACEOF
+ 
+-fi
+ 
++fi;
+ 
+ 
+ ac_aux_dir=
+ for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
+   if test -f $ac_dir/install-sh; then
+@@ -602,255 +1375,731 @@
+     break
+   elif test -f $ac_dir/install.sh; then
+     ac_aux_dir=$ac_dir
+     ac_install_sh="$ac_aux_dir/install.sh -c"
+     break
++  elif test -f $ac_dir/shtool; then
++    ac_aux_dir=$ac_dir
++    ac_install_sh="$ac_aux_dir/shtool install -c"
++    break
+   fi
+ done
+ if test -z "$ac_aux_dir"; then
+-  { echo "configure: error: can not find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." 1>&2; exit 1; }
+-fi
+-ac_config_guess=$ac_aux_dir/config.guess
+-ac_config_sub=$ac_aux_dir/config.sub
+-ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
+-
++  { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5
++echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++ac_config_guess="$SHELL $ac_aux_dir/config.guess"
++ac_config_sub="$SHELL $ac_aux_dir/config.sub"
++ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
+ 
+ # Make sure we can run config.sub.
+-if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then :
+-else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
+-fi
+-
+-echo $ac_n "checking host system type""... $ac_c" 1>&6
+-echo "configure:624: checking host system type" >&5
+-
+-host_alias=$host
+-case "$host_alias" in
+-NONE)
+-  case $nonopt in
+-  NONE)
+-    if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then :
+-    else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; }
+-    fi ;;
+-  *) host_alias=$nonopt ;;
+-  esac ;;
+-esac
++$ac_config_sub sun4 >/dev/null 2>&1 ||
++  { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5
++echo "$as_me: error: cannot run $ac_config_sub" >&2;}
++   { (exit 1); exit 1; }; }
++
++echo "$as_me:$LINENO: checking build system type" >&5
++echo $ECHO_N "checking build system type... $ECHO_C" >&6
++if test "${ac_cv_build+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  ac_cv_build_alias=$build_alias
++test -z "$ac_cv_build_alias" &&
++  ac_cv_build_alias=`$ac_config_guess`
++test -z "$ac_cv_build_alias" &&
++  { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5
++echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
++   { (exit 1); exit 1; }; }
++ac_cv_build=`$ac_config_sub $ac_cv_build_alias` ||
++  { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" >&5
++echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed" >&2;}
++   { (exit 1); exit 1; }; }
++
++fi
++echo "$as_me:$LINENO: result: $ac_cv_build" >&5
++echo "${ECHO_T}$ac_cv_build" >&6
++build=$ac_cv_build
++build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
++build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
++build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
++
++
++echo "$as_me:$LINENO: checking host system type" >&5
++echo $ECHO_N "checking host system type... $ECHO_C" >&6
++if test "${ac_cv_host+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  ac_cv_host_alias=$host_alias
++test -z "$ac_cv_host_alias" &&
++  ac_cv_host_alias=$ac_cv_build_alias
++ac_cv_host=`$ac_config_sub $ac_cv_host_alias` ||
++  { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5
++echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;}
++   { (exit 1); exit 1; }; }
++
++fi
++echo "$as_me:$LINENO: result: $ac_cv_host" >&5
++echo "${ECHO_T}$ac_cv_host" >&6
++host=$ac_cv_host
++host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
++host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
++host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+ 
+-host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias`
+-host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+-host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+-host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+-echo "$ac_t""$host" 1>&6
+ 
+ 
+-# Extract the first word of "gcc", so it can be a program name with args.
+-set dummy gcc; ac_word=$2
+-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:648: checking for $ac_word" >&5
+-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
++ac_ext=c
++ac_cpp='$CPP $CPPFLAGS'
++ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
++ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
++ac_compiler_gnu=$ac_cv_c_compiler_gnu
++if test -n "$ac_tool_prefix"; then
++  # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
++set dummy ${ac_tool_prefix}gcc; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_CC+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+   if test -n "$CC"; then
+   ac_cv_prog_CC="$CC" # Let the user override the test.
+ else
+-  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
+-  ac_dummy="$PATH"
+-  for ac_dir in $ac_dummy; do
+-    test -z "$ac_dir" && ac_dir=.
+-    if test -f $ac_dir/$ac_word; then
+-      ac_cv_prog_CC="gcc"
+-      break
+-    fi
+-  done
+-  IFS="$ac_save_ifs"
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_CC="${ac_tool_prefix}gcc"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
++fi
++fi
++CC=$ac_cv_prog_CC
++if test -n "$CC"; then
++  echo "$as_me:$LINENO: result: $CC" >&5
++echo "${ECHO_T}$CC" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++fi
++if test -z "$ac_cv_prog_CC"; then
++  ac_ct_CC=$CC
++  # Extract the first word of "gcc", so it can be a program name with args.
++set dummy gcc; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -n "$ac_ct_CC"; then
++  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_ac_ct_CC="gcc"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
++fi
++fi
++ac_ct_CC=$ac_cv_prog_ac_ct_CC
++if test -n "$ac_ct_CC"; then
++  echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
++echo "${ECHO_T}$ac_ct_CC" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++  CC=$ac_ct_CC
++else
++  CC="$ac_cv_prog_CC"
++fi
++
++if test -z "$CC"; then
++  if test -n "$ac_tool_prefix"; then
++  # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
++set dummy ${ac_tool_prefix}cc; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_CC+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -n "$CC"; then
++  ac_cv_prog_CC="$CC" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_CC="${ac_tool_prefix}cc"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
+ fi
+ fi
+-CC="$ac_cv_prog_CC"
++CC=$ac_cv_prog_CC
+ if test -n "$CC"; then
+-  echo "$ac_t""$CC" 1>&6
++  echo "$as_me:$LINENO: result: $CC" >&5
++echo "${ECHO_T}$CC" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++fi
++if test -z "$ac_cv_prog_CC"; then
++  ac_ct_CC=$CC
++  # Extract the first word of "cc", so it can be a program name with args.
++set dummy cc; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -n "$ac_ct_CC"; then
++  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_ac_ct_CC="cc"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
++fi
++fi
++ac_ct_CC=$ac_cv_prog_ac_ct_CC
++if test -n "$ac_ct_CC"; then
++  echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
++echo "${ECHO_T}$ac_ct_CC" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++fi
++
++  CC=$ac_ct_CC
+ else
+-  echo "$ac_t""no" 1>&6
++  CC="$ac_cv_prog_CC"
+ fi
+ 
++fi
+ if test -z "$CC"; then
+   # Extract the first word of "cc", so it can be a program name with args.
+ set dummy cc; ac_word=$2
+-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:678: checking for $ac_word" >&5
+-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_CC+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+   if test -n "$CC"; then
+   ac_cv_prog_CC="$CC" # Let the user override the test.
+ else
+-  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
+   ac_prog_rejected=no
+-  ac_dummy="$PATH"
+-  for ac_dir in $ac_dummy; do
+-    test -z "$ac_dir" && ac_dir=.
+-    if test -f $ac_dir/$ac_word; then
+-      if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
+-        ac_prog_rejected=yes
+-	continue
+-      fi
+-      ac_cv_prog_CC="cc"
+-      break
+-    fi
+-  done
+-  IFS="$ac_save_ifs"
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
++       ac_prog_rejected=yes
++       continue
++     fi
++    ac_cv_prog_CC="cc"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
+ if test $ac_prog_rejected = yes; then
+   # We found a bogon in the path, so make sure we never use it.
+   set dummy $ac_cv_prog_CC
+   shift
+-  if test $# -gt 0; then
++  if test $# != 0; then
+     # We chose a different compiler from the bogus one.
+     # However, it has the same basename, so the bogon will be chosen
+     # first if we set CC to just the basename; use the full file name.
+     shift
+-    set dummy "$ac_dir/$ac_word" "$@"
+-    shift
+-    ac_cv_prog_CC="$@"
++    ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
+   fi
+ fi
+ fi
+ fi
+-CC="$ac_cv_prog_CC"
++CC=$ac_cv_prog_CC
+ if test -n "$CC"; then
+-  echo "$ac_t""$CC" 1>&6
++  echo "$as_me:$LINENO: result: $CC" >&5
++echo "${ECHO_T}$CC" >&6
+ else
+-  echo "$ac_t""no" 1>&6
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
+ fi
+ 
+-  if test -z "$CC"; then
+-    case "`uname -s`" in
+-    *win32* | *WIN32*)
+-      # Extract the first word of "cl", so it can be a program name with args.
+-set dummy cl; ac_word=$2
+-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:729: checking for $ac_word" >&5
+-if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
++fi
++if test -z "$CC"; then
++  if test -n "$ac_tool_prefix"; then
++  for ac_prog in cl
++  do
++    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
++set dummy $ac_tool_prefix$ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_CC+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+   if test -n "$CC"; then
+   ac_cv_prog_CC="$CC" # Let the user override the test.
+ else
+-  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
+-  ac_dummy="$PATH"
+-  for ac_dir in $ac_dummy; do
+-    test -z "$ac_dir" && ac_dir=.
+-    if test -f $ac_dir/$ac_word; then
+-      ac_cv_prog_CC="cl"
+-      break
+-    fi
+-  done
+-  IFS="$ac_save_ifs"
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
+ fi
+ fi
+-CC="$ac_cv_prog_CC"
++CC=$ac_cv_prog_CC
+ if test -n "$CC"; then
+-  echo "$ac_t""$CC" 1>&6
++  echo "$as_me:$LINENO: result: $CC" >&5
++echo "${ECHO_T}$CC" >&6
+ else
+-  echo "$ac_t""no" 1>&6
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
+ fi
+- ;;
+-    esac
++
++    test -n "$CC" && break
++  done
++fi
++if test -z "$CC"; then
++  ac_ct_CC=$CC
++  for ac_prog in cl
++do
++  # Extract the first word of "$ac_prog", so it can be a program name with args.
++set dummy $ac_prog; ac_word=$2
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if test -n "$ac_ct_CC"; then
++  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
++else
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_ac_ct_CC="$ac_prog"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
+   fi
+-  test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; }
++done
++done
++
++fi
++fi
++ac_ct_CC=$ac_cv_prog_ac_ct_CC
++if test -n "$ac_ct_CC"; then
++  echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
++echo "${ECHO_T}$ac_ct_CC" >&6
++else
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
+ fi
+ 
+-echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
+-echo "configure:761: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
++  test -n "$ac_ct_CC" && break
++done
+ 
+-ac_ext=c
+-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
+-ac_cpp='$CPP $CPPFLAGS'
+-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
+-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
+-cross_compiling=$ac_cv_prog_cc_cross
++  CC=$ac_ct_CC
++fi
+ 
+-cat > conftest.$ac_ext << EOF
++fi
+ 
+-#line 772 "configure"
+-#include "confdefs.h"
+ 
+-main(){return(0);}
+-EOF
+-if { (eval echo configure:777: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+-  ac_cv_prog_cc_works=yes
+-  # If we can't run a trivial program, we are probably using a cross compiler.
+-  if (./conftest; exit) 2>/dev/null; then
+-    ac_cv_prog_cc_cross=no
+-  else
+-    ac_cv_prog_cc_cross=yes
+-  fi
++test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
++See \`config.log' for more details." >&5
++echo "$as_me: error: no acceptable C compiler found in \$PATH
++See \`config.log' for more details." >&2;}
++   { (exit 1); exit 1; }; }
++
++# Provide some information about the compiler.
++echo "$as_me:$LINENO:" \
++     "checking for C compiler version" >&5
++ac_compiler=`set X $ac_compile; echo $2`
++{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
++  (eval $ac_compiler --version </dev/null >&5) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }
++{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5
++  (eval $ac_compiler -v </dev/null >&5) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }
++{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5
++  (eval $ac_compiler -V </dev/null >&5) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }
++
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++
++int
++main ()
++{
++
++  ;
++  return 0;
++}
++_ACEOF
++ac_clean_files_save=$ac_clean_files
++ac_clean_files="$ac_clean_files a.out a.exe b.out"
++# Try to create an executable without -o first, disregard a.out.
++# It will help us diagnose broken compilers, and finding out an intuition
++# of exeext.
++echo "$as_me:$LINENO: checking for C compiler default output file name" >&5
++echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6
++ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
++if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5
++  (eval $ac_link_default) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; then
++  # Find the output, starting from the most likely.  This scheme is
++# not robust to junk in `.', hence go to wildcards (a.*) only as a last
++# resort.
++
++# Be careful to initialize this variable, since it used to be cached.
++# Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile.
++ac_cv_exeext=
++# b.out is created by i960 compilers.
++for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out
++do
++  test -f "$ac_file" || continue
++  case $ac_file in
++    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj )
++	;;
++    conftest.$ac_ext )
++	# This is the source file.
++	;;
++    [ab].out )
++	# We found the default executable, but exeext='' is most
++	# certainly right.
++	break;;
++    *.* )
++	ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
++	# FIXME: I believe we export ac_cv_exeext for Libtool,
++	# but it would be cool to find out if it's true.  Does anybody
++	# maintain Libtool? --akim.
++	export ac_cv_exeext
++	break;;
++    * )
++	break;;
++  esac
++done
+ else
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
+-  ac_cv_prog_cc_works=no
+-fi
+-rm -fr conftest*
+-ac_ext=c
+-# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
+-ac_cpp='$CPP $CPPFLAGS'
+-ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
+-ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
+-cross_compiling=$ac_cv_prog_cc_cross
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
+ 
+-echo "$ac_t""$ac_cv_prog_cc_works" 1>&6
+-if test $ac_cv_prog_cc_works = no; then
+-  { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
++{ { echo "$as_me:$LINENO: error: C compiler cannot create executables
++See \`config.log' for more details." >&5
++echo "$as_me: error: C compiler cannot create executables
++See \`config.log' for more details." >&2;}
++   { (exit 77); exit 77; }; }
++fi
++
++ac_exeext=$ac_cv_exeext
++echo "$as_me:$LINENO: result: $ac_file" >&5
++echo "${ECHO_T}$ac_file" >&6
++
++# Check the compiler produces executables we can run.  If not, either
++# the compiler is broken, or we cross compile.
++echo "$as_me:$LINENO: checking whether the C compiler works" >&5
++echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
++# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
++# If not cross compiling, check that we can run a simple program.
++if test "$cross_compiling" != yes; then
++  if { ac_try='./$ac_file'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++    cross_compiling=no
++  else
++    if test "$cross_compiling" = maybe; then
++	cross_compiling=yes
++    else
++	{ { echo "$as_me:$LINENO: error: cannot run C compiled programs.
++If you meant to cross compile, use \`--host'.
++See \`config.log' for more details." >&5
++echo "$as_me: error: cannot run C compiled programs.
++If you meant to cross compile, use \`--host'.
++See \`config.log' for more details." >&2;}
++   { (exit 1); exit 1; }; }
++    fi
++  fi
+ fi
+-echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
+-echo "configure:803: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
+-echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
+-cross_compiling=$ac_cv_prog_cc_cross
++echo "$as_me:$LINENO: result: yes" >&5
++echo "${ECHO_T}yes" >&6
+ 
+-echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
+-echo "configure:808: checking whether we are using GNU C" >&5
+-if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
++rm -f a.out a.exe conftest$ac_cv_exeext b.out
++ac_clean_files=$ac_clean_files_save
++# Check the compiler produces executables we can run.  If not, either
++# the compiler is broken, or we cross compile.
++echo "$as_me:$LINENO: checking whether we are cross compiling" >&5
++echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6
++echo "$as_me:$LINENO: result: $cross_compiling" >&5
++echo "${ECHO_T}$cross_compiling" >&6
++
++echo "$as_me:$LINENO: checking for suffix of executables" >&5
++echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6
++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
++  (eval $ac_link) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; then
++  # If both `conftest.exe' and `conftest' are `present' (well, observable)
++# catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
++# work properly (i.e., refer to `conftest.exe'), while it won't with
++# `rm'.
++for ac_file in conftest.exe conftest conftest.*; do
++  test -f "$ac_file" || continue
++  case $ac_file in
++    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;;
++    *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
++	  export ac_cv_exeext
++	  break;;
++    * ) break;;
++  esac
++done
+ else
+-  cat > conftest.c <<EOF
+-#ifdef __GNUC__
+-  yes;
+-#endif
+-EOF
+-if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:817: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
+-  ac_cv_prog_gcc=yes
++  { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link
++See \`config.log' for more details." >&5
++echo "$as_me: error: cannot compute suffix of executables: cannot compile and link
++See \`config.log' for more details." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++
++rm -f conftest$ac_cv_exeext
++echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5
++echo "${ECHO_T}$ac_cv_exeext" >&6
++
++rm -f conftest.$ac_ext
++EXEEXT=$ac_cv_exeext
++ac_exeext=$EXEEXT
++echo "$as_me:$LINENO: checking for suffix of object files" >&5
++echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6
++if test "${ac_cv_objext+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++
++int
++main ()
++{
++
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.o conftest.obj
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; then
++  for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do
++  case $ac_file in
++    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;;
++    *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
++       break;;
++  esac
++done
+ else
+-  ac_cv_prog_gcc=no
+-fi
+-fi
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
+ 
+-echo "$ac_t""$ac_cv_prog_gcc" 1>&6
+-
+-if test $ac_cv_prog_gcc = yes; then
+-  GCC=yes
+-else
+-  GCC=
+-fi
++{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile
++See \`config.log' for more details." >&5
++echo "$as_me: error: cannot compute suffix of object files: cannot compile
++See \`config.log' for more details." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++
++rm -f conftest.$ac_cv_objext conftest.$ac_ext
++fi
++echo "$as_me:$LINENO: result: $ac_cv_objext" >&5
++echo "${ECHO_T}$ac_cv_objext" >&6
++OBJEXT=$ac_cv_objext
++ac_objext=$OBJEXT
++echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
++echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6
++if test "${ac_cv_c_compiler_gnu+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++
++int
++main ()
++{
++#ifndef __GNUC__
++       choke me
++#endif
+ 
+-ac_test_CFLAGS="${CFLAGS+set}"
+-ac_save_CFLAGS="$CFLAGS"
+-CFLAGS=
+-echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
+-echo "configure:836: checking whether ${CC-cc} accepts -g" >&5
+-if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
+-else
+-  echo 'void f(){}' > conftest.c
+-if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_compiler_gnu=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_compiler_gnu=no
++fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++ac_cv_c_compiler_gnu=$ac_compiler_gnu
++
++fi
++echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
++echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6
++GCC=`test $ac_compiler_gnu = yes && echo yes`
++ac_test_CFLAGS=${CFLAGS+set}
++ac_save_CFLAGS=$CFLAGS
++CFLAGS="-g"
++echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
++echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6
++if test "${ac_cv_prog_cc_g+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++
++int
++main ()
++{
++
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
+   ac_cv_prog_cc_g=yes
+ else
+-  ac_cv_prog_cc_g=no
+-fi
+-rm -f conftest*
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
+ 
++ac_cv_prog_cc_g=no
+ fi
+-
+-echo "$ac_t""$ac_cv_prog_cc_g" 1>&6
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++fi
++echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
++echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
+ if test "$ac_test_CFLAGS" = set; then
+-  CFLAGS="$ac_save_CFLAGS"
++  CFLAGS=$ac_save_CFLAGS
+ elif test $ac_cv_prog_cc_g = yes; then
+   if test "$GCC" = yes; then
+     CFLAGS="-g -O2"
+   else
+     CFLAGS="-g"
+@@ -860,1774 +2109,4838 @@
+     CFLAGS="-O2"
+   else
+     CFLAGS=
+   fi
+ fi
++echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5
++echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6
++if test "${ac_cv_prog_cc_stdc+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  ac_cv_prog_cc_stdc=no
++ac_save_CC=$CC
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++#include <stdarg.h>
++#include <stdio.h>
++#include <sys/types.h>
++#include <sys/stat.h>
++/* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
++struct buf { int x; };
++FILE * (*rcsopen) (struct buf *, struct stat *, int);
++static char *e (p, i)
++     char **p;
++     int i;
++{
++  return p[i];
++}
++static char *f (char * (*g) (char **, int), char **p, ...)
++{
++  char *s;
++  va_list v;
++  va_start (v,p);
++  s = g (p, va_arg (v,int));
++  va_end (v);
++  return s;
++}
++
++/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has
++   function prototypes and stuff, but not '\xHH' hex character constants.
++   These don't provoke an error unfortunately, instead are silently treated
++   as 'x'.  The following induces an error, until -std1 is added to get
++   proper ANSI mode.  Curiously '\x00'!='x' always comes out true, for an
++   array size at least.  It's necessary to write '\x00'==0 to get something
++   that's true only with -std1.  */
++int osf4_cc_array ['\x00' == 0 ? 1 : -1];
++
++int test (int i, double x);
++struct s1 {int (*f) (int a);};
++struct s2 {int (*f) (double a);};
++int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
++int argc;
++char **argv;
++int
++main ()
++{
++return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
++  ;
++  return 0;
++}
++_ACEOF
++# Don't try gcc -ansi; that turns off useful extensions and
++# breaks some systems' header files.
++# AIX			-qlanglvl=ansi
++# Ultrix and OSF/1	-std1
++# HP-UX 10.20 and later	-Ae
++# HP-UX older versions	-Aa -D_HPUX_SOURCE
++# SVR4			-Xc -D__EXTENSIONS__
++for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
++do
++  CC="$ac_save_CC $ac_arg"
++  rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_cv_prog_cc_stdc=$ac_arg
++break
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++fi
++rm -f conftest.err conftest.$ac_objext
++done
++rm -f conftest.$ac_ext conftest.$ac_objext
++CC=$ac_save_CC
++
++fi
++
++case "x$ac_cv_prog_cc_stdc" in
++  x|xno)
++    echo "$as_me:$LINENO: result: none needed" >&5
++echo "${ECHO_T}none needed" >&6 ;;
++  *)
++    echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5
++echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6
++    CC="$CC $ac_cv_prog_cc_stdc" ;;
++esac
++
++# Some people use a C++ compiler to compile C.  Since we use `exit',
++# in C++ we need to declare it.  In case someone uses the same compiler
++# for both compiling C and C++ we need to have the C++ compiler decide
++# the declaration of exit, since it's the most demanding environment.
++cat >conftest.$ac_ext <<_ACEOF
++#ifndef __cplusplus
++  choke me
++#endif
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  for ac_declaration in \
++   '' \
++   'extern "C" void std::exit (int) throw (); using std::exit;' \
++   'extern "C" void std::exit (int); using std::exit;' \
++   'extern "C" void exit (int) throw ();' \
++   'extern "C" void exit (int);' \
++   'void exit (int);'
++do
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++$ac_declaration
++#include <stdlib.h>
++int
++main ()
++{
++exit (42);
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  :
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++continue
++fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++$ac_declaration
++int
++main ()
++{
++exit (42);
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  break
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++done
++rm -f conftest*
++if test -n "$ac_declaration"; then
++  echo '#ifdef __cplusplus' >>confdefs.h
++  echo $ac_declaration      >>confdefs.h
++  echo '#endif'             >>confdefs.h
++fi
++
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++ac_ext=c
++ac_cpp='$CPP $CPPFLAGS'
++ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
++ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
++ac_compiler_gnu=$ac_cv_c_compiler_gnu
+ 
+ # Find a good install program.  We prefer a C program (faster),
+ # so one script is as good as another.  But avoid the broken or
+ # incompatible versions:
+ # SysV /etc/install, /usr/sbin/install
+ # SunOS /usr/etc/install
+ # IRIX /sbin/install
+ # AIX /bin/install
++# AmigaOS /C/install, which installs bootblocks on floppy discs
+ # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
+ # AFS /usr/afsws/bin/install, which mishandles nonexistent args
+ # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
++# OS/2's system install, which has a completely different semantic
+ # ./install, which can be erroneously created by make from ./install.sh.
+-echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
+-echo "configure:879: checking for a BSD compatible install" >&5
++echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
++echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6
+ if test -z "$INSTALL"; then
+-if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
++if test "${ac_cv_path_install+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+-    IFS="${IFS= 	}"; ac_save_IFS="$IFS"; IFS=":"
+-  for ac_dir in $PATH; do
+-    # Account for people who put trailing slashes in PATH elements.
+-    case "$ac_dir/" in
+-    /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;;
+-    *)
+-      # OSF1 and SCO ODT 3.0 have their own names for install.
+-      # Don't use installbsd from OSF since it installs stuff as root
+-      # by default.
+-      for ac_prog in ginstall scoinst install; do
+-        if test -f $ac_dir/$ac_prog; then
++  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  # Account for people who put trailing slashes in PATH elements.
++case $as_dir/ in
++  ./ | .// | /cC/* | \
++  /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
++  ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
++  /usr/ucb/* ) ;;
++  *)
++    # OSF1 and SCO ODT 3.0 have their own names for install.
++    # Don't use installbsd from OSF since it installs stuff as root
++    # by default.
++    for ac_prog in ginstall scoinst install; do
++      for ac_exec_ext in '' $ac_executable_extensions; do
++	if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
+ 	  if test $ac_prog = install &&
+-            grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
++	    grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+ 	    # AIX install.  It has an incompatible calling convention.
+ 	    :
++	  elif test $ac_prog = install &&
++	    grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
++	    # program-specific install script used by HP pwplus--don't use.
++	    :
+ 	  else
+-	    ac_cv_path_install="$ac_dir/$ac_prog -c"
+-	    break 2
++	    ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
++	    break 3
+ 	  fi
+ 	fi
+       done
+-      ;;
+-    esac
+-  done
+-  IFS="$ac_save_IFS"
++    done
++    ;;
++esac
++done
++
+ 
+ fi
+   if test "${ac_cv_path_install+set}" = set; then
+-    INSTALL="$ac_cv_path_install"
++    INSTALL=$ac_cv_path_install
+   else
+     # As a last resort, use the slow shell script.  We don't cache a
+     # path for INSTALL within a source directory, because that will
+     # break other packages using the cache if that directory is
+     # removed, or if the path is relative.
+-    INSTALL="$ac_install_sh"
++    INSTALL=$ac_install_sh
+   fi
+ fi
+-echo "$ac_t""$INSTALL" 1>&6
++echo "$as_me:$LINENO: result: $INSTALL" >&5
++echo "${ECHO_T}$INSTALL" >&6
+ 
+ # Use test -z because SunOS4 sh mishandles braces in ${var-val}.
+ # It thinks the first close brace ends the variable substitution.
+ test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
+ 
+-test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
++test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
+ 
+ test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
+ 
+-echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
+-echo "configure:932: checking whether ln -s works" >&5
+-if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
+-else
+-  rm -f conftestdata
+-if ln -s X conftestdata 2>/dev/null
+-then
+-  rm -f conftestdata
+-  ac_cv_prog_LN_S="ln -s"
++echo "$as_me:$LINENO: checking whether ln -s works" >&5
++echo $ECHO_N "checking whether ln -s works... $ECHO_C" >&6
++LN_S=$as_ln_s
++if test "$LN_S" = "ln -s"; then
++  echo "$as_me:$LINENO: result: yes" >&5
++echo "${ECHO_T}yes" >&6
+ else
+-  ac_cv_prog_LN_S=ln
+-fi
+-fi
+-LN_S="$ac_cv_prog_LN_S"
+-if test "$ac_cv_prog_LN_S" = "ln -s"; then
+-  echo "$ac_t""yes" 1>&6
+-else
+-  echo "$ac_t""no" 1>&6
++  echo "$as_me:$LINENO: result: no, using $LN_S" >&5
++echo "${ECHO_T}no, using $LN_S" >&6
+ fi
+ 
+ 
+-echo $ac_n "checking "if the C compiler accepts -Wall"""... $ac_c" 1>&6
+-echo "configure:954: checking "if the C compiler accepts -Wall"" >&5
++echo "$as_me:$LINENO: checking if the C compiler accepts -Wall" >&5
++echo $ECHO_N "checking if the C compiler accepts -Wall... $ECHO_C" >&6
+ OLDCFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS -Wall"
+-cat > conftest.$ac_ext <<EOF
+-#line 958 "configure"
+-#include "confdefs.h"
+-
+-int main() {
+-
+-; return 0; }
+-EOF
+-if { (eval echo configure:965: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+-  rm -rf conftest*
+-  echo "$ac_t""yes" 1>&6
+-else
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
+-  rm -rf conftest*
+-  
++
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++
++int
++main ()
++{
++
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  echo "$as_me:$LINENO: result: yes" >&5
++echo "${ECHO_T}yes" >&6
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++
+    CFLAGS="$OLDCFLAGS"
+-   echo "$ac_t""no" 1>&6
++   echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
+ fi
+-rm -f conftest*
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ 
+-echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
+-echo "configure:979: checking how to run the C preprocessor" >&5
++ac_ext=c
++ac_cpp='$CPP $CPPFLAGS'
++ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
++ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
++ac_compiler_gnu=$ac_cv_c_compiler_gnu
++echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5
++echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6
+ # On Suns, sometimes $CPP names a directory.
+ if test -n "$CPP" && test -d "$CPP"; then
+   CPP=
+ fi
+ if test -z "$CPP"; then
+-if eval "test \"`echo '$''{'ac_cv_prog_CPP'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
++  if test "${ac_cv_prog_CPP+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+-    # This must be in double quotes, not single quotes, because CPP may get
+-  # substituted into the Makefile and "${CC-cc}" will confuse make.
+-  CPP="${CC-cc} -E"
++      # Double quotes because CPP needs to be expanded
++    for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
++    do
++      ac_preproc_ok=false
++for ac_c_preproc_warn_flag in '' yes
++do
++  # Use a header file that comes with gcc, so configuring glibc
++  # with a fresh cross-compiler works.
++  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
++  # <limits.h> exists even on freestanding compilers.
+   # On the NeXT, cc -E runs the code through the compiler's parser,
+-  # not just through cpp.
+-  cat > conftest.$ac_ext <<EOF
+-#line 994 "configure"
+-#include "confdefs.h"
+-#include <assert.h>
+-Syntax Error
+-EOF
+-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:1000: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+-if test -z "$ac_err"; then
+-  :
++  # not just through cpp. "Syntax error" is here to catch this case.
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++#ifdef __STDC__
++# include <limits.h>
++#else
++# include <assert.h>
++#endif
++		     Syntax error
++_ACEOF
++if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
++  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } >/dev/null; then
++  if test -s conftest.err; then
++    ac_cpp_err=$ac_c_preproc_warn_flag
++    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
++  else
++    ac_cpp_err=
++  fi
+ else
+-  echo "$ac_err" >&5
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
+-  rm -rf conftest*
+-  CPP="${CC-cc} -E -traditional-cpp"
+-  cat > conftest.$ac_ext <<EOF
+-#line 1011 "configure"
+-#include "confdefs.h"
+-#include <assert.h>
+-Syntax Error
+-EOF
+-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:1017: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+-if test -z "$ac_err"; then
++  ac_cpp_err=yes
++fi
++if test -z "$ac_cpp_err"; then
+   :
+ else
+-  echo "$ac_err" >&5
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
+-  rm -rf conftest*
+-  CPP="${CC-cc} -nologo -E"
+-  cat > conftest.$ac_ext <<EOF
+-#line 1028 "configure"
+-#include "confdefs.h"
+-#include <assert.h>
+-Syntax Error
+-EOF
+-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:1034: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+-if test -z "$ac_err"; then
+-  :
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++  # Broken: fails on valid input.
++continue
++fi
++rm -f conftest.err conftest.$ac_ext
++
++  # OK, works on sane cases.  Now check whether non-existent headers
++  # can be detected and how.
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++#include <ac_nonexistent.h>
++_ACEOF
++if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
++  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } >/dev/null; then
++  if test -s conftest.err; then
++    ac_cpp_err=$ac_c_preproc_warn_flag
++    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
++  else
++    ac_cpp_err=
++  fi
+ else
+-  echo "$ac_err" >&5
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
+-  rm -rf conftest*
+-  CPP=/lib/cpp
++  ac_cpp_err=yes
+ fi
+-rm -f conftest*
++if test -z "$ac_cpp_err"; then
++  # Broken: success on invalid input.
++continue
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++  # Passes both tests.
++ac_preproc_ok=:
++break
+ fi
+-rm -f conftest*
++rm -f conftest.err conftest.$ac_ext
++
++done
++# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
++rm -f conftest.err conftest.$ac_ext
++if $ac_preproc_ok; then
++  break
+ fi
+-rm -f conftest*
+-  ac_cv_prog_CPP="$CPP"
++
++    done
++    ac_cv_prog_CPP=$CPP
++
++fi
++  CPP=$ac_cv_prog_CPP
++else
++  ac_cv_prog_CPP=$CPP
++fi
++echo "$as_me:$LINENO: result: $CPP" >&5
++echo "${ECHO_T}$CPP" >&6
++ac_preproc_ok=false
++for ac_c_preproc_warn_flag in '' yes
++do
++  # Use a header file that comes with gcc, so configuring glibc
++  # with a fresh cross-compiler works.
++  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
++  # <limits.h> exists even on freestanding compilers.
++  # On the NeXT, cc -E runs the code through the compiler's parser,
++  # not just through cpp. "Syntax error" is here to catch this case.
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++#ifdef __STDC__
++# include <limits.h>
++#else
++# include <assert.h>
++#endif
++		     Syntax error
++_ACEOF
++if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
++  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } >/dev/null; then
++  if test -s conftest.err; then
++    ac_cpp_err=$ac_c_preproc_warn_flag
++    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
++  else
++    ac_cpp_err=
++  fi
++else
++  ac_cpp_err=yes
++fi
++if test -z "$ac_cpp_err"; then
++  :
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++  # Broken: fails on valid input.
++continue
++fi
++rm -f conftest.err conftest.$ac_ext
++
++  # OK, works on sane cases.  Now check whether non-existent headers
++  # can be detected and how.
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++#include <ac_nonexistent.h>
++_ACEOF
++if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
++  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } >/dev/null; then
++  if test -s conftest.err; then
++    ac_cpp_err=$ac_c_preproc_warn_flag
++    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
++  else
++    ac_cpp_err=
++  fi
++else
++  ac_cpp_err=yes
+ fi
+-  CPP="$ac_cv_prog_CPP"
++if test -z "$ac_cpp_err"; then
++  # Broken: success on invalid input.
++continue
+ else
+-  ac_cv_prog_CPP="$CPP"
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++  # Passes both tests.
++ac_preproc_ok=:
++break
+ fi
+-echo "$ac_t""$CPP" 1>&6
++rm -f conftest.err conftest.$ac_ext
+ 
+-echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
+-echo "configure:1059: checking for ANSI C header files" >&5
+-if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
++done
++# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
++rm -f conftest.err conftest.$ac_ext
++if $ac_preproc_ok; then
++  :
+ else
+-  cat > conftest.$ac_ext <<EOF
+-#line 1064 "configure"
+-#include "confdefs.h"
++  { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check
++See \`config.log' for more details." >&5
++echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check
++See \`config.log' for more details." >&2;}
++   { (exit 1); exit 1; }; }
++fi
++
++ac_ext=c
++ac_cpp='$CPP $CPPFLAGS'
++ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
++ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
++ac_compiler_gnu=$ac_cv_c_compiler_gnu
++
++
++echo "$as_me:$LINENO: checking for egrep" >&5
++echo $ECHO_N "checking for egrep... $ECHO_C" >&6
++if test "${ac_cv_prog_egrep+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  if echo a | (grep -E '(a|b)') >/dev/null 2>&1
++    then ac_cv_prog_egrep='grep -E'
++    else ac_cv_prog_egrep='egrep'
++    fi
++fi
++echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5
++echo "${ECHO_T}$ac_cv_prog_egrep" >&6
++ EGREP=$ac_cv_prog_egrep
++
++
++echo "$as_me:$LINENO: checking for ANSI C header files" >&5
++echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6
++if test "${ac_cv_header_stdc+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
+ #include <stdlib.h>
+ #include <stdarg.h>
+ #include <string.h>
+ #include <float.h>
+-EOF
+-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:1072: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+-if test -z "$ac_err"; then
+-  rm -rf conftest*
++
++int
++main ()
++{
++
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
+   ac_cv_header_stdc=yes
+ else
+-  echo "$ac_err" >&5
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
+-  rm -rf conftest*
+-  ac_cv_header_stdc=no
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_cv_header_stdc=no
+ fi
+-rm -f conftest*
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ 
+ if test $ac_cv_header_stdc = yes; then
+   # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
+-cat > conftest.$ac_ext <<EOF
+-#line 1089 "configure"
+-#include "confdefs.h"
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
+ #include <string.h>
+-EOF
++
++_ACEOF
+ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-  egrep "memchr" >/dev/null 2>&1; then
++  $EGREP "memchr" >/dev/null 2>&1; then
+   :
+ else
+-  rm -rf conftest*
+   ac_cv_header_stdc=no
+ fi
+ rm -f conftest*
+ 
+ fi
+ 
+ if test $ac_cv_header_stdc = yes; then
+   # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
+-cat > conftest.$ac_ext <<EOF
+-#line 1107 "configure"
+-#include "confdefs.h"
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
+ #include <stdlib.h>
+-EOF
++
++_ACEOF
+ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-  egrep "free" >/dev/null 2>&1; then
++  $EGREP "free" >/dev/null 2>&1; then
+   :
+ else
+-  rm -rf conftest*
+   ac_cv_header_stdc=no
+ fi
+ rm -f conftest*
+ 
+ fi
+ 
+ if test $ac_cv_header_stdc = yes; then
+   # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
+-if test "$cross_compiling" = yes; then
++  if test "$cross_compiling" = yes; then
+   :
+ else
+-  cat > conftest.$ac_ext <<EOF
+-#line 1128 "configure"
+-#include "confdefs.h"
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
+ #include <ctype.h>
+-#define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
+-#define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
++#if ((' ' & 0x0FF) == 0x020)
++# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
++# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
++#else
++# define ISLOWER(c) \
++		   (('a' <= (c) && (c) <= 'i') \
++		     || ('j' <= (c) && (c) <= 'r') \
++		     || ('s' <= (c) && (c) <= 'z'))
++# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
++#endif
++
+ #define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
+-int main () { int i; for (i = 0; i < 256; i++)
+-if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
+-exit (0); }
+-
+-EOF
+-if { (eval echo configure:1139: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
+-then
++int
++main ()
++{
++  int i;
++  for (i = 0; i < 256; i++)
++    if (XOR (islower (i), ISLOWER (i))
++	|| toupper (i) != TOUPPER (i))
++      exit(2);
++  exit (0);
++}
++_ACEOF
++rm -f conftest$ac_exeext
++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
++  (eval $ac_link) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
+   :
+ else
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
+-  rm -fr conftest*
+-  ac_cv_header_stdc=no
++  echo "$as_me: program exited with status $ac_status" >&5
++echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++( exit $ac_status )
++ac_cv_header_stdc=no
+ fi
+-rm -fr conftest*
++rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+ fi
+-
+ fi
+ fi
+-
+-echo "$ac_t""$ac_cv_header_stdc" 1>&6
++echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5
++echo "${ECHO_T}$ac_cv_header_stdc" >&6
+ if test $ac_cv_header_stdc = yes; then
+-  cat >> confdefs.h <<\EOF
++
++cat >>confdefs.h <<\_ACEOF
+ #define STDC_HEADERS 1
+-EOF
++_ACEOF
+ 
+ fi
+ 
+ 
+-ac_safe=`echo "dlfcn.h" | sed 'y%./+-%__p_%'`
+-echo $ac_n "checking for dlfcn.h""... $ac_c" 1>&6
+-echo "configure:1165: checking for dlfcn.h" >&5
+-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
+-else
+-  cat > conftest.$ac_ext <<EOF
+-#line 1170 "configure"
+-#include "confdefs.h"
+-#include <dlfcn.h>
+-EOF
+-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:1175: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+-if test -z "$ac_err"; then
+-  rm -rf conftest*
+-  eval "ac_cv_header_$ac_safe=yes"
+-else
+-  echo "$ac_err" >&5
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
+-  rm -rf conftest*
+-  eval "ac_cv_header_$ac_safe=no"
+-fi
+-rm -f conftest*
+-fi
+-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
+-  echo "$ac_t""yes" 1>&6
+-  :
+-else
+-  echo "$ac_t""no" 1>&6
+-{ echo "configure: error: "dlfcn.h not found"" 1>&2; exit 1; }
+-fi
++# On IRIX 5.3, sys/types and inttypes.h are conflicting.
+ 
+ 
+-ac_safe=`echo "sys/socket.h" | sed 'y%./+-%__p_%'`
+-echo $ac_n "checking for sys/socket.h""... $ac_c" 1>&6
+-echo "configure:1200: checking for sys/socket.h" >&5
+-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
+-else
+-  cat > conftest.$ac_ext <<EOF
+-#line 1205 "configure"
+-#include "confdefs.h"
+-#include <sys/socket.h>
+-EOF
+-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:1210: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+-if test -z "$ac_err"; then
+-  rm -rf conftest*
+-  eval "ac_cv_header_$ac_safe=yes"
+-else
+-  echo "$ac_err" >&5
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
+-  rm -rf conftest*
+-  eval "ac_cv_header_$ac_safe=no"
+-fi
+-rm -f conftest*
++
++
++
++
++
++
++
++for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
++		  inttypes.h stdint.h unistd.h
++do
++as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
++echo "$as_me:$LINENO: checking for $ac_header" >&5
++echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
++if eval "test \"\${$as_ac_Header+set}\" = set"; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++$ac_includes_default
++
++#include <$ac_header>
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  eval "$as_ac_Header=yes"
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++eval "$as_ac_Header=no"
++fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++fi
++echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
++echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
++if test `eval echo '${'$as_ac_Header'}'` = yes; then
++  cat >>confdefs.h <<_ACEOF
++#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
++_ACEOF
++
++fi
++
++done
++
++
++if test "${ac_cv_header_dlfcn_h+set}" = set; then
++  echo "$as_me:$LINENO: checking for dlfcn.h" >&5
++echo $ECHO_N "checking for dlfcn.h... $ECHO_C" >&6
++if test "${ac_cv_header_dlfcn_h+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++fi
++echo "$as_me:$LINENO: result: $ac_cv_header_dlfcn_h" >&5
++echo "${ECHO_T}$ac_cv_header_dlfcn_h" >&6
++else
++  # Is the header compilable?
++echo "$as_me:$LINENO: checking dlfcn.h usability" >&5
++echo $ECHO_N "checking dlfcn.h usability... $ECHO_C" >&6
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++$ac_includes_default
++#include <dlfcn.h>
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_header_compiler=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_header_compiler=no
++fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
++echo "${ECHO_T}$ac_header_compiler" >&6
++
++# Is the header present?
++echo "$as_me:$LINENO: checking dlfcn.h presence" >&5
++echo $ECHO_N "checking dlfcn.h presence... $ECHO_C" >&6
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++#include <dlfcn.h>
++_ACEOF
++if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
++  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } >/dev/null; then
++  if test -s conftest.err; then
++    ac_cpp_err=$ac_c_preproc_warn_flag
++    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
++  else
++    ac_cpp_err=
++  fi
++else
++  ac_cpp_err=yes
++fi
++if test -z "$ac_cpp_err"; then
++  ac_header_preproc=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++  ac_header_preproc=no
++fi
++rm -f conftest.err conftest.$ac_ext
++echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
++echo "${ECHO_T}$ac_header_preproc" >&6
++
++# So?  What about this header?
++case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
++  yes:no: )
++    { echo "$as_me:$LINENO: WARNING: dlfcn.h: accepted by the compiler, rejected by the preprocessor!" >&5
++echo "$as_me: WARNING: dlfcn.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
++    { echo "$as_me:$LINENO: WARNING: dlfcn.h: proceeding with the compiler's result" >&5
++echo "$as_me: WARNING: dlfcn.h: proceeding with the compiler's result" >&2;}
++    ac_header_preproc=yes
++    ;;
++  no:yes:* )
++    { echo "$as_me:$LINENO: WARNING: dlfcn.h: present but cannot be compiled" >&5
++echo "$as_me: WARNING: dlfcn.h: present but cannot be compiled" >&2;}
++    { echo "$as_me:$LINENO: WARNING: dlfcn.h:     check for missing prerequisite headers?" >&5
++echo "$as_me: WARNING: dlfcn.h:     check for missing prerequisite headers?" >&2;}
++    { echo "$as_me:$LINENO: WARNING: dlfcn.h: see the Autoconf documentation" >&5
++echo "$as_me: WARNING: dlfcn.h: see the Autoconf documentation" >&2;}
++    { echo "$as_me:$LINENO: WARNING: dlfcn.h:     section \"Present But Cannot Be Compiled\"" >&5
++echo "$as_me: WARNING: dlfcn.h:     section \"Present But Cannot Be Compiled\"" >&2;}
++    { echo "$as_me:$LINENO: WARNING: dlfcn.h: proceeding with the preprocessor's result" >&5
++echo "$as_me: WARNING: dlfcn.h: proceeding with the preprocessor's result" >&2;}
++    { echo "$as_me:$LINENO: WARNING: dlfcn.h: in the future, the compiler will take precedence" >&5
++echo "$as_me: WARNING: dlfcn.h: in the future, the compiler will take precedence" >&2;}
++    (
++      cat <<\_ASBOX
++## ------------------------------------------ ##
++## Report this to the AC_PACKAGE_NAME lists.  ##
++## ------------------------------------------ ##
++_ASBOX
++    ) |
++      sed "s/^/$as_me: WARNING:     /" >&2
++    ;;
++esac
++echo "$as_me:$LINENO: checking for dlfcn.h" >&5
++echo $ECHO_N "checking for dlfcn.h... $ECHO_C" >&6
++if test "${ac_cv_header_dlfcn_h+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  ac_cv_header_dlfcn_h=$ac_header_preproc
++fi
++echo "$as_me:$LINENO: result: $ac_cv_header_dlfcn_h" >&5
++echo "${ECHO_T}$ac_cv_header_dlfcn_h" >&6
++
+ fi
+-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
+-  echo "$ac_t""yes" 1>&6
++if test $ac_cv_header_dlfcn_h = yes; then
+   :
+ else
+-  echo "$ac_t""no" 1>&6
+-{ echo "configure: error: "sys/socket.h not found"" 1>&2; exit 1; }
++  { { echo "$as_me:$LINENO: error: \"dlfcn.h not found\"" >&5
++echo "$as_me: error: \"dlfcn.h not found\"" >&2;}
++   { (exit 1); exit 1; }; }
+ fi
+ 
+ 
+-ac_safe=`echo "arpa/inet.h" | sed 'y%./+-%__p_%'`
+-echo $ac_n "checking for arpa/inet.h""... $ac_c" 1>&6
+-echo "configure:1235: checking for arpa/inet.h" >&5
+-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
++
++if test "${ac_cv_header_sys_socket_h+set}" = set; then
++  echo "$as_me:$LINENO: checking for sys/socket.h" >&5
++echo $ECHO_N "checking for sys/socket.h... $ECHO_C" >&6
++if test "${ac_cv_header_sys_socket_h+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++fi
++echo "$as_me:$LINENO: result: $ac_cv_header_sys_socket_h" >&5
++echo "${ECHO_T}$ac_cv_header_sys_socket_h" >&6
++else
++  # Is the header compilable?
++echo "$as_me:$LINENO: checking sys/socket.h usability" >&5
++echo $ECHO_N "checking sys/socket.h usability... $ECHO_C" >&6
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++$ac_includes_default
++#include <sys/socket.h>
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_header_compiler=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_header_compiler=no
++fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
++echo "${ECHO_T}$ac_header_compiler" >&6
++
++# Is the header present?
++echo "$as_me:$LINENO: checking sys/socket.h presence" >&5
++echo $ECHO_N "checking sys/socket.h presence... $ECHO_C" >&6
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++#include <sys/socket.h>
++_ACEOF
++if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
++  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } >/dev/null; then
++  if test -s conftest.err; then
++    ac_cpp_err=$ac_c_preproc_warn_flag
++    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
++  else
++    ac_cpp_err=
++  fi
+ else
+-  cat > conftest.$ac_ext <<EOF
+-#line 1240 "configure"
+-#include "confdefs.h"
+-#include <arpa/inet.h>
+-EOF
+-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:1245: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+-if test -z "$ac_err"; then
+-  rm -rf conftest*
+-  eval "ac_cv_header_$ac_safe=yes"
+-else
+-  echo "$ac_err" >&5
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
+-  rm -rf conftest*
+-  eval "ac_cv_header_$ac_safe=no"
++  ac_cpp_err=yes
+ fi
+-rm -f conftest*
++if test -z "$ac_cpp_err"; then
++  ac_header_preproc=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++  ac_header_preproc=no
++fi
++rm -f conftest.err conftest.$ac_ext
++echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
++echo "${ECHO_T}$ac_header_preproc" >&6
++
++# So?  What about this header?
++case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
++  yes:no: )
++    { echo "$as_me:$LINENO: WARNING: sys/socket.h: accepted by the compiler, rejected by the preprocessor!" >&5
++echo "$as_me: WARNING: sys/socket.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
++    { echo "$as_me:$LINENO: WARNING: sys/socket.h: proceeding with the compiler's result" >&5
++echo "$as_me: WARNING: sys/socket.h: proceeding with the compiler's result" >&2;}
++    ac_header_preproc=yes
++    ;;
++  no:yes:* )
++    { echo "$as_me:$LINENO: WARNING: sys/socket.h: present but cannot be compiled" >&5
++echo "$as_me: WARNING: sys/socket.h: present but cannot be compiled" >&2;}
++    { echo "$as_me:$LINENO: WARNING: sys/socket.h:     check for missing prerequisite headers?" >&5
++echo "$as_me: WARNING: sys/socket.h:     check for missing prerequisite headers?" >&2;}
++    { echo "$as_me:$LINENO: WARNING: sys/socket.h: see the Autoconf documentation" >&5
++echo "$as_me: WARNING: sys/socket.h: see the Autoconf documentation" >&2;}
++    { echo "$as_me:$LINENO: WARNING: sys/socket.h:     section \"Present But Cannot Be Compiled\"" >&5
++echo "$as_me: WARNING: sys/socket.h:     section \"Present But Cannot Be Compiled\"" >&2;}
++    { echo "$as_me:$LINENO: WARNING: sys/socket.h: proceeding with the preprocessor's result" >&5
++echo "$as_me: WARNING: sys/socket.h: proceeding with the preprocessor's result" >&2;}
++    { echo "$as_me:$LINENO: WARNING: sys/socket.h: in the future, the compiler will take precedence" >&5
++echo "$as_me: WARNING: sys/socket.h: in the future, the compiler will take precedence" >&2;}
++    (
++      cat <<\_ASBOX
++## ------------------------------------------ ##
++## Report this to the AC_PACKAGE_NAME lists.  ##
++## ------------------------------------------ ##
++_ASBOX
++    ) |
++      sed "s/^/$as_me: WARNING:     /" >&2
++    ;;
++esac
++echo "$as_me:$LINENO: checking for sys/socket.h" >&5
++echo $ECHO_N "checking for sys/socket.h... $ECHO_C" >&6
++if test "${ac_cv_header_sys_socket_h+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  ac_cv_header_sys_socket_h=$ac_header_preproc
+ fi
+-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
+-  echo "$ac_t""yes" 1>&6
++echo "$as_me:$LINENO: result: $ac_cv_header_sys_socket_h" >&5
++echo "${ECHO_T}$ac_cv_header_sys_socket_h" >&6
++
++fi
++if test $ac_cv_header_sys_socket_h = yes; then
+   :
+ else
+-  echo "$ac_t""no" 1>&6
+-{ echo "configure: error: "arpa/inet.h not found"" 1>&2; exit 1; }
++  { { echo "$as_me:$LINENO: error: \"sys/socket.h not found\"" >&5
++echo "$as_me: error: \"sys/socket.h not found\"" >&2;}
++   { (exit 1); exit 1; }; }
+ fi
+ 
+ 
+-ac_safe=`echo "fcntl.h" | sed 'y%./+-%__p_%'`
+-echo $ac_n "checking for fcntl.h""... $ac_c" 1>&6
+-echo "configure:1270: checking for fcntl.h" >&5
+-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
++
++if test "${ac_cv_header_arpa_inet_h+set}" = set; then
++  echo "$as_me:$LINENO: checking for arpa/inet.h" >&5
++echo $ECHO_N "checking for arpa/inet.h... $ECHO_C" >&6
++if test "${ac_cv_header_arpa_inet_h+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++fi
++echo "$as_me:$LINENO: result: $ac_cv_header_arpa_inet_h" >&5
++echo "${ECHO_T}$ac_cv_header_arpa_inet_h" >&6
++else
++  # Is the header compilable?
++echo "$as_me:$LINENO: checking arpa/inet.h usability" >&5
++echo $ECHO_N "checking arpa/inet.h usability... $ECHO_C" >&6
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++$ac_includes_default
++#include <arpa/inet.h>
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_header_compiler=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_header_compiler=no
++fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
++echo "${ECHO_T}$ac_header_compiler" >&6
++
++# Is the header present?
++echo "$as_me:$LINENO: checking arpa/inet.h presence" >&5
++echo $ECHO_N "checking arpa/inet.h presence... $ECHO_C" >&6
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++#include <arpa/inet.h>
++_ACEOF
++if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
++  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } >/dev/null; then
++  if test -s conftest.err; then
++    ac_cpp_err=$ac_c_preproc_warn_flag
++    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
++  else
++    ac_cpp_err=
++  fi
+ else
+-  cat > conftest.$ac_ext <<EOF
+-#line 1275 "configure"
+-#include "confdefs.h"
+-#include <fcntl.h>
+-EOF
+-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:1280: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+-if test -z "$ac_err"; then
+-  rm -rf conftest*
+-  eval "ac_cv_header_$ac_safe=yes"
+-else
+-  echo "$ac_err" >&5
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
+-  rm -rf conftest*
+-  eval "ac_cv_header_$ac_safe=no"
++  ac_cpp_err=yes
+ fi
+-rm -f conftest*
++if test -z "$ac_cpp_err"; then
++  ac_header_preproc=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++  ac_header_preproc=no
++fi
++rm -f conftest.err conftest.$ac_ext
++echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
++echo "${ECHO_T}$ac_header_preproc" >&6
++
++# So?  What about this header?
++case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
++  yes:no: )
++    { echo "$as_me:$LINENO: WARNING: arpa/inet.h: accepted by the compiler, rejected by the preprocessor!" >&5
++echo "$as_me: WARNING: arpa/inet.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
++    { echo "$as_me:$LINENO: WARNING: arpa/inet.h: proceeding with the compiler's result" >&5
++echo "$as_me: WARNING: arpa/inet.h: proceeding with the compiler's result" >&2;}
++    ac_header_preproc=yes
++    ;;
++  no:yes:* )
++    { echo "$as_me:$LINENO: WARNING: arpa/inet.h: present but cannot be compiled" >&5
++echo "$as_me: WARNING: arpa/inet.h: present but cannot be compiled" >&2;}
++    { echo "$as_me:$LINENO: WARNING: arpa/inet.h:     check for missing prerequisite headers?" >&5
++echo "$as_me: WARNING: arpa/inet.h:     check for missing prerequisite headers?" >&2;}
++    { echo "$as_me:$LINENO: WARNING: arpa/inet.h: see the Autoconf documentation" >&5
++echo "$as_me: WARNING: arpa/inet.h: see the Autoconf documentation" >&2;}
++    { echo "$as_me:$LINENO: WARNING: arpa/inet.h:     section \"Present But Cannot Be Compiled\"" >&5
++echo "$as_me: WARNING: arpa/inet.h:     section \"Present But Cannot Be Compiled\"" >&2;}
++    { echo "$as_me:$LINENO: WARNING: arpa/inet.h: proceeding with the preprocessor's result" >&5
++echo "$as_me: WARNING: arpa/inet.h: proceeding with the preprocessor's result" >&2;}
++    { echo "$as_me:$LINENO: WARNING: arpa/inet.h: in the future, the compiler will take precedence" >&5
++echo "$as_me: WARNING: arpa/inet.h: in the future, the compiler will take precedence" >&2;}
++    (
++      cat <<\_ASBOX
++## ------------------------------------------ ##
++## Report this to the AC_PACKAGE_NAME lists.  ##
++## ------------------------------------------ ##
++_ASBOX
++    ) |
++      sed "s/^/$as_me: WARNING:     /" >&2
++    ;;
++esac
++echo "$as_me:$LINENO: checking for arpa/inet.h" >&5
++echo $ECHO_N "checking for arpa/inet.h... $ECHO_C" >&6
++if test "${ac_cv_header_arpa_inet_h+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  ac_cv_header_arpa_inet_h=$ac_header_preproc
+ fi
+-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
+-  echo "$ac_t""yes" 1>&6
++echo "$as_me:$LINENO: result: $ac_cv_header_arpa_inet_h" >&5
++echo "${ECHO_T}$ac_cv_header_arpa_inet_h" >&6
++
++fi
++if test $ac_cv_header_arpa_inet_h = yes; then
+   :
+ else
+-  echo "$ac_t""no" 1>&6
+-{ echo "configure: error: "fcntl.h not found"" 1>&2; exit 1; }
++  { { echo "$as_me:$LINENO: error: \"arpa/inet.h not found\"" >&5
++echo "$as_me: error: \"arpa/inet.h not found\"" >&2;}
++   { (exit 1); exit 1; }; }
+ fi
+ 
+ 
+-ac_safe=`echo "sys/poll.h" | sed 'y%./+-%__p_%'`
+-echo $ac_n "checking for sys/poll.h""... $ac_c" 1>&6
+-echo "configure:1305: checking for sys/poll.h" >&5
+-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
++
++if test "${ac_cv_header_fcntl_h+set}" = set; then
++  echo "$as_me:$LINENO: checking for fcntl.h" >&5
++echo $ECHO_N "checking for fcntl.h... $ECHO_C" >&6
++if test "${ac_cv_header_fcntl_h+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++fi
++echo "$as_me:$LINENO: result: $ac_cv_header_fcntl_h" >&5
++echo "${ECHO_T}$ac_cv_header_fcntl_h" >&6
++else
++  # Is the header compilable?
++echo "$as_me:$LINENO: checking fcntl.h usability" >&5
++echo $ECHO_N "checking fcntl.h usability... $ECHO_C" >&6
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++$ac_includes_default
++#include <fcntl.h>
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_header_compiler=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_header_compiler=no
++fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
++echo "${ECHO_T}$ac_header_compiler" >&6
++
++# Is the header present?
++echo "$as_me:$LINENO: checking fcntl.h presence" >&5
++echo $ECHO_N "checking fcntl.h presence... $ECHO_C" >&6
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++#include <fcntl.h>
++_ACEOF
++if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
++  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } >/dev/null; then
++  if test -s conftest.err; then
++    ac_cpp_err=$ac_c_preproc_warn_flag
++    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
++  else
++    ac_cpp_err=
++  fi
+ else
+-  cat > conftest.$ac_ext <<EOF
+-#line 1310 "configure"
+-#include "confdefs.h"
++  ac_cpp_err=yes
++fi
++if test -z "$ac_cpp_err"; then
++  ac_header_preproc=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++  ac_header_preproc=no
++fi
++rm -f conftest.err conftest.$ac_ext
++echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
++echo "${ECHO_T}$ac_header_preproc" >&6
++
++# So?  What about this header?
++case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
++  yes:no: )
++    { echo "$as_me:$LINENO: WARNING: fcntl.h: accepted by the compiler, rejected by the preprocessor!" >&5
++echo "$as_me: WARNING: fcntl.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
++    { echo "$as_me:$LINENO: WARNING: fcntl.h: proceeding with the compiler's result" >&5
++echo "$as_me: WARNING: fcntl.h: proceeding with the compiler's result" >&2;}
++    ac_header_preproc=yes
++    ;;
++  no:yes:* )
++    { echo "$as_me:$LINENO: WARNING: fcntl.h: present but cannot be compiled" >&5
++echo "$as_me: WARNING: fcntl.h: present but cannot be compiled" >&2;}
++    { echo "$as_me:$LINENO: WARNING: fcntl.h:     check for missing prerequisite headers?" >&5
++echo "$as_me: WARNING: fcntl.h:     check for missing prerequisite headers?" >&2;}
++    { echo "$as_me:$LINENO: WARNING: fcntl.h: see the Autoconf documentation" >&5
++echo "$as_me: WARNING: fcntl.h: see the Autoconf documentation" >&2;}
++    { echo "$as_me:$LINENO: WARNING: fcntl.h:     section \"Present But Cannot Be Compiled\"" >&5
++echo "$as_me: WARNING: fcntl.h:     section \"Present But Cannot Be Compiled\"" >&2;}
++    { echo "$as_me:$LINENO: WARNING: fcntl.h: proceeding with the preprocessor's result" >&5
++echo "$as_me: WARNING: fcntl.h: proceeding with the preprocessor's result" >&2;}
++    { echo "$as_me:$LINENO: WARNING: fcntl.h: in the future, the compiler will take precedence" >&5
++echo "$as_me: WARNING: fcntl.h: in the future, the compiler will take precedence" >&2;}
++    (
++      cat <<\_ASBOX
++## ------------------------------------------ ##
++## Report this to the AC_PACKAGE_NAME lists.  ##
++## ------------------------------------------ ##
++_ASBOX
++    ) |
++      sed "s/^/$as_me: WARNING:     /" >&2
++    ;;
++esac
++echo "$as_me:$LINENO: checking for fcntl.h" >&5
++echo $ECHO_N "checking for fcntl.h... $ECHO_C" >&6
++if test "${ac_cv_header_fcntl_h+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  ac_cv_header_fcntl_h=$ac_header_preproc
++fi
++echo "$as_me:$LINENO: result: $ac_cv_header_fcntl_h" >&5
++echo "${ECHO_T}$ac_cv_header_fcntl_h" >&6
++
++fi
++if test $ac_cv_header_fcntl_h = yes; then
++  :
++else
++  { { echo "$as_me:$LINENO: error: \"fcntl.h not found\"" >&5
++echo "$as_me: error: \"fcntl.h not found\"" >&2;}
++   { (exit 1); exit 1; }; }
++fi
++
++
++
++if test "${ac_cv_header_sys_poll_h+set}" = set; then
++  echo "$as_me:$LINENO: checking for sys/poll.h" >&5
++echo $ECHO_N "checking for sys/poll.h... $ECHO_C" >&6
++if test "${ac_cv_header_sys_poll_h+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++fi
++echo "$as_me:$LINENO: result: $ac_cv_header_sys_poll_h" >&5
++echo "${ECHO_T}$ac_cv_header_sys_poll_h" >&6
++else
++  # Is the header compilable?
++echo "$as_me:$LINENO: checking sys/poll.h usability" >&5
++echo $ECHO_N "checking sys/poll.h usability... $ECHO_C" >&6
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++$ac_includes_default
++#include <sys/poll.h>
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_header_compiler=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_header_compiler=no
++fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
++echo "${ECHO_T}$ac_header_compiler" >&6
++
++# Is the header present?
++echo "$as_me:$LINENO: checking sys/poll.h presence" >&5
++echo $ECHO_N "checking sys/poll.h presence... $ECHO_C" >&6
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
+ #include <sys/poll.h>
+-EOF
+-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:1315: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+-if test -z "$ac_err"; then
+-  rm -rf conftest*
+-  eval "ac_cv_header_$ac_safe=yes"
+-else
+-  echo "$ac_err" >&5
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
+-  rm -rf conftest*
+-  eval "ac_cv_header_$ac_safe=no"
++_ACEOF
++if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
++  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } >/dev/null; then
++  if test -s conftest.err; then
++    ac_cpp_err=$ac_c_preproc_warn_flag
++    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
++  else
++    ac_cpp_err=
++  fi
++else
++  ac_cpp_err=yes
+ fi
+-rm -f conftest*
++if test -z "$ac_cpp_err"; then
++  ac_header_preproc=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++  ac_header_preproc=no
++fi
++rm -f conftest.err conftest.$ac_ext
++echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
++echo "${ECHO_T}$ac_header_preproc" >&6
++
++# So?  What about this header?
++case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
++  yes:no: )
++    { echo "$as_me:$LINENO: WARNING: sys/poll.h: accepted by the compiler, rejected by the preprocessor!" >&5
++echo "$as_me: WARNING: sys/poll.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
++    { echo "$as_me:$LINENO: WARNING: sys/poll.h: proceeding with the compiler's result" >&5
++echo "$as_me: WARNING: sys/poll.h: proceeding with the compiler's result" >&2;}
++    ac_header_preproc=yes
++    ;;
++  no:yes:* )
++    { echo "$as_me:$LINENO: WARNING: sys/poll.h: present but cannot be compiled" >&5
++echo "$as_me: WARNING: sys/poll.h: present but cannot be compiled" >&2;}
++    { echo "$as_me:$LINENO: WARNING: sys/poll.h:     check for missing prerequisite headers?" >&5
++echo "$as_me: WARNING: sys/poll.h:     check for missing prerequisite headers?" >&2;}
++    { echo "$as_me:$LINENO: WARNING: sys/poll.h: see the Autoconf documentation" >&5
++echo "$as_me: WARNING: sys/poll.h: see the Autoconf documentation" >&2;}
++    { echo "$as_me:$LINENO: WARNING: sys/poll.h:     section \"Present But Cannot Be Compiled\"" >&5
++echo "$as_me: WARNING: sys/poll.h:     section \"Present But Cannot Be Compiled\"" >&2;}
++    { echo "$as_me:$LINENO: WARNING: sys/poll.h: proceeding with the preprocessor's result" >&5
++echo "$as_me: WARNING: sys/poll.h: proceeding with the preprocessor's result" >&2;}
++    { echo "$as_me:$LINENO: WARNING: sys/poll.h: in the future, the compiler will take precedence" >&5
++echo "$as_me: WARNING: sys/poll.h: in the future, the compiler will take precedence" >&2;}
++    (
++      cat <<\_ASBOX
++## ------------------------------------------ ##
++## Report this to the AC_PACKAGE_NAME lists.  ##
++## ------------------------------------------ ##
++_ASBOX
++    ) |
++      sed "s/^/$as_me: WARNING:     /" >&2
++    ;;
++esac
++echo "$as_me:$LINENO: checking for sys/poll.h" >&5
++echo $ECHO_N "checking for sys/poll.h... $ECHO_C" >&6
++if test "${ac_cv_header_sys_poll_h+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  ac_cv_header_sys_poll_h=$ac_header_preproc
++fi
++echo "$as_me:$LINENO: result: $ac_cv_header_sys_poll_h" >&5
++echo "${ECHO_T}$ac_cv_header_sys_poll_h" >&6
++
+ fi
+-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
+-  echo "$ac_t""yes" 1>&6
++if test $ac_cv_header_sys_poll_h = yes; then
+   :
+ else
+-  echo "$ac_t""no" 1>&6
+-{ echo "configure: error: "sys/poll.h not found"" 1>&2; exit 1; }
++  { { echo "$as_me:$LINENO: error: \"sys/poll.h not found\"" >&5
++echo "$as_me: error: \"sys/poll.h not found\"" >&2;}
++   { (exit 1); exit 1; }; }
++fi
++
++
++
++if test "${ac_cv_header_sys_mman_h+set}" = set; then
++  echo "$as_me:$LINENO: checking for sys/mman.h" >&5
++echo $ECHO_N "checking for sys/mman.h... $ECHO_C" >&6
++if test "${ac_cv_header_sys_mman_h+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++fi
++echo "$as_me:$LINENO: result: $ac_cv_header_sys_mman_h" >&5
++echo "${ECHO_T}$ac_cv_header_sys_mman_h" >&6
++else
++  # Is the header compilable?
++echo "$as_me:$LINENO: checking sys/mman.h usability" >&5
++echo $ECHO_N "checking sys/mman.h usability... $ECHO_C" >&6
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++$ac_includes_default
++#include <sys/mman.h>
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_header_compiler=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_header_compiler=no
++fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
++echo "${ECHO_T}$ac_header_compiler" >&6
++
++# Is the header present?
++echo "$as_me:$LINENO: checking sys/mman.h presence" >&5
++echo $ECHO_N "checking sys/mman.h presence... $ECHO_C" >&6
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++#include <sys/mman.h>
++_ACEOF
++if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
++  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } >/dev/null; then
++  if test -s conftest.err; then
++    ac_cpp_err=$ac_c_preproc_warn_flag
++    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
++  else
++    ac_cpp_err=
++  fi
++else
++  ac_cpp_err=yes
+ fi
++if test -z "$ac_cpp_err"; then
++  ac_header_preproc=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
+ 
++  ac_header_preproc=no
++fi
++rm -f conftest.err conftest.$ac_ext
++echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
++echo "${ECHO_T}$ac_header_preproc" >&6
++
++# So?  What about this header?
++case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
++  yes:no: )
++    { echo "$as_me:$LINENO: WARNING: sys/mman.h: accepted by the compiler, rejected by the preprocessor!" >&5
++echo "$as_me: WARNING: sys/mman.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
++    { echo "$as_me:$LINENO: WARNING: sys/mman.h: proceeding with the compiler's result" >&5
++echo "$as_me: WARNING: sys/mman.h: proceeding with the compiler's result" >&2;}
++    ac_header_preproc=yes
++    ;;
++  no:yes:* )
++    { echo "$as_me:$LINENO: WARNING: sys/mman.h: present but cannot be compiled" >&5
++echo "$as_me: WARNING: sys/mman.h: present but cannot be compiled" >&2;}
++    { echo "$as_me:$LINENO: WARNING: sys/mman.h:     check for missing prerequisite headers?" >&5
++echo "$as_me: WARNING: sys/mman.h:     check for missing prerequisite headers?" >&2;}
++    { echo "$as_me:$LINENO: WARNING: sys/mman.h: see the Autoconf documentation" >&5
++echo "$as_me: WARNING: sys/mman.h: see the Autoconf documentation" >&2;}
++    { echo "$as_me:$LINENO: WARNING: sys/mman.h:     section \"Present But Cannot Be Compiled\"" >&5
++echo "$as_me: WARNING: sys/mman.h:     section \"Present But Cannot Be Compiled\"" >&2;}
++    { echo "$as_me:$LINENO: WARNING: sys/mman.h: proceeding with the preprocessor's result" >&5
++echo "$as_me: WARNING: sys/mman.h: proceeding with the preprocessor's result" >&2;}
++    { echo "$as_me:$LINENO: WARNING: sys/mman.h: in the future, the compiler will take precedence" >&5
++echo "$as_me: WARNING: sys/mman.h: in the future, the compiler will take precedence" >&2;}
++    (
++      cat <<\_ASBOX
++## ------------------------------------------ ##
++## Report this to the AC_PACKAGE_NAME lists.  ##
++## ------------------------------------------ ##
++_ASBOX
++    ) |
++      sed "s/^/$as_me: WARNING:     /" >&2
++    ;;
++esac
++echo "$as_me:$LINENO: checking for sys/mman.h" >&5
++echo $ECHO_N "checking for sys/mman.h... $ECHO_C" >&6
++if test "${ac_cv_header_sys_mman_h+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  ac_cv_header_sys_mman_h=$ac_header_preproc
++fi
++echo "$as_me:$LINENO: result: $ac_cv_header_sys_mman_h" >&5
++echo "${ECHO_T}$ac_cv_header_sys_mman_h" >&6
+ 
+-for ac_hdr in unistd.h
+-do
+-ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
+-echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
+-echo "configure:1342: checking for $ac_hdr" >&5
+-if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
+-else
+-  cat > conftest.$ac_ext <<EOF
+-#line 1347 "configure"
+-#include "confdefs.h"
+-#include <$ac_hdr>
+-EOF
+-ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
+-{ (eval echo configure:1352: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
+-ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
+-if test -z "$ac_err"; then
+-  rm -rf conftest*
+-  eval "ac_cv_header_$ac_safe=yes"
+-else
+-  echo "$ac_err" >&5
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
+-  rm -rf conftest*
+-  eval "ac_cv_header_$ac_safe=no"
+ fi
+-rm -f conftest*
++if test $ac_cv_header_sys_mman_h = yes; then
++  :
++else
++  { { echo "$as_me:$LINENO: error: \"sys/mman.h not found\"" >&5
++echo "$as_me: error: \"sys/mman.h not found\"" >&2;}
++   { (exit 1); exit 1; }; }
++fi
++
++
++
++
++for ac_header in unistd.h
++do
++as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
++if eval "test \"\${$as_ac_Header+set}\" = set"; then
++  echo "$as_me:$LINENO: checking for $ac_header" >&5
++echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
++if eval "test \"\${$as_ac_Header+set}\" = set"; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++fi
++echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
++echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
++else
++  # Is the header compilable?
++echo "$as_me:$LINENO: checking $ac_header usability" >&5
++echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++$ac_includes_default
++#include <$ac_header>
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_header_compiler=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_header_compiler=no
++fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
++echo "${ECHO_T}$ac_header_compiler" >&6
++
++# Is the header present?
++echo "$as_me:$LINENO: checking $ac_header presence" >&5
++echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++#include <$ac_header>
++_ACEOF
++if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
++  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } >/dev/null; then
++  if test -s conftest.err; then
++    ac_cpp_err=$ac_c_preproc_warn_flag
++    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
++  else
++    ac_cpp_err=
++  fi
++else
++  ac_cpp_err=yes
+ fi
+-if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
+-  echo "$ac_t""yes" 1>&6
+-    ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
+-  cat >> confdefs.h <<EOF
+-#define $ac_tr_hdr 1
+-EOF
+- 
++if test -z "$ac_cpp_err"; then
++  ac_header_preproc=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++  ac_header_preproc=no
++fi
++rm -f conftest.err conftest.$ac_ext
++echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
++echo "${ECHO_T}$ac_header_preproc" >&6
++
++# So?  What about this header?
++case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
++  yes:no: )
++    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
++echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
++    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
++echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
++    ac_header_preproc=yes
++    ;;
++  no:yes:* )
++    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
++echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
++    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
++echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
++    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
++echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
++    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
++echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
++    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
++echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
++    { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
++echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
++    (
++      cat <<\_ASBOX
++## ------------------------------------------ ##
++## Report this to the AC_PACKAGE_NAME lists.  ##
++## ------------------------------------------ ##
++_ASBOX
++    ) |
++      sed "s/^/$as_me: WARNING:     /" >&2
++    ;;
++esac
++echo "$as_me:$LINENO: checking for $ac_header" >&5
++echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
++if eval "test \"\${$as_ac_Header+set}\" = set"; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+-  echo "$ac_t""no" 1>&6
++  eval "$as_ac_Header=\$ac_header_preproc"
+ fi
++echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
++echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
++
++fi
++if test `eval echo '${'$as_ac_Header'}'` = yes; then
++  cat >>confdefs.h <<_ACEOF
++#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
++_ACEOF
++
++fi
++
+ done
+ 
+ 
+-for ac_func in strcspn strdup strerror strspn strtol
++
++
++
++
++
++
++
++
++
++for ac_func in strcspn strdup strerror strspn strtol mmap strcasecmp \
++   strncasecmp strtol
+ do
+-echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
+-echo "configure:1382: checking for $ac_func" >&5
+-if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
+-else
+-  cat > conftest.$ac_ext <<EOF
+-#line 1387 "configure"
+-#include "confdefs.h"
++as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
++echo "$as_me:$LINENO: checking for $ac_func" >&5
++echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
++if eval "test \"\${$as_ac_var+set}\" = set"; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
++   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
++#define $ac_func innocuous_$ac_func
++
+ /* System header to define __stub macros and hopefully few prototypes,
+-    which can conflict with char $ac_func(); below.  */
+-#include <assert.h>
+-/* Override any gcc2 internal prototype to avoid an error.  */
+-/* We use char because int might match the return type of a gcc2
+-    builtin and then its argument prototype would still apply.  */
+-char $ac_func();
++    which can conflict with char $ac_func (); below.
++    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
++    <limits.h> exists even on freestanding compilers.  */
+ 
+-int main() {
++#ifdef __STDC__
++# include <limits.h>
++#else
++# include <assert.h>
++#endif
+ 
++#undef $ac_func
++
++/* Override any gcc2 internal prototype to avoid an error.  */
++#ifdef __cplusplus
++extern "C"
++{
++#endif
++/* We use char because int might match the return type of a gcc2
++   builtin and then its argument prototype would still apply.  */
++char $ac_func ();
+ /* The GNU C library defines this for functions which it implements
+     to always fail with ENOSYS.  Some functions are actually named
+     something starting with __ and the normal name is an alias.  */
+ #if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+ choke me
+ #else
+-$ac_func();
++char (*f) () = $ac_func;
++#endif
++#ifdef __cplusplus
++}
+ #endif
+ 
+-; return 0; }
+-EOF
+-if { (eval echo configure:1410: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+-  rm -rf conftest*
+-  eval "ac_cv_func_$ac_func=yes"
+-else
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
+-  rm -rf conftest*
+-  eval "ac_cv_func_$ac_func=no"
++int
++main ()
++{
++return f != $ac_func;
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext conftest$ac_exeext
++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
++  (eval $ac_link) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest$ac_exeext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  eval "$as_ac_var=yes"
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++eval "$as_ac_var=no"
++fi
++rm -f conftest.err conftest.$ac_objext \
++      conftest$ac_exeext conftest.$ac_ext
++fi
++echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
++echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
++if test `eval echo '${'$as_ac_var'}'` = yes; then
++  cat >>confdefs.h <<_ACEOF
++#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
++_ACEOF
++
++else
++  { { echo "$as_me:$LINENO: error: \"Required function not found\"" >&5
++echo "$as_me: error: \"Required function not found\"" >&2;}
++   { (exit 1); exit 1; }; }
+ fi
+-rm -f conftest*
++done
++
++
++
++
++    ac_ext=c
++ac_cpp='$CPP $CPPFLAGS'
++ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
++ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
++ac_compiler_gnu=$ac_cv_c_compiler_gnu
++
++    echo "$as_me:$LINENO: checking how many arguments gethostbyname_r() takes" >&5
++echo $ECHO_N "checking how many arguments gethostbyname_r() takes... $ECHO_C" >&6
++
++    if test "${ac_cv_func_which_gethostbyname_r+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++
++
++
++ac_cv_func_which_gethostbyname_r=unknown
++
++#
++# ONE ARGUMENT (sanity check)
++#
++
++# This should fail, as there is no variant of gethostbyname_r() that takes
++# a single argument. If it actually compiles, then we can assume that
++# netdb.h is not declaring the function, and the compiler is thereby
++# assuming an implicit prototype. In which case, we're out of luck.
++#
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++#include <netdb.h>
++int
++main ()
++{
++
++            char *name = "www.gnu.org";
++            (void)gethostbyname_r(name) /* ; */
++
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_cv_func_which_gethostbyname_r=no
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
+ fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++
++#
++# SIX ARGUMENTS
++# (e.g. Linux)
++#
++
++if test "$ac_cv_func_which_gethostbyname_r" = "unknown"; then
+ 
+-if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
+-  echo "$ac_t""yes" 1>&6
+-    ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
+-  cat >> confdefs.h <<EOF
+-#define $ac_tr_func 1
+-EOF
+- 
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++#include <netdb.h>
++int
++main ()
++{
++
++            char *name = "www.gnu.org";
++            struct hostent ret, *retp;
++            char buf[1024];
++            int buflen = 1024;
++            int my_h_errno;
++            (void)gethostbyname_r(name, &ret, buf, buflen, &retp, &my_h_errno) /* ; */
++
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_cv_func_which_gethostbyname_r=six
+ else
+-  echo "$ac_t""no" 1>&6
+-{ echo "configure: error: "Required function not found"" 1>&2; exit 1; }
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
+ fi
+-done
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++
++fi
++
++#
++# FIVE ARGUMENTS
++# (e.g. Solaris)
++#
++
++if test "$ac_cv_func_which_gethostbyname_r" = "unknown"; then
++
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++#include <netdb.h>
++int
++main ()
++{
++
++            char *name = "www.gnu.org";
++            struct hostent ret;
++            char buf[1024];
++            int buflen = 1024;
++            int my_h_errno;
++            (void)gethostbyname_r(name, &ret, buf, buflen, &my_h_errno) /* ; */
++
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_cv_func_which_gethostbyname_r=five
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++
++fi
++
++#
++# THREE ARGUMENTS
++# (e.g. AIX, HP-UX, Tru64)
++#
++
++if test "$ac_cv_func_which_gethostbyname_r" = "unknown"; then
++
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++#include <netdb.h>
++int
++main ()
++{
++
++            char *name = "www.gnu.org";
++            struct hostent ret;
++            struct hostent_data data;
++            (void)gethostbyname_r(name, &ret, &data) /* ; */
++
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_cv_func_which_gethostbyname_r=three
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++fi
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
++
++fi
++
++
++
++fi
++
++case "$ac_cv_func_which_gethostbyname_r" in
++    three)
++    echo "$as_me:$LINENO: result: three" >&5
++echo "${ECHO_T}three" >&6
++    cat >>confdefs.h <<\_ACEOF
++#define HAVE_FUNC_GETHOSTBYNAME_R_3 1
++_ACEOF
++
++    ;;
++
++    five)
++    echo "$as_me:$LINENO: result: five" >&5
++echo "${ECHO_T}five" >&6
++    cat >>confdefs.h <<\_ACEOF
++#define HAVE_FUNC_GETHOSTBYNAME_R_5 1
++_ACEOF
++
++    ;;
++
++    six)
++    echo "$as_me:$LINENO: result: six" >&5
++echo "${ECHO_T}six" >&6
++    cat >>confdefs.h <<\_ACEOF
++#define HAVE_FUNC_GETHOSTBYNAME_R_6 1
++_ACEOF
++
++    ;;
++
++    no)
++    echo "$as_me:$LINENO: result: cannot find function declaration in netdb.h" >&5
++echo "${ECHO_T}cannot find function declaration in netdb.h" >&6
++    ;;
++
++    unknown)
++    echo "$as_me:$LINENO: result: can't tell" >&5
++echo "${ECHO_T}can't tell" >&6
++    ;;
++
++    *)
++    { { echo "$as_me:$LINENO: error: internal error" >&5
++echo "$as_me: error: internal error" >&2;}
++   { (exit 1); exit 1; }; }
++    ;;
++esac
++
++ac_ext=c
++ac_cpp='$CPP $CPPFLAGS'
++ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
++ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
++ac_compiler_gnu=$ac_cv_c_compiler_gnu
++
++
+ 
+ 
+ OLDLIBS="${LIBS}"
+ LIBS=
+ CONNECTLIB=
+ for LIB in c socket; do
+-  echo $ac_n "checking for connect in -l"${LIB}"""... $ac_c" 1>&6
+-echo "configure:1441: checking for connect in -l"${LIB}"" >&5
+-ac_lib_var=`echo "${LIB}"'_'connect | sed 'y%./+-%__p_%'`
+-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
++  as_ac_Lib=`echo "ac_cv_lib_"${LIB}"''_connect" | $as_tr_sh`
++echo "$as_me:$LINENO: checking for connect in -l\"${LIB}\"" >&5
++echo $ECHO_N "checking for connect in -l\"${LIB}\"... $ECHO_C" >&6
++if eval "test \"\${$as_ac_Lib+set}\" = set"; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+-  ac_save_LIBS="$LIBS"
++  ac_check_lib_save_LIBS=$LIBS
+ LIBS="-l"${LIB}"  $LIBS"
+-cat > conftest.$ac_ext <<EOF
+-#line 1449 "configure"
+-#include "confdefs.h"
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++
+ /* Override any gcc2 internal prototype to avoid an error.  */
++#ifdef __cplusplus
++extern "C"
++#endif
+ /* We use char because int might match the return type of a gcc2
+-    builtin and then its argument prototype would still apply.  */
+-char connect();
+-
+-int main() {
+-connect()
+-; return 0; }
+-EOF
+-if { (eval echo configure:1460: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+-  rm -rf conftest*
+-  eval "ac_cv_lib_$ac_lib_var=yes"
+-else
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
+-  rm -rf conftest*
+-  eval "ac_cv_lib_$ac_lib_var=no"
+-fi
+-rm -f conftest*
+-LIBS="$ac_save_LIBS"
++   builtin and then its argument prototype would still apply.  */
++char connect ();
++int
++main ()
++{
++connect ();
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext conftest$ac_exeext
++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
++  (eval $ac_link) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest$ac_exeext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  eval "$as_ac_Lib=yes"
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++eval "$as_ac_Lib=no"
++fi
++rm -f conftest.err conftest.$ac_objext \
++      conftest$ac_exeext conftest.$ac_ext
++LIBS=$ac_check_lib_save_LIBS
++fi
++echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Lib'}'`" >&5
++echo "${ECHO_T}`eval echo '${'$as_ac_Lib'}'`" >&6
++if test `eval echo '${'$as_ac_Lib'}'` = yes; then
+ 
+-fi
+-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+-  echo "$ac_t""yes" 1>&6
+-  
+     CONNECTLIB="${LIB}"
+     break
+-  
+-else
+-  echo "$ac_t""no" 1>&6
++
+ fi
+ 
+ done
+ LIBS="${OLDLIBS} -l${CONNECTLIB}"
+ if test "${CONNECTLIB}" = ""; then
+-  { echo "configure: error: 'Could not find library containing connect()'" 1>&2; exit 1; }
+-fi
++  { { echo "$as_me:$LINENO: error: 'Could not find library containing connect()'" >&5
++echo "$as_me: error: 'Could not find library containing connect()'" >&2;}
++   { (exit 1); exit 1; }; }
++fi
++
++echo "$as_me:$LINENO: checking for socket" >&5
++echo $ECHO_N "checking for socket... $ECHO_C" >&6
++if test "${ac_cv_func_socket+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++/* Define socket to an innocuous variant, in case <limits.h> declares socket.
++   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
++#define socket innocuous_socket
+ 
+-echo $ac_n "checking for socket""... $ac_c" 1>&6
+-echo "configure:1490: checking for socket" >&5
+-if eval "test \"`echo '$''{'ac_cv_func_socket'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
+-else
+-  cat > conftest.$ac_ext <<EOF
+-#line 1495 "configure"
+-#include "confdefs.h"
+ /* System header to define __stub macros and hopefully few prototypes,
+-    which can conflict with char socket(); below.  */
+-#include <assert.h>
+-/* Override any gcc2 internal prototype to avoid an error.  */
+-/* We use char because int might match the return type of a gcc2
+-    builtin and then its argument prototype would still apply.  */
+-char socket();
++    which can conflict with char socket (); below.
++    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
++    <limits.h> exists even on freestanding compilers.  */
+ 
+-int main() {
++#ifdef __STDC__
++# include <limits.h>
++#else
++# include <assert.h>
++#endif
+ 
++#undef socket
++
++/* Override any gcc2 internal prototype to avoid an error.  */
++#ifdef __cplusplus
++extern "C"
++{
++#endif
++/* We use char because int might match the return type of a gcc2
++   builtin and then its argument prototype would still apply.  */
++char socket ();
+ /* The GNU C library defines this for functions which it implements
+     to always fail with ENOSYS.  Some functions are actually named
+     something starting with __ and the normal name is an alias.  */
+ #if defined (__stub_socket) || defined (__stub___socket)
+ choke me
+ #else
+-socket();
++char (*f) () = socket;
++#endif
++#ifdef __cplusplus
++}
+ #endif
+ 
+-; return 0; }
+-EOF
+-if { (eval echo configure:1518: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+-  rm -rf conftest*
+-  eval "ac_cv_func_socket=yes"
+-else
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
+-  rm -rf conftest*
+-  eval "ac_cv_func_socket=no"
+-fi
+-rm -f conftest*
+-fi
+-
+-if eval "test \"`echo '$ac_cv_func_'socket`\" = yes"; then
+-  echo "$ac_t""yes" 1>&6
++int
++main ()
++{
++return f != socket;
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext conftest$ac_exeext
++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
++  (eval $ac_link) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest$ac_exeext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_cv_func_socket=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_cv_func_socket=no
++fi
++rm -f conftest.err conftest.$ac_objext \
++      conftest$ac_exeext conftest.$ac_ext
++fi
++echo "$as_me:$LINENO: result: $ac_cv_func_socket" >&5
++echo "${ECHO_T}$ac_cv_func_socket" >&6
++if test $ac_cv_func_socket = yes; then
+   :
+ else
+-  echo "$ac_t""no" 1>&6
+ 
+-  echo $ac_n "checking for socket in -lsocket""... $ac_c" 1>&6
+-echo "configure:1537: checking for socket in -lsocket" >&5
+-ac_lib_var=`echo socket'_'socket | sed 'y%./+-%__p_%'`
+-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
++
++echo "$as_me:$LINENO: checking for socket in -lsocket" >&5
++echo $ECHO_N "checking for socket in -lsocket... $ECHO_C" >&6
++if test "${ac_cv_lib_socket_socket+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+-  ac_save_LIBS="$LIBS"
++  ac_check_lib_save_LIBS=$LIBS
+ LIBS="-lsocket  $LIBS"
+-cat > conftest.$ac_ext <<EOF
+-#line 1545 "configure"
+-#include "confdefs.h"
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++
+ /* Override any gcc2 internal prototype to avoid an error.  */
++#ifdef __cplusplus
++extern "C"
++#endif
+ /* We use char because int might match the return type of a gcc2
+-    builtin and then its argument prototype would still apply.  */
+-char socket();
+-
+-int main() {
+-socket()
+-; return 0; }
+-EOF
+-if { (eval echo configure:1556: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+-  rm -rf conftest*
+-  eval "ac_cv_lib_$ac_lib_var=yes"
+-else
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
+-  rm -rf conftest*
+-  eval "ac_cv_lib_$ac_lib_var=no"
+-fi
+-rm -f conftest*
+-LIBS="$ac_save_LIBS"
+-
+-fi
+-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+-  echo "$ac_t""yes" 1>&6
+-    ac_tr_lib=HAVE_LIB`echo socket | sed -e 's/[^a-zA-Z0-9_]/_/g' \
+-    -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
+-  cat >> confdefs.h <<EOF
+-#define $ac_tr_lib 1
+-EOF
++   builtin and then its argument prototype would still apply.  */
++char socket ();
++int
++main ()
++{
++socket ();
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext conftest$ac_exeext
++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
++  (eval $ac_link) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest$ac_exeext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_cv_lib_socket_socket=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_cv_lib_socket_socket=no
++fi
++rm -f conftest.err conftest.$ac_objext \
++      conftest$ac_exeext conftest.$ac_ext
++LIBS=$ac_check_lib_save_LIBS
++fi
++echo "$as_me:$LINENO: result: $ac_cv_lib_socket_socket" >&5
++echo "${ECHO_T}$ac_cv_lib_socket_socket" >&6
++if test $ac_cv_lib_socket_socket = yes; then
++  cat >>confdefs.h <<_ACEOF
++#define HAVE_LIBSOCKET 1
++_ACEOF
+ 
+   LIBS="-lsocket $LIBS"
+ 
+ else
+-  echo "$ac_t""no" 1>&6
+-{ echo "configure: error: "socket function not found"" 1>&2; exit 1; }
++  { { echo "$as_me:$LINENO: error: \"socket function not found\"" >&5
++echo "$as_me: error: \"socket function not found\"" >&2;}
++   { (exit 1); exit 1; }; }
+ fi
+ 
+ fi
+ 
+ 
+-echo $ac_n "checking for inet_aton""... $ac_c" 1>&6
+-echo "configure:1588: checking for inet_aton" >&5
+-if eval "test \"`echo '$''{'ac_cv_func_inet_aton'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
++echo "$as_me:$LINENO: checking for inet_aton" >&5
++echo $ECHO_N "checking for inet_aton... $ECHO_C" >&6
++if test "${ac_cv_func_inet_aton+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+-  cat > conftest.$ac_ext <<EOF
+-#line 1593 "configure"
+-#include "confdefs.h"
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++/* Define inet_aton to an innocuous variant, in case <limits.h> declares inet_aton.
++   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
++#define inet_aton innocuous_inet_aton
++
+ /* System header to define __stub macros and hopefully few prototypes,
+-    which can conflict with char inet_aton(); below.  */
+-#include <assert.h>
+-/* Override any gcc2 internal prototype to avoid an error.  */
+-/* We use char because int might match the return type of a gcc2
+-    builtin and then its argument prototype would still apply.  */
+-char inet_aton();
++    which can conflict with char inet_aton (); below.
++    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
++    <limits.h> exists even on freestanding compilers.  */
+ 
+-int main() {
++#ifdef __STDC__
++# include <limits.h>
++#else
++# include <assert.h>
++#endif
+ 
++#undef inet_aton
++
++/* Override any gcc2 internal prototype to avoid an error.  */
++#ifdef __cplusplus
++extern "C"
++{
++#endif
++/* We use char because int might match the return type of a gcc2
++   builtin and then its argument prototype would still apply.  */
++char inet_aton ();
+ /* The GNU C library defines this for functions which it implements
+     to always fail with ENOSYS.  Some functions are actually named
+     something starting with __ and the normal name is an alias.  */
+ #if defined (__stub_inet_aton) || defined (__stub___inet_aton)
+ choke me
+ #else
+-inet_aton();
++char (*f) () = inet_aton;
++#endif
++#ifdef __cplusplus
++}
+ #endif
+ 
+-; return 0; }
+-EOF
+-if { (eval echo configure:1616: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+-  rm -rf conftest*
+-  eval "ac_cv_func_inet_aton=yes"
+-else
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
+-  rm -rf conftest*
+-  eval "ac_cv_func_inet_aton=no"
+-fi
+-rm -f conftest*
+-fi
+-
+-if eval "test \"`echo '$ac_cv_func_'inet_aton`\" = yes"; then
+-  echo "$ac_t""yes" 1>&6
+-  cat >> confdefs.h <<\EOF
++int
++main ()
++{
++return f != inet_aton;
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext conftest$ac_exeext
++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
++  (eval $ac_link) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest$ac_exeext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_cv_func_inet_aton=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_cv_func_inet_aton=no
++fi
++rm -f conftest.err conftest.$ac_objext \
++      conftest$ac_exeext conftest.$ac_ext
++fi
++echo "$as_me:$LINENO: result: $ac_cv_func_inet_aton" >&5
++echo "${ECHO_T}$ac_cv_func_inet_aton" >&6
++if test $ac_cv_func_inet_aton = yes; then
++  cat >>confdefs.h <<\_ACEOF
+ #define HAVE_INET_ATON 1
+-EOF
++_ACEOF
+ 
+ else
+-  echo "$ac_t""no" 1>&6
+ 
+-  echo $ac_n "checking for inet_addr""... $ac_c" 1>&6
+-echo "configure:1638: checking for inet_addr" >&5
+-if eval "test \"`echo '$''{'ac_cv_func_inet_addr'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
+-else
+-  cat > conftest.$ac_ext <<EOF
+-#line 1643 "configure"
+-#include "confdefs.h"
++  echo "$as_me:$LINENO: checking for inet_addr" >&5
++echo $ECHO_N "checking for inet_addr... $ECHO_C" >&6
++if test "${ac_cv_func_inet_addr+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
++else
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++/* Define inet_addr to an innocuous variant, in case <limits.h> declares inet_addr.
++   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
++#define inet_addr innocuous_inet_addr
++
+ /* System header to define __stub macros and hopefully few prototypes,
+-    which can conflict with char inet_addr(); below.  */
+-#include <assert.h>
+-/* Override any gcc2 internal prototype to avoid an error.  */
+-/* We use char because int might match the return type of a gcc2
+-    builtin and then its argument prototype would still apply.  */
+-char inet_addr();
++    which can conflict with char inet_addr (); below.
++    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
++    <limits.h> exists even on freestanding compilers.  */
+ 
+-int main() {
++#ifdef __STDC__
++# include <limits.h>
++#else
++# include <assert.h>
++#endif
++
++#undef inet_addr
+ 
++/* Override any gcc2 internal prototype to avoid an error.  */
++#ifdef __cplusplus
++extern "C"
++{
++#endif
++/* We use char because int might match the return type of a gcc2
++   builtin and then its argument prototype would still apply.  */
++char inet_addr ();
+ /* The GNU C library defines this for functions which it implements
+     to always fail with ENOSYS.  Some functions are actually named
+     something starting with __ and the normal name is an alias.  */
+ #if defined (__stub_inet_addr) || defined (__stub___inet_addr)
+ choke me
+ #else
+-inet_addr();
++char (*f) () = inet_addr;
++#endif
++#ifdef __cplusplus
++}
+ #endif
+ 
+-; return 0; }
+-EOF
+-if { (eval echo configure:1666: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+-  rm -rf conftest*
+-  eval "ac_cv_func_inet_addr=yes"
+-else
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
+-  rm -rf conftest*
+-  eval "ac_cv_func_inet_addr=no"
+-fi
+-rm -f conftest*
+-fi
+-
+-if eval "test \"`echo '$ac_cv_func_'inet_addr`\" = yes"; then
+-  echo "$ac_t""yes" 1>&6
+-  cat >> confdefs.h <<\EOF
++int
++main ()
++{
++return f != inet_addr;
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext conftest$ac_exeext
++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
++  (eval $ac_link) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest$ac_exeext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_cv_func_inet_addr=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_cv_func_inet_addr=no
++fi
++rm -f conftest.err conftest.$ac_objext \
++      conftest$ac_exeext conftest.$ac_ext
++fi
++echo "$as_me:$LINENO: result: $ac_cv_func_inet_addr" >&5
++echo "${ECHO_T}$ac_cv_func_inet_addr" >&6
++if test $ac_cv_func_inet_addr = yes; then
++  cat >>confdefs.h <<\_ACEOF
+ #define HAVE_INET_ADDR 1
+-EOF
++_ACEOF
+ 
+ else
+-  echo "$ac_t""no" 1>&6
+ 
+-    echo $ac_n "checking for inet_addr in -lnsl""... $ac_c" 1>&6
+-echo "configure:1688: checking for inet_addr in -lnsl" >&5
+-ac_lib_var=`echo nsl'_'inet_addr | sed 'y%./+-%__p_%'`
+-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
++    echo "$as_me:$LINENO: checking for inet_addr in -lnsl" >&5
++echo $ECHO_N "checking for inet_addr in -lnsl... $ECHO_C" >&6
++if test "${ac_cv_lib_nsl_inet_addr+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+-  ac_save_LIBS="$LIBS"
+-LIBS="-lnsl  $LIBS"
+-cat > conftest.$ac_ext <<EOF
+-#line 1696 "configure"
+-#include "confdefs.h"
+-/* Override any gcc2 internal prototype to avoid an error.  */
+-/* We use char because int might match the return type of a gcc2
+-    builtin and then its argument prototype would still apply.  */
+-char inet_addr();
+-
+-int main() {
+-inet_addr()
+-; return 0; }
+-EOF
+-if { (eval echo configure:1707: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+-  rm -rf conftest*
+-  eval "ac_cv_lib_$ac_lib_var=yes"
+-else
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
+-  rm -rf conftest*
+-  eval "ac_cv_lib_$ac_lib_var=no"
+-fi
+-rm -f conftest*
+-LIBS="$ac_save_LIBS"
++  ac_check_lib_save_LIBS=$LIBS
++LIBS="-lnsl  $LIBS"
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
+ 
+-fi
+-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+-  echo "$ac_t""yes" 1>&6
+-   cat >> confdefs.h <<\EOF
++/* Override any gcc2 internal prototype to avoid an error.  */
++#ifdef __cplusplus
++extern "C"
++#endif
++/* We use char because int might match the return type of a gcc2
++   builtin and then its argument prototype would still apply.  */
++char inet_addr ();
++int
++main ()
++{
++inet_addr ();
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext conftest$ac_exeext
++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
++  (eval $ac_link) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest$ac_exeext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_cv_lib_nsl_inet_addr=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_cv_lib_nsl_inet_addr=no
++fi
++rm -f conftest.err conftest.$ac_objext \
++      conftest$ac_exeext conftest.$ac_ext
++LIBS=$ac_check_lib_save_LIBS
++fi
++echo "$as_me:$LINENO: result: $ac_cv_lib_nsl_inet_addr" >&5
++echo "${ECHO_T}$ac_cv_lib_nsl_inet_addr" >&6
++if test $ac_cv_lib_nsl_inet_addr = yes; then
++   cat >>confdefs.h <<\_ACEOF
+ #define HAVE_INET_ADDR 1
+-EOF
++_ACEOF
+ 
+-                                   LIBS="${LIBS} -lnsl" 
++                                   LIBS="${LIBS} -lnsl"
+ else
+-  echo "$ac_t""no" 1>&6
+ 
+-		{ echo "configure: error: "Neither inet_aton or inet_addr present"" 1>&2; exit 1; }
++		{ { echo "$as_me:$LINENO: error: \"Neither inet_aton or inet_addr present\"" >&5
++echo "$as_me: error: \"Neither inet_aton or inet_addr present\"" >&2;}
++   { (exit 1); exit 1; }; }
+ fi
+ 
+ fi
+ 
+ fi
+ 
+ 
+-echo $ac_n "checking for gethostbyname""... $ac_c" 1>&6
+-echo "configure:1739: checking for gethostbyname" >&5
+-if eval "test \"`echo '$''{'ac_cv_func_gethostbyname'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
++echo "$as_me:$LINENO: checking for gethostbyname" >&5
++echo $ECHO_N "checking for gethostbyname... $ECHO_C" >&6
++if test "${ac_cv_func_gethostbyname+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+-  cat > conftest.$ac_ext <<EOF
+-#line 1744 "configure"
+-#include "confdefs.h"
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++/* Define gethostbyname to an innocuous variant, in case <limits.h> declares gethostbyname.
++   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
++#define gethostbyname innocuous_gethostbyname
++
+ /* System header to define __stub macros and hopefully few prototypes,
+-    which can conflict with char gethostbyname(); below.  */
+-#include <assert.h>
+-/* Override any gcc2 internal prototype to avoid an error.  */
+-/* We use char because int might match the return type of a gcc2
+-    builtin and then its argument prototype would still apply.  */
+-char gethostbyname();
++    which can conflict with char gethostbyname (); below.
++    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
++    <limits.h> exists even on freestanding compilers.  */
+ 
+-int main() {
++#ifdef __STDC__
++# include <limits.h>
++#else
++# include <assert.h>
++#endif
+ 
++#undef gethostbyname
++
++/* Override any gcc2 internal prototype to avoid an error.  */
++#ifdef __cplusplus
++extern "C"
++{
++#endif
++/* We use char because int might match the return type of a gcc2
++   builtin and then its argument prototype would still apply.  */
++char gethostbyname ();
+ /* The GNU C library defines this for functions which it implements
+     to always fail with ENOSYS.  Some functions are actually named
+     something starting with __ and the normal name is an alias.  */
+ #if defined (__stub_gethostbyname) || defined (__stub___gethostbyname)
+ choke me
+ #else
+-gethostbyname();
++char (*f) () = gethostbyname;
++#endif
++#ifdef __cplusplus
++}
+ #endif
+ 
+-; return 0; }
+-EOF
+-if { (eval echo configure:1767: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+-  rm -rf conftest*
+-  eval "ac_cv_func_gethostbyname=yes"
+-else
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
+-  rm -rf conftest*
+-  eval "ac_cv_func_gethostbyname=no"
+-fi
+-rm -f conftest*
+-fi
+-
+-if eval "test \"`echo '$ac_cv_func_'gethostbyname`\" = yes"; then
+-  echo "$ac_t""yes" 1>&6
+-  cat >> confdefs.h <<\EOF
++int
++main ()
++{
++return f != gethostbyname;
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext conftest$ac_exeext
++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
++  (eval $ac_link) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest$ac_exeext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_cv_func_gethostbyname=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_cv_func_gethostbyname=no
++fi
++rm -f conftest.err conftest.$ac_objext \
++      conftest$ac_exeext conftest.$ac_ext
++fi
++echo "$as_me:$LINENO: result: $ac_cv_func_gethostbyname" >&5
++echo "${ECHO_T}$ac_cv_func_gethostbyname" >&6
++if test $ac_cv_func_gethostbyname = yes; then
++  cat >>confdefs.h <<\_ACEOF
+ #define HAVE_GETHOSTBYNAME 1
+-EOF
++_ACEOF
+ 
+ else
+-  echo "$ac_t""no" 1>&6
+ 
+-  echo $ac_n "checking for gethostbyname in -lxnet""... $ac_c" 1>&6
+-echo "configure:1789: checking for gethostbyname in -lxnet" >&5
+-ac_lib_var=`echo xnet'_'gethostbyname | sed 'y%./+-%__p_%'`
+-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
++  echo "$as_me:$LINENO: checking for gethostbyname in -lxnet" >&5
++echo $ECHO_N "checking for gethostbyname in -lxnet... $ECHO_C" >&6
++if test "${ac_cv_lib_xnet_gethostbyname+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+-  ac_save_LIBS="$LIBS"
++  ac_check_lib_save_LIBS=$LIBS
+ LIBS="-lxnet  $LIBS"
+-cat > conftest.$ac_ext <<EOF
+-#line 1797 "configure"
+-#include "confdefs.h"
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++
+ /* Override any gcc2 internal prototype to avoid an error.  */
++#ifdef __cplusplus
++extern "C"
++#endif
+ /* We use char because int might match the return type of a gcc2
+-    builtin and then its argument prototype would still apply.  */
+-char gethostbyname();
+-
+-int main() {
+-gethostbyname()
+-; return 0; }
+-EOF
+-if { (eval echo configure:1808: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+-  rm -rf conftest*
+-  eval "ac_cv_lib_$ac_lib_var=yes"
+-else
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
+-  rm -rf conftest*
+-  eval "ac_cv_lib_$ac_lib_var=no"
+-fi
+-rm -f conftest*
+-LIBS="$ac_save_LIBS"
+-
+-fi
+-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+-  echo "$ac_t""yes" 1>&6
+-  cat >> confdefs.h <<\EOF
++   builtin and then its argument prototype would still apply.  */
++char gethostbyname ();
++int
++main ()
++{
++gethostbyname ();
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext conftest$ac_exeext
++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
++  (eval $ac_link) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest$ac_exeext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_cv_lib_xnet_gethostbyname=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_cv_lib_xnet_gethostbyname=no
++fi
++rm -f conftest.err conftest.$ac_objext \
++      conftest$ac_exeext conftest.$ac_ext
++LIBS=$ac_check_lib_save_LIBS
++fi
++echo "$as_me:$LINENO: result: $ac_cv_lib_xnet_gethostbyname" >&5
++echo "${ECHO_T}$ac_cv_lib_xnet_gethostbyname" >&6
++if test $ac_cv_lib_xnet_gethostbyname = yes; then
++  cat >>confdefs.h <<\_ACEOF
+ #define HAVE_GETHOSTBYNAME 1
+-EOF
++_ACEOF
+ 
+ else
+-  echo "$ac_t""no" 1>&6
+ 
+-	       { echo "configure: error: "gethostbyname not found, name lookups in " \
+-		      "tsocks and inspectsocks disabled"" 1>&2; exit 1; }
++	       { { echo "$as_me:$LINENO: error: \"gethostbyname not found, name lookups in \" \
++		      \"tsocks and inspectsocks disabled\"" >&5
++echo "$as_me: error: \"gethostbyname not found, name lookups in \" \
++		      \"tsocks and inspectsocks disabled\"" >&2;}
++   { (exit 1); exit 1; }; }
+ fi
+ 
+ fi
+ 
+ 
+ SIMPLELIBS=${LIBS}
+ LIBS=
+ 
+-echo $ac_n "checking for dlsym in -ldl""... $ac_c" 1>&6
+-echo "configure:1841: checking for dlsym in -ldl" >&5
+-ac_lib_var=`echo dl'_'dlsym | sed 'y%./+-%__p_%'`
+-if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
++
++echo "$as_me:$LINENO: checking for dlsym in -ldl" >&5
++echo $ECHO_N "checking for dlsym in -ldl... $ECHO_C" >&6
++if test "${ac_cv_lib_dl_dlsym+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+-  ac_save_LIBS="$LIBS"
++  ac_check_lib_save_LIBS=$LIBS
+ LIBS="-ldl  $LIBS"
+-cat > conftest.$ac_ext <<EOF
+-#line 1849 "configure"
+-#include "confdefs.h"
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
++
+ /* Override any gcc2 internal prototype to avoid an error.  */
++#ifdef __cplusplus
++extern "C"
++#endif
+ /* We use char because int might match the return type of a gcc2
+-    builtin and then its argument prototype would still apply.  */
+-char dlsym();
+-
+-int main() {
+-dlsym()
+-; return 0; }
+-EOF
+-if { (eval echo configure:1860: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
+-  rm -rf conftest*
+-  eval "ac_cv_lib_$ac_lib_var=yes"
+-else
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
+-  rm -rf conftest*
+-  eval "ac_cv_lib_$ac_lib_var=no"
+-fi
+-rm -f conftest*
+-LIBS="$ac_save_LIBS"
+-
+-fi
+-if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
+-  echo "$ac_t""yes" 1>&6
+-    ac_tr_lib=HAVE_LIB`echo dl | sed -e 's/[^a-zA-Z0-9_]/_/g' \
+-    -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
+-  cat >> confdefs.h <<EOF
+-#define $ac_tr_lib 1
+-EOF
++   builtin and then its argument prototype would still apply.  */
++char dlsym ();
++int
++main ()
++{
++dlsym ();
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext conftest$ac_exeext
++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
++  (eval $ac_link) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest$ac_exeext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
++  ac_cv_lib_dl_dlsym=yes
++else
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
++ac_cv_lib_dl_dlsym=no
++fi
++rm -f conftest.err conftest.$ac_objext \
++      conftest$ac_exeext conftest.$ac_ext
++LIBS=$ac_check_lib_save_LIBS
++fi
++echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlsym" >&5
++echo "${ECHO_T}$ac_cv_lib_dl_dlsym" >&6
++if test $ac_cv_lib_dl_dlsym = yes; then
++  cat >>confdefs.h <<_ACEOF
++#define HAVE_LIBDL 1
++_ACEOF
+ 
+   LIBS="-ldl $LIBS"
+ 
+ else
+-  echo "$ac_t""no" 1>&6
+-{ echo "configure: error: "libdl is required"" 1>&2; exit 1; }
++  { { echo "$as_me:$LINENO: error: \"libdl is required\"" >&5
++echo "$as_me: error: \"libdl is required\"" >&2;}
++   { (exit 1); exit 1; }; }
+ fi
+ 
+ 
+-echo $ac_n "checking "for RTLD_NEXT from dlfcn.h"""... $ac_c" 1>&6
+-echo "configure:1890: checking "for RTLD_NEXT from dlfcn.h"" >&5
+-cat > conftest.$ac_ext <<EOF
+-#line 1892 "configure"
+-#include "confdefs.h"
++echo "$as_me:$LINENO: checking for RTLD_NEXT from dlfcn.h" >&5
++echo $ECHO_N "checking for RTLD_NEXT from dlfcn.h... $ECHO_C" >&6
++cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
+ 
+  #include <dlfcn.h>
+  #ifdef RTLD_NEXT
+ 	yes
+  #endif
+ 
+-EOF
++_ACEOF
+ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-  egrep "yes" >/dev/null 2>&1; then
+-  rm -rf conftest*
+-  
+-  echo "$ac_t""yes" 1>&6
++  $EGREP "yes" >/dev/null 2>&1; then
++
++  echo "$as_me:$LINENO: result: yes" >&5
++echo "${ECHO_T}yes" >&6
+ 
+ else
+-  rm -rf conftest*
+-  
+-  echo "$ac_t""no" 1>&6
+-  echo $ac_n "checking "for RTLD_NEXT from dlfcn.h with _GNU_SOURCE"""... $ac_c" 1>&6
+-echo "configure:1912: checking "for RTLD_NEXT from dlfcn.h with _GNU_SOURCE"" >&5
+-  cat > conftest.$ac_ext <<EOF
+-#line 1914 "configure"
+-#include "confdefs.h"
++
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++  echo "$as_me:$LINENO: checking for RTLD_NEXT from dlfcn.h with _GNU_SOURCE" >&5
++echo $ECHO_N "checking for RTLD_NEXT from dlfcn.h with _GNU_SOURCE... $ECHO_C" >&6
++  cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
+ 
+    #define _GNU_SOURCE
+    #include <dlfcn.h>
+    #ifdef RTLD_NEXT
+ 	yes
+    #endif
+-  
+-EOF
++
++_ACEOF
+ if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+-  egrep "yes" >/dev/null 2>&1; then
+-  rm -rf conftest*
+-  
+-    echo "$ac_t""yes" 1>&6
+-    cat >> confdefs.h <<\EOF
++  $EGREP "yes" >/dev/null 2>&1; then
++
++    echo "$as_me:$LINENO: result: yes" >&5
++echo "${ECHO_T}yes" >&6
++    cat >>confdefs.h <<\_ACEOF
+ #define USE_GNU_SOURCE 1
+-EOF
++_ACEOF
++
+ 
+-  
+ else
+-  rm -rf conftest*
+-  
+-    echo "$ac_t""no" 1>&6
+-    cat >> confdefs.h <<\EOF
++
++    echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
++    cat >>confdefs.h <<\_ACEOF
+ #define USE_OLD_DLSYM 1
+-EOF
++_ACEOF
+ 
+     oldmethod="yes"
+-  
++
+ fi
+ rm -f conftest*
+-    
++
+ 
+ fi
+ rm -f conftest*
+ 
+ 
+ if test "${enable_socksdns}" = "yes"; then
+-  cat >> confdefs.h <<\EOF
++  cat >>confdefs.h <<\_ACEOF
+ #define USE_SOCKS_DNS 1
+-EOF
++_ACEOF
++
++fi
+ 
++echo "$as_me:$LINENO: checking whether to enable tordns" >&5
++echo $ECHO_N "checking whether to enable tordns... $ECHO_C" >&6
++if test "x${enable_tordns}" = "x"; then
++  cat >>confdefs.h <<\_ACEOF
++#define USE_TOR_DNS 1
++_ACEOF
++
++  DEADPOOL_O="\${DEADPOOL}.o"
++  echo "$as_me:$LINENO: result: yes" >&5
++echo "${ECHO_T}yes" >&6
++else
++  DEADPOOL_O=""
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
+ fi
+ 
++
+ if test "x${enable_envconf}" = "x"; then
+-  cat >> confdefs.h <<\EOF
++  cat >>confdefs.h <<\_ACEOF
+ #define ALLOW_ENV_CONFIG 1
+-EOF
++_ACEOF
+ 
+ fi
+ 
+ if test "${enable_oldmethod}" = "yes"; then
+-  cat >> confdefs.h <<\EOF
++  cat >>confdefs.h <<\_ACEOF
+ #define USE_OLD_DLSYM 1
+-EOF
++_ACEOF
+ 
+   oldmethod="yes"
+ fi
+ 
+ if test "x${enable_debug}" = "x"; then
+-  cat >> confdefs.h <<\EOF
++  cat >>confdefs.h <<\_ACEOF
+ #define ALLOW_MSG_OUTPUT 1
+-EOF
++_ACEOF
+ 
+ fi
+ 
+-if test "x${enable_hostnames}" = "x"; then
+-  cat >> confdefs.h <<\EOF
++if test "x${enable_hostnames}" = "xyes"; then
++  cat >>confdefs.h <<\_ACEOF
+ #define HOSTNAMES 1
+-EOF
++_ACEOF
+ 
+ fi
+ 
+ if test "${enable_socksdns}" = "yes" -a \
+-        "x${enable_hostnames}" = "x" ; then
+-  { echo "configure: error: "--enable-socksdns is not valid without --disable-hostnames"" 1>&2; exit 1; }
++        "x${enable_hostnames}" = "xyes" ; then
++  { { echo "$as_me:$LINENO: error: \"--enable-socksdns is not valid with --enable-hostnames\"" >&5
++echo "$as_me: error: \"--enable-socksdns is not valid with --enable-hostnames\"" >&2;}
++   { (exit 1); exit 1; }; }
++fi
++
++if test "x${enable_tordns}" = "x" -a \
++        "x${enable_hostnames}" = "xyes" ; then
++  { { echo "$as_me:$LINENO: error: \"--enable-tordns is not valid with --enable-hostnames\"" >&5
++echo "$as_me: error: \"--enable-tordns is not valid with --enable-hostnames\"" >&2;}
++   { (exit 1); exit 1; }; }
+ fi
+ 
+-if test "${oldmethod}" = "yes"; then 
+-      
++if test "${oldmethod}" = "yes"; then
++
+       # Extract the first word of "find", so it can be a program name with args.
+ set dummy find; ac_word=$2
+-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:1998: checking for $ac_word" >&5
+-if eval "test \"`echo '$''{'ac_cv_prog_FIND'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_FIND+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+   if test -n "$FIND"; then
+   ac_cv_prog_FIND="$FIND" # Let the user override the test.
+ else
+-  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
+-  ac_dummy="$PATH"
+-  for ac_dir in $ac_dummy; do
+-    test -z "$ac_dir" && ac_dir=.
+-    if test -f $ac_dir/$ac_word; then
+-      ac_cv_prog_FIND="find"
+-      break
+-    fi
+-  done
+-  IFS="$ac_save_ifs"
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_FIND="find"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
+ fi
+ fi
+-FIND="$ac_cv_prog_FIND"
++FIND=$ac_cv_prog_FIND
+ if test -n "$FIND"; then
+-  echo "$ac_t""$FIND" 1>&6
++  echo "$as_me:$LINENO: result: $FIND" >&5
++echo "${ECHO_T}$FIND" >&6
+ else
+-  echo "$ac_t""no" 1>&6
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
+ fi
+ 
+   if test "${FIND}" = ""; then
+-    { echo "configure: error: 'find not found in path'" 1>&2; exit 1; }
++    { { echo "$as_me:$LINENO: error: 'find not found in path'" >&5
++echo "$as_me: error: 'find not found in path'" >&2;}
++   { (exit 1); exit 1; }; }
+   fi
+ 
+       # Extract the first word of "tail", so it can be a program name with args.
+ set dummy tail; ac_word=$2
+-echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
+-echo "configure:2031: checking for $ac_word" >&5
+-if eval "test \"`echo '$''{'ac_cv_prog_TAIL'+set}'`\" = set"; then
+-  echo $ac_n "(cached) $ac_c" 1>&6
++echo "$as_me:$LINENO: checking for $ac_word" >&5
++echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
++if test "${ac_cv_prog_TAIL+set}" = set; then
++  echo $ECHO_N "(cached) $ECHO_C" >&6
+ else
+   if test -n "$TAIL"; then
+   ac_cv_prog_TAIL="$TAIL" # Let the user override the test.
+ else
+-  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
+-  ac_dummy="$PATH"
+-  for ac_dir in $ac_dummy; do
+-    test -z "$ac_dir" && ac_dir=.
+-    if test -f $ac_dir/$ac_word; then
+-      ac_cv_prog_TAIL="tail"
+-      break
+-    fi
+-  done
+-  IFS="$ac_save_ifs"
++as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for ac_exec_ext in '' $ac_executable_extensions; do
++  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
++    ac_cv_prog_TAIL="tail"
++    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
++    break 2
++  fi
++done
++done
++
+ fi
+ fi
+-TAIL="$ac_cv_prog_TAIL"
++TAIL=$ac_cv_prog_TAIL
+ if test -n "$TAIL"; then
+-  echo "$ac_t""$TAIL" 1>&6
++  echo "$as_me:$LINENO: result: $TAIL" >&5
++echo "${ECHO_T}$TAIL" >&6
+ else
+-  echo "$ac_t""no" 1>&6
++  echo "$as_me:$LINENO: result: no" >&5
++echo "${ECHO_T}no" >&6
+ fi
+ 
+   if test "${TAIL}" = ""; then
+-    { echo "configure: error: 'tail not found in path'" 1>&2; exit 1; }
++    { { echo "$as_me:$LINENO: error: 'tail not found in path'" >&5
++echo "$as_me: error: 'tail not found in path'" >&2;}
++   { (exit 1); exit 1; }; }
+   fi
+ 
+-    echo $ac_n "checking "location of lib${CONNECTLIB}.so"""... $ac_c" 1>&6
+-echo "configure:2062: checking "location of lib${CONNECTLIB}.so"" >&5
++    echo "$as_me:$LINENO: checking location of lib${CONNECTLIB}.so" >&5
++echo $ECHO_N "checking location of lib${CONNECTLIB}.so... $ECHO_C" >&6
+   LIBCONNECT=
+   for DIR in '/lib' '/usr/lib'; do
+     if test "${LIBCONNECT}" = ""; then
+       LIBCONNECT=`$FIND $DIR -name "lib${CONNECTLIB}.so.?" 2>/dev/null | $TAIL -1`
+     fi
+   done
+ 
+-  cat >> confdefs.h <<EOF
++  cat >>confdefs.h <<_ACEOF
+ #define LIBCONNECT "${LIBCONNECT}"
+-EOF
++_ACEOF
+ 
+   if test "${LIBCONNECT}" = ""; then
+-     { echo "configure: error: "not found!"" 1>&2; exit 1; }
++     { { echo "$as_me:$LINENO: error: \"not found!\"" >&5
++echo "$as_me: error: \"not found!\"" >&2;}
++   { (exit 1); exit 1; }; }
+   fi
+ 
+-  echo "$ac_t""$LIBCONNECT" 1>&6
++  echo "$as_me:$LINENO: result: $LIBCONNECT" >&5
++echo "${ECHO_T}$LIBCONNECT" >&6
+ 
+-    echo $ac_n "checking "location of libc.so"""... $ac_c" 1>&6
+-echo "configure:2081: checking "location of libc.so"" >&5
++    echo "$as_me:$LINENO: checking location of libc.so" >&5
++echo $ECHO_N "checking location of libc.so... $ECHO_C" >&6
+   LIBC=
+   for DIR in '/lib' '/usr/lib'; do
+     if test "${LIBC}" = ""; then
+       LIBC=`$FIND $DIR -name "libc.so.?" 2>/dev/null | $TAIL -1`
+     fi
+   done
+ 
+-  cat >> confdefs.h <<EOF
++  cat >>confdefs.h <<_ACEOF
+ #define LIBC "${LIBC}"
+-EOF
++_ACEOF
+ 
+   if test "${LIBC}" = ""; then
+-     { echo "configure: error: "not found!"" 1>&2; exit 1; }
++     { { echo "$as_me:$LINENO: error: \"not found!\"" >&5
++echo "$as_me: error: \"not found!\"" >&2;}
++   { (exit 1); exit 1; }; }
+   fi
+ 
+-  echo "$ac_t""$LIBC" 1>&6
++  echo "$as_me:$LINENO: result: $LIBC" >&5
++echo "${ECHO_T}$LIBC" >&6
+ fi
+ 
+-echo $ac_n "checking for correct select prototype""... $ac_c" 1>&6
+-echo "configure:2101: checking for correct select prototype" >&5
++echo "$as_me:$LINENO: checking for correct select prototype" >&5
++echo $ECHO_N "checking for correct select prototype... $ECHO_C" >&6
+ PROTO=
+-for testproto in 'int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout' 
++for testproto in 'int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout'
+ do
+   if test "${PROTO}" = ""; then
+-    cat > conftest.$ac_ext <<EOF
+-#line 2107 "configure"
+-#include "confdefs.h"
++    cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
+ 
+       #include <sys/time.h>
+       #include <sys/types.h>
+       #include <unistd.h>
+       int select($testproto);
+-    
+-int main() {
+ 
+-; return 0; }
+-EOF
+-if { (eval echo configure:2119: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+-  rm -rf conftest*
++int
++main ()
++{
++
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
+   PROTO="$testproto";
+ else
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
+ fi
+-rm -f conftest*
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+   fi
+ done
+ if test "${PROTO}" = ""; then
+-  { echo "configure: error: "no match found!"" 1>&2; exit 1; }
+-fi
+-echo "$ac_t""select(${PROTO})" 1>&6
+-cat >> confdefs.h <<EOF
++  { { echo "$as_me:$LINENO: error: \"no match found!\"" >&5
++echo "$as_me: error: \"no match found!\"" >&2;}
++   { (exit 1); exit 1; }; }
++fi
++echo "$as_me:$LINENO: result: select(${PROTO})" >&5
++echo "${ECHO_T}select(${PROTO})" >&6
++cat >>confdefs.h <<_ACEOF
+ #define SELECT_SIGNATURE ${PROTO}
+-EOF
++_ACEOF
+ 
+ 
+-echo $ac_n "checking for correct connect prototype""... $ac_c" 1>&6
+-echo "configure:2139: checking for correct connect prototype" >&5
++echo "$as_me:$LINENO: checking for correct connect prototype" >&5
++echo $ECHO_N "checking for correct connect prototype... $ECHO_C" >&6
+ PROTO=
+ PROTO1='int __fd, const struct sockaddr * __addr, int len'
+ PROTO2='int __fd, const struct sockaddr_in * __addr, socklen_t __len'
+ PROTO3='int __fd, struct sockaddr * __addr, int __len'
+ PROTO4='int __fd, const struct sockaddr * __addr, socklen_t __len'
+ for testproto in "${PROTO1}" \
+                  "${PROTO2}" \
+                  "${PROTO3}" \
+-                 "${PROTO4}" 
++                 "${PROTO4}"
+ do
+   if test "${PROTO}" = ""; then
+-    cat > conftest.$ac_ext <<EOF
+-#line 2152 "configure"
+-#include "confdefs.h"
++    cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
+ 
+       #include <sys/socket.h>
+       int connect($testproto);
+-    
+-int main() {
+ 
+-; return 0; }
+-EOF
+-if { (eval echo configure:2162: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+-  rm -rf conftest*
++int
++main ()
++{
++
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
+   PROTO="$testproto";
+ else
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
+ fi
+-rm -f conftest*
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+   fi
+ done
+ if test "${PROTO}" = ""; then
+-  { echo "configure: error: "no match found!"" 1>&2; exit 1; }
+-fi
+-echo "$ac_t""connect(${PROTO})" 1>&6
+-cat >> confdefs.h <<EOF
++  { { echo "$as_me:$LINENO: error: \"no match found!\"" >&5
++echo "$as_me: error: \"no match found!\"" >&2;}
++   { (exit 1); exit 1; }; }
++fi
++echo "$as_me:$LINENO: result: connect(${PROTO})" >&5
++echo "${ECHO_T}connect(${PROTO})" >&6
++cat >>confdefs.h <<_ACEOF
+ #define CONNECT_SIGNATURE ${PROTO}
+-EOF
++_ACEOF
+ 
+ 
+ SOCKETARG="struct sockaddr *"
+ case "${PROTO}" in
+    *sockaddr_in*)
+       SOCKETARG="struct sockaddr_in *"
+       ;;
+ esac
+-cat >> confdefs.h <<EOF
++cat >>confdefs.h <<_ACEOF
+ #define CONNECT_SOCKARG ${SOCKETARG}
+-EOF
++_ACEOF
+ 
+ 
+-echo $ac_n "checking for correct close prototype""... $ac_c" 1>&6
+-echo "configure:2193: checking for correct close prototype" >&5
++echo "$as_me:$LINENO: checking for correct close prototype" >&5
++echo $ECHO_N "checking for correct close prototype... $ECHO_C" >&6
+ PROTO=
+ PROTO1='int fd'
+-for testproto in "${PROTO1}" 
++for testproto in "${PROTO1}"
+ do
+   if test "${PROTO}" = ""; then
+-    cat > conftest.$ac_ext <<EOF
+-#line 2200 "configure"
+-#include "confdefs.h"
++    cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
+ 
+       #include <stdlib.h>
+       int close($testproto);
+-    
+-int main() {
+ 
+-; return 0; }
+-EOF
+-if { (eval echo configure:2210: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+-  rm -rf conftest*
++int
++main ()
++{
++
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
+   PROTO="$testproto";
+ else
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
+ fi
+-rm -f conftest*
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+   fi
+ done
+ if test "${PROTO}" = ""; then
+-  { echo "configure: error: "no match found!"" 1>&2; exit 1; }
+-fi
+-echo "$ac_t""close(${PROTO})" 1>&6
+-cat >> confdefs.h <<EOF
++  { { echo "$as_me:$LINENO: error: \"no match found!\"" >&5
++echo "$as_me: error: \"no match found!\"" >&2;}
++   { (exit 1); exit 1; }; }
++fi
++echo "$as_me:$LINENO: result: close(${PROTO})" >&5
++echo "${ECHO_T}close(${PROTO})" >&6
++cat >>confdefs.h <<_ACEOF
+ #define CLOSE_SIGNATURE ${PROTO}
+-EOF
++_ACEOF
+ 
+ 
+-echo $ac_n "checking for correct poll prototype""... $ac_c" 1>&6
+-echo "configure:2230: checking for correct poll prototype" >&5
++echo "$as_me:$LINENO: checking for correct poll prototype" >&5
++echo $ECHO_N "checking for correct poll prototype... $ECHO_C" >&6
+ PROTO=
+-for testproto in 'struct pollfd *ufds, unsigned long nfds, int timeout' 
++for testproto in 'struct pollfd *ufds, unsigned long nfds, int timeout'
+ do
+   if test "${PROTO}" = ""; then
+-    cat > conftest.$ac_ext <<EOF
+-#line 2236 "configure"
+-#include "confdefs.h"
++    cat >conftest.$ac_ext <<_ACEOF
++/* confdefs.h.  */
++_ACEOF
++cat confdefs.h >>conftest.$ac_ext
++cat >>conftest.$ac_ext <<_ACEOF
++/* end confdefs.h.  */
+ 
+       #include <sys/poll.h>
+       int poll($testproto);
+-    
+-int main() {
+ 
+-; return 0; }
+-EOF
+-if { (eval echo configure:2246: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
+-  rm -rf conftest*
++int
++main ()
++{
++
++  ;
++  return 0;
++}
++_ACEOF
++rm -f conftest.$ac_objext
++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
++  (eval $ac_compile) 2>conftest.er1
++  ac_status=$?
++  grep -v '^ *+' conftest.er1 >conftest.err
++  rm -f conftest.er1
++  cat conftest.err >&5
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); } &&
++	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; } &&
++	 { ac_try='test -s conftest.$ac_objext'
++  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
++  (eval $ac_try) 2>&5
++  ac_status=$?
++  echo "$as_me:$LINENO: \$? = $ac_status" >&5
++  (exit $ac_status); }; }; then
+   PROTO="$testproto";
+ else
+-  echo "configure: failed program was:" >&5
+-  cat conftest.$ac_ext >&5
++  echo "$as_me: failed program was:" >&5
++sed 's/^/| /' conftest.$ac_ext >&5
++
+ fi
+-rm -f conftest*
++rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+   fi
+ done
+ if test "${PROTO}" = ""; then
+-  { echo "configure: error: "no match found!"" 1>&2; exit 1; }
+-fi
+-echo "$ac_t""poll(${PROTO})" 1>&6
+-cat >> confdefs.h <<EOF
++  { { echo "$as_me:$LINENO: error: \"no match found!\"" >&5
++echo "$as_me: error: \"no match found!\"" >&2;}
++   { (exit 1); exit 1; }; }
++fi
++echo "$as_me:$LINENO: result: poll(${PROTO})" >&5
++echo "${ECHO_T}poll(${PROTO})" >&6
++cat >>confdefs.h <<_ACEOF
+ #define POLL_SIGNATURE ${PROTO}
+-EOF
++_ACEOF
++
++
++PROTO="const char *name"
++cat >>confdefs.h <<_ACEOF
++#define GETHOSTBYNAME_SIGNATURE ${PROTO}
++_ACEOF
++
++
++PROTO="const char *node, const char *service, void *hints, void *res"
++cat >>confdefs.h <<_ACEOF
++#define GETADDRINFO_SIGNATURE ${PROTO}
++_ACEOF
++
++
++PROTO="const char *name, int af, int flags, int *error_num"
++cat >>confdefs.h <<_ACEOF
++#define GETIPNODEBYNAME_SIGNATURE ${PROTO}
++_ACEOF
+ 
+ 
+ SPECIALLIBS=${LIBS}
+ 
+ LIBS=${SIMPLELIBS}
+ 
+-trap '' 1 2 15
+-cat > confcache <<\EOF
++          ac_config_files="$ac_config_files Makefile"
++cat >confcache <<\_ACEOF
+ # This file is a shell script that caches the results of configure
+ # tests run on this system so they can be shared between configure
+-# scripts and configure runs.  It is not useful on other systems.
+-# If it contains results you don't want to keep, you may remove or edit it.
++# scripts and configure runs, see configure's option --config-cache.
++# It is not useful on other systems.  If it contains results you don't
++# want to keep, you may remove or edit it.
+ #
+-# By default, configure uses ./config.cache as the cache file,
+-# creating it if it does not exist already.  You can give configure
+-# the --cache-file=FILE option to use a different cache file; that is
+-# what configure does when it calls configure scripts in
+-# subdirectories, so they share the cache.
+-# Giving --cache-file=/dev/null disables caching, for debugging configure.
+-# config.status only pays attention to the cache file if you give it the
+-# --recheck option to rerun configure.
++# config.status only pays attention to the cache file if you give it
++# the --recheck option to rerun configure.
+ #
+-EOF
++# `ac_cv_env_foo' variables (set or unset) will be overridden when
++# loading this file, other *unset* `ac_cv_foo' will be assigned the
++# following values.
++
++_ACEOF
++
+ # The following way of writing the cache mishandles newlines in values,
+ # but we know of no workaround that is simple, portable, and efficient.
+ # So, don't put newlines in cache variables' values.
+ # Ultrix sh set writes to stderr and can't be redirected directly,
+ # and sets the high bit in the cache file unless we assign to the vars.
+-(set) 2>&1 |
+-  case `(ac_space=' '; set | grep ac_space) 2>&1` in
+-  *ac_space=\ *)
+-    # `set' does not quote correctly, so add quotes (double-quote substitution
+-    # turns \\\\ into \\, and sed turns \\ into \).
+-    sed -n \
+-      -e "s/'/'\\\\''/g" \
+-      -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
+-    ;;
+-  *)
+-    # `set' quotes correctly as required by POSIX, so do not add quotes.
+-    sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
+-    ;;
+-  esac >> confcache
+-if cmp -s $cache_file confcache; then
+-  :
+-else
++{
++  (set) 2>&1 |
++    case `(ac_space=' '; set | grep ac_space) 2>&1` in
++    *ac_space=\ *)
++      # `set' does not quote correctly, so add quotes (double-quote
++      # substitution turns \\\\ into \\, and sed turns \\ into \).
++      sed -n \
++	"s/'/'\\\\''/g;
++	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
++      ;;
++    *)
++      # `set' quotes correctly as required by POSIX, so do not add quotes.
++      sed -n \
++	"s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
++      ;;
++    esac;
++} |
++  sed '
++     t clear
++     : clear
++     s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
++     t end
++     /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
++     : end' >>confcache
++if diff $cache_file confcache >/dev/null 2>&1; then :; else
+   if test -w $cache_file; then
+-    echo "updating cache $cache_file"
+-    cat confcache > $cache_file
++    test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file"
++    cat confcache >$cache_file
+   else
+     echo "not updating unwritable cache $cache_file"
+   fi
+ fi
+ rm -f confcache
+ 
+-trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
+-
+ test "x$prefix" = xNONE && prefix=$ac_default_prefix
+ # Let make expand exec_prefix.
+ test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
+ 
+-# Any assignment to VPATH causes Sun make to only execute
+-# the first set of double-colon rules, so remove it if not needed.
+-# If there is a colon in the path, we need to keep it.
++# VPATH may cause trouble with some makes, so we remove $(srcdir),
++# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
++# trailing colons and then remove the whole line if VPATH becomes empty
++# (actually we leave an empty line to preserve line numbers).
+ if test "x$srcdir" = x.; then
+-  ac_vpsub='/^[ 	]*VPATH[ 	]*=[^:]*$/d'
++  ac_vpsub='/^[	 ]*VPATH[	 ]*=/{
++s/:*\$(srcdir):*/:/;
++s/:*\${srcdir}:*/:/;
++s/:*@srcdir@:*/:/;
++s/^\([^=]*=[	 ]*\):*/\1/;
++s/:*$//;
++s/^[^=]*=[	 ]*$//;
++}'
+ fi
+ 
+-trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15
+-
+ DEFS=-DHAVE_CONFIG_H
+ 
+-# Without the "./", some shells look in PATH for config.status.
+-: ${CONFIG_STATUS=./config.status}
++ac_libobjs=
++ac_ltlibobjs=
++for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
++  # 1. Remove the extension, and $U if already installed.
++  ac_i=`echo "$ac_i" |
++	 sed 's/\$U\././;s/\.o$//;s/\.obj$//'`
++  # 2. Add them.
++  ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext"
++  ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo'
++done
++LIBOBJS=$ac_libobjs
+ 
+-echo creating $CONFIG_STATUS
+-rm -f $CONFIG_STATUS
+-cat > $CONFIG_STATUS <<EOF
+-#! /bin/sh
+-# Generated automatically by configure.
++LTLIBOBJS=$ac_ltlibobjs
++
++
++
++: ${CONFIG_STATUS=./config.status}
++ac_clean_files_save=$ac_clean_files
++ac_clean_files="$ac_clean_files $CONFIG_STATUS"
++{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
++echo "$as_me: creating $CONFIG_STATUS" >&6;}
++cat >$CONFIG_STATUS <<_ACEOF
++#! $SHELL
++# Generated by $as_me.
+ # Run this file to recreate the current configuration.
+-# This directory was configured as follows,
+-# on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
+-#
+-# $0 $ac_configure_args
+-#
+ # Compiler output produced by configure, useful for debugging
+-# configure, is in ./config.log if it exists.
++# configure, is in config.log if it exists.
+ 
+-ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]"
+-for ac_option
++debug=false
++ac_cs_recheck=false
++ac_cs_silent=false
++SHELL=\${CONFIG_SHELL-$SHELL}
++_ACEOF
++
++cat >>$CONFIG_STATUS <<\_ACEOF
++## --------------------- ##
++## M4sh Initialization.  ##
++## --------------------- ##
++
++# Be Bourne compatible
++if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
++  emulate sh
++  NULLCMD=:
++  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
++  # is contrary to our usage.  Disable this feature.
++  alias -g '${1+"$@"}'='"$@"'
++elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
++  set -o posix
++fi
++DUALCASE=1; export DUALCASE # for MKS sh
++
++# Support unset when possible.
++if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
++  as_unset=unset
++else
++  as_unset=false
++fi
++
++
++# Work around bugs in pre-3.0 UWIN ksh.
++$as_unset ENV MAIL MAILPATH
++PS1='$ '
++PS2='> '
++PS4='+ '
++
++# NLS nuisances.
++for as_var in \
++  LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
++  LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
++  LC_TELEPHONE LC_TIME
++do
++  if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
++    eval $as_var=C; export $as_var
++  else
++    $as_unset $as_var
++  fi
++done
++
++# Required to use basename.
++if expr a : '\(a\)' >/dev/null 2>&1; then
++  as_expr=expr
++else
++  as_expr=false
++fi
++
++if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
++  as_basename=basename
++else
++  as_basename=false
++fi
++
++
++# Name of the executable.
++as_me=`$as_basename "$0" ||
++$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
++	 X"$0" : 'X\(//\)$' \| \
++	 X"$0" : 'X\(/\)$' \| \
++	 .     : '\(.\)' 2>/dev/null ||
++echo X/"$0" |
++    sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
++  	  /^X\/\(\/\/\)$/{ s//\1/; q; }
++  	  /^X\/\(\/\).*/{ s//\1/; q; }
++  	  s/.*/./; q'`
++
++
++# PATH needs CR, and LINENO needs CR and PATH.
++# Avoid depending upon Character Ranges.
++as_cr_letters='abcdefghijklmnopqrstuvwxyz'
++as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
++as_cr_Letters=$as_cr_letters$as_cr_LETTERS
++as_cr_digits='0123456789'
++as_cr_alnum=$as_cr_Letters$as_cr_digits
++
++# The user is always right.
++if test "${PATH_SEPARATOR+set}" != set; then
++  echo "#! /bin/sh" >conf$$.sh
++  echo  "exit 0"   >>conf$$.sh
++  chmod +x conf$$.sh
++  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
++    PATH_SEPARATOR=';'
++  else
++    PATH_SEPARATOR=:
++  fi
++  rm -f conf$$.sh
++fi
++
++
++  as_lineno_1=$LINENO
++  as_lineno_2=$LINENO
++  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
++  test "x$as_lineno_1" != "x$as_lineno_2" &&
++  test "x$as_lineno_3"  = "x$as_lineno_2"  || {
++  # Find who we are.  Look in the path if we contain no path at all
++  # relative or not.
++  case $0 in
++    *[\\/]* ) as_myself=$0 ;;
++    *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in $PATH
++do
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
++done
++
++       ;;
++  esac
++  # We did not find ourselves, most probably we were run as `sh COMMAND'
++  # in which case we are not to be found in the path.
++  if test "x$as_myself" = x; then
++    as_myself=$0
++  fi
++  if test ! -f "$as_myself"; then
++    { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5
++echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;}
++   { (exit 1); exit 1; }; }
++  fi
++  case $CONFIG_SHELL in
++  '')
++    as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
++for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
+ do
+-  case "\$ac_option" in
++  IFS=$as_save_IFS
++  test -z "$as_dir" && as_dir=.
++  for as_base in sh bash ksh sh5; do
++	 case $as_dir in
++	 /*)
++	   if ("$as_dir/$as_base" -c '
++  as_lineno_1=$LINENO
++  as_lineno_2=$LINENO
++  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
++  test "x$as_lineno_1" != "x$as_lineno_2" &&
++  test "x$as_lineno_3"  = "x$as_lineno_2" ') 2>/dev/null; then
++	     $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; }
++	     $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
++	     CONFIG_SHELL=$as_dir/$as_base
++	     export CONFIG_SHELL
++	     exec "$CONFIG_SHELL" "$0" ${1+"$@"}
++	   fi;;
++	 esac
++       done
++done
++;;
++  esac
++
++  # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
++  # uniformly replaced by the line number.  The first 'sed' inserts a
++  # line-number line before each line; the second 'sed' does the real
++  # work.  The second script uses 'N' to pair each line-number line
++  # with the numbered line, and appends trailing '-' during
++  # substitution so that $LINENO is not a special case at line end.
++  # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
++  # second 'sed' script.  Blame Lee E. McMahon for sed's syntax.  :-)
++  sed '=' <$as_myself |
++    sed '
++      N
++      s,$,-,
++      : loop
++      s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
++      t loop
++      s,-$,,
++      s,^['$as_cr_digits']*\n,,
++    ' >$as_me.lineno &&
++  chmod +x $as_me.lineno ||
++    { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5
++echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;}
++   { (exit 1); exit 1; }; }
++
++  # Don't try to exec as it changes $[0], causing all sort of problems
++  # (the dirname of $[0] is not the place where we might find the
++  # original and so on.  Autoconf is especially sensible to this).
++  . ./$as_me.lineno
++  # Exit status is that of the last command.
++  exit
++}
++
++
++case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
++  *c*,-n*) ECHO_N= ECHO_C='
++' ECHO_T='	' ;;
++  *c*,*  ) ECHO_N=-n ECHO_C= ECHO_T= ;;
++  *)       ECHO_N= ECHO_C='\c' ECHO_T= ;;
++esac
++
++if expr a : '\(a\)' >/dev/null 2>&1; then
++  as_expr=expr
++else
++  as_expr=false
++fi
++
++rm -f conf$$ conf$$.exe conf$$.file
++echo >conf$$.file
++if ln -s conf$$.file conf$$ 2>/dev/null; then
++  # We could just check for DJGPP; but this test a) works b) is more generic
++  # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
++  if test -f conf$$.exe; then
++    # Don't use ln at all; we don't have any links
++    as_ln_s='cp -p'
++  else
++    as_ln_s='ln -s'
++  fi
++elif ln conf$$.file conf$$ 2>/dev/null; then
++  as_ln_s=ln
++else
++  as_ln_s='cp -p'
++fi
++rm -f conf$$ conf$$.exe conf$$.file
++
++if mkdir -p . 2>/dev/null; then
++  as_mkdir_p=:
++else
++  test -d ./-p && rmdir ./-p
++  as_mkdir_p=false
++fi
++
++as_executable_p="test -f"
++
++# Sed expression to map a string onto a valid CPP name.
++as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
++
++# Sed expression to map a string onto a valid variable name.
++as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
++
++
++# IFS
++# We need space, tab and new line, in precisely that order.
++as_nl='
++'
++IFS=" 	$as_nl"
++
++# CDPATH.
++$as_unset CDPATH
++
++exec 6>&1
++
++# Open the log real soon, to keep \$[0] and so on meaningful, and to
++# report actual input values of CONFIG_FILES etc. instead of their
++# values after options handling.  Logging --version etc. is OK.
++exec 5>>config.log
++{
++  echo
++  sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
++## Running $as_me. ##
++_ASBOX
++} >&5
++cat >&5 <<_CSEOF
++
++This file was extended by $as_me, which was
++generated by GNU Autoconf 2.59.  Invocation command line was
++
++  CONFIG_FILES    = $CONFIG_FILES
++  CONFIG_HEADERS  = $CONFIG_HEADERS
++  CONFIG_LINKS    = $CONFIG_LINKS
++  CONFIG_COMMANDS = $CONFIG_COMMANDS
++  $ $0 $@
++
++_CSEOF
++echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5
++echo >&5
++_ACEOF
++
++# Files that config.status was made for.
++if test -n "$ac_config_files"; then
++  echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS
++fi
++
++if test -n "$ac_config_headers"; then
++  echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS
++fi
++
++if test -n "$ac_config_links"; then
++  echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS
++fi
++
++if test -n "$ac_config_commands"; then
++  echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS
++fi
++
++cat >>$CONFIG_STATUS <<\_ACEOF
++
++ac_cs_usage="\
++\`$as_me' instantiates files from templates according to the
++current configuration.
++
++Usage: $0 [OPTIONS] [FILE]...
++
++  -h, --help       print this help, then exit
++  -V, --version    print version number, then exit
++  -q, --quiet      do not print progress messages
++  -d, --debug      don't remove temporary files
++      --recheck    update $as_me by reconfiguring in the same conditions
++  --file=FILE[:TEMPLATE]
++		   instantiate the configuration file FILE
++  --header=FILE[:TEMPLATE]
++		   instantiate the configuration header FILE
++
++Configuration files:
++$config_files
++
++Configuration headers:
++$config_headers
++
++Report bugs to <bug-autoconf at gnu.org>."
++_ACEOF
++
++cat >>$CONFIG_STATUS <<_ACEOF
++ac_cs_version="\\
++config.status
++configured by $0, generated by GNU Autoconf 2.59,
++  with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
++
++Copyright (C) 2003 Free Software Foundation, Inc.
++This config.status script is free software; the Free Software Foundation
++gives unlimited permission to copy, distribute and modify it."
++srcdir=$srcdir
++INSTALL="$INSTALL"
++_ACEOF
++
++cat >>$CONFIG_STATUS <<\_ACEOF
++# If no file are specified by the user, then we need to provide default
++# value.  By we need to know if files were specified by the user.
++ac_need_defaults=:
++while test $# != 0
++do
++  case $1 in
++  --*=*)
++    ac_option=`expr "x$1" : 'x\([^=]*\)='`
++    ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'`
++    ac_shift=:
++    ;;
++  -*)
++    ac_option=$1
++    ac_optarg=$2
++    ac_shift=shift
++    ;;
++  *) # This is not an option, so the user has probably given explicit
++     # arguments.
++     ac_option=$1
++     ac_need_defaults=false;;
++  esac
++
++  case $ac_option in
++  # Handling of the options.
++_ACEOF
++cat >>$CONFIG_STATUS <<\_ACEOF
+   -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
+-    echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion"
+-    exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
+-  -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
+-    echo "$CONFIG_STATUS generated by autoconf version 2.13"
+-    exit 0 ;;
+-  -help | --help | --hel | --he | --h)
+-    echo "\$ac_cs_usage"; exit 0 ;;
+-  *) echo "\$ac_cs_usage"; exit 1 ;;
++    ac_cs_recheck=: ;;
++  --version | --vers* | -V )
++    echo "$ac_cs_version"; exit 0 ;;
++  --he | --h)
++    # Conflict between --help and --header
++    { { echo "$as_me:$LINENO: error: ambiguous option: $1
++Try \`$0 --help' for more information." >&5
++echo "$as_me: error: ambiguous option: $1
++Try \`$0 --help' for more information." >&2;}
++   { (exit 1); exit 1; }; };;
++  --help | --hel | -h )
++    echo "$ac_cs_usage"; exit 0 ;;
++  --debug | --d* | -d )
++    debug=: ;;
++  --file | --fil | --fi | --f )
++    $ac_shift
++    CONFIG_FILES="$CONFIG_FILES $ac_optarg"
++    ac_need_defaults=false;;
++  --header | --heade | --head | --hea )
++    $ac_shift
++    CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg"
++    ac_need_defaults=false;;
++  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
++  | -silent | --silent | --silen | --sile | --sil | --si | --s)
++    ac_cs_silent=: ;;
++
++  # This is an error.
++  -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1
++Try \`$0 --help' for more information." >&5
++echo "$as_me: error: unrecognized option: $1
++Try \`$0 --help' for more information." >&2;}
++   { (exit 1); exit 1; }; } ;;
++
++  *) ac_config_targets="$ac_config_targets $1" ;;
++
+   esac
++  shift
+ done
+ 
+-ac_given_srcdir=$srcdir
+-ac_given_INSTALL="$INSTALL"
++ac_configure_extra_args=
++
++if $ac_cs_silent; then
++  exec 6>/dev/null
++  ac_configure_extra_args="$ac_configure_extra_args --silent"
++fi
++
++_ACEOF
++cat >>$CONFIG_STATUS <<_ACEOF
++if \$ac_cs_recheck; then
++  echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6
++  exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
++fi
++
++_ACEOF
++
++
++
+ 
+-trap 'rm -fr `echo "Makefile config.h" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
+-EOF
+-cat >> $CONFIG_STATUS <<EOF
+-
+-# Protect against being on the right side of a sed subst in config.status.
+-sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g;
+- s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF
+-$ac_vpsub
+-$extrasub
+-s%@SHELL@%$SHELL%g
+-s%@CFLAGS@%$CFLAGS%g
+-s%@CPPFLAGS@%$CPPFLAGS%g
+-s%@CXXFLAGS@%$CXXFLAGS%g
+-s%@FFLAGS@%$FFLAGS%g
+-s%@DEFS@%$DEFS%g
+-s%@LDFLAGS@%$LDFLAGS%g
+-s%@LIBS@%$LIBS%g
+-s%@exec_prefix@%$exec_prefix%g
+-s%@prefix@%$prefix%g
+-s%@program_transform_name@%$program_transform_name%g
+-s%@bindir@%$bindir%g
+-s%@sbindir@%$sbindir%g
+-s%@libexecdir@%$libexecdir%g
+-s%@datadir@%$datadir%g
+-s%@sysconfdir@%$sysconfdir%g
+-s%@sharedstatedir@%$sharedstatedir%g
+-s%@localstatedir@%$localstatedir%g
+-s%@libdir@%$libdir%g
+-s%@includedir@%$includedir%g
+-s%@oldincludedir@%$oldincludedir%g
+-s%@infodir@%$infodir%g
+-s%@mandir@%$mandir%g
+-s%@host@%$host%g
+-s%@host_alias@%$host_alias%g
+-s%@host_cpu@%$host_cpu%g
+-s%@host_vendor@%$host_vendor%g
+-s%@host_os@%$host_os%g
+-s%@CC@%$CC%g
+-s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g
+-s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g
+-s%@INSTALL_DATA@%$INSTALL_DATA%g
+-s%@LN_S@%$LN_S%g
+-s%@CPP@%$CPP%g
+-s%@FIND@%$FIND%g
+-s%@TAIL@%$TAIL%g
+-s%@SPECIALLIBS@%$SPECIALLIBS%g
+ 
++cat >>$CONFIG_STATUS <<\_ACEOF
++for ac_config_target in $ac_config_targets
++do
++  case "$ac_config_target" in
++  # Handling of arguments.
++  "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
++  "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
++  *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
++echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
++   { (exit 1); exit 1; }; };;
++  esac
++done
++
++# If the user did not use the arguments to specify the items to instantiate,
++# then the envvar interface is used.  Set only those that are not.
++# We use the long form for the default assignment because of an extremely
++# bizarre bug on SunOS 4.1.3.
++if $ac_need_defaults; then
++  test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
++  test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
++fi
++
++# Have a temporary directory for convenience.  Make it in the build tree
++# simply because there is no reason to put it here, and in addition,
++# creating and moving files from /tmp can sometimes cause problems.
++# Create a temporary directory, and hook for its removal unless debugging.
++$debug ||
++{
++  trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
++  trap '{ (exit 1); exit 1; }' 1 2 13 15
++}
++
++# Create a (secure) tmp directory for tmp files.
++
++{
++  tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` &&
++  test -n "$tmp" && test -d "$tmp"
++}  ||
++{
++  tmp=./confstat$$-$RANDOM
++  (umask 077 && mkdir $tmp)
++} ||
++{
++   echo "$me: cannot create a temporary directory in ." >&2
++   { (exit 1); exit 1; }
++}
++
++_ACEOF
++
++cat >>$CONFIG_STATUS <<_ACEOF
++
++#
++# CONFIG_FILES section.
++#
++
++# No need to generate the scripts if there are no CONFIG_FILES.
++# This happens for instance when ./config.status config.h
++if test -n "\$CONFIG_FILES"; then
++  # Protect against being on the right side of a sed subst in config.status.
++  sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g;
++   s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF
++s, at SHELL@,$SHELL,;t t
++s, at PATH_SEPARATOR@,$PATH_SEPARATOR,;t t
++s, at PACKAGE_NAME@,$PACKAGE_NAME,;t t
++s, at PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t
++s, at PACKAGE_VERSION@,$PACKAGE_VERSION,;t t
++s, at PACKAGE_STRING@,$PACKAGE_STRING,;t t
++s, at PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t
++s, at exec_prefix@,$exec_prefix,;t t
++s, at prefix@,$prefix,;t t
++s, at program_transform_name@,$program_transform_name,;t t
++s, at bindir@,$bindir,;t t
++s, at sbindir@,$sbindir,;t t
++s, at libexecdir@,$libexecdir,;t t
++s, at datadir@,$datadir,;t t
++s, at sysconfdir@,$sysconfdir,;t t
++s, at sharedstatedir@,$sharedstatedir,;t t
++s, at localstatedir@,$localstatedir,;t t
++s, at libdir@,$libdir,;t t
++s, at includedir@,$includedir,;t t
++s, at oldincludedir@,$oldincludedir,;t t
++s, at infodir@,$infodir,;t t
++s, at mandir@,$mandir,;t t
++s, at build_alias@,$build_alias,;t t
++s, at host_alias@,$host_alias,;t t
++s, at target_alias@,$target_alias,;t t
++s, at DEFS@,$DEFS,;t t
++s, at ECHO_C@,$ECHO_C,;t t
++s, at ECHO_N@,$ECHO_N,;t t
++s, at ECHO_T@,$ECHO_T,;t t
++s, at LIBS@,$LIBS,;t t
++s, at build@,$build,;t t
++s, at build_cpu@,$build_cpu,;t t
++s, at build_vendor@,$build_vendor,;t t
++s, at build_os@,$build_os,;t t
++s, at host@,$host,;t t
++s, at host_cpu@,$host_cpu,;t t
++s, at host_vendor@,$host_vendor,;t t
++s, at host_os@,$host_os,;t t
++s, at CC@,$CC,;t t
++s, at CFLAGS@,$CFLAGS,;t t
++s, at LDFLAGS@,$LDFLAGS,;t t
++s, at CPPFLAGS@,$CPPFLAGS,;t t
++s, at ac_ct_CC@,$ac_ct_CC,;t t
++s, at EXEEXT@,$EXEEXT,;t t
++s, at OBJEXT@,$OBJEXT,;t t
++s, at INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t
++s, at INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t
++s, at INSTALL_DATA@,$INSTALL_DATA,;t t
++s, at LN_S@,$LN_S,;t t
++s, at CPP@,$CPP,;t t
++s, at EGREP@,$EGREP,;t t
++s, at DEADPOOL_O@,$DEADPOOL_O,;t t
++s, at FIND@,$FIND,;t t
++s, at TAIL@,$TAIL,;t t
++s, at SPECIALLIBS@,$SPECIALLIBS,;t t
++s, at LIBOBJS@,$LIBOBJS,;t t
++s, at LTLIBOBJS@,$LTLIBOBJS,;t t
+ CEOF
+-EOF
+ 
+-cat >> $CONFIG_STATUS <<\EOF
++_ACEOF
+ 
+-# Split the substitutions into bite-sized pieces for seds with
+-# small command number limits, like on Digital OSF/1 and HP-UX.
+-ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script.
+-ac_file=1 # Number of current file.
+-ac_beg=1 # First line for current file.
+-ac_end=$ac_max_sed_cmds # Line after last line for current file.
+-ac_more_lines=:
+-ac_sed_cmds=""
+-while $ac_more_lines; do
+-  if test $ac_beg -gt 1; then
+-    sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file
+-  else
+-    sed "${ac_end}q" conftest.subs > conftest.s$ac_file
+-  fi
+-  if test ! -s conftest.s$ac_file; then
+-    ac_more_lines=false
+-    rm -f conftest.s$ac_file
+-  else
+-    if test -z "$ac_sed_cmds"; then
+-      ac_sed_cmds="sed -f conftest.s$ac_file"
++  cat >>$CONFIG_STATUS <<\_ACEOF
++  # Split the substitutions into bite-sized pieces for seds with
++  # small command number limits, like on Digital OSF/1 and HP-UX.
++  ac_max_sed_lines=48
++  ac_sed_frag=1 # Number of current file.
++  ac_beg=1 # First line for current file.
++  ac_end=$ac_max_sed_lines # Line after last line for current file.
++  ac_more_lines=:
++  ac_sed_cmds=
++  while $ac_more_lines; do
++    if test $ac_beg -gt 1; then
++      sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
++    else
++      sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
++    fi
++    if test ! -s $tmp/subs.frag; then
++      ac_more_lines=false
+     else
+-      ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file"
++      # The purpose of the label and of the branching condition is to
++      # speed up the sed processing (if there are no `@' at all, there
++      # is no need to browse any of the substitutions).
++      # These are the two extra sed commands mentioned above.
++      (echo ':t
++  /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed
++      if test -z "$ac_sed_cmds"; then
++	ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed"
++      else
++	ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed"
++      fi
++      ac_sed_frag=`expr $ac_sed_frag + 1`
++      ac_beg=$ac_end
++      ac_end=`expr $ac_end + $ac_max_sed_lines`
+     fi
+-    ac_file=`expr $ac_file + 1`
+-    ac_beg=$ac_end
+-    ac_end=`expr $ac_end + $ac_max_sed_cmds`
++  done
++  if test -z "$ac_sed_cmds"; then
++    ac_sed_cmds=cat
+   fi
+-done
+-if test -z "$ac_sed_cmds"; then
+-  ac_sed_cmds=cat
+-fi
+-EOF
+-
+-cat >> $CONFIG_STATUS <<EOF
++fi # test -n "$CONFIG_FILES"
+ 
+-CONFIG_FILES=\${CONFIG_FILES-"Makefile"}
+-EOF
+-cat >> $CONFIG_STATUS <<\EOF
+-for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
++_ACEOF
++cat >>$CONFIG_STATUS <<\_ACEOF
++for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue
+   # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
+-  case "$ac_file" in
+-  *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
+-       ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
+-  *) ac_file_in="${ac_file}.in" ;;
++  case $ac_file in
++  - | *:- | *:-:* ) # input from stdin
++	cat >$tmp/stdin
++	ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
++	ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
++  *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
++	ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
++  * )   ac_file_in=$ac_file.in ;;
+   esac
+ 
+-  # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories.
+-
+-  # Remove last slash and all that follows it.  Not all systems have dirname.
+-  ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
+-  if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
+-    # The file is in a subdirectory.
+-    test ! -d "$ac_dir" && mkdir "$ac_dir"
+-    ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`"
+-    # A "../" for each directory in $ac_dir_suffix.
+-    ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'`
+-  else
+-    ac_dir_suffix= ac_dots=
+-  fi
+-
+-  case "$ac_given_srcdir" in
+-  .)  srcdir=.
+-      if test -z "$ac_dots"; then top_srcdir=.
+-      else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;;
+-  /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;;
++  # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories.
++  ac_dir=`(dirname "$ac_file") 2>/dev/null ||
++$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
++	 X"$ac_file" : 'X\(//\)[^/]' \| \
++	 X"$ac_file" : 'X\(//\)$' \| \
++	 X"$ac_file" : 'X\(/\)' \| \
++	 .     : '\(.\)' 2>/dev/null ||
++echo X"$ac_file" |
++    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
++  	  /^X\(\/\/\)[^/].*/{ s//\1/; q; }
++  	  /^X\(\/\/\)$/{ s//\1/; q; }
++  	  /^X\(\/\).*/{ s//\1/; q; }
++  	  s/.*/./; q'`
++  { if $as_mkdir_p; then
++    mkdir -p "$ac_dir"
++  else
++    as_dir="$ac_dir"
++    as_dirs=
++    while test ! -d "$as_dir"; do
++      as_dirs="$as_dir $as_dirs"
++      as_dir=`(dirname "$as_dir") 2>/dev/null ||
++$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
++	 X"$as_dir" : 'X\(//\)[^/]' \| \
++	 X"$as_dir" : 'X\(//\)$' \| \
++	 X"$as_dir" : 'X\(/\)' \| \
++	 .     : '\(.\)' 2>/dev/null ||
++echo X"$as_dir" |
++    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
++  	  /^X\(\/\/\)[^/].*/{ s//\1/; q; }
++  	  /^X\(\/\/\)$/{ s//\1/; q; }
++  	  /^X\(\/\).*/{ s//\1/; q; }
++  	  s/.*/./; q'`
++    done
++    test ! -n "$as_dirs" || mkdir $as_dirs
++  fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5
++echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
++   { (exit 1); exit 1; }; }; }
++
++  ac_builddir=.
++
++if test "$ac_dir" != .; then
++  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
++  # A "../" for each directory in $ac_dir_suffix.
++  ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
++else
++  ac_dir_suffix= ac_top_builddir=
++fi
++
++case $srcdir in
++  .)  # No --srcdir option.  We are building in place.
++    ac_srcdir=.
++    if test -z "$ac_top_builddir"; then
++       ac_top_srcdir=.
++    else
++       ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
++    fi ;;
++  [\\/]* | ?:[\\/]* )  # Absolute path.
++    ac_srcdir=$srcdir$ac_dir_suffix;
++    ac_top_srcdir=$srcdir ;;
+   *) # Relative path.
+-    srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix"
+-    top_srcdir="$ac_dots$ac_given_srcdir" ;;
+-  esac
++    ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
++    ac_top_srcdir=$ac_top_builddir$srcdir ;;
++esac
++
++# Do not use `cd foo && pwd` to compute absolute paths, because
++# the directories may not exist.
++case `pwd` in
++.) ac_abs_builddir="$ac_dir";;
++*)
++  case "$ac_dir" in
++  .) ac_abs_builddir=`pwd`;;
++  [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
++  *) ac_abs_builddir=`pwd`/"$ac_dir";;
++  esac;;
++esac
++case $ac_abs_builddir in
++.) ac_abs_top_builddir=${ac_top_builddir}.;;
++*)
++  case ${ac_top_builddir}. in
++  .) ac_abs_top_builddir=$ac_abs_builddir;;
++  [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
++  *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
++  esac;;
++esac
++case $ac_abs_builddir in
++.) ac_abs_srcdir=$ac_srcdir;;
++*)
++  case $ac_srcdir in
++  .) ac_abs_srcdir=$ac_abs_builddir;;
++  [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
++  *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
++  esac;;
++esac
++case $ac_abs_builddir in
++.) ac_abs_top_srcdir=$ac_top_srcdir;;
++*)
++  case $ac_top_srcdir in
++  .) ac_abs_top_srcdir=$ac_abs_builddir;;
++  [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
++  *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
++  esac;;
++esac
+ 
+-  case "$ac_given_INSTALL" in
+-  [/$]*) INSTALL="$ac_given_INSTALL" ;;
+-  *) INSTALL="$ac_dots$ac_given_INSTALL" ;;
+-  esac
+ 
+-  echo creating "$ac_file"
+-  rm -f "$ac_file"
+-  configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure."
+-  case "$ac_file" in
+-  *Makefile*) ac_comsub="1i\\
+-# $configure_input" ;;
+-  *) ac_comsub= ;;
++  case $INSTALL in
++  [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
++  *) ac_INSTALL=$ac_top_builddir$INSTALL ;;
+   esac
+ 
+-  ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
+-  sed -e "$ac_comsub
+-s%@configure_input@%$configure_input%g
+-s%@srcdir@%$srcdir%g
+-s%@top_srcdir@%$top_srcdir%g
+-s%@INSTALL@%$INSTALL%g
+-" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file
+-fi; done
+-rm -f conftest.s*
++  # Let's still pretend it is `configure' which instantiates (i.e., don't
++  # use $as_me), people would be surprised to read:
++  #    /* config.h.  Generated by config.status.  */
++  if test x"$ac_file" = x-; then
++    configure_input=
++  else
++    configure_input="$ac_file.  "
++  fi
++  configure_input=$configure_input"Generated from `echo $ac_file_in |
++				     sed 's,.*/,,'` by configure."
++
++  # First look for the input files in the build tree, otherwise in the
++  # src tree.
++  ac_file_inputs=`IFS=:
++    for f in $ac_file_in; do
++      case $f in
++      -) echo $tmp/stdin ;;
++      [\\/$]*)
++	 # Absolute (can't be DOS-style, as IFS=:)
++	 test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
++echo "$as_me: error: cannot find input file: $f" >&2;}
++   { (exit 1); exit 1; }; }
++	 echo "$f";;
++      *) # Relative
++	 if test -f "$f"; then
++	   # Build tree
++	   echo "$f"
++	 elif test -f "$srcdir/$f"; then
++	   # Source tree
++	   echo "$srcdir/$f"
++	 else
++	   # /dev/null tree
++	   { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
++echo "$as_me: error: cannot find input file: $f" >&2;}
++   { (exit 1); exit 1; }; }
++	 fi;;
++      esac
++    done` || { (exit 1); exit 1; }
++
++  if test x"$ac_file" != x-; then
++    { echo "$as_me:$LINENO: creating $ac_file" >&5
++echo "$as_me: creating $ac_file" >&6;}
++    rm -f "$ac_file"
++  fi
++_ACEOF
++cat >>$CONFIG_STATUS <<_ACEOF
++  sed "$ac_vpsub
++$extrasub
++_ACEOF
++cat >>$CONFIG_STATUS <<\_ACEOF
++:t
++/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
++s, at configure_input@,$configure_input,;t t
++s, at srcdir@,$ac_srcdir,;t t
++s, at abs_srcdir@,$ac_abs_srcdir,;t t
++s, at top_srcdir@,$ac_top_srcdir,;t t
++s, at abs_top_srcdir@,$ac_abs_top_srcdir,;t t
++s, at builddir@,$ac_builddir,;t t
++s, at abs_builddir@,$ac_abs_builddir,;t t
++s, at top_builddir@,$ac_top_builddir,;t t
++s, at abs_top_builddir@,$ac_abs_top_builddir,;t t
++s, at INSTALL@,$ac_INSTALL,;t t
++" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out
++  rm -f $tmp/stdin
++  if test x"$ac_file" != x-; then
++    mv $tmp/out $ac_file
++  else
++    cat $tmp/out
++    rm -f $tmp/out
++  fi
++
++done
++_ACEOF
++cat >>$CONFIG_STATUS <<\_ACEOF
++
++#
++# CONFIG_HEADER section.
++#
+ 
+ # These sed commands are passed to sed as "A NAME B NAME C VALUE D", where
+ # NAME is the cpp macro being defined and VALUE is the value it is being given.
+ #
+ # ac_d sets the value in "#define NAME VALUE" lines.
+-ac_dA='s%^\([ 	]*\)#\([ 	]*define[ 	][ 	]*\)'
+-ac_dB='\([ 	][ 	]*\)[^ 	]*%\1#\2'
+-ac_dC='\3'
+-ac_dD='%g'
+-# ac_u turns "#undef NAME" with trailing blanks into "#define NAME VALUE".
+-ac_uA='s%^\([ 	]*\)#\([ 	]*\)undef\([ 	][ 	]*\)'
+-ac_uB='\([ 	]\)%\1#\2define\3'
++ac_dA='s,^\([	 ]*\)#\([	 ]*define[	 ][	 ]*\)'
++ac_dB='[	 ].*$,\1#\2'
++ac_dC=' '
++ac_dD=',;t'
++# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE".
++ac_uA='s,^\([	 ]*\)#\([	 ]*\)undef\([	 ][	 ]*\)'
++ac_uB='$,\1#\2define\3'
+ ac_uC=' '
+-ac_uD='\4%g'
+-# ac_e turns "#undef NAME" without trailing blanks into "#define NAME VALUE".
+-ac_eA='s%^\([ 	]*\)#\([ 	]*\)undef\([ 	][ 	]*\)'
+-ac_eB='$%\1#\2define\3'
+-ac_eC=' '
+-ac_eD='%g'
+-
+-if test "${CONFIG_HEADERS+set}" != set; then
+-EOF
+-cat >> $CONFIG_STATUS <<EOF
+-  CONFIG_HEADERS="config.h"
+-EOF
+-cat >> $CONFIG_STATUS <<\EOF
+-fi
+-for ac_file in .. $CONFIG_HEADERS; do if test "x$ac_file" != x..; then
++ac_uD=',;t'
++
++for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue
+   # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
+-  case "$ac_file" in
+-  *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
+-       ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
+-  *) ac_file_in="${ac_file}.in" ;;
++  case $ac_file in
++  - | *:- | *:-:* ) # input from stdin
++	cat >$tmp/stdin
++	ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
++	ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
++  *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
++	ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
++  * )   ac_file_in=$ac_file.in ;;
+   esac
+ 
+-  echo creating $ac_file
++  test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5
++echo "$as_me: creating $ac_file" >&6;}
+ 
+-  rm -f conftest.frag conftest.in conftest.out
+-  ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
+-  cat $ac_file_inputs > conftest.in
+-
+-EOF
+-
+-# Transform confdefs.h into a sed script conftest.vals that substitutes
+-# the proper values into config.h.in to produce config.h.  And first:
+-# Protect against being on the right side of a sed subst in config.status.
+-# Protect against being in an unquoted here document in config.status.
+-rm -f conftest.vals
+-cat > conftest.hdr <<\EOF
+-s/[\\&%]/\\&/g
+-s%[\\$`]%\\&%g
+-s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD}%gp
+-s%ac_d%ac_u%gp
+-s%ac_u%ac_e%gp
+-EOF
+-sed -n -f conftest.hdr confdefs.h > conftest.vals
+-rm -f conftest.hdr
++  # First look for the input files in the build tree, otherwise in the
++  # src tree.
++  ac_file_inputs=`IFS=:
++    for f in $ac_file_in; do
++      case $f in
++      -) echo $tmp/stdin ;;
++      [\\/$]*)
++	 # Absolute (can't be DOS-style, as IFS=:)
++	 test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
++echo "$as_me: error: cannot find input file: $f" >&2;}
++   { (exit 1); exit 1; }; }
++	 # Do quote $f, to prevent DOS paths from being IFS'd.
++	 echo "$f";;
++      *) # Relative
++	 if test -f "$f"; then
++	   # Build tree
++	   echo "$f"
++	 elif test -f "$srcdir/$f"; then
++	   # Source tree
++	   echo "$srcdir/$f"
++	 else
++	   # /dev/null tree
++	   { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
++echo "$as_me: error: cannot find input file: $f" >&2;}
++   { (exit 1); exit 1; }; }
++	 fi;;
++      esac
++    done` || { (exit 1); exit 1; }
++  # Remove the trailing spaces.
++  sed 's/[	 ]*$//' $ac_file_inputs >$tmp/in
++
++_ACEOF
++
++# Transform confdefs.h into two sed scripts, `conftest.defines' and
++# `conftest.undefs', that substitutes the proper values into
++# config.h.in to produce config.h.  The first handles `#define'
++# templates, and the second `#undef' templates.
++# And first: Protect against being on the right side of a sed subst in
++# config.status.  Protect against being in an unquoted here document
++# in config.status.
++rm -f conftest.defines conftest.undefs
++# Using a here document instead of a string reduces the quoting nightmare.
++# Putting comments in sed scripts is not portable.
++#
++# `end' is used to avoid that the second main sed command (meant for
++# 0-ary CPP macros) applies to n-ary macro definitions.
++# See the Autoconf documentation for `clear'.
++cat >confdef2sed.sed <<\_ACEOF
++s/[\\&,]/\\&/g
++s,[\\$`],\\&,g
++t clear
++: clear
++s,^[	 ]*#[	 ]*define[	 ][	 ]*\([^	 (][^	 (]*\)\(([^)]*)\)[	 ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp
++t end
++s,^[	 ]*#[	 ]*define[	 ][	 ]*\([^	 ][^	 ]*\)[	 ]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp
++: end
++_ACEOF
++# If some macros were called several times there might be several times
++# the same #defines, which is useless.  Nevertheless, we may not want to
++# sort them, since we want the *last* AC-DEFINE to be honored.
++uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines
++sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs
++rm -f confdef2sed.sed
+ 
+ # This sed command replaces #undef with comments.  This is necessary, for
+ # example, in the case of _POSIX_SOURCE, which is predefined and required
+ # on some systems where configure will not decide to define it.
+-cat >> conftest.vals <<\EOF
+-s%^[ 	]*#[ 	]*undef[ 	][ 	]*[a-zA-Z_][a-zA-Z_0-9]*%/* & */%
+-EOF
+-
+-# Break up conftest.vals because some shells have a limit on
+-# the size of here documents, and old seds have small limits too.
+-
++cat >>conftest.undefs <<\_ACEOF
++s,^[	 ]*#[	 ]*undef[	 ][	 ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */,
++_ACEOF
++
++# Break up conftest.defines because some shells have a limit on the size
++# of here documents, and old seds have small limits too (100 cmds).
++echo '  # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS
++echo '  if grep "^[	 ]*#[	 ]*define" $tmp/in >/dev/null; then' >>$CONFIG_STATUS
++echo '  # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS
++echo '  :' >>$CONFIG_STATUS
+ rm -f conftest.tail
+-while :
++while grep . conftest.defines >/dev/null
+ do
+-  ac_lines=`grep -c . conftest.vals`
+-  # grep -c gives empty output for an empty file on some AIX systems.
+-  if test -z "$ac_lines" || test "$ac_lines" -eq 0; then break; fi
+-  # Write a limited-size here document to conftest.frag.
+-  echo '  cat > conftest.frag <<CEOF' >> $CONFIG_STATUS
+-  sed ${ac_max_here_lines}q conftest.vals >> $CONFIG_STATUS
++  # Write a limited-size here document to $tmp/defines.sed.
++  echo '  cat >$tmp/defines.sed <<CEOF' >>$CONFIG_STATUS
++  # Speed up: don't consider the non `#define' lines.
++  echo '/^[	 ]*#[	 ]*define/!b' >>$CONFIG_STATUS
++  # Work around the forget-to-reset-the-flag bug.
++  echo 't clr' >>$CONFIG_STATUS
++  echo ': clr' >>$CONFIG_STATUS
++  sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS
+   echo 'CEOF
+-  sed -f conftest.frag conftest.in > conftest.out
+-  rm -f conftest.in
+-  mv conftest.out conftest.in
+-' >> $CONFIG_STATUS
+-  sed 1,${ac_max_here_lines}d conftest.vals > conftest.tail
+-  rm -f conftest.vals
+-  mv conftest.tail conftest.vals
+-done
+-rm -f conftest.vals
+-
+-cat >> $CONFIG_STATUS <<\EOF
+-  rm -f conftest.frag conftest.h
+-  echo "/* $ac_file.  Generated automatically by configure.  */" > conftest.h
+-  cat conftest.in >> conftest.h
+-  rm -f conftest.in
+-  if cmp -s $ac_file conftest.h 2>/dev/null; then
+-    echo "$ac_file is unchanged"
+-    rm -f conftest.h
+-  else
+-    # Remove last slash and all that follows it.  Not all systems have dirname.
+-      ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
+-      if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
+-      # The file is in a subdirectory.
+-      test ! -d "$ac_dir" && mkdir "$ac_dir"
+-    fi
+-    rm -f $ac_file
+-    mv conftest.h $ac_file
++  sed -f $tmp/defines.sed $tmp/in >$tmp/out
++  rm -f $tmp/in
++  mv $tmp/out $tmp/in
++' >>$CONFIG_STATUS
++  sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail
++  rm -f conftest.defines
++  mv conftest.tail conftest.defines
++done
++rm -f conftest.defines
++echo '  fi # grep' >>$CONFIG_STATUS
++echo >>$CONFIG_STATUS
++
++# Break up conftest.undefs because some shells have a limit on the size
++# of here documents, and old seds have small limits too (100 cmds).
++echo '  # Handle all the #undef templates' >>$CONFIG_STATUS
++rm -f conftest.tail
++while grep . conftest.undefs >/dev/null
++do
++  # Write a limited-size here document to $tmp/undefs.sed.
++  echo '  cat >$tmp/undefs.sed <<CEOF' >>$CONFIG_STATUS
++  # Speed up: don't consider the non `#undef'
++  echo '/^[	 ]*#[	 ]*undef/!b' >>$CONFIG_STATUS
++  # Work around the forget-to-reset-the-flag bug.
++  echo 't clr' >>$CONFIG_STATUS
++  echo ': clr' >>$CONFIG_STATUS
++  sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS
++  echo 'CEOF
++  sed -f $tmp/undefs.sed $tmp/in >$tmp/out
++  rm -f $tmp/in
++  mv $tmp/out $tmp/in
++' >>$CONFIG_STATUS
++  sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail
++  rm -f conftest.undefs
++  mv conftest.tail conftest.undefs
++done
++rm -f conftest.undefs
++
++cat >>$CONFIG_STATUS <<\_ACEOF
++  # Let's still pretend it is `configure' which instantiates (i.e., don't
++  # use $as_me), people would be surprised to read:
++  #    /* config.h.  Generated by config.status.  */
++  if test x"$ac_file" = x-; then
++    echo "/* Generated by configure.  */" >$tmp/config.h
++  else
++    echo "/* $ac_file.  Generated by configure.  */" >$tmp/config.h
+   fi
+-fi; done
++  cat $tmp/in >>$tmp/config.h
++  rm -f $tmp/in
++  if test x"$ac_file" != x-; then
++    if diff $ac_file $tmp/config.h >/dev/null 2>&1; then
++      { echo "$as_me:$LINENO: $ac_file is unchanged" >&5
++echo "$as_me: $ac_file is unchanged" >&6;}
++    else
++      ac_dir=`(dirname "$ac_file") 2>/dev/null ||
++$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
++	 X"$ac_file" : 'X\(//\)[^/]' \| \
++	 X"$ac_file" : 'X\(//\)$' \| \
++	 X"$ac_file" : 'X\(/\)' \| \
++	 .     : '\(.\)' 2>/dev/null ||
++echo X"$ac_file" |
++    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
++  	  /^X\(\/\/\)[^/].*/{ s//\1/; q; }
++  	  /^X\(\/\/\)$/{ s//\1/; q; }
++  	  /^X\(\/\).*/{ s//\1/; q; }
++  	  s/.*/./; q'`
++      { if $as_mkdir_p; then
++    mkdir -p "$ac_dir"
++  else
++    as_dir="$ac_dir"
++    as_dirs=
++    while test ! -d "$as_dir"; do
++      as_dirs="$as_dir $as_dirs"
++      as_dir=`(dirname "$as_dir") 2>/dev/null ||
++$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
++	 X"$as_dir" : 'X\(//\)[^/]' \| \
++	 X"$as_dir" : 'X\(//\)$' \| \
++	 X"$as_dir" : 'X\(/\)' \| \
++	 .     : '\(.\)' 2>/dev/null ||
++echo X"$as_dir" |
++    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
++  	  /^X\(\/\/\)[^/].*/{ s//\1/; q; }
++  	  /^X\(\/\/\)$/{ s//\1/; q; }
++  	  /^X\(\/\).*/{ s//\1/; q; }
++  	  s/.*/./; q'`
++    done
++    test ! -n "$as_dirs" || mkdir $as_dirs
++  fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5
++echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
++   { (exit 1); exit 1; }; }; }
+ 
+-EOF
+-cat >> $CONFIG_STATUS <<EOF
++      rm -f $ac_file
++      mv $tmp/config.h $ac_file
++    fi
++  else
++    cat $tmp/config.h
++    rm -f $tmp/config.h
++  fi
++done
++_ACEOF
+ 
+-EOF
+-cat >> $CONFIG_STATUS <<\EOF
++cat >>$CONFIG_STATUS <<\_ACEOF
+ 
+-exit 0
+-EOF
++{ (exit 0); exit 0; }
++_ACEOF
+ chmod +x $CONFIG_STATUS
+-rm -fr confdefs* $ac_clean_files
+-test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1
++ac_clean_files=$ac_clean_files_save
++
++
++# configure is writing to config.log, and then calls config.status.
++# config.status does its own redirection, appending to config.log.
++# Unfortunately, on DOS this fails, as config.log is still kept open
++# by configure, so config.status won't be able to write to it; its
++# output is simply discarded.  So we exec the FD to /dev/null,
++# effectively closing config.log, so it can be properly (re)opened and
++# appended to by config.status.  When coming back to configure, we
++# need to make the FD available again.
++if test "$no_create" != yes; then
++  ac_cs_success=:
++  ac_config_status_args=
++  test "$silent" = yes &&
++    ac_config_status_args="$ac_config_status_args --quiet"
++  exec 5>/dev/null
++  $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
++  exec 5>>config.log
++  # Use ||, not &&, to avoid exiting from the if with $? = 1, which
++  # would make configure fail if this is the last instruction.
++  $ac_cs_success || { (exit 1); exit 1; }
++fi
+ 
+diff -rN -U 5 tsocks-1.8/configure.in tsocks/configure.in
+--- tsocks-1.8/configure.in	2002-07-16 10:51:03.000000000 +1200
++++ tsocks/configure.in	2005-10-02 21:52:00.000000000 +1300
+@@ -11,17 +11,19 @@
+ dnl /etc/ld.so.preload file
+ test "$libdir" = "\${exec_prefix}/lib" && libdir="/lib"
+ 
+ dnl Arguments we allow
+ AC_ARG_ENABLE(socksdns,
+-[  --enable-socksdns	      force dns lookups to use tcp ])
++[  --enable-socksdns       force dns lookups to use tcp ])
++AC_ARG_ENABLE(tordns,
++[  --disable-tordns         don't override name lookup calls to use SOCKS ])   
+ AC_ARG_ENABLE(debug,
+ [  --disable-debug         disable ALL error messages from tsocks ])
+ AC_ARG_ENABLE(oldmethod,
+-[  --enable-oldmethod	   use the old method to override connect ])
++[  --enable-oldmethod      use the old method to override connect ])
+ AC_ARG_ENABLE(hostnames,
+-[  --disable-hostnames	   disable hostname lookups for socks servers ])
++[  --enable-hostnames      enable hostname lookups for socks servers ])
+ AC_ARG_ENABLE(envconf,
+ [  --disable-envconf       do not allow TSOCKS_CONF_FILE to specify configuration file ])
+ AC_ARG_WITH(conf,
+ [  --with-conf=<file>      location of configuration file (/etc/tsocks.conf default)],[
+ if test "${withval}" = "yes" ; then
+@@ -43,11 +45,11 @@
+ AC_PROG_CC
+ AC_PROG_INSTALL
+ AC_PROG_LN_S
+ 
+ dnl Check if the C compiler accepts -Wall
+-AC_MSG_CHECKING("if the C compiler accepts -Wall")
++AC_MSG_CHECKING(if the C compiler accepts -Wall)
+ OLDCFLAGS="$CFLAGS"
+ CFLAGS="$CFLAGS -Wall"
+ AC_TRY_COMPILE(,,AC_MSG_RESULT(yes),[
+    CFLAGS="$OLDCFLAGS"
+    AC_MSG_RESULT(no)])
+@@ -68,16 +70,23 @@
+ AC_CHECK_HEADER(fcntl.h,,AC_MSG_ERROR("fcntl.h not found"))
+ 
+ dnl Check for the poll header
+ AC_CHECK_HEADER(sys/poll.h,,AC_MSG_ERROR("sys/poll.h not found"))
+ 
++dnl Check for the mmap header
++AC_CHECK_HEADER(sys/mman.h,,AC_MSG_ERROR("sys/mman.h not found"))
++
+ dnl Other headers we're interested in
+ AC_CHECK_HEADERS(unistd.h)
+ 
+ dnl Checks for library functions.
+-AC_CHECK_FUNCS(strcspn strdup strerror strspn strtol,,[ 
+-	       AC_MSG_ERROR("Required function not found")])
++AC_CHECK_FUNCS(strcspn strdup strerror strspn strtol mmap strcasecmp \
++   strncasecmp strtol,,[AC_MSG_ERROR("Required function not found")])
++
++dnl Find which version of gethostbyname_r we should be using (actually this
++dnl isn't used right now).
++AX_FUNC_WHICH_GETHOSTBYNAME_R
+ 
+ dnl First find the library that contains connect() (obviously
+ dnl the most important library for us). Once we've found it
+ dnl we chuck it on the end of LIBS, that lib may end up there
+ dnl more than once (since we do our search with an empty libs
+@@ -123,22 +132,22 @@
+ dnl Checks for libraries.
+ dnl Replace `main' with a function in -ldl:
+ AC_CHECK_LIB(dl, dlsym,,AC_MSG_ERROR("libdl is required"))
+ 
+ dnl If we're using gcc here define _GNU_SOURCE
+-AC_MSG_CHECKING("for RTLD_NEXT from dlfcn.h")
++AC_MSG_CHECKING(for RTLD_NEXT from dlfcn.h)
+ AC_EGREP_CPP(yes,
+ [
+  #include <dlfcn.h>
+  #ifdef RTLD_NEXT
+ 	yes
+  #endif
+ ], [
+   AC_MSG_RESULT(yes)
+ ], [
+   AC_MSG_RESULT(no)
+-  AC_MSG_CHECKING("for RTLD_NEXT from dlfcn.h with _GNU_SOURCE")
++  AC_MSG_CHECKING(for RTLD_NEXT from dlfcn.h with _GNU_SOURCE)
+   AC_EGREP_CPP(yes,
+   [
+    #define _GNU_SOURCE
+    #include <dlfcn.h>
+    #ifdef RTLD_NEXT
+@@ -156,10 +165,21 @@
+ 
+ if test "${enable_socksdns}" = "yes"; then
+   AC_DEFINE(USE_SOCKS_DNS)
+ fi
+ 
++AC_MSG_CHECKING(whether to enable tordns)
++if test "x${enable_tordns}" = "x"; then
++  AC_DEFINE(USE_TOR_DNS)
++  DEADPOOL_O="\${DEADPOOL}.o"
++  AC_MSG_RESULT(yes)
++else 
++  DEADPOOL_O=""
++  AC_MSG_RESULT(no)
++fi
++AC_SUBST(DEADPOOL_O)
++
+ if test "x${enable_envconf}" = "x"; then
+   AC_DEFINE(ALLOW_ENV_CONFIG)
+ fi
+ 
+ if test "${enable_oldmethod}" = "yes"; then
+@@ -169,17 +189,22 @@
+ 
+ if test "x${enable_debug}" = "x"; then
+   AC_DEFINE(ALLOW_MSG_OUTPUT)
+ fi
+ 
+-if test "x${enable_hostnames}" = "x"; then
++if test "x${enable_hostnames}" = "xyes"; then
+   AC_DEFINE(HOSTNAMES)
+ fi
+ 
+ if test "${enable_socksdns}" = "yes" -a \
+-        "x${enable_hostnames}" = "x" ; then
+-  AC_MSG_ERROR("--enable-socksdns is not valid without --disable-hostnames")
++        "x${enable_hostnames}" = "xyes" ; then
++  AC_MSG_ERROR("--enable-socksdns is not valid with --enable-hostnames")
++fi
++
++if test "x${enable_tordns}" = "x" -a \
++        "x${enable_hostnames}" = "xyes" ; then
++  AC_MSG_ERROR("--enable-tordns is not valid with --enable-hostnames")
+ fi
+ 
+ dnl If we have to use the old method of overriding connect (i.e no
+ dnl RTLD_NEXT) we need to know the location of the library that
+ dnl contains connect(), select(), poll() and close()
+@@ -201,11 +226,11 @@
+   if test "${TAIL}" = ""; then
+     AC_MSG_ERROR('tail not found in path')
+   fi
+ 
+   dnl Now find the library we need
+-  AC_MSG_CHECKING("location of lib${CONNECTLIB}.so")
++  AC_MSG_CHECKING(location of lib${CONNECTLIB}.so)
+   LIBCONNECT=
+   for DIR in '/lib' '/usr/lib'; do
+     if test "${LIBCONNECT}" = ""; then
+       LIBCONNECT=`$FIND $DIR -name "lib${CONNECTLIB}.so.?" 2>/dev/null | $TAIL -1`
+     fi
+@@ -217,11 +242,11 @@
+   fi
+ 
+   AC_MSG_RESULT($LIBCONNECT)
+ 
+   dnl close() should be in libc, find it
+-  AC_MSG_CHECKING("location of libc.so")
++  AC_MSG_CHECKING(location of libc.so)
+   LIBC=
+   for DIR in '/lib' '/usr/lib'; do
+     if test "${LIBC}" = ""; then
+       LIBC=`$FIND $DIR -name "libc.so.?" 2>/dev/null | $TAIL -1`
+     fi
+@@ -325,10 +350,22 @@
+   AC_MSG_ERROR("no match found!")
+ fi
+ AC_MSG_RESULT([poll(${PROTO})])
+ AC_DEFINE_UNQUOTED(POLL_SIGNATURE, [${PROTO}])
+ 
++dnl Emit signature for gethostbyname
++PROTO="const char *name"
++AC_DEFINE_UNQUOTED(GETHOSTBYNAME_SIGNATURE, [${PROTO}])
++
++dnl Emit signature for getaddrinfo
++PROTO="const char *node, const char *service, void *hints, void *res"
++AC_DEFINE_UNQUOTED(GETADDRINFO_SIGNATURE, [${PROTO}])
++
++dnl Emit signature for getipnodebyname
++PROTO="const char *name, int af, int flags, int *error_num"
++AC_DEFINE_UNQUOTED(GETIPNODEBYNAME_SIGNATURE, [${PROTO}])
++
+ dnl Output the special librarys (libdl etc needed for tsocks)
+ SPECIALLIBS=${LIBS}
+ AC_SUBST(SPECIALLIBS)
+ LIBS=${SIMPLELIBS}
+ 
+diff -rN -U 5 tsocks-1.8/dead_pool.c tsocks/dead_pool.c
+--- tsocks-1.8/dead_pool.c	1970-01-01 12:00:00.000000000 +1200
++++ tsocks/dead_pool.c	2005-10-01 21:26:53.000000000 +1200
+@@ -0,0 +1,541 @@
++#include <stdio.h>
++#include <sys/socket.h>
++#include <netinet/in.h>
++#include <arpa/inet.h>
++#include <netdb.h>
++#include <stdlib.h>
++#include <string.h>
++#include <sys/mman.h>
++#include "common.h"
++#include "dead_pool.h"
++
++int store_pool_entry(dead_pool *pool, char *hostname, struct in_addr *addr);
++void get_next_dead_address(dead_pool *pool, uint32_t *result);
++
++static int
++do_resolve(const char *hostname, uint32_t sockshost, uint16_t socksport,
++           uint32_t *result_addr);
++
++/* Compares the last strlen(s2) characters of s1 with s2.  Returns as for
++   strcasecmp. */
++static int 
++strcasecmpend(const char *s1, const char *s2)
++{
++   size_t n1 = strlen(s1), n2 = strlen(s2);
++   if (n2>n1) /* then they can't be the same; figure out which is bigger */
++       return strcasecmp(s1,s2);
++   else
++       return strncasecmp(s1+(n1-n2), s2, n2);
++}
++
++dead_pool *
++init_pool(int pool_size, struct in_addr deadrange_base, 
++    struct in_addr deadrange_mask, char *sockshost, uint16_t socksport)
++{
++    int i, deadrange_bits, deadrange_width, deadrange_size;
++    struct in_addr socks_server;
++    dead_pool *newpool = NULL;
++
++    /* Count bits in netmask and determine deadrange width. */
++    deadrange_bits = count_netmask_bits(deadrange_mask.s_addr);
++    if(deadrange_bits == -1) {
++        show_msg(MSGERR, "init_pool: invalid netmask for deadrange\n");
++        return NULL;
++    } 
++    deadrange_width = 32 - deadrange_bits;
++
++    show_msg(MSGDEBUG, "deadrange width is %d bits\n", deadrange_width);
++
++    /* Now work out how many IPs are available in the deadrange and check
++       that this number makes sense.  If the deadpool is bigger than the 
++       deadrange we shrink the pool. */
++
++    for(i=0, deadrange_size = 1; i < deadrange_width; i++) {
++        deadrange_size *= 2;
++    }
++
++    if(deadrange_size < pool_size) {
++        show_msg(MSGWARN, "tordns cache size was %d, but deadrange size is %d: "
++                 "shrinking pool size to %d entries\n", pool_size, 
++                 deadrange_size, deadrange_size);
++        pool_size = deadrange_size;
++    }
++    if(pool_size < 1) {
++        show_msg(MSGERR, "tordns cache size is 0, disabling tordns\n");
++        return NULL;
++    }
++
++    /* Allocate space for the dead_pool structure */
++    newpool = (dead_pool *) mmap(0, sizeof(dead_pool), 
++                   PROT_READ | PROT_WRITE, 
++                   MAP_SHARED | MAP_ANONYMOUS, -1, 0); 
++    if(!newpool) {
++        show_msg(MSGERR, "init_pool: unable to mmap deadpool "
++                 "(tried to map %d bytes)\n", sizeof(dead_pool));
++        return NULL;
++    }
++
++    /* Initialize the dead_pool structure */
++#ifdef HAVE_INET_ATON
++    inet_aton(sockshost, &socks_server);
++#elif defined(HAVE_INET_ADDR)
++    socks_server.s_addr = inet_addr(sockshost);
++#endif
++    newpool->sockshost = ntohl(socks_server.s_addr);
++    newpool->socksport = socksport;
++    newpool->deadrange_base = ntohl(deadrange_base.s_addr);
++    newpool->deadrange_mask = ntohl(deadrange_mask.s_addr);
++    newpool->deadrange_size = deadrange_size;
++    newpool->write_pos = 0;
++    newpool->dead_pos = 0;
++    newpool->n_entries = pool_size;
++
++    /* Allocate space for the entries */
++    newpool->entries = (pool_ent *) mmap(0, newpool->n_entries * sizeof(pool_ent), 
++                            PROT_READ | PROT_WRITE, 
++                            MAP_SHARED | MAP_ANONYMOUS, -1, 0); 
++    if(!newpool->entries) {
++        munmap((void *)newpool, sizeof(dead_pool));
++        show_msg(MSGERR, "init_pool: unable to mmap deadpool entries "
++                 "(tried to map %d bytes)\n", 
++                 newpool->n_entries * sizeof(pool_ent)); 
++        return NULL;
++    }
++
++    /* Initialize the entries */
++    for(i=0; i < newpool->n_entries; i++) {
++        newpool->entries[i].ip = -1;
++        newpool->entries[i].name[0] = '\0';
++    }
++
++    return newpool;
++}
++
++int 
++is_dead_address(dead_pool *pool, uint32_t addr) 
++{
++    uint32_t haddr = ntohl(addr);
++    if(pool == NULL) {
++        return 0;
++    }
++    return (pool->deadrange_base == (haddr & pool->deadrange_mask));
++}
++
++void
++get_next_dead_address(dead_pool *pool, uint32_t *result)
++{
++    *result = htonl(pool->deadrange_base + pool->dead_pos++);
++    if(pool->dead_pos >= pool->deadrange_size) {
++        pool->dead_pos = 0;
++    }
++}
++
++int 
++store_pool_entry(dead_pool *pool, char *hostname, struct in_addr *addr)
++{
++  int position = pool->write_pos;
++  int oldpos;
++  int rc;
++  uint32_t intaddr;
++
++  show_msg(MSGDEBUG, "store_pool_entry: storing '%s'\n", hostname);
++  show_msg(MSGDEBUG, "store_pool_entry: write pos is: %d\n", pool->write_pos);
++
++  /* Check to see if name already exists in pool */
++  oldpos = search_pool_for_name(pool, hostname);
++  if(oldpos != -1){
++      show_msg(MSGDEBUG, "store_pool_entry: not storing (entry exists)\n");
++      addr->s_addr = pool->entries[oldpos].ip;
++      return oldpos;
++  }
++
++  /* If this is a .onion host, then we return a bogus ip from our deadpool, 
++     otherwise we try to resolve it and store the 'real' IP */
++  if(strcasecmpend(hostname, ".onion") == 0) {
++      get_next_dead_address(pool, &pool->entries[position].ip);
++  } else {
++      rc = do_resolve(hostname, pool->sockshost, pool->socksport, &intaddr);
++      if(rc != 0) {
++          show_msg(MSGWARN, "failed to resolve: %s\n", hostname);
++          return -1;
++      } 
++      if(is_dead_address(pool, intaddr)) {
++          show_msg(MSGERR, "resolved %s -> %d (deadpool address) IGNORED\n");
++          return -1;
++      }
++      pool->entries[position].ip = intaddr;
++  }
++
++  strncpy(pool->entries[position].name, hostname, 255);
++  pool->entries[position].name[255] = '\0';
++  pool->write_pos++;
++  if(pool->write_pos >= pool->n_entries) {
++      pool->write_pos = 0;
++  }
++  addr->s_addr = pool->entries[position].ip;
++
++  show_msg(MSGDEBUG, "store_pool_entry: stored entry in slot '%d'\n", position);
++
++  return position;
++}
++
++int 
++search_pool_for_name(dead_pool *pool, const char *name) 
++{
++  int i;
++  for(i=0; i < pool->n_entries; i++){
++    if(strcmp(name, pool->entries[i].name) == 0){
++      return i;
++    }
++  }
++  return -1;
++}
++
++char *
++get_pool_entry(dead_pool *pool, struct in_addr *addr)
++{
++  int i;
++  uint32_t intaddr = addr->s_addr;
++
++  if(pool == NULL) {
++      return NULL;
++  }
++
++  show_msg(MSGDEBUG, "get_pool_entry: searching for: %s\n", inet_ntoa(*addr));
++  for(i=0; i<pool->n_entries; i++) {
++    if(intaddr == pool->entries[i].ip) {
++        show_msg(MSGDEBUG, "get_pool_entry: found: %s\n", pool->entries[i].name);
++        return pool->entries[i].name;
++    }
++  }
++  show_msg(MSGDEBUG, "get_pool_entry: address not found\n");
++
++  return NULL;
++}
++
++static int
++build_socks4a_resolve_request(char **out,
++                              const char *username,
++                              const char *hostname)
++{
++  size_t len;
++  uint16_t port = htons(0);  /* port: 0. */
++  uint32_t addr = htonl(0x00000001u); /* addr: 0.0.0.1 */
++
++  len = 8 + strlen(username) + 1 + strlen(hostname) + 1;
++  *out = malloc(len);
++  (*out)[0] = 4;      /* SOCKS version 4 */
++  (*out)[1] = '\xF0'; /* Command: resolve. */
++
++  memcpy((*out)+2, &port, sizeof(port));
++  memcpy((*out)+4, &addr, sizeof(addr));
++  strcpy((*out)+8, username);
++  strcpy((*out)+8+strlen(username)+1, hostname);
++
++  return len;
++}
++
++#define RESPONSE_LEN 8
++
++static int
++parse_socks4a_resolve_response(const char *response, size_t len,
++                               uint32_t *addr_out)
++{
++  uint8_t status;
++  uint16_t port;
++
++  if (len < RESPONSE_LEN) {
++    show_msg(MSGWARN,"Truncated socks response.\n"); 
++    return -1;
++  }
++  if (((uint8_t)response[0])!=0) { /* version: 0 */
++    show_msg(MSGWARN,"Nonzero version in socks response: bad format.\n");
++    return -1;
++  }
++  status = (uint8_t)response[1];
++
++  memcpy(&port, response+2, sizeof(port));
++  if (port!=0) { /* port: 0 */
++    show_msg(MSGWARN,"Nonzero port in socks response: bad format.\n"); 
++    return -1;
++  }
++  if (status != 90) {
++    show_msg(MSGWARN,"Bad status: socks request failed.\n"); 
++    return -1;
++  }
++
++  memcpy(addr_out, response+4, sizeof(*addr_out));
++
++  return 0;
++}
++
++static int
++do_resolve(const char *hostname, uint32_t sockshost, uint16_t socksport,
++           uint32_t *result_addr)
++{
++  int s;
++  struct sockaddr_in socksaddr;
++  char *req, *cp;
++  int r, len;
++  char response_buf[RESPONSE_LEN];
++
++  show_msg(MSGDEBUG, "do_resolve: resolving %s\n", hostname);
++
++  s = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);
++  if (s<0) {
++    show_msg(MSGWARN, "do_resolve: problem creating socket\n"); 
++    return -1;
++  }
++
++  memset(&socksaddr, 0, sizeof(socksaddr));
++  socksaddr.sin_family = AF_INET;
++  socksaddr.sin_port = htons(socksport);
++  socksaddr.sin_addr.s_addr = htonl(sockshost);
++  if (realconnect(s, (struct sockaddr*)&socksaddr, sizeof(socksaddr))) {
++    show_msg(MSGWARN, "do_resolve: error connecting to SOCKS server\n");
++    return -1;
++  }
++
++  if ((len = build_socks4a_resolve_request(&req, "", hostname))<0) {
++    show_msg(MSGWARN, "do_resolve: error generating SOCKS request\n"); 
++    return -1;
++  }
++
++  cp = req;
++  while (len) {
++    r = send(s, cp, len, 0);
++    if (r<0) {
++      show_msg(MSGWARN, "do_resolve: error sending SOCKS request\n"); 
++      free(req);
++      return -1;
++    }
++    len -= r;
++    cp += r;
++  }
++  free(req);
++
++  len = 0;
++  while (len < RESPONSE_LEN) {
++    r = recv(s, response_buf+len, RESPONSE_LEN-len, 0);
++    if (r==0) {
++      show_msg(MSGWARN, "do_resolve: EOF while reading SOCKS response\n"); 
++      return -1;
++    }
++    if (r<0) {
++      show_msg(MSGWARN, "do_resolve: error reading SOCKS response\n"); 
++      return -1;
++    }
++    len += r;
++  }
++
++  realclose(s);
++
++  if (parse_socks4a_resolve_response(response_buf, RESPONSE_LEN, result_addr) < 0){
++    show_msg(MSGWARN, "do_resolve: error parsing SOCKS response\n");
++    return -1;
++  }
++
++  show_msg(MSGDEBUG, "do_resolve: success\n");
++
++  return 0;
++}
++
++struct hostent *
++our_gethostbyname(dead_pool *pool, const char *name)
++{
++  int pos;
++  static struct in_addr addr;
++  static struct hostent he;
++  static char *addrs[2];
++
++  show_msg(MSGDEBUG, "our_gethostbyname: '%s' requested\n", name);
++
++  pos = store_pool_entry(pool,(char *) name, &addr);
++  if(pos == -1) {
++      h_errno = HOST_NOT_FOUND;
++      return NULL;
++  }
++
++  addrs[0] = (char *)&addr;
++  addrs[1] = NULL;
++
++  he.h_name      = pool->entries[pos].name;
++  he.h_aliases   = NULL;
++  he.h_length    = 4;
++  he.h_addrtype  = AF_INET;
++  he.h_addr_list = addrs;
++
++  show_msg(MSGDEBUG, "our_gethostbyname: resolved '%s' to: '%s'\n", 
++           name, inet_ntoa(*((struct in_addr *)he.h_addr)));
++
++  return &he;
++}
++
++static struct hostent *
++alloc_hostent(int af)
++{
++    struct hostent *he = NULL;
++    char **addr_list = NULL;
++    void *addr = NULL;
++    char **aliases = NULL;
++
++    if(af != AF_INET && af != AF_INET6) {
++        return NULL;
++    }
++
++    /* Since the memory we allocate here will be free'd by freehostent and
++       that function is opaque to us, it's likely that we'll leak a little 
++       bit of memory here. */
++
++    he = malloc(sizeof(struct hostent));
++    addr_list = malloc(2 * sizeof(char *));
++    if(af == AF_INET6) {
++        addr = malloc(sizeof(struct in6_addr));
++    } else {
++        addr = malloc(sizeof(struct in_addr));
++    }
++    aliases = malloc(sizeof(char *));
++
++    if(he == NULL || addr_list == NULL || addr == NULL || aliases == NULL) {
++        if(he)
++            free(he);
++        if(addr_list)
++            free(addr_list);
++        if(addr)
++            free(addr);
++        if(aliases)
++            free(aliases);
++    }
++
++    he->h_name = NULL;
++    he->h_addr_list = addr_list;
++    he->h_addr_list[0] = addr;
++    he->h_addr_list[1] = NULL;
++    he->h_aliases = aliases;
++    he->h_aliases[0] = NULL;
++    he->h_length = af == AF_INET ? 4 : 16;
++    he->h_addrtype = af;
++
++    return he;
++}
++
++/* On Linux, there's no freehostent() anymore; we might as well implement
++   this ourselves. */
++
++static void
++free_hostent(struct hostent *he)
++{
++    int i;
++    if(he->h_name) {
++        free(he->h_name);
++    }
++    if(he->h_aliases) {
++        for(i=0; he->h_aliases[i] != NULL; i++) {
++            free(he->h_aliases[i]);
++        }
++        free(he->h_aliases);
++    }
++    if(he->h_addr_list) {
++        free(he->h_addr_list);
++    }
++    free(he);
++}
++
++int
++our_getaddrinfo(dead_pool *pool, const char *node, const char *service, 
++                void *hints, void *res)
++{
++    int pos;
++    struct in_addr addr;
++    char *ipstr;
++    int ret;
++
++    /* If "node" looks like a dotted-decimal ip address, then just call 
++       the real getaddrinfo; otherwise we'll need to get an address from 
++       our pool. */
++
++    /* TODO: work out what to do with AF_INET6 requests */
++
++#ifdef HAVE_INET_ATON
++    if(inet_aton(node, &addr) == 0) {
++#elif defined(HAVE_INET_ADDR)
++    /* If we're stuck with inet_addr, then getaddrinfo() won't work 
++       properly with 255.255.255.255 (= -1).  There's not much we can
++       do about this */
++    in_addr_t is_valid;
++    is_valid = inet_addr(node);
++    if(is_valid == -1) {
++#endif
++        pos = store_pool_entry(pool, (char *) node, &addr);
++        if(pos == -1) {
++            return EAI_NONAME;
++        } else {
++            ipstr = strdup(inet_ntoa(addr));
++            ret = realgetaddrinfo(ipstr, service, hints, res);
++            free(ipstr);
++        }
++    } else {
++        ret = realgetaddrinfo(node, service, hints, res);
++    }
++
++    return ret;
++}
++
++struct hostent *
++our_getipnodebyname(dead_pool *pool, const char *name, int af, int flags, 
++                    int *error_num)
++{
++    int pos;
++    struct hostent *he = NULL;
++    int want_4in6 = 0;
++    char addr_convert_buf[80];
++    struct in_addr pool_addr;
++
++    if(af == AF_INET6) {
++        /* Caller has requested an AF_INET6 address, and is not prepared to
++           accept IPv4-mapped IPV6 addresses. There's nothing we can do to
++           service their request. */
++        if((flags & AI_V4MAPPED) == 0) {
++            show_msg(MSGWARN, "getipnodebyname: asked for V6 addresses only, "
++                     "but tsocks can't handle that\n");
++            *error_num = NO_RECOVERY;
++            return NULL;
++        } else {
++            want_4in6 = 1;
++        }
++    }
++
++    pos = store_pool_entry(pool, (char *)name, &pool_addr);
++    if(pos == -1) {
++        *error_num = HOST_NOT_FOUND;
++        return NULL;
++    }
++
++    he = alloc_hostent(af);
++    if(he == NULL) {
++        show_msg(MSGERR, "getipnodebyname: failed to allocate hostent\n");
++        *error_num = NO_RECOVERY;
++        return NULL;
++    }
++
++    if(want_4in6) {
++        /* Convert the ipv4 address in *addr to an IPv4 in IPv6 mapped 
++           address. TODO: inet_ntoa() is thread-safe on Solaris but might
++           not be on other platforms. */
++        strcpy(addr_convert_buf, "::FFFF:");
++        strcpy(addr_convert_buf+7, inet_ntoa(pool_addr));
++        if(inet_pton(AF_INET6, addr_convert_buf, he->h_addr_list[0]) != 1) {
++            show_msg(MSGERR, "getipnodebyname: inet_pton() failed!\n");
++            free_hostent(he);
++            *error_num = NO_RECOVERY;
++            return NULL;
++        }
++    } else {
++        ((struct in_addr *) he->h_addr_list[0])->s_addr = pool_addr.s_addr;
++    }
++    he->h_name = strdup(name);
++
++    return he;
++}
++
++
+diff -rN -U 5 tsocks-1.8/dead_pool.h tsocks/dead_pool.h
+--- tsocks-1.8/dead_pool.h	1970-01-01 12:00:00.000000000 +1200
++++ tsocks/dead_pool.h	2005-10-01 18:28:53.000000000 +1200
+@@ -0,0 +1,44 @@
++#ifndef _DEAD_POOL_H
++#define _DEAD_POOL_H
++
++#include <config.h>
++
++extern int (*realconnect)(CONNECT_SIGNATURE);
++extern int (*realclose)(CLOSE_SIGNATURE);
++extern int (*realgetaddrinfo)(GETADDRINFO_SIGNATURE);
++
++struct struct_pool_ent {
++  unsigned int ip;
++  char name[256];
++};
++
++typedef struct struct_pool_ent pool_ent;
++
++struct struct_dead_pool {
++  pool_ent *entries;            /* Points to array of pool entries */
++  int n_entries;                /* Number of entries in the deadpool */
++  unsigned int deadrange_base;  /* Deadrange start IP in host byte order */
++  unsigned int deadrange_mask;  /* Deadrange netmask in host byte order */
++  unsigned int deadrange_size;  /* Number of IPs in the deadrange */
++  unsigned int write_pos;       /* Next position to use in the pool array */
++  unsigned int dead_pos;        /* Next 'unused' deadpool IP */
++  uint32_t sockshost;     
++  uint16_t socksport;
++  char pad[2];
++};
++
++typedef struct struct_dead_pool dead_pool;
++
++dead_pool *init_pool(int deadpool_size, struct in_addr deadrange_base, 
++    struct in_addr deadrange_mask, char *sockshost, uint16_t socksport);
++int is_dead_address(dead_pool *pool, uint32_t addr);
++char *get_pool_entry(dead_pool *pool, struct in_addr *addr);
++int search_pool_for_name(dead_pool *pool, const char *name);
++struct hostent *our_gethostbyname(dead_pool *pool, const char *name);
++int our_getaddrinfo(dead_pool *pool, const char *node, const char *service, 
++    void *hints, void *res);
++struct hostent *our_getipnodebyname(dead_pool *pool, const char *name, 
++    int af, int flags, int *error_num);
++
++#endif /* _DEAD_POOL_H */
++
+diff -rN -U 5 tsocks-1.8/INSTALL tsocks/INSTALL
+--- tsocks-1.8/INSTALL	2002-05-18 14:12:30.000000000 +1200
++++ tsocks/INSTALL	2005-10-02 15:49:59.000000000 +1300
+@@ -2,14 +2,19 @@
+ -------------------------------
+ 
+ 1. Unpack the archive (though if you're reading this you've already
+ achieved that)
+ 
+-   tar -zxvf tsocks-<version>.tar.gx
++   tar -zxvf tsocks-<version>.tar.gz
++                 OR
++   tar -jxvf tsocks-<version>.tar.bz
+ 
+ 2. Run ./configure, options which might be of interest (and that are 
+    specific to tsocks include):
++	--disable-tordns	This option disables tordns, which causes
++				names to be looked up in a way designed to
++				work well with Tor.
+ 	--enable-socksdns	This option causes tsocks to intercept
+ 				DNS lookups and attempt to force them
+ 				to use TCP instead of UDP and thus
+ 				be proxied through the socks server. This
+ 				is not a very elegant thing to do and
+@@ -24,14 +29,14 @@
+ 				address of the connect() method tsocks
+ 				overrides, instead it loads a reference
+ 				to the libc shared library and then uses
+ 				dlsym(). Again this is not very elegant
+ 				and shouldn't be required.
+-	--disable-hostnames	This disables DNS lookups on names
++	--enable-hostnames	This enables DNS lookups on names
+ 				provided as socks servers in the config
+-				file. This option is necessary
+-				if socks dns is enabled since tsocks
++				file. This option is not compatible with
++				tordns or socks dns, since tsocks
+ 				can't send a socks dns request to resolve
+ 				the location of the socks server. 
+ 	--with-conf=<filename>	You can specify the location of the tsocks
+ 				configuration file using this option, it
+ 				defaults to '/etc/tsocks.conf'
+diff -rN -U 5 tsocks-1.8/Makefile.in tsocks/Makefile.in
+--- tsocks-1.8/Makefile.in	2002-03-16 23:12:40.000000000 +1300
++++ tsocks/Makefile.in	2005-10-02 21:58:35.000000000 +1300
+@@ -17,15 +17,17 @@
+ INSPECT = inspectsocks
+ SAVE = saveme
+ LIB_NAME = libtsocks
+ COMMON = common
+ PARSER = parser
++DEADPOOL = dead_pool
+ VALIDATECONF = validateconf
+ SCRIPT = tsocks
+ SHLIB_MAJOR = 1
+ SHLIB_MINOR = 8
+ SHLIB = ${LIB_NAME}.so.${SHLIB_MAJOR}.${SHLIB_MINOR}
++DEADPOOL_O = @DEADPOOL_O@
+ 
+ INSTALL = @INSTALL@
+ INSTALL_DATA = @INSTALL_DATA@
+ CFLAGS = @CFLAGS@
+ INCLUDES = -I.
+@@ -47,12 +49,12 @@
+ 	${SHCC} ${CFLAGS} ${INCLUDES} -o ${INSPECT} ${INSPECT}.c ${COMMON}.o ${LIBS} 
+ 
+ ${SAVE}: ${SAVE}.c
+ 	${SHCC} ${CFLAGS} ${INCLUDES} -static -o ${SAVE} ${SAVE}.c
+ 
+-${SHLIB}: ${OBJS} ${COMMON}.o ${PARSER}.o
+-	${SHCC} ${CFLAGS} ${INCLUDES} -nostdlib -shared -o ${SHLIB} ${OBJS} ${COMMON}.o ${PARSER}.o ${DYNLIB_FLAGS} ${SPECIALLIBS} ${LIBS}
++${SHLIB}: ${OBJS} ${COMMON}.o ${PARSER}.o ${DEADPOOL_O}
++	${SHCC} ${CFLAGS} ${INCLUDES} -nostdlib -shared -o ${SHLIB} ${OBJS} ${COMMON}.o ${PARSER}.o ${DEADPOOL_O} ${DYNLIB_FLAGS} ${SPECIALLIBS} ${LIBS}
+ 	ln -sf ${SHLIB} ${LIB_NAME}.so
+ 
+ %.so: %.c
+ 	${SHCC} ${CFLAGS} ${INCLUDES} -c ${CC_SWITCHES} $< -o $@
+ 
+@@ -81,6 +83,9 @@
+ 	
+ clean:
+ 	-rm -f *.so *.so.* *.o *~ ${TARGETS}
+ 
+ distclean: clean
+-	-rm -f config.cache config.log config.h Makefile
++	-rm -f config.cache config.log config.h Makefile \
++		aclocal.m4 config.status 
++	-rm -rf autom4te.cache
++
+diff -rN -U 5 tsocks-1.8/parser.c tsocks/parser.c
+--- tsocks-1.8/parser.c	2002-03-14 01:34:22.000000000 +1300
++++ tsocks/parser.c	2005-10-01 21:56:10.000000000 +1200
+@@ -27,10 +27,13 @@
+ static int handle_reaches(struct parsedfile *, int, char *);
+ static int handle_server(struct parsedfile *, int, char *);
+ static int handle_type(struct parsedfile *config, int, char *);
+ static int handle_port(struct parsedfile *config, int, char *);
+ static int handle_local(struct parsedfile *, int, char *);
++static int handle_tordns_enabled(struct parsedfile *, int, char *);
++static int handle_tordns_deadpool_range(struct parsedfile *, int, char *);
++static int handle_tordns_cache_size(struct parsedfile *, int, char *);
+ static int handle_defuser(struct parsedfile *, int, char *);
+ static int handle_defpass(struct parsedfile *, int, char *);
+ static int make_netent(char *value, struct netent **ent);
+ 
+ int read_config (char *filename, struct parsedfile *config) {
+@@ -41,13 +44,17 @@
+ 	struct serverent *server;
+ 
+    /* Clear out the structure */
+    memset(config, 0x0, sizeof(*config));
+ 
+-	/* Initialization */
++   /* Initialization */
+    currentcontext = &(config->defaultserver);
+ 
++   /* Tordns defaults */
++   config->tordns_cache_size = 256;
++   config->tordns_enabled = 1;
++
+ 	/* If a filename wasn't provided, use the default */
+ 	if (filename == NULL) {
+ 		strncpy(line, CONF_FILE, sizeof(line) - 1);
+ 		/* Insure null termination */
+ 		line[sizeof(line) - 1] = (char) 0;
+@@ -56,11 +63,11 @@
+ 
+ 	/* Read the configuration file */
+ 	if ((conf = fopen(filename, "r")) == NULL) {
+ 		show_msg(MSGERR, "Could not open socks configuration file "
+ 			   "(%s), assuming all networks local\n", filename);
+-      handle_local(config, 0, "0.0.0.0/0.0.0.0");
++        handle_local(config, 0, "0.0.0.0/0.0.0.0");
+ 		rc = 1; /* Severe errors reading configuration */
+ 	}	
+ 	else {
+       memset(&(config->defaultserver), 0x0, sizeof(config->defaultserver));
+ 
+@@ -82,13 +89,17 @@
+ 		server = (config->paths);
+ 		while (server != NULL) {
+ 			check_server(server);
+ 			server = server->next;
+ 		}
+-
+ 	}
+ 
++    /* Initialize tordns deadpool_range if not supplied */
++    if(config->tordns_deadpool_range == NULL) {
++        handle_tordns_deadpool_range(config, 0, "127.0.69.0/255.255.255.0");
++    }
++
+ 	return(rc);
+ }
+ 
+ /* Check server entries (and establish defaults) */
+ static int check_server(struct serverent *server) {
+@@ -150,11 +161,17 @@
+ 				handle_defuser(config, lineno, words[2]);
+ 			} else if (!strcmp(words[0], "default_pass")) {
+ 				handle_defpass(config, lineno, words[2]);
+ 			} else if (!strcmp(words[0], "local")) {
+ 				handle_local(config, lineno, words[2]);
+-			} else {
++            } else if (!strcmp(words[0], "tordns_enable")) {
++                handle_tordns_enabled(config, lineno, words[2]);
++            } else if (!strcmp(words[0], "tordns_deadpool_range")) {
++                handle_tordns_deadpool_range(config, lineno, words[2]);
++            } else if (!strcmp(words[0], "tordns_cache_size")) {
++                handle_tordns_cache_size(config, lineno, words[2]);
++            } else {
+ 				show_msg(MSGERR, "Invalid pair type (%s) specified "
+ 					   "on line %d in configuration file, "
+ 					   "\"%s\"\n", words[0], lineno, 
+ 					   savedline);
+ 			}
+@@ -416,10 +433,130 @@
+ 	}
+ 	
+ 	return(0);
+ }
+ 
++static int handle_flag(char *value) 
++{
++    if(!strcasecmp(value, "true") || !strcasecmp(value, "yes")  
++                                  || !strcmp(value, "1")) {
++        return 1;
++    } else if (!strcasecmp(value, "false") || !strcasecmp(value, "no") 
++                                           || !strcmp(value, "0")) {
++        return 0;
++    } else {
++        return -1;
++    }    
++}
++
++static int handle_tordns_enabled(struct parsedfile *config, int lineno,
++                           char *value)
++{
++    int val = handle_flag(value);
++    if(val == -1) {
++        show_msg(MSGERR, "Invalid value %s supplied for tordns_enabled at "
++                 "line %d in config file, IGNORED\n", value, lineno);
++    } else {
++        config->tordns_enabled = val;
++    }
++    return 0;
++}
++
++static int handle_tordns_cache_size(struct parsedfile *config, int lineno,
++                           char *value)
++{
++    char *endptr;
++    long size = strtol(value, &endptr, 10);
++    if(*endptr != '\0') {
++        show_msg(MSGERR, "Error parsing integer value for "
++                 "tordns_cache_size (%s), using default %d\n", 
++                 value, config->tordns_cache_size);
++    } else if(size < 128) {
++        show_msg(MSGERR, "The value supplied for tordns_cache_size (%d) "
++                 "is too small (<128), using default %d\n", size, 
++                 config->tordns_cache_size);
++    } else if(size > 4096) {
++        show_msg(MSGERR, "The value supplied for tordns_cache_range (%d) "
++                 "is too large (>4096), using default %d\n", size, 
++                 config->tordns_cache_size);
++    } else {
++        config->tordns_cache_size = size;
++    }
++    return 0;
++}
++
++static int handle_tordns_deadpool_range(struct parsedfile *config, int lineno, 
++                           char *value)
++{
++    int rc;
++    struct netent *ent;
++
++    if (config->tordns_deadpool_range != NULL) {
++        show_msg(MSGERR, "Only one 'deadpool' entry permitted, found a "
++               "second at line %d in configuration file.\n");
++        return(0);
++    }
++
++    if (currentcontext != &(config->defaultserver)) {
++        show_msg(MSGERR, "Deadpool cannot be specified in path "
++               "block at like %d in configuration file. "
++               "(Path block started at line %d)\n",
++               lineno, currentcontext->lineno);
++        return(0);
++    }
++
++    rc = make_netent(value, &ent);
++    /* This is copied from handle_local and should probably be folded into
++       a generic whinge() function or something */
++    switch(rc) {
++        case 1:
++            show_msg(MSGERR, "The deadpool specification (%s) is not validly "
++                   "constructed on line %d in configuration "
++                   "file\n", value, lineno);
++            return(0);
++            break;
++        case 2:
++            show_msg(MSGERR, "IP for deadpool "
++                   "network specification (%s) is not valid on line "
++                   "%d in configuration file\n", value, lineno);
++            return(0);
++            break;
++        case 3:
++            show_msg(MSGERR, "SUBNET for " 
++                   "deadpool network specification (%s) is not valid on "
++                   "line %d in configuration file\n", value, 
++                   lineno);
++            return(0);
++            break;
++        case 4:
++            show_msg(MSGERR, "IP (%s) & ", inet_ntoa(ent->localip));
++            show_msg(MSGERR, "SUBNET (%s) != IP on line %d in "
++                   "configuration file, ignored\n",
++                   inet_ntoa(ent->localnet), lineno);
++            return(0);
++        case 5:
++        case 6:
++        case 7:
++            show_msg(MSGERR, "Port specification is invalid and "
++                   "not allowed in deadpool specification "
++               "(%s) on line %d in configuration file\n",
++                   value, lineno);
++            return(0);
++         break;
++    }
++    if (ent->startport || ent->endport) {
++        show_msg(MSGERR, "Port specification is "
++           "not allowed in deadpool specification "
++           "(%s) on line %d in configuration file\n",
++           value, lineno);
++        return(0);
++    }
++
++    config->tordns_deadpool_range = ent;
++    return 0;
++}
++
+ static int handle_local(struct parsedfile *config, int lineno, char *value) {
+ 	int rc;
+ 	struct netent *ent;
+ 
+ 	if (currentcontext != &(config->defaultserver)) {
+diff -rN -U 5 tsocks-1.8/parser.h tsocks/parser.h
+--- tsocks-1.8/parser.h	2002-02-10 20:26:27.000000000 +1300
++++ tsocks/parser.h	2005-10-01 18:40:35.000000000 +1200
+@@ -23,18 +23,22 @@
+ struct netent {
+    struct in_addr localip; /* Base IP of the network */
+    struct in_addr localnet; /* Mask for the network */
+    unsigned long startport; /* Range of ports for the */
+    unsigned long endport;   /* network                */
+-	struct netent *next; /* Pointer to next network entry */
++   struct netent *next; /* Pointer to next network entry */
+ };
+ 
+ /* Structure representing a complete parsed file */
+ struct parsedfile {
+    struct netent *localnets;
+    struct serverent defaultserver;
+    struct serverent *paths;
++   int tordns_enabled;
++   int tordns_failopen;
++   int tordns_cache_size;
++   struct netent *tordns_deadpool_range;
+ };
+ 
+ /* Functions provided by parser module */
+ int read_config(char *, struct parsedfile *);
+ int is_local(struct parsedfile *, struct in_addr *);
+diff -rN -U 5 tsocks-1.8/README.TORDNS tsocks/README.TORDNS
+--- tsocks-1.8/README.TORDNS	1970-01-01 12:00:00.000000000 +1200
++++ tsocks/README.TORDNS	2005-10-02 15:47:16.000000000 +1300
+@@ -0,0 +1,187 @@
++
++TORDNS
++======
++
++What is it?
++-----------
++
++This patch modifies the tsocks library to use SOCKS for name resolution.
++
++
++Why should I use it?
++--------------------
++
++* It's easier.
++
++When using this patch you don't (always..) need to run 'tor-resolve' when 
++using 'torify' anymore.  Also, 'torify' now works directly with SSH without 
++the need for connect scripts or other fiddling. [As long as SSH is not 
++installed suid root].
++
++* It allows you to use programs which are not SOCKS aware to connect to 
++.onion sites. 
++
++For example, you can ssh directly to a .onion site, or use telnet / netcat
++without hassle.  
++
++
++QUICK: what do I need to do to make it work?
++--------------------------------------------
++
++Configuration instructions:
++
++1) Get the sources
++
++wget http://ftp1.sourceforge.net/tsocks/tsocks-1.8beta5.tar.gz
++wget http://www.totalinfosecurity.com/patches/tor-tsocks/tordns-1.8b5.patch
++
++2) Unpack and apply the tsocks patch
++
++tar xzvf tsocks-1.8beta5.tar.gz
++cd tsocks-1.8
++patch -p1 < ../tordns-1.8b5.patch
++
++3) Configure, compile and install
++
++NOTE: The default 'configure' settings for tsocks have been changed by 
++this patch.  The --disable-hostnames option (don't try to use DNS to look
++up SOCKS servers) is now enabled by default.  Also, tordns is enabled 
++by default.
++
++./configure 
++make 
++make install 
++
++All the tordns config options have sane default values which you should
++not need to change.  
++
++
++Why did I need to use 'tor-resolve' with 'torify' in the first place?
++---------------------------------------------------------------------
++
++Because if you run "torify telnet bar.foo.com 31337", for example, then 
++you're leaking information about what sites you're visiting to DNS servers.  
++
++The tor-resolve utility resolves names through tor using SOCKS, in a way
++that shouldn't compromise your privacy.
++
++
++What won't work with this?
++--------------------------
++
++The 'tordns' feature for tsocks only works with applications using the 
++standard c library name lookup mechanisms.
++
++Some programs roll their own name lookup functions, for example, 'curl' 
++uses the 'adns' library, not the standard c library name lookup calls.  
++In this case, you'll still be leaking DNS requests.
++
++However, it seems that most programs which go to the trouble of implementing 
++asynchronous DNS requests or doing other tricky things have native SOCKS or
++HTTP proxy support.  
++
++Requests for reverse name lookups are not intercepted.
++
++Finally, the tsocks library is NOT thread-safe, with or without this patch.
++You should not 'torify' multithreaded applications.
++
++
++How does it work?
++-----------------
++
++This patch adds interceptors for common name resolution calls to tsocks.  
++Specifically, the 'gethostbyname', 'getaddrinfo' and 'getipnodebyname' library 
++functions. (gethostbyname_r is not supported).
++
++When a call to one of these functions is intercepted, a SOCKS4A resolve 
++request is used to retrieve the relevant information, and the results are
++cached. 
++
++When the application calls 'connect', the cache is consulted and instead
++of making a SOCKS5 request and supplying the IP address, we connect using 
++the name.  This prevents those messages in the tor logs which look like:
++
++  Sep 23 10:12:20.901 [warn] fetch_from_buf_socks(): Your application (using s
++  ocks5 on port 80) is giving Tor only an IP address. Applications that do DNS
++  resolves themselves may leak information. Consider using Socks4A (e.g. via
++  privoxy or socat) instead.
++
++There are special provisions for handling .onion sites.  When a program asks
++to resolve a name ending in '.onion', no name lookup is performed.  A bogus IP 
++address is returned. The range of unused IP addresses to hand out is called the 
++"deadpool".  This IP address doesn't mean anything in particular, and could be 
++considered a cookie associated with the name.  When the application eventually 
++calls 'connect' with this bogus IP, the cache is consulted and the result is a 
++SOCKS5 request which includes the name of the .onion site.
++
++The default deadpool range is '127.0.69.0/255.255.255.0'.  NOTE: if a resolve
++request results in an IP from the deadpool range then the response is rejected,
++and it appears to the application that the lookup failed.
++
++The lookup cache is kept in mmap'd memory and shared across fork() calls.
++This is because some programs perform name lookups in a child process and 
++then invoke 'connect' in the parent as a kind of "poor man's async DNS".  
++
++
++Advanced configuration options
++------------------------------
++
++The following options have been added to the tsocks configuration file:
++
++tordns_enable
++
++  The default value is 'true'.  If you set it to 'false', tsocks should work 
++  just like it did without the tordns patch.  
++
++  
++tordns_deadpool_range
++
++  The default value is '127.0.69.0/255.255.255.0'.  This specifies what range
++  of IP addresses will be handed to the application as "cookies" for .onion
++  names.  Of course, you should pick a block of addresses which you aren't 
++  going to ever need to actually connect to.    
++
++
++tordns_cache_size
++
++  This specifies the number of IP addresses looked up through socks to cache.
++  The default value is 256. The default value is 256.  Each entry consumes 260 
++  bytes of memory, so the default adds 66,560 bytes of overhead to each 
++  'torified' process. NOTE: if the number of IP addresses in 
++  tordns_deadpool_range is less than the value specified for tordns_cache_size, 
++  then the cache will be shrunk to fit the deadpool range. This is to prevent 
++  duplicate deadpool addresses from ever appearing in the cache.
++
++
++TODO
++----
++
++* Think about how local names get resolved.  Is it important?  For example,
++  if I 'telnet localhost' which using tordns, what should happen?  Should
++  we search through /etc/hosts ourselves or what?  
++  
++* What about the isc library calls like res_init and so on?  How widely are
++  they use?  Does this present a more elegant way to implement this stuff?
++
++* Perhaps intercept res_query etc and try to do something appropriate.
++
++* It should be possible to make this thread-safe with --enable-threads.
++
++* validateconf needs to be updated to understand (and show information about)
++  the tordns configuration options.
++
++* Perhaps intercept reverse name lookups?
++
++* In fact, one could modify tsocks further to play nicely with tor.  For 
++  example, you could prevent nonlocal UDP traffic from being sent at all,
++  and so on.
++
++
++******************************************************
++Questions or comments, please contact:
++Blair Strang (bls at totalinfosecurity.com)
++Caleb Anderson (caleb.anderson at totalinfosecurity.com)
++Carl Purvis (carl.purvis at totalinfosecurity.com)
++
++Total Information Security Ltd.
++http://www.totalinfosecurity.com/
+diff -rN -U 5 tsocks-1.8/tsocks.c tsocks/tsocks.c
+--- tsocks-1.8/tsocks.c	2002-07-16 10:50:52.000000000 +1200
++++ tsocks/tsocks.c	2005-10-01 22:01:48.000000000 +1200
+@@ -51,19 +51,26 @@
+ #ifdef USE_SOCKS_DNS
+ #include <resolv.h>
+ #endif
+ #include <parser.h>
+ #include <tsocks.h>
++#include "dead_pool.h"
+ 
+ /* Global Declarations */
+ #ifdef USE_SOCKS_DNS
+ static int (*realresinit)(void);
+ #endif
+-static int (*realconnect)(CONNECT_SIGNATURE);
++#ifdef USE_TOR_DNS
++static dead_pool *pool = NULL;
++static struct hostent *(*realgethostbyname)(GETHOSTBYNAME_SIGNATURE);
++int (*realgetaddrinfo)(GETADDRINFO_SIGNATURE);
++static struct hostent *(*realgetipnodebyname)(GETIPNODEBYNAME_SIGNATURE);
++#endif
++int (*realconnect)(CONNECT_SIGNATURE);
+ static int (*realselect)(SELECT_SIGNATURE);
+ static int (*realpoll)(POLL_SIGNATURE);
+-static int (*realclose)(CLOSE_SIGNATURE);
++int (*realclose)(CLOSE_SIGNATURE);
+ static struct parsedfile *config;
+ static struct connreq *requests = NULL;
+ static int suid = 0;
+ static char *conffile = NULL;
+ 
+@@ -74,10 +81,15 @@
+ int poll(POLL_SIGNATURE);
+ int close(CLOSE_SIGNATURE);
+ #ifdef USE_SOCKS_DNS
+ int res_init(void);
+ #endif
++#ifdef USE_TOR_DNS
++struct hostent *gethostbyname(GETHOSTBYNAME_SIGNATURE);
++int getaddrinfo(GETADDRINFO_SIGNATURE);
++struct hostent *getipnodebyname(GETIPNODEBYNAME_SIGNATURE);
++#endif 
+ 
+ /* Private Function Prototypes */
+ static int get_config();
+ static int get_environment();
+ static int connect_server(struct connreq *conn);
+@@ -97,10 +109,14 @@
+ static int recv_buffer(struct connreq *conn);
+ static int read_socksv5_method(struct connreq *conn);
+ static int read_socksv4_req(struct connreq *conn);
+ static int read_socksv5_connect(struct connreq *conn);
+ static int read_socksv5_auth(struct connreq *conn);
++#ifdef USE_TOR_DNS
++static int deadpool_init();
++static int send_socksv4a_request(struct connreq *conn, const char *onion_host);
++#endif
+ 
+ void _init(void) {
+ #ifdef USE_OLD_DLSYM
+ 	void *lib;
+ #endif
+@@ -118,24 +134,38 @@
+ 	realpoll = dlsym(RTLD_NEXT, "poll");
+ 	realclose = dlsym(RTLD_NEXT, "close");
+ 	#ifdef USE_SOCKS_DNS
+ 	realresinit = dlsym(RTLD_NEXT, "res_init");
+ 	#endif
++    #ifdef USE_TOR_DNS
++    realgethostbyname = dlsym(RTLD_NEXT, "gethostbyname");
++    realgetaddrinfo = dlsym(RTLD_NEXT, "getaddrinfo");
++    realgetipnodebyname = dlsym(RTLD_NEXT, "getipnodebyname");
++    #endif
+ #else
+ 	lib = dlopen(LIBCONNECT, RTLD_LAZY);
+ 	realconnect = dlsym(lib, "connect");
+ 	realselect = dlsym(lib, "select");
+ 	realpoll = dlsym(lib, "poll");
+ 	#ifdef USE_SOCKS_DNS
+ 	realresinit = dlsym(lib, "res_init");
+ 	#endif
+-	dlclose(lib);	
+-
++    #ifdef USE_TOR_DNS
++    realgethostbyname = dlsym(lib, "gethostbyname");
++    realgetaddrinfo = dlsym(lib, "getaddrinfo");
++    realgetipnodebyname = dlsym(RTLD_NEXT, "getipnodebyname");
++    #endif
++    dlclose(lib);	
+ 	lib = dlopen(LIBC, RTLD_LAZY);
+-   realclose = dlsym(lib, "close");
++	realclose = dlsym(lib, "close");
+ 	dlclose(lib);	
+ #endif
++#ifdef USE_TOR_DNS
++    /* Unfortunately, we can't do this lazily because otherwise our mmap'd
++       area won't be shared across fork()s. */
++    deadpool_init();
++#endif 
+ }
+ 
+ static int get_environment() {
+    static int done = 0;
+    int loglevel = MSGERR;
+@@ -181,12 +211,11 @@
+    if (config->paths)
+       show_msg(MSGDEBUG, "First lineno for first path is %d\n", config->paths->lineno);
+ 
+    done = 1;
+ 
+-	return(0);
+-
++   return(0);
+ }
+ 
+ int connect(CONNECT_SIGNATURE) {
+ 	struct sockaddr_in *connaddr;
+ 	struct sockaddr_in peer_address;
+@@ -271,16 +300,21 @@
+    if (!getpeername(__fd, (struct sockaddr *) &peer_address, &namelen)) {
+       show_msg(MSGDEBUG, "Socket is already connected, defering to "
+                          "real connect\n");
+ 		return(realconnect(__fd, __addr, __len));
+    }
+-      
++     
+    show_msg(MSGDEBUG, "Got connection request for socket %d to "
+                       "%s\n", __fd, inet_ntoa(connaddr->sin_addr));
+ 
+    /* If the address is local call realconnect */
++#ifdef USE_TOR_DNS
++   if (!(is_local(config, &(connaddr->sin_addr))) && 
++       !is_dead_address(pool, connaddr->sin_addr.s_addr)) {
++#else 
+    if (!(is_local(config, &(connaddr->sin_addr)))) {
++#endif
+       show_msg(MSGDEBUG, "Connection for socket %d is local\n", __fd);
+       return(realconnect(__fd, __addr, __len));
+    }
+ 
+    /* Ok, so its not local, we need a path to the net */
+@@ -869,19 +903,74 @@
+    return((rc ? errno : 0));
+ }
+ 
+ static int send_socks_request(struct connreq *conn) {
+ 	int rc = 0;
+-	
+-	if (conn->path->type == 4) 
+-		rc = send_socksv4_request(conn);
+-	else
+-		rc = send_socksv5_method(conn);
+ 
++#ifdef USE_TOR_DNS
++    if (conn->path->type == 4) {
++        char *name = get_pool_entry(pool, &(conn->connaddr.sin_addr));
++        if(name != NULL) {
++            rc = send_socksv4a_request(conn,name);
++        } else {
++            rc = send_socksv4_request(conn);
++        }
++#else 
++    if (conn->path->type == 4) {
++      rc = send_socksv4_request(conn);
++#endif
++    } else {
++	  rc = send_socksv5_method(conn);
++	}
+    return(rc);
+ }			
+ 
++#ifdef USE_TOR_DNS
++static int send_socksv4a_request(struct connreq *conn,const char *onion_host) 
++{
++  struct passwd *user;
++  struct sockreq *thisreq;
++  int endOfUser;
++  /* Determine the current username */
++  user = getpwuid(getuid());	
++
++  thisreq = (struct sockreq *) conn->buffer;
++  endOfUser=sizeof(struct sockreq) +
++  (user == NULL ? 0 : strlen(user->pw_name)) + 1;
++
++  /* Check the buffer has enough space for the request  */
++  /* and the user name                                  */
++  conn->datalen = endOfUser+ 
++                  (onion_host == NULL ? 0 : strlen(onion_host)) + 1;
++  if (sizeof(conn->buffer) < conn->datalen) {
++      show_msg(MSGERR, "The SOCKS username is too long");
++      conn->state = FAILED;
++      return(ECONNREFUSED);
++  }
++
++  /* Create the request */
++  thisreq->version = 4;
++  thisreq->command = 1;
++  thisreq->dstport = conn->connaddr.sin_port;
++  thisreq->dstip   = htonl(1);
++
++  /* Copy the username */
++  strcpy((char *) thisreq + sizeof(struct sockreq), 
++         (user == NULL ? "" : user->pw_name));
++
++  /* Copy the onion host */
++  strcpy((char *) thisreq + endOfUser,
++         (onion_host == NULL ? "" : onion_host));
++
++  conn->datadone = 0;
++  conn->state = SENDING;
++  conn->nextstate = SENTV4REQ;
++
++  return(0);   
++}
++#endif /* USE_TOR_DNS */
++
+ static int send_socksv4_request(struct connreq *conn) {
+ 	struct passwd *user;
+ 	struct sockreq *thisreq;
+ 	
+ 	/* Determine the current username */
+@@ -931,10 +1020,14 @@
+ 
+    return(0);
+ }			
+ 
+ static int send_socksv5_connect(struct connreq *conn) {
++#ifdef USE_TOR_DNS
++   int namelen = 0;
++   char *name = NULL;
++#endif
+    char constring[] = { 0x05,    /* Version 5 SOCKS */
+                         0x01,    /* Connect request */
+                         0x00,    /* Reserved        */
+                         0x01 };  /* IP Version 4    */
+ 
+@@ -942,14 +1035,42 @@
+    conn->datadone = 0;
+    conn->state = SENDING;
+    conn->nextstate = SENTV5CONNECT;
+    memcpy(conn->buffer, constring, sizeof(constring)); 
+    conn->datalen = sizeof(constring);
+-	memcpy(&conn->buffer[conn->datalen], &(conn->connaddr.sin_addr.s_addr), 
+-          sizeof(conn->connaddr.sin_addr.s_addr));
+-   conn->datalen += sizeof(conn->connaddr.sin_addr.s_addr);
+-	memcpy(&conn->buffer[conn->datalen], &(conn->connaddr.sin_port), sizeof(conn->connaddr.sin_port));
++
++#ifdef USE_TOR_DNS
++   show_msg(MSGDEBUG, "send_socksv5_connect: looking for: %s\n",
++            inet_ntoa(conn->connaddr.sin_addr));
++
++   name = get_pool_entry(pool, &(conn->connaddr.sin_addr));
++   if(name != NULL) {
++       namelen = strlen(name);
++       if(namelen > 255) {  /* "Can't happen" */
++           name = NULL;
++       }
++   }
++   if(name != NULL) {
++       show_msg(MSGDEBUG, "send_socksv5_connect: found it!\n");
++       /* Substitute the domain name from the pool into the SOCKS request. */
++       conn->buffer[3] = 0x03;  /* Change the ATYP field */
++       conn->buffer[4] = namelen;  /* Length of name */
++       conn->datalen++;
++       memcpy(&conn->buffer[conn->datalen], name, namelen);
++       conn->datalen += namelen;
++   } else {
++       show_msg(MSGDEBUG, "send_socksv5_connect: ip address not found\n");
++#endif
++       /* Use the raw IP address */
++       memcpy(&conn->buffer[conn->datalen], &(conn->connaddr.sin_addr.s_addr), 
++              sizeof(conn->connaddr.sin_addr.s_addr));
++       conn->datalen += sizeof(conn->connaddr.sin_addr.s_addr);
++#ifdef USE_TOR_DNS
++   }
++#endif
++   memcpy(&conn->buffer[conn->datalen], &(conn->connaddr.sin_port), 
++        sizeof(conn->connaddr.sin_port));
+    conn->datalen += sizeof(conn->connaddr.sin_port);
+ 
+    return(0);
+ }			
+ 
+@@ -1175,24 +1296,56 @@
+ 
+    return(rc);
+ }
+ #endif
+ 
+-#if 0
+-	/* Get the flags of the socket, (incase its non blocking */
+-	if ((sockflags = fcntl(sockid, F_GETFL)) == -1) {
+-		sockflags = 0;
+-	}
++#ifdef USE_TOR_DNS
++static int deadpool_init()
++{
++  if(!pool) {
++      get_environment();
++      get_config();
++      if(config->tordns_enabled) {
++          pool = init_pool(
++              config->tordns_cache_size, 
++              config->tordns_deadpool_range->localip, 
++              config->tordns_deadpool_range->localnet, 
++              config->defaultserver.address,
++              config->defaultserver.port
++          );
++          if(!pool) {
++              show_msg(MSGERR, "failed to initialize deadpool: tordns disabled\n");
++          }
++      }
++  }
++  return 0;
++}
++
++struct hostent *gethostbyname(GETHOSTBYNAME_SIGNATURE)
++{
++  if(pool) {
++      return our_gethostbyname(pool, name);
++  } else {
++      return realgethostbyname(name);
++  }  
++}
++
++int getaddrinfo(GETADDRINFO_SIGNATURE)
++{
++  if(pool) {
++      return our_getaddrinfo(pool, node, service, hints, res);
++  } else {
++      return realgetaddrinfo(node, service, hints, res);
++  }
++}
++
++struct hostent *getipnodebyname(GETIPNODEBYNAME_SIGNATURE)
++{
++  if(pool) {
++      return our_getipnodebyname(pool, name, af, flags, error_num);
++  } else {
++      return realgetipnodebyname(name, af, flags, error_num);
++  }
++}
+ 
+-	/* If the flags show the socket as blocking, set it to   */
+-	/* blocking for our connection to the socks server       */
+-	if ((sockflags & O_NONBLOCK) != 0) {
+-		fcntl(sockid, F_SETFL, sockflags & (~(O_NONBLOCK)));
+-	}
+ #endif 
+-#if 0
+-	/* If the socket was in non blocking mode, restore that */
+-	if ((sockflags & O_NONBLOCK) != 0) {
+-		fcntl(sockid, F_SETFL, sockflags);
+-	}
+-#endif
+ 
+diff -rN -U 5 tsocks-1.8/tsocks.conf.5 tsocks/tsocks.conf.5
+--- tsocks-1.8/tsocks.conf.5	2002-05-18 14:13:08.000000000 +1200
++++ tsocks/tsocks.conf.5	2005-10-01 21:41:50.000000000 +1200
+@@ -124,10 +124,33 @@
+ 150.0.0.0:80-1024/255.0.0.0" indicates to tsocks that the SOCKS server 
+ specified in the current path block should be used to access any IPs in the 
+ range 150.0.0.0 to 150.255.255.255 when the connection request is for ports
+ 80-1024.
+ 
++.TP
++.I tordns_enable
++This enables the use of the 'tordns' feature in tsocks, which overrides the
++standard C library name resolution calls to use SOCKS.    The default value is 
++'true'. 
++
++.TP
++.I tordns_deadpool_range
++Tor hidden sites do not have real IP addresses.  This specifies what range of 
++IP addresses will be handed to the application as "cookies" for .onion names.  
++Of course, you should pick a block of addresses which you aren't going to ever 
++need to actually connect to. The default value is '127.0.69.0/255.255.255.0'.
++
++.TP
++.I tordns_cache_size
++This specifies the number of IP addresses looked up through SOCKS to cache.
++The default value is 256.  Each entry consumes 260 bytes of memory, so the
++default adds 66,560 bytes of overhead to each 'torified' process. NOTE: if
++the number of IP addresses in tordns_deadpool_range is less than the value
++specified for tordns_cache_size, then the cache will be shrunk to fit the
++deadpool range. This is to prevent duplicate deadpool addresses from ever
++appearing in the cache. 
++
+ .SH UTILITIES
+ tsocks comes with two utilities that can be useful in creating and verifying
+ the tsocks configuration file. 
+ 
+ .TP
+diff -rN -U 5 tsocks-1.8/tsocks.h tsocks/tsocks.h
+--- tsocks-1.8/tsocks.h	2002-03-14 01:58:09.000000000 +1300
++++ tsocks/tsocks.h	2005-09-24 01:38:12.000000000 +1200
+@@ -50,11 +50,11 @@
+    int selectevents;
+ 
+    /* Buffer for sending and receiving on the socket */
+    int datalen;
+    int datadone;
+-   char buffer[1024];
++   char buffer[2048];
+ 
+    struct connreq *next;
+ };
+ 
+ /* Connection statuses */
+diff -rN -U 5 tsocks-1.8/validateconf.c tsocks/validateconf.c
+--- tsocks-1.8/validateconf.c	2002-02-07 23:49:59.000000000 +1300
++++ tsocks/validateconf.c	2005-10-01 19:38:08.000000000 +1200
+@@ -161,11 +161,24 @@
+ 			printf("\n");
+ 			server = server->next;
+ 		}	
+ 	} 
+ 
+-	return;
++#ifdef USE_TOR_DNS
++    /* Show tordns configuration options */
++    printf("=== TorDNS Configuration Options ===\n");
++    printf("Tor DNS enabled:        %s\n", 
++           config->tordns_enabled ? "yes" : "no");
++    printf("Tor DNS deadpool range: %s/", 
++           inet_ntoa(config->tordns_deadpool_range->localip));
++    printf("%s\n", 
++        inet_ntoa(config->tordns_deadpool_range->localnet));
++    printf("Tor DNS cache size:     %d\n", config->tordns_cache_size);
++    printf("\n");
++#endif
++
++    return;
+ }
+ 
+ void show_server(struct parsedfile *config, struct serverent *server, int def) {
+ 	struct in_addr res;
+ 	struct netent *net;
diff --git a/patches/README b/patches/README
deleted file mode 100644
index 2f921a9..0000000
--- a/patches/README
+++ /dev/null
@@ -1,88 +0,0 @@
-This is a list of the patches applied to tsocks between it's last
-official release and 15/06/08. All changes applied to the source after
-that date are recorded in the Changelog.
-
-NB: These patches are stored for historical reasons only. I have not
-    confirmed that they all apply cleanly to the tsocks source. I do not
-    know in what order they should be applied.
-
-File: getaddrbyhost.patch (Robert Hogan)
-Date: 18/06/08
-Description:
-Add support for getaddrbyhost.
-
-File: compilewarnings.patch (Robert Hogan)
-Date: 2007
-Description:
-  Suppresses a number of compile warnings. Also introduces reasonable defaults
-  for use of Tor.
-
-
-File: getpeername.patch (Peter Palfrader <weasel at debian.org>)
-Date: Sat, 27 Mar 2004 13:20:56 +0100
-Description:
-  "If we are not done setting up the connection yet, getpeername() should
-  return -1 and ENOTCONN.
-
-  This is necessary since some applications, when using non-blocking connect,
-  (like ircII) use getpeername() to find out if they are connected already.
-
-  This results in races sometimes, where the client sends data to the socket
-  before we are done with the socks connection setup.  Another solution would
-  be to intercept send().
-
-  This could be extended to actually set the peername to the peer the
-  client application has requested, but not for now.
-
-  this patch is almost the same, only it uses state != DONE  instead of
-  state == CONNECTING to find out when to send ENOTCONN back.
-
-  this patch tries to also do continue the socks setup in getpeername(),
-  if it isn't done yet."
-
-
-File: infiniteloop.patch (Peter Palfrader <weasel at debian.org>)
-Date: Sat, 20 Mar 2004 11:41:41 +0100
-Description:
-  "If the server just disconnects when tsocks expects a reply, tsocks
-  will get stuck in an infinite busy loop."
-
-
-File: localaddresses.patch (Roger Dingledine)
-Date: Sat, 01 Apr 2006 18:17:50 -0500
-Description:
-  "I just noticed that tsocks hard-codes the 127.0.0.0/8 subnet
-  as being "local", meaning it won't ever go through the socks
-  proxy.
-
-  The Tor controller's mapaddress command can assign virtual addresses
-  in the 127/8 space: see section 3.8 of
-  http://tor.eff.org/cvs/tor/doc/control-spec.txt
-
-  We think this behavior should be allowed. Here's a patch to tsocks to
-  make it not always hard-code its local network."
-
-
-File: conffile.patch ( Roderick Schertler <roderick at argon.org>)
-Date: Fri, 03 Jun 2005 08:43:59 -0400
-Description: tsocks(8) says TSOCKS_CONFFILE but should say TSOCKS_CONF_FILE
-Details:
-  "The tsocks(8) man page says TSOCKS_CONFFILE but should say
-  TSOCKS_CONF_FILE.  Though this is a documentation error I don't think
-  it qualifies as minor.  For me the program didn't work at all because
-  I needed to run it with an alternative config file, and I needed to
-  download the source to figure out the problem."
-
-
-File: tordns.patch (Total Information Security)
-Date: 2005-10-XX (?)
-Original Reference: http://www.totalinfosecurity.com/patches/tor.php
-Description:
-  "Patch from Total Information Security to resolve the DNS leakage problem
-  and allow access to addresses with nonstandard hostnames (e.g. those ending
-  in .onion)."
-
-Notes:
-  'Total Information Security' appears to be defunct so the original link for
-  the patch is now dead. The patch stored here was taken from :
-  https://bugs.gentoo.org/show_bug.cgi?id=148550
diff --git a/patches/README.TORDNS b/patches/README.TORDNS
deleted file mode 100644
index 0b7dafd..0000000
--- a/patches/README.TORDNS
+++ /dev/null
@@ -1,187 +0,0 @@
-
-TORDNS
-======
-
-What is it?
------------
-
-This patch modifies the tsocks library to use SOCKS for name resolution.
-
-
-Why should I use it?
---------------------
-
-* It's easier.
-
-When using this patch you don't (always..) need to run 'tor-resolve' when 
-using 'torify' anymore.  Also, 'torify' now works directly with SSH without 
-the need for connect scripts or other fiddling. [As long as SSH is not 
-installed suid root].
-
-* It allows you to use programs which are not SOCKS aware to connect to 
-.onion sites. 
-
-For example, you can ssh directly to a .onion site, or use telnet / netcat
-without hassle.  
-
-
-QUICK: what do I need to do to make it work?
---------------------------------------------
-
-Configuration instructions:
-
-1) Get the sources
-
-wget http://ftp1.sourceforge.net/tsocks/tsocks-1.8beta5.tar.gz
-wget http://www.totalinfosecurity.com/patches/tor-tsocks/tordns-1.8b5.patch
-
-2) Unpack and apply the tsocks patch
-
-tar xzvf tsocks-1.8beta5.tar.gz
-cd tsocks-1.8
-patch -p1 < ../tordns-1.8b5.patch
-
-3) Configure, compile and install
-
-NOTE: The default 'configure' settings for tsocks have been changed by 
-this patch.  The --disable-hostnames option (don't try to use DNS to look
-up SOCKS servers) is now enabled by default.  Also, tordns is enabled 
-by default.
-
-./configure 
-make 
-make install 
-
-All the tordns config options have sane default values which you should
-not need to change.  
-
-
-Why did I need to use 'tor-resolve' with 'torify' in the first place?
----------------------------------------------------------------------
-
-Because if you run "torify telnet bar.foo.com 31337", for example, then 
-you're leaking information about what sites you're visiting to DNS servers.  
-
-The tor-resolve utility resolves names through tor using SOCKS, in a way
-that shouldn't compromise your privacy.
-
-
-What won't work with this?
---------------------------
-
-The 'tordns' feature for tsocks only works with applications using the 
-standard c library name lookup mechanisms.
-
-Some programs roll their own name lookup functions, for example, 'curl' 
-uses the 'adns' library, not the standard c library name lookup calls.  
-In this case, you'll still be leaking DNS requests.
-
-However, it seems that most programs which go to the trouble of implementing 
-asynchronous DNS requests or doing other tricky things have native SOCKS or
-HTTP proxy support.  
-
-Requests for reverse name lookups are not intercepted.
-
-Finally, the tsocks library is NOT thread-safe, with or without this patch.
-You should not 'torify' multithreaded applications.
-
-
-How does it work?
------------------
-
-This patch adds interceptors for common name resolution calls to tsocks.  
-Specifically, the 'gethostbyname', 'getaddrinfo' and 'getipnodebyname' library 
-functions. (gethostbyname_r is not supported).
-
-When a call to one of these functions is intercepted, a SOCKS4A resolve 
-request is used to retrieve the relevant information, and the results are
-cached. 
-
-When the application calls 'connect', the cache is consulted and instead
-of making a SOCKS5 request and supplying the IP address, we connect using 
-the name.  This prevents those messages in the tor logs which look like:
-
-  Sep 23 10:12:20.901 [warn] fetch_from_buf_socks(): Your application (using s
-  ocks5 on port 80) is giving Tor only an IP address. Applications that do DNS
-  resolves themselves may leak information. Consider using Socks4A (e.g. via
-  privoxy or socat) instead.
-
-There are special provisions for handling .onion sites.  When a program asks
-to resolve a name ending in '.onion', no name lookup is performed.  A bogus IP 
-address is returned. The range of unused IP addresses to hand out is called the 
-"deadpool".  This IP address doesn't mean anything in particular, and could be 
-considered a cookie associated with the name.  When the application eventually 
-calls 'connect' with this bogus IP, the cache is consulted and the result is a 
-SOCKS5 request which includes the name of the .onion site.
-
-The default deadpool range is '127.0.69.0/255.255.255.0'.  NOTE: if a resolve
-request results in an IP from the deadpool range then the response is rejected,
-and it appears to the application that the lookup failed.
-
-The lookup cache is kept in mmap'd memory and shared across fork() calls.
-This is because some programs perform name lookups in a child process and 
-then invoke 'connect' in the parent as a kind of "poor man's async DNS".  
-
-
-Advanced configuration options
-------------------------------
-
-The following options have been added to the tsocks configuration file:
-
-tordns_enable
-
-  The default value is 'true'.  If you set it to 'false', tsocks should work 
-  just like it did without the tordns patch.  
-
-  
-tordns_deadpool_range
-
-  The default value is '127.0.69.0/255.255.255.0'.  This specifies what range
-  of IP addresses will be handed to the application as "cookies" for .onion
-  names.  Of course, you should pick a block of addresses which you aren't 
-  going to ever need to actually connect to.    
-
-
-tordns_cache_size
-
-  This specifies the number of IP addresses looked up through socks to cache.
-  The default value is 256. The default value is 256.  Each entry consumes 260 
-  bytes of memory, so the default adds 66,560 bytes of overhead to each 
-  'torified' process. NOTE: if the number of IP addresses in 
-  tordns_deadpool_range is less than the value specified for tordns_cache_size, 
-  then the cache will be shrunk to fit the deadpool range. This is to prevent 
-  duplicate deadpool addresses from ever appearing in the cache.
-
-
-TODO
-----
-
-* Think about how local names get resolved.  Is it important?  For example,
-  if I 'telnet localhost' which using tordns, what should happen?  Should
-  we search through /etc/hosts ourselves or what?  
-  
-* What about the isc library calls like res_init and so on?  How widely are
-  they use?  Does this present a more elegant way to implement this stuff?
-
-* Perhaps intercept res_query etc and try to do something appropriate.
-
-* It should be possible to make this thread-safe with --enable-threads.
-
-* validateconf needs to be updated to understand (and show information about)
-  the tordns configuration options.
-
-* Perhaps intercept reverse name lookups?
-
-* In fact, one could modify tsocks further to play nicely with tor.  For 
-  example, you could prevent nonlocal UDP traffic from being sent at all,
-  and so on.
-
-
-******************************************************
-Questions or comments, please contact:
-Blair Strang (bls at totalinfosecurity.com)
-Caleb Anderson (caleb.anderson at totalinfosecurity.com)
-Carl Purvis (carl.purvis at totalinfosecurity.com)
-
-Total Information Security Ltd.
-http://www.totalinfosecurity.com/
diff --git a/patches/compilewarnings.patch b/patches/compilewarnings.patch
deleted file mode 100644
index 9c93be1..0000000
--- a/patches/compilewarnings.patch
+++ /dev/null
@@ -1,739 +0,0 @@
-Only in /home/robert/Development/tork/src/tsocks/: .#Makefile.in.1.12
-Only in /home/robert/Development/tork/src/tsocks/: .deps
-Only in /home/robert/Development/tork/src/tsocks/: .libs
-Common subdirectories: /backup/robert/Development/torsocks/CVS and /home/robert/Development/tork/src/tsocks/CVS
-diff -u -x Makefile.am -x Makefile.in -x configure -x INSTALL -x README.TORDNS -x COPYING -x Changelog -x Doxyfile -x FAQ -x TODO /backup/robert/Development/torsocks/ChangeLog /home/robert/Development/tork/src/tsocks/ChangeLog
---- /backup/robert/Development/torsocks/ChangeLog	2008-06-15 10:43:02.000000000 +0100
-+++ /home/robert/Development/tork/src/tsocks/ChangeLog	2007-09-30 16:13:34.000000000 +0100
-@@ -1,15 +1,5 @@
--version 1.81 - 2006.11.17 ruben at ugr.es
--  Integrated and resolved the conflicts for the following
--  patches:
--    -DNS from totalinfosecurity mentioned below
--    -Infinite Loop from weasel
--    -Getpeername from weasel
--    -Documentation patch from Roderick Schertler
--    -Localhost patch from Roger Dingledine
--  (patches 1, 3, 4, 5 and 7 from 
--  http://wiki.noreply.org/noreply/TheOnionRouter/TSocksPatches)
--  Patches 2 and 6 were not applied because I don't have access to
--  osx or bsd and can't test them. (And the bsd patch breaks linux)
-+Renamed for TorK to avoid conflicts with existing tsocks installations.
-+Robert Hogan
- 
- version 1.80tordns - 2005.10.4 bls at totalinfosecurity.com
-    Intercept gethostbyname() and friends, added --tordns
-Only in /home/robert/Development/tork/src/tsocks/: Makefile
-Only in /home/robert/Development/tork/src/tsocks/: Makefile.am~
-Only in /home/robert/Development/tork/src/tsocks/: Makefile.in~
-Only in /home/robert/Development/tork/src/tsocks/: README
-Only in /home/robert/Development/tork/src/tsocks/: TODO~
-Only in /backup/robert/Development/torsocks: acconfig.h
-Only in /home/robert/Development/tork/src/tsocks/: aclocal
-diff -u -x Makefile.am -x Makefile.in -x configure -x INSTALL -x README.TORDNS -x COPYING -x Changelog -x Doxyfile -x FAQ -x TODO /backup/robert/Development/torsocks/common.c /home/robert/Development/tork/src/tsocks/common.c
---- /backup/robert/Development/torsocks/common.c	2008-06-15 10:43:02.000000000 +0100
-+++ /home/robert/Development/tork/src/tsocks/common.c	2008-04-05 22:36:40.000000000 +0100
-@@ -4,7 +4,7 @@
- 
- */
- 
--#include <config.h>
-+#include <config.h>
- #include <stdio.h>
- #include <netdb.h>
- #include <common.h>
-@@ -15,6 +15,7 @@
- #include <time.h>
- #include <unistd.h>
- #include <arpa/inet.h>
-+#include <sys/types.h>
- #include <netinet/in.h>
- 
- /* Globals */
-@@ -37,7 +38,7 @@
- 			#ifdef HAVE_GETHOSTBYNAME
- 			if ((new = gethostbyname(host)) == (struct hostent *) 0) {
- 			#endif
--				return(-1);
-+				return(0);
- 			#ifdef HAVE_GETHOSTBYNAME
- 			} else {
- 				ip = ((struct in_addr *) * new->h_addr_list);
-@@ -47,7 +48,7 @@
- 			}
- 			#endif
- 		} else
--			return(-1);
-+			return(0);
- 	}
- 
- 	return (hostaddr);
-@@ -99,10 +100,10 @@
-     return nbits;
- }
- 
--void show_msg(int level, char *fmt, ...) {
--	va_list ap;
--	int saveerr;
--	extern char *progname;
-+void show_msg(int level, const char *fmt, ...) {
-+   va_list ap;
-+   int saveerr;
-+/*   extern char *progname; */
-    char timestring[20];
-    time_t timestamp;
- 
-@@ -128,7 +129,7 @@
-       fprintf(logfile, "%s ", timestring);
-    }
- 
--   // fputs(progname, logfile);
-+   /* fputs(progname, logfile); */
- 
-    if (logstamp) {
-       fprintf(logfile, "(%d)", getpid());
-Only in /home/robert/Development/tork/src/tsocks/: common.c~
-diff -u -x Makefile.am -x Makefile.in -x configure -x INSTALL -x README.TORDNS -x COPYING -x Changelog -x Doxyfile -x FAQ -x TODO /backup/robert/Development/torsocks/common.h /home/robert/Development/tork/src/tsocks/common.h
---- /backup/robert/Development/torsocks/common.h	2008-06-15 10:43:02.000000000 +0100
-+++ /home/robert/Development/tork/src/tsocks/common.h	2007-11-02 20:23:55.000000000 +0000
-@@ -1,7 +1,7 @@
- /* Common functions provided in common.c */
- 
- void set_log_options(int, char *, int);
--void show_msg(int level, char *, ...);
-+void show_msg(int level, const char *, ...);
- int count_netmask_bits(uint32_t mask);
- unsigned int resolve_ip(char *, int, int);
- 
-Only in /home/robert/Development/tork/src/tsocks/: common.lo
-Only in /backup/robert/Development/torsocks: config.guess
-Only in /backup/robert/Development/torsocks: config.h.in
-Only in /backup/robert/Development/torsocks: config.status
-Only in /backup/robert/Development/torsocks: config.sub
-Only in /backup/robert/Development/torsocks: configure.in
-diff -u -x Makefile.am -x Makefile.in -x configure -x INSTALL -x README.TORDNS -x COPYING -x Changelog -x Doxyfile -x FAQ -x TODO /backup/robert/Development/torsocks/dead_pool.c /home/robert/Development/tork/src/tsocks/dead_pool.c
---- /backup/robert/Development/torsocks/dead_pool.c	2008-06-15 10:43:02.000000000 +0100
-+++ /home/robert/Development/tork/src/tsocks/dead_pool.c	2008-04-05 22:35:46.000000000 +0100
-@@ -1,5 +1,6 @@
- #include <stdio.h>
- #include <sys/socket.h>
-+#include <sys/types.h>
- #include <netinet/in.h>
- #include <arpa/inet.h>
- #include <netdb.h>
-@@ -29,10 +30,11 @@
- }
- 
- dead_pool *
--init_pool(int pool_size, struct in_addr deadrange_base, 
-+init_pool(unsigned int pool_size, struct in_addr deadrange_base, 
-     struct in_addr deadrange_mask, char *sockshost, uint16_t socksport)
- {
--    int i, deadrange_bits, deadrange_width, deadrange_size;
-+    unsigned int i, deadrange_size, deadrange_width;
-+    int deadrange_bits;
-     struct in_addr socks_server;
-     dead_pool *newpool = NULL;
- 
-@@ -182,7 +184,7 @@
- int 
- search_pool_for_name(dead_pool *pool, const char *name) 
- {
--  int i;
-+  unsigned int i;
-   for(i=0; i < pool->n_entries; i++){
-     if(strcmp(name, pool->entries[i].name) == 0){
-       return i;
-@@ -194,7 +196,7 @@
- char *
- get_pool_entry(dead_pool *pool, struct in_addr *addr)
- {
--  int i;
-+  unsigned int i;
-   uint32_t intaddr = addr->s_addr;
- 
-   if(pool == NULL) {
-Only in /home/robert/Development/tork/src/tsocks/: dead_pool.c~
-diff -u -x Makefile.am -x Makefile.in -x configure -x INSTALL -x README.TORDNS -x COPYING -x Changelog -x Doxyfile -x FAQ -x TODO /backup/robert/Development/torsocks/dead_pool.h /home/robert/Development/tork/src/tsocks/dead_pool.h
---- /backup/robert/Development/torsocks/dead_pool.h	2008-06-15 10:43:02.000000000 +0100
-+++ /home/robert/Development/tork/src/tsocks/dead_pool.h	2007-11-02 20:59:58.000000000 +0000
-@@ -1,7 +1,7 @@
- #ifndef _DEAD_POOL_H
- #define _DEAD_POOL_H
- 
--#include <config.h>
-+#include <config.h>
- 
- extern int (*realconnect)(CONNECT_SIGNATURE);
- extern int (*realclose)(CLOSE_SIGNATURE);
-@@ -16,7 +16,7 @@
- 
- struct struct_dead_pool {
-   pool_ent *entries;            /* Points to array of pool entries */
--  int n_entries;                /* Number of entries in the deadpool */
-+  unsigned int n_entries;       /* Number of entries in the deadpool */
-   unsigned int deadrange_base;  /* Deadrange start IP in host byte order */
-   unsigned int deadrange_mask;  /* Deadrange netmask in host byte order */
-   unsigned int deadrange_size;  /* Number of IPs in the deadrange */
-@@ -29,7 +29,7 @@
- 
- typedef struct struct_dead_pool dead_pool;
- 
--dead_pool *init_pool(int deadpool_size, struct in_addr deadrange_base, 
-+dead_pool *init_pool(unsigned int deadpool_size, struct in_addr deadrange_base, 
-     struct in_addr deadrange_mask, char *sockshost, uint16_t socksport);
- int is_dead_address(dead_pool *pool, uint32_t addr);
- char *get_pool_entry(dead_pool *pool, struct in_addr *addr);
-Only in /home/robert/Development/tork/src/tsocks/: dead_pool.lo
-Only in /home/robert/Development/tork/src/tsocks/: getpeername.patch
-Only in /home/robert/Development/tork/src/tsocks/: infiniteloop.patch
-diff -u -x Makefile.am -x Makefile.in -x configure -x INSTALL -x README.TORDNS -x COPYING -x Changelog -x Doxyfile -x FAQ -x TODO /backup/robert/Development/torsocks/inspectsocks.c /home/robert/Development/tork/src/tsocks/inspectsocks.c
---- /backup/robert/Development/torsocks/inspectsocks.c	2008-06-15 10:43:02.000000000 +0100
-+++ /home/robert/Development/tork/src/tsocks/inspectsocks.c	2008-04-05 22:36:40.000000000 +0100
-@@ -23,11 +23,11 @@
- */
- 
- /* Global configuration variables */ 
--char *progname = "inspectsocks";	   /* Name for error msgs      */
-+const char *progname = "inspectsocks";	   /* Name for error msgs      */
- int defaultport	= 1080;			   /* Default SOCKS port       */
- 
- /* Header Files */
--#include <config.h>
-+#include <config.h>
- #include <stdio.h>
- #include <stdlib.h>
- #include <unistd.h>
-@@ -35,6 +35,7 @@
- #include <sys/socket.h>
- #include <string.h>
- #include <strings.h>
-+#include <sys/types.h>
- #include <netinet/in.h>
- #include <arpa/inet.h>
- #include <errno.h>
-@@ -44,7 +45,7 @@
-                  int reqlen, void *rep, int replen);
- 
- int main(int argc, char *argv[]) {
--	char *usage = "Usage: <socks server name/ip> [portno]";
-+	const char *usage = "Usage: <socks server name/ip> [portno]";
- 	char req[9];
- 	char resp[100];
- 	unsigned short int portno = defaultport;
-@@ -68,7 +69,7 @@
- 			}
- 		case 2:
- 			if ((server.sin_addr.s_addr = resolve_ip(argv[1], 1,HOSTNAMES))
--                            ==  -1) {
-+                            ==  0) {
- 				show_msg(MSGERR, "Invalid IP/host specified (%s)\n", argv[1]);
- 				show_msg(MSGERR, "%s\n", usage);
- 				exit(1);
-Only in /home/robert/Development/tork/src/tsocks/: inspectsocks.c~
-Only in /home/robert/Development/tork/src/tsocks/: libtorksocks.la
-diff -u -x Makefile.am -x Makefile.in -x configure -x INSTALL -x README.TORDNS -x COPYING -x Changelog -x Doxyfile -x FAQ -x TODO /backup/robert/Development/torsocks/parser.c /home/robert/Development/tork/src/tsocks/parser.c
---- /backup/robert/Development/torsocks/parser.c	2008-06-15 10:43:02.000000000 +0100
-+++ /home/robert/Development/tork/src/tsocks/parser.c	2008-04-05 22:25:54.000000000 +0100
-@@ -12,7 +12,7 @@
- #include <stdio.h>
- #include <stdlib.h>
- #include <errno.h>
--#include <config.h>
-+#include <config.h>
- #include "common.h"
- #include "parser.h"
- 
-@@ -24,15 +24,15 @@
- static int check_server(struct serverent *);
- static int tokenize(char *, int, char *[]);
- static int handle_path(struct parsedfile *, int, int, char *[]);
--static int handle_endpath(struct parsedfile *, int, int, char *[]);
--static int handle_reaches(struct parsedfile *, int, char *);
-+static int handle_endpath(struct parsedfile *, int, int);
-+static int handle_reaches(int, char *);
- static int handle_server(struct parsedfile *, int, char *);
- static int handle_type(struct parsedfile *config, int, char *);
- static int handle_port(struct parsedfile *config, int, char *);
--static int handle_local(struct parsedfile *, int, char *);
-+static int handle_local(struct parsedfile *, int, const char *);
- static int handle_tordns_enabled(struct parsedfile *, int, char *);
--static int handle_tordns_deadpool_range(struct parsedfile *, int, char *);
--static int handle_tordns_cache_size(struct parsedfile *, int, char *);
-+static int handle_tordns_deadpool_range(struct parsedfile *, int, const char *);
-+static int handle_tordns_cache_size(struct parsedfile *, char *);
- static int handle_defuser(struct parsedfile *, int, char *);
- static int handle_defpass(struct parsedfile *, int, char *);
- static int make_netent(char *value, struct netent **ent);
-@@ -54,6 +54,7 @@
-    config->tordns_cache_size = 256;
-    config->tordns_enabled = 1;
- 
-+
- 	/* If a filename wasn't provided, use the default */
- 	if (filename == NULL) {
- 		strncpy(line, CONF_FILE, sizeof(line) - 1);
-@@ -62,15 +63,19 @@
- 		filename = line;
- 	}
- 
--	/* Read the configuration file */
-+	/* If there is no configuration file use reasonable defaults for Tor */
- 	if ((conf = fopen(filename, "r")) == NULL) {
- 		show_msg(MSGERR, "Could not open socks configuration file "
- 			   "(%s), assuming all networks local\n", filename);
--        handle_local(config, 0, "0.0.0.0/0.0.0.0");
-+        memset(&(config->defaultserver), 0x0, sizeof(config->defaultserver));
-+		check_server(&(config->defaultserver));
-+		handle_local(config, 0, "127.0.0.0/255.0.0.0");
-+/*        handle_local(config, 0, "0.0.0.0/0.0.0.0");*/
- 		rc = 1; /* Severe errors reading configuration */
- 	}	
- 	else {
--      memset(&(config->defaultserver), 0x0, sizeof(config->defaultserver));
-+
-+        memset(&(config->defaultserver), 0x0, sizeof(config->defaultserver));
- 
- 		while (NULL != fgets(line, MAXLINE, conf)) {
- 			/* This line _SHOULD_ end in \n so we  */
-@@ -82,11 +87,8 @@
- 		} 
- 		fclose(conf);
- 
--		if (!config->localnets) {
--                        /* Use 127.0.0.1/255.0.0.0 by default */
--                        handle_local(config, 0, "127.0.0.0/255.0.0.0");
--                }
--
-+		/* Always add the 127.0.0.1/255.0.0.0 subnet to local */
-+		handle_local(config, 0, "127.0.0.0/255.0.0.0");
- 
- 		/* Check default server */
- 		check_server(&(config->defaultserver));
-@@ -108,9 +110,14 @@
- /* Check server entries (and establish defaults) */
- static int check_server(struct serverent *server) {
- 
--	/* Default to the default SOCKS port */
-+	/* Default to the default Tor Socks port */
- 	if (server->port == 0) {
--		server->port = 1080;
-+		server->port = 9050;
-+	}
-+
-+	/* Default to a presumably local installation of Tor */
-+	if (server->address == NULL) {
-+		server->address = strdup("127.0.0.1");
- 	}
- 
- 	/* Default to SOCKS V4 */
-@@ -137,7 +144,7 @@
- 	/* Set the spare slots to an empty string to simplify */
- 	/* processing                                         */
- 	for (i = nowords; i < 10; i++) 
--		words[i] = "";
-+		words[i] = NULL;
- 
- 	if (nowords > 0) {
- 		/* Now this can either be a "path" block starter or */
-@@ -146,7 +153,7 @@
- 		if (!strcmp(words[0], "path")) {
- 			handle_path(config, lineno, nowords, words);
- 		} else if (!strcmp(words[0], "}")) {
--			handle_endpath(config, lineno, nowords, words);
-+			handle_endpath(config, lineno, nowords);
- 		} else {
- 			/* Has to be a pair */
- 			if ((nowords != 3) || (strcmp(words[1], "="))) {
-@@ -154,7 +161,7 @@
- 					   "on line %d in configuration "
- 					   "file, \"%s\"\n", lineno, savedline);
- 			} else if (!strcmp(words[0], "reaches")) {
--				handle_reaches(config, lineno, words[2]);
-+				handle_reaches(lineno, words[2]);
- 			} else if (!strcmp(words[0], "server")) {
- 				handle_server(config, lineno, words[2]);
- 			} else if (!strcmp(words[0], "server_port")) {
-@@ -172,7 +179,7 @@
-             } else if (!strcmp(words[0], "tordns_deadpool_range")) {
-                 handle_tordns_deadpool_range(config, lineno, words[2]);
-             } else if (!strcmp(words[0], "tordns_cache_size")) {
--                handle_tordns_cache_size(config, lineno, words[2]);
-+                handle_tordns_cache_size(config, words[2]);
-             } else {
- 				show_msg(MSGERR, "Invalid pair type (%s) specified "
- 					   "on line %d in configuration file, "
-@@ -244,7 +251,7 @@
- 	return(0);
- }
- 
--static int handle_endpath(struct parsedfile *config, int lineno, int nowords, char *words[]) {
-+static int handle_endpath(struct parsedfile *config, int lineno, int nowords) {
- 
- 	if (nowords != 1) {
- 		show_msg(MSGERR, "Badly formed path close statement on line "
-@@ -261,7 +268,7 @@
- 	return(0);
- }
- 
--static int handle_reaches(struct parsedfile *config, int lineno, char *value) {
-+static int handle_reaches(int lineno, char *value) {
- 	int rc;
- 	struct netent *ent;
- 
-@@ -465,7 +472,7 @@
-     return 0;
- }
- 
--static int handle_tordns_cache_size(struct parsedfile *config, int lineno,
-+static int handle_tordns_cache_size(struct parsedfile *config,
-                            char *value)
- {
-     char *endptr;
-@@ -489,7 +496,7 @@
- }
- 
- static int handle_tordns_deadpool_range(struct parsedfile *config, int lineno, 
--                           char *value)
-+                           const char *value)
- {
-     int rc;
-     struct netent *ent;
-@@ -508,7 +515,7 @@
-         return(0);
-     }
- 
--    rc = make_netent(value, &ent);
-+    rc = make_netent((char *)value, &ent);
-     /* This is copied from handle_local and should probably be folded into
-        a generic whinge() function or something */
-     switch(rc) {
-@@ -559,7 +566,7 @@
-     return 0;
- }
- 
--static int handle_local(struct parsedfile *config, int lineno, char *value) {
-+static int handle_local(struct parsedfile *config, int lineno, const char *value) {
- 	int rc;
- 	struct netent *ent;
- 
-@@ -571,7 +578,7 @@
- 		return(0);
- 	}
- 
--	rc = make_netent(value, &ent);
-+	rc = make_netent((char *)value, &ent);
- 	switch(rc) {
- 		case 1:
- 			show_msg(MSGERR, "Local network specification (%s) is not validly "
-@@ -777,7 +784,7 @@
- /* standard strsep and this function is that this one will          */
- /* set *separator to the character separator found if it isn't null */
- char *strsplit(char *separator, char **text, const char *search) {
--   int len;
-+   unsigned int len;
-    char *ret;
- 
-    ret = *text;
-Only in /home/robert/Development/tork/src/tsocks/: parser.c~
-diff -u -x Makefile.am -x Makefile.in -x configure -x INSTALL -x README.TORDNS -x COPYING -x Changelog -x Doxyfile -x FAQ -x TODO /backup/robert/Development/torsocks/parser.h /home/robert/Development/tork/src/tsocks/parser.h
---- /backup/robert/Development/torsocks/parser.h	2008-06-15 10:43:02.000000000 +0100
-+++ /home/robert/Development/tork/src/tsocks/parser.h	2007-11-02 21:00:20.000000000 +0000
-@@ -35,7 +35,7 @@
-    struct serverent *paths;
-    int tordns_enabled;
-    int tordns_failopen;
--   int tordns_cache_size;
-+   unsigned int tordns_cache_size;
-    struct netent *tordns_deadpool_range;
- };
- 
-Only in /home/robert/Development/tork/src/tsocks/: parser.lo
-Only in /home/robert/Development/tork/src/tsocks/: soname.diff
-Only in /home/robert/Development/tork/src/tsocks/: stamp-h2
-Only in /home/robert/Development/tork/src/tsocks/: tork-tsocks.conf
-Only in /home/robert/Development/tork/src/tsocks/: torkify
-Only in /home/robert/Development/tork/src/tsocks/: torkify.1
-Only in /home/robert/Development/tork/src/tsocks/: torkify.in
-Only in /backup/robert/Development/torsocks: torksock.diff
-Only in /home/robert/Development/tork/src/tsocks/: torksocks
-Only in /home/robert/Development/tork/src/tsocks/: torksocks.1
-Only in /home/robert/Development/tork/src/tsocks/: torksocks.8
-Only in /home/robert/Development/tork/src/tsocks/: torksocks.announce
-Only in /home/robert/Development/tork/src/tsocks/: torksocks.conf.5
-Only in /backup/robert/Development/torsocks: torksocks.diff
-Only in /home/robert/Development/tork/src/tsocks/: torksocks.in
-Only in /home/robert/Development/tork/src/tsocks/: torksocks.in~
-Only in /backup/robert/Development/torsocks: torksocks2.diff
-Only in /backup/robert/Development/torsocks: torksockscols.diff
-Only in /backup/robert/Development/torsocks: tsocks
-Only in /backup/robert/Development/torsocks: tsocks.1
-Only in /backup/robert/Development/torsocks: tsocks.8
-Only in /backup/robert/Development/torsocks: tsocks.announce
-diff -u -x Makefile.am -x Makefile.in -x configure -x INSTALL -x README.TORDNS -x COPYING -x Changelog -x Doxyfile -x FAQ -x TODO /backup/robert/Development/torsocks/tsocks.c /home/robert/Development/tork/src/tsocks/tsocks.c
---- /backup/robert/Development/torsocks/tsocks.c	2008-06-15 10:43:01.000000000 +0100
-+++ /home/robert/Development/tork/src/tsocks/tsocks.c	2008-06-14 20:11:26.000000000 +0100
-@@ -21,14 +21,14 @@
- */
- 
- /* PreProcessor Defines */
--#include <config.h>
-+#include <config.h>
- 
- #ifdef USE_GNU_SOURCE
- #define _GNU_SOURCE
- #endif
- 
- /* Global configuration variables */
--char *progname = "libtsocks";         	   /* Name used in err msgs    */
-+const char *progname = "libtsocks";         	   /* Name used in err msgs    */
- 
- /* Header Files */
- #include <stdio.h>
-@@ -39,6 +39,7 @@
- #include <sys/socket.h>
- #include <string.h>
- #include <strings.h>
-+#include <sys/types.h>
- #include <netinet/in.h>
- #include <arpa/inet.h>
- #include <sys/poll.h>
-@@ -76,7 +77,7 @@
- static char *conffile = NULL;
- 
- /* Exported Function Prototypes */
--void _init(void);
-+void __attribute__ ((constructor)) tsocks_init(void);
- int connect(CONNECT_SIGNATURE);
- int select(SELECT_SIGNATURE);
- int poll(POLL_SIGNATURE);
-@@ -114,11 +115,11 @@
- static int read_socksv5_connect(struct connreq *conn);
- static int read_socksv5_auth(struct connreq *conn);
- #ifdef USE_TOR_DNS
--static int deadpool_init();
-+static int deadpool_init(void);
- static int send_socksv4a_request(struct connreq *conn, const char *onion_host);
- #endif
- 
--void _init(void) {
-+void tsocks_init(void) {
- #ifdef USE_OLD_DLSYM
- 	void *lib;
- #endif
-@@ -139,50 +140,49 @@
- 	#ifdef USE_SOCKS_DNS
- 	realresinit = dlsym(RTLD_NEXT, "res_init");
- 	#endif
--        #ifdef USE_TOR_DNS
--	realgethostbyname = dlsym(RTLD_NEXT, "gethostbyname");
--	realgetaddrinfo = dlsym(RTLD_NEXT, "getaddrinfo");
--	realgetipnodebyname = dlsym(RTLD_NEXT, "getipnodebyname");
--        #endif
-+    #ifdef USE_TOR_DNS
-+    realgethostbyname = dlsym(RTLD_NEXT, "gethostbyname");
-+    realgetaddrinfo = dlsym(RTLD_NEXT, "getaddrinfo");
-+    realgetipnodebyname = dlsym(RTLD_NEXT, "getipnodebyname");
-+    #endif
- #else
- 	lib = dlopen(LIBCONNECT, RTLD_LAZY);
- 	realconnect = dlsym(lib, "connect");
- 	realselect = dlsym(lib, "select");
- 	realpoll = dlsym(lib, "poll");
--	realgetpeername = dlsym(lib, "getpeername");
- 	#ifdef USE_SOCKS_DNS
- 	realresinit = dlsym(lib, "res_init");
- 	#endif
--	#ifdef USE_TOR_DNS
--	realgethostbyname = dlsym(lib, "gethostbyname");
--	realgetaddrinfo = dlsym(lib, "getaddrinfo");
--	realgetipnodebyname = dlsym(RTLD_NEXT, "getipnodebyname");
--        #endif
--	dlclose(lib);
-+    #ifdef USE_TOR_DNS
-+    realgethostbyname = dlsym(lib, "gethostbyname");
-+    realgetaddrinfo = dlsym(lib, "getaddrinfo");
-+    realgetipnodebyname = dlsym(RTLD_NEXT, "getipnodebyname");
-+    #endif
-+    dlclose(lib);	
- 	lib = dlopen(LIBC, RTLD_LAZY);
- 	realclose = dlsym(lib, "close");
--	dlclose(lib);
-+	dlclose(lib);	
- #endif
- #ifdef USE_TOR_DNS
--     /* Unfortunately, we can't do this lazily because otherwise our mmap'd
--        area won't be shared across fork()s. */
--     deadpool_init();
--#endif
--
-+    /* Unfortunately, we can't do this lazily because otherwise our mmap'd
-+       area won't be shared across fork()s. */
-+    deadpool_init();
-+#endif 
- }
- 
- static int get_environment() {
-    static int done = 0;
-+#ifdef ALLOW_MSG_OUTPUT
-    int loglevel = MSGERR;
-    char *logfile = NULL;
-    char *env;
--
-+#endif
-    if (done)
-       return(0);
- 
-    /* Determine the logging level */
- #ifndef ALLOW_MSG_OUTPUT
--   set_log_options(-1, stderr, 0);
-+   set_log_options(-1, (char *)stderr, 0);
- #else
-    if ((env = getenv("TSOCKS_DEBUG")))
-       loglevel = atoi(env);
-@@ -212,7 +212,7 @@
-    config = malloc(sizeof(*config));
-    if (!config)
-       return(0);
--	read_config(conffile, config);
-+   read_config(conffile, config);
-    if (config->paths)
-       show_msg(MSGDEBUG, "First lineno for first path is %d\n", config->paths->lineno);
- 
-@@ -222,14 +222,15 @@
- }
- 
- int connect(CONNECT_SIGNATURE) {
--	struct sockaddr_in *connaddr;
--	struct sockaddr_in peer_address;
--	struct sockaddr_in server_address;
--   int gotvalidserver = 0, rc, namelen = sizeof(peer_address);
--	int sock_type = -1;
--	int sock_type_len = sizeof(sock_type);
--	unsigned int res = -1;
--	struct serverent *path;
-+   struct sockaddr_in *connaddr;
-+   struct sockaddr_in peer_address;
-+   struct sockaddr_in server_address;
-+   int gotvalidserver = 0, rc;
-+   unsigned int namelen = sizeof(peer_address);
-+   int sock_type = -1;
-+   unsigned int sock_type_len = sizeof(sock_type);
-+   int res = -1;
-+   struct serverent *path;
-    struct connreq *newconn;
- 
-    get_environment();
-@@ -248,6 +249,14 @@
- 	getsockopt(__fd, SOL_SOCKET, SO_TYPE, 
- 		   (void *) &sock_type, &sock_type_len);
- 
-+    show_msg(MSGDEBUG, "sin_family: %i "
-+                        "\n",
-+                     connaddr->sin_family);
-+
-+    show_msg(MSGDEBUG, "sockopt: %i "
-+                        "\n",
-+                     sock_type);
-+
- 	/* If this isn't an INET socket for a TCP stream we can't  */
- 	/* handle it, just call the real connect now               */
-    if ((connaddr->sin_family != AF_INET) ||
-@@ -564,7 +573,8 @@
- 
- int poll(POLL_SIGNATURE) {
-    int nevents = 0;
--   int rc = 0, i;
-+   int rc = 0;
-+   unsigned int i;
-    int setevents = 0;
-    int monitoring = 0;
-    struct connreq *conn, *nextconn;
-@@ -1354,7 +1364,7 @@
- #endif
- 
- #ifdef USE_TOR_DNS
--static int deadpool_init()
-+static int deadpool_init(void)
- {
-   if(!pool) {
-       get_environment();
-Only in /home/robert/Development/tork/src/tsocks/: tsocks.c.rej
-Only in /backup/robert/Development/torsocks: tsocks.conf.5
-Only in /home/robert/Development/tork/src/tsocks/: tsocks.c~
-diff -u -x Makefile.am -x Makefile.in -x configure -x INSTALL -x README.TORDNS -x COPYING -x Changelog -x Doxyfile -x FAQ -x TODO /backup/robert/Development/torsocks/tsocks.h /home/robert/Development/tork/src/tsocks/tsocks.h
---- /backup/robert/Development/torsocks/tsocks.h	2008-06-15 10:43:01.000000000 +0100
-+++ /home/robert/Development/tork/src/tsocks/tsocks.h	2007-11-02 20:35:02.000000000 +0000
-@@ -50,8 +50,8 @@
-    int selectevents;
- 
-    /* Buffer for sending and receiving on the socket */
--   int datalen;
--   int datadone;
-+   unsigned int datalen;
-+   unsigned int datadone;
-    char buffer[2048];
- 
-    struct connreq *next;
-Only in /backup/robert/Development/torsocks: tsocks.kdevelop
-Only in /backup/robert/Development/torsocks: tsocks.kdevelop.pcs
-Only in /backup/robert/Development/torsocks: tsocks.kdevses
-Only in /home/robert/Development/tork/src/tsocks/: tsocks.lo
-diff -u -x Makefile.am -x Makefile.in -x configure -x INSTALL -x README.TORDNS -x COPYING -x Changelog -x Doxyfile -x FAQ -x TODO /backup/robert/Development/torsocks/validateconf.c /home/robert/Development/tork/src/tsocks/validateconf.c
---- /backup/robert/Development/torsocks/validateconf.c	2008-06-15 10:43:01.000000000 +0100
-+++ /home/robert/Development/tork/src/tsocks/validateconf.c	2008-04-05 22:36:40.000000000 +0100
-@@ -23,16 +23,17 @@
- */
- 
- /* Global configuration variables */ 
--char *progname = "validateconf";	      /* Name for error msgs      */
-+const char *progname = "validateconf";	      /* Name for error msgs      */
- 
- /* Header Files */
--#include <config.h>
-+#include <config.h>
- #include <stdio.h>
- #include <stdlib.h>
- #include <unistd.h>
- #include <sys/types.h>
- #include <sys/socket.h>
- #include <string.h>
-+#include <sys/types.h>
- #include <netinet/in.h>
- #include <arpa/inet.h>
- #include <errno.h>
-@@ -44,7 +45,7 @@
- void test_host(struct parsedfile *config, char *);
- 
- int main(int argc, char *argv[]) {
--	char *usage = "Usage: [-f conf file] [-t hostname/ip[:port]]"; 
-+	const char *usage = "Usage: [-f conf file] [-t hostname/ip[:port]]"; 
- 	char *filename = NULL;
- 	char *testhost = NULL;
-    struct parsedfile config;
-@@ -103,7 +104,7 @@
-    }
- 
- 	/* First resolve the host to an ip */
--	if ((hostaddr.s_addr = resolve_ip(hostname, 0, 1)) == -1) {
-+	if ((hostaddr.s_addr = resolve_ip(hostname, 0, 1)) == 0) {
- 		fprintf(stderr, "Error: Cannot resolve %s\n", host);
- 		return;
- 	} else {
-@@ -187,13 +188,13 @@
- 	if (server->address != NULL) 
- 		printf("Server:       %s (%s)\n", server->address, 
- 	       		((res.s_addr = resolve_ip(server->address, 0, 
--						  HOSTNAMES)) == -1 
-+						  HOSTNAMES)) == 0 
- 			 ? "Invalid!" : inet_ntoa(res)));
- 	else
- 		printf("Server:       ERROR! None specified\n");
- 
- 	/* Check the server is on a local net */
--	if ((server->address != NULL) && (res.s_addr != -1) && 
-+	if ((server->address != NULL) && (res.s_addr != 0) && 
- 	    (is_local(config, &res))) 
- 		fprintf(stderr, "Error: Server is not on a network "
- 				"specified as local\n");
-Only in /home/robert/Development/tork/src/tsocks/: validateconf.c~
diff --git a/patches/conffile.patch b/patches/conffile.patch
deleted file mode 100644
index 1dd6491..0000000
--- a/patches/conffile.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- tsocks.8.~1~        2002-03-16 05:20:51.000000000 -0500
-+++ tsocks.8    2005-06-03 08:37:39.000000000 -0400
-@@ -59,7 +59,7 @@
- variables as follows: 
- 
- .TP
--.I TSOCKS_CONFFILE
-+.I TSOCKS_CONF_FILE
- This environment variable overrides the default location of the tsocks 
- configuration file. This variable is not honored if the program tsocks
- is embedded in is setuid. In addition this environment variable can
diff --git a/patches/getaddrbyhost.patch b/patches/getaddrbyhost.patch
deleted file mode 100644
index 29b2234..0000000
--- a/patches/getaddrbyhost.patch
+++ /dev/null
@@ -1,696 +0,0 @@
-Index: common.c
-===================================================================
-RCS file: /cvsroot/tork/torsocks/common.c,v
-retrieving revision 1.2
-diff -p -U3 -r1.2 common.c
---- common.c	15 Jun 2008 10:01:03 -0000	1.2
-+++ common.c	18 Jun 2008 21:21:34 -0000
-@@ -26,6 +26,52 @@ char logfilename[256];    /* Name of fil
- FILE *logfile = NULL;     /* File to which messages should be logged */
- int logstamp = 0;         /* Timestamp (and pid stamp) messages */
- 
-+
-+/**
-+ * Read a 16-bit value beginning at <b>cp</b>.  Equivalent to
-+ * *(uint16_t*)(cp), but will not cause segfaults on platforms that forbid
-+ * unaligned memory access.
-+ */
-+uint16_t
-+get_uint16(const char *cp)
-+{
-+  uint16_t v;
-+  memcpy(&v,cp,2);
-+  return v;
-+}
-+/**
-+ * Read a 32-bit value beginning at <b>cp</b>.  Equivalent to
-+ * *(uint32_t*)(cp), but will not cause segfaults on platforms that forbid
-+ * unaligned memory access.
-+ */
-+uint32_t
-+get_uint32(const char *cp)
-+{
-+  uint32_t v;
-+  memcpy(&v,cp,4);
-+  return v;
-+}
-+/**
-+ * Set a 16-bit value beginning at <b>cp</b> to <b>v</b>. Equivalent to
-+ * *(uint16_t)(cp) = v, but will not cause segfaults on platforms that forbid
-+ * unaligned memory access. */
-+void
-+set_uint16(char *cp, uint16_t v)
-+{
-+  memcpy(cp,&v,2);
-+}
-+/**
-+ * Set a 32-bit value beginning at <b>cp</b> to <b>v</b>. Equivalent to
-+ * *(uint32_t)(cp) = v, but will not cause segfaults on platforms that forbid
-+ * unaligned memory access. */
-+void
-+set_uint32(char *cp, uint32_t v)
-+{
-+  memcpy(cp,&v,4);
-+}
-+
-+
-+
- unsigned int resolve_ip(char *host, int showmsg, int allownames) {
- 	struct hostent *new;
- 	unsigned int	hostaddr;
-Index: dead_pool.c
-===================================================================
-RCS file: /cvsroot/tork/torsocks/dead_pool.c,v
-retrieving revision 1.2
-diff -p -U3 -r1.2 dead_pool.c
---- dead_pool.c	15 Jun 2008 10:02:41 -0000	1.2
-+++ dead_pool.c	18 Jun 2008 21:21:35 -0000
-@@ -15,7 +15,8 @@ void get_next_dead_address(dead_pool *po
- 
- static int
- do_resolve(const char *hostname, uint32_t sockshost, uint16_t socksport,
--           uint32_t *result_addr);
-+           uint32_t *result_addr, const void *addr,
-+           int version, int reverse, char **result_hostname);
- 
- /* Compares the last strlen(s2) characters of s1 with s2.  Returns as for
-    strcasecmp. */
-@@ -77,6 +78,8 @@ init_pool(unsigned int pool_size, struct
-         return NULL;
-     }
- 
-+    show_msg(MSGWARN, "init_pool: sockshost %s ", sockshost);
-+
-     /* Initialize the dead_pool structure */
- #ifdef HAVE_INET_ATON
-     inet_aton(sockshost, &socks_server);
-@@ -139,6 +142,7 @@ store_pool_entry(dead_pool *pool, char *
-   int oldpos;
-   int rc;
-   uint32_t intaddr;
-+  char *result_hostname;
- 
-   show_msg(MSGDEBUG, "store_pool_entry: storing '%s'\n", hostname);
-   show_msg(MSGDEBUG, "store_pool_entry: write pos is: %d\n", pool->write_pos);
-@@ -156,7 +160,9 @@ store_pool_entry(dead_pool *pool, char *
-   if(strcasecmpend(hostname, ".onion") == 0) {
-       get_next_dead_address(pool, &pool->entries[position].ip);
-   } else {
--      rc = do_resolve(hostname, pool->sockshost, pool->socksport, &intaddr);
-+      rc = do_resolve(hostname, pool->sockshost, pool->socksport, &intaddr, 0,
-+                  4 /*SOCKS5*/, 0 /*Reverse*/, &result_hostname);
-+
-       if(rc != 0) {
-           show_msg(MSGWARN, "failed to resolve: %s\n", hostname);
-           return -1;
-@@ -237,7 +243,32 @@ build_socks4a_resolve_request(char **out
-   return len;
- }
- 
-+static int
-+build_socks5_resolve_ptr_request(char **out, const void *_addr)
-+{
-+  size_t len;
-+  const struct in_addr *addr=_addr;
-+
-+  len = 12;
-+  *out = malloc(len);
-+  (*out)[0] = 5;      /* SOCKS version 5 */
-+  (*out)[1] = '\xF1'; /* Command: reverse resolve.
-+                         see doc/socks-extensions.txt*/
-+  (*out)[2] = '\x00'; /* RSV */
-+  (*out)[3] = '\x01'; /* ATYP: IP V4 address: X'01' */
-+
-+  set_uint32((*out)+4, addr->s_addr);/*IP*/
-+  set_uint16((*out)+4+4, 0); /* port */
-+
-+//   memcpy((*out)+4, &addr.s_addr,4); /*IP*/
-+//   memcpy((*out)+4+4, *(uint32_t)0, 2); /* port */
-+
-+  return len;
-+}
-+
- #define RESPONSE_LEN 8
-+#define SOCKS5_LEN 4
-+#define METHODRESPONSE_LEN 2
- 
- static int
- parse_socks4a_resolve_response(const char *response, size_t len,
-@@ -272,43 +303,188 @@ parse_socks4a_resolve_response(const cha
- }
- 
- static int
-+parse_socks5_resolve_ptr_response(int s,const char *response, size_t len,
-+                               uint32_t *result_addr, char ***result_hostname)
-+{
-+    char reply_buf[4];
-+    int r;
-+
-+    len=0;
-+    while (len < SOCKS5_LEN) {
-+      r = recv(s, reply_buf+len, SOCKS5_LEN-len, 0);
-+      if (r==0) {
-+        show_msg(MSGWARN, "do_resolve: EOF while reading SOCKS5 response\n"); 
-+        return -1;
-+      }
-+      if (r<0) {
-+        show_msg(MSGWARN, "do_resolve: error reading SOCKS5 response\n"); 
-+        return -1;
-+      }
-+      len += r;
-+    }
-+
-+    if (reply_buf[0] != 5) {
-+      show_msg(MSGWARN, "Bad SOCKS5 reply version.");
-+      return -1;
-+    }
-+    if (reply_buf[1] != 0) {
-+      show_msg(MSGWARN,"Got status response '%u': SOCKS5 request failed.",
-+               (unsigned)reply_buf[1]);
-+      return -1;
-+    }
-+    if (reply_buf[3] == 1) {
-+      /* IPv4 address */
-+      len=0;
-+      while (len < SOCKS5_LEN) {
-+        r = recv(s, reply_buf+len, SOCKS5_LEN-len, 0);
-+        if (r==0) {
-+          show_msg(MSGWARN, "do_resolve: EOF while reading SOCKS5 response\n"); 
-+          return -1;
-+        }
-+        if (r<0) {
-+          show_msg(MSGWARN, "do_resolve: error reading address in SOCKS5 response\n"); 
-+          return -1;
-+        }
-+        len += r;
-+      }
-+      *result_addr = ntohl(get_uint32(reply_buf));
-+    } else if (reply_buf[3] == 3) {
-+      size_t result_len;
-+      len=0;
-+      while (len < 1) {
-+        r = recv(s, reply_buf+len, 1-len, 0);
-+        if (r==0) {
-+          show_msg(MSGWARN, "do_resolve: EOF while reading SOCKS5 response\n"); 
-+          return -1;
-+        }
-+        if (r<0) {
-+          show_msg(MSGWARN, "do_resolve: error reading address length in SOCKS5 response\n"); 
-+          return -1;
-+        }
-+        len += r;
-+      }
-+      result_len = *(uint8_t*)(reply_buf);
-+      **result_hostname = malloc(result_len+1);
-+      len=0;
-+      while (len < (int) result_len) {
-+        r = recv(s, **result_hostname+len, result_len-len, 0);
-+        if (r==0) {
-+          show_msg(MSGWARN, "do_resolve: EOF while reading SOCKS5 response\n"); 
-+          return -1;
-+        }
-+        if (r<0) {
-+          show_msg(MSGWARN, "do_resolve: error reading hostname in SOCKS5 response\n");
-+          return -1;
-+        }
-+        len += r;
-+      }
-+
-+      (**result_hostname)[result_len] = '\0';
-+    }
-+
-+  return 0;
-+}
-+
-+static int
- do_resolve(const char *hostname, uint32_t sockshost, uint16_t socksport,
--           uint32_t *result_addr)
-+           uint32_t *result_addr, const void *addr,
-+           int version, int reverse, char **result_hostname)
- {
-   int s;
-   struct sockaddr_in socksaddr;
--  char *req, *cp;
--  int r, len;
-+  char *req, *cp=NULL;
-+  int r, len, hslen;
-   char response_buf[RESPONSE_LEN];
-+  const char *handshake="\x05\x01\x00";
- 
-   show_msg(MSGDEBUG, "do_resolve: resolving %s\n", hostname);
- 
-+  /* Create SOCKS connection */
-   s = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);
-   if (s<0) {
-     show_msg(MSGWARN, "do_resolve: problem creating socket\n"); 
-     return -1;
-   }
- 
-+  /* Connect to SOCKS server */
-   memset(&socksaddr, 0, sizeof(socksaddr));
-   socksaddr.sin_family = AF_INET;
-   socksaddr.sin_port = htons(socksport);
-   socksaddr.sin_addr.s_addr = htonl(sockshost);
-   if (realconnect(s, (struct sockaddr*)&socksaddr, sizeof(socksaddr))) {
-     show_msg(MSGWARN, "do_resolve: error connecting to SOCKS server\n");
-+    realclose(s);
-     return -1;
-   }
- 
--  if ((len = build_socks4a_resolve_request(&req, "", hostname))<0) {
--    show_msg(MSGWARN, "do_resolve: error generating SOCKS request\n"); 
--    return -1;
-+  /* If a SOCKS5 connection, perform handshake */
-+  if (version == 5) {
-+    char method_buf[2];
-+    hslen=3;
-+    while (hslen) {
-+      r = send(s, handshake, hslen, 0);
-+      if (r<0) {
-+        show_msg(MSGWARN, "do_resolve: error sending SOCKS5 method list.\n");
-+        realclose(s);
-+        return -1;
-+      }
-+      hslen -= r;
-+      handshake += r;
-+    }
-+
-+    len = 0;
-+    while (len < METHODRESPONSE_LEN) {
-+      r = recv(s, method_buf+len, METHODRESPONSE_LEN-len, 0);
-+      if (r==0) {
-+        show_msg(MSGWARN, "do_resolve: EOF while reading SOCKS response\n");
-+        realclose(s);
-+        return -1;
-+      }
-+      if (r<0) {
-+        show_msg(MSGWARN, "do_resolve: error reading SOCKS response\n");
-+        realclose(s);
-+        return -1;
-+      }
-+      len += r;
-+    }
-+
-+    if (method_buf[0] != '\x05') {
-+      show_msg(MSGWARN, "Unrecognized socks version: %u",
-+              (unsigned)method_buf[0]);
-+      realclose(s);
-+      return -1;
-+    }
-+    if (method_buf[1] != '\x00') {
-+      show_msg(MSGWARN, "Unrecognized socks authentication method: %u",
-+              (unsigned)method_buf[1]);
-+      realclose(s);
-+      return -1;
-+    }
-+  }
-+
-+  /* Create SOCKS request */
-+  if (reverse) {
-+    if ((len = build_socks5_resolve_ptr_request(&req, addr))<0) {
-+      show_msg(MSGWARN, "do_resolve: error generating reverse SOCKS request\n");
-+      realclose(s);
-+      return -1;
-+    }
-+  }else{
-+    if ((len = build_socks4a_resolve_request(&req, "", hostname))<0) {
-+      show_msg(MSGWARN, "do_resolve: error generating SOCKS request\n");
-+      realclose(s);
-+      return -1;
-+    }
-   }
- 
-+  /* Send SOCKS request */
-   cp = req;
-   while (len) {
-     r = send(s, cp, len, 0);
-     if (r<0) {
-       show_msg(MSGWARN, "do_resolve: error sending SOCKS request\n"); 
-       free(req);
-+      realclose(s);
-       return -1;
-     }
-     len -= r;
-@@ -316,26 +492,40 @@ do_resolve(const char *hostname, uint32_
-   }
-   free(req);
- 
--  len = 0;
--  while (len < RESPONSE_LEN) {
--    r = recv(s, response_buf+len, RESPONSE_LEN-len, 0);
--    if (r==0) {
--      show_msg(MSGWARN, "do_resolve: EOF while reading SOCKS response\n"); 
-+  /* Handle SOCKS Response */
-+  if (reverse) {
-+    if (parse_socks5_resolve_ptr_response(s, response_buf, RESPONSE_LEN,
-+                                          result_addr, &result_hostname) < 0){
-+      show_msg(MSGWARN, "do_resolve: error parsing SOCKS response\n");
-+      realclose(s);
-       return -1;
-     }
--    if (r<0) {
--      show_msg(MSGWARN, "do_resolve: error reading SOCKS response\n"); 
-+  }else{
-+    /* Process SOCKS response */
-+    len = 0;
-+    while (len < RESPONSE_LEN) {
-+      r = recv(s, response_buf+len, RESPONSE_LEN-len, 0);
-+      if (r==0) {
-+        show_msg(MSGWARN, "do_resolve: EOF while reading SOCKS response\n");
-+        realclose(s);
-+        return -1;
-+      }
-+      if (r<0) {
-+        show_msg(MSGWARN, "do_resolve: error reading SOCKS response\n");
-+        realclose(s);
-+        return -1;
-+      }
-+      len += r;
-+    }
-+    realclose(s);
-+
-+    /* Parse SOCKS response */
-+    if (parse_socks4a_resolve_response(response_buf, RESPONSE_LEN, result_addr) < 0){
-+      show_msg(MSGWARN, "do_resolve: error parsing SOCKS response\n");
-       return -1;
-     }
--    len += r;
-   }
- 
--  realclose(s);
--
--  if (parse_socks4a_resolve_response(response_buf, RESPONSE_LEN, result_addr) < 0){
--    show_msg(MSGWARN, "do_resolve: error parsing SOCKS response\n");
--    return -1;
--  }
- 
-   show_msg(MSGDEBUG, "do_resolve: success\n");
- 
-@@ -343,6 +533,53 @@ do_resolve(const char *hostname, uint32_
- }
- 
- struct hostent *
-+our_gethostbyaddr(dead_pool *pool, const void *_addr, socklen_t len, int type)
-+{
-+  const struct in_addr *addr=_addr;
-+  static struct hostent he;
-+  uint32_t intaddr=0;
-+  char *result_hostname=NULL;
-+  int rc=0;
-+  static char *addrs[2];
-+  static char *aliases[2];
-+
-+  rc = do_resolve("", pool->sockshost, pool->socksport, &intaddr, addr,
-+                  5 /*SOCKS5*/, 1 /*Reverse*/, &result_hostname);
-+
-+
-+  if(rc != 0) {
-+      show_msg(MSGWARN, "failed to reverse resolve: %s\n",
-+               inet_ntoa(*((struct in_addr *)addr)));
-+      result_hostname=NULL;
-+      addrs[0] = NULL;
-+      addrs[1] = NULL;
-+  }else{
-+      addrs[0] = (char *)addr;
-+      addrs[1] = NULL;
-+  }
-+
-+  if (result_hostname)
-+    he.h_name = result_hostname;
-+  else
-+    he.h_name = inet_ntoa(*((struct in_addr *)addr));
-+
-+//   aliases = malloc(sizeof(char *));
-+  aliases[0] = NULL;
-+  aliases[1] = NULL;
-+
-+  he.h_aliases = aliases;
-+  he.h_length    = len;
-+  he.h_addrtype  = type;
-+  he.h_addr_list = addrs;
-+
-+  show_msg(MSGDEBUG, "our_gethostbyaddr: resolved '%s' to: '%s'\n",
-+           inet_ntoa(*((struct in_addr *)he.h_addr)), result_hostname);
-+
-+  return &he;
-+
-+}
-+
-+struct hostent *
- our_gethostbyname(dead_pool *pool, const char *name)
- {
-   int pos;
-Index: inspectsocks.c
-===================================================================
-RCS file: /cvsroot/tork/torsocks/inspectsocks.c,v
-retrieving revision 1.1.1.1
-diff -p -U3 -r1.1.1.1 inspectsocks.c
---- inspectsocks.c	15 Jun 2008 09:43:02 -0000	1.1.1.1
-+++ inspectsocks.c	18 Jun 2008 21:21:35 -0000
-@@ -23,7 +23,7 @@
- */
- 
- /* Global configuration variables */ 
--char *progname = "inspectsocks";	   /* Name for error msgs      */
-+const char *progname = "inspectsocks";	   /* Name for error msgs      */
- int defaultport	= 1080;			   /* Default SOCKS port       */
- 
- /* Header Files */
-@@ -35,6 +35,7 @@ int defaultport	= 1080;			   /* Default 
- #include <sys/socket.h>
- #include <string.h>
- #include <strings.h>
-+#include <sys/types.h>
- #include <netinet/in.h>
- #include <arpa/inet.h>
- #include <errno.h>
-@@ -44,7 +45,7 @@ int send_request(struct sockaddr_in *ser
-                  int reqlen, void *rep, int replen);
- 
- int main(int argc, char *argv[]) {
--	char *usage = "Usage: <socks server name/ip> [portno]";
-+	const char *usage = "Usage: <socks server name/ip> [portno]";
- 	char req[9];
- 	char resp[100];
- 	unsigned short int portno = defaultport;
-@@ -68,7 +69,7 @@ int main(int argc, char *argv[]) {
- 			}
- 		case 2:
- 			if ((server.sin_addr.s_addr = resolve_ip(argv[1], 1,HOSTNAMES))
--                            ==  -1) {
-+                            ==  0) {
- 				show_msg(MSGERR, "Invalid IP/host specified (%s)\n", argv[1]);
- 				show_msg(MSGERR, "%s\n", usage);
- 				exit(1);
-Index: tsocks.c
-===================================================================
-RCS file: /cvsroot/tork/torsocks/tsocks.c,v
-retrieving revision 1.2
-diff -p -U3 -r1.2 tsocks.c
---- tsocks.c	15 Jun 2008 10:06:03 -0000	1.2
-+++ tsocks.c	18 Jun 2008 21:21:37 -0000
-@@ -63,6 +63,7 @@ static int (*realresinit)(void);
- #ifdef USE_TOR_DNS
- static dead_pool *pool = NULL;
- static struct hostent *(*realgethostbyname)(GETHOSTBYNAME_SIGNATURE);
-+static struct hostent *(*realgethostbyaddr)(GETHOSTBYADDR_SIGNATURE);
- int (*realgetaddrinfo)(GETADDRINFO_SIGNATURE);
- static struct hostent *(*realgetipnodebyname)(GETIPNODEBYNAME_SIGNATURE);
- #endif
-@@ -77,7 +78,7 @@ static int suid = 0;
- static char *conffile = NULL;
- 
- /* Exported Function Prototypes */
--void __attribute__ ((constructor)) tsocks_init(void);
-+void __attribute__ ((constructor)) _init(void);
- int connect(CONNECT_SIGNATURE);
- int select(SELECT_SIGNATURE);
- int poll(POLL_SIGNATURE);
-@@ -88,6 +89,7 @@ int res_init(void);
- #endif
- #ifdef USE_TOR_DNS
- struct hostent *gethostbyname(GETHOSTBYNAME_SIGNATURE);
-+struct hostent *gethostbyaddr(GETHOSTBYADDR_SIGNATURE);
- int getaddrinfo(GETADDRINFO_SIGNATURE);
- struct hostent *getipnodebyname(GETIPNODEBYNAME_SIGNATURE);
- #endif 
-@@ -119,11 +121,12 @@ static int deadpool_init(void);
- static int send_socksv4a_request(struct connreq *conn, const char *onion_host);
- #endif
- 
--void tsocks_init(void) {
-+void _init(void) {
- #ifdef USE_OLD_DLSYM
- 	void *lib;
- #endif
- 
-+    show_msg(MSGWARN, "In tsocks_init \n");
- 	/* We could do all our initialization here, but to be honest */
- 	/* most programs that are run won't use our services, so     */
- 	/* we do our general initialization on first call            */
-@@ -142,6 +145,7 @@ void tsocks_init(void) {
- 	#endif
-     #ifdef USE_TOR_DNS
-     realgethostbyname = dlsym(RTLD_NEXT, "gethostbyname");
-+    //realgethostbyaddr = dlsym(RTLD_NEXT, "gethostbyaddr");
-     realgetaddrinfo = dlsym(RTLD_NEXT, "getaddrinfo");
-     realgetipnodebyname = dlsym(RTLD_NEXT, "getipnodebyname");
-     #endif
-@@ -155,6 +159,7 @@ void tsocks_init(void) {
- 	#endif
-     #ifdef USE_TOR_DNS
-     realgethostbyname = dlsym(lib, "gethostbyname");
-+    realgethostbyaddr = dlsym(lib, "gethostbyaddr");
-     realgetaddrinfo = dlsym(lib, "getaddrinfo");
-     realgetipnodebyname = dlsym(RTLD_NEXT, "getipnodebyname");
-     #endif
-@@ -1100,6 +1105,7 @@ static int send_socksv5_connect(struct c
-    conn->datalen = sizeof(constring);
- 
- #ifdef USE_TOR_DNS
-+
-    show_msg(MSGDEBUG, "send_socksv5_connect: looking for: %s\n",
-             inet_ntoa(conn->connaddr.sin_addr));
- 
-@@ -1394,6 +1400,15 @@ struct hostent *gethostbyname(GETHOSTBYN
-   }  
- }
- 
-+struct hostent *gethostbyaddr(GETHOSTBYADDR_SIGNATURE)
-+{
-+  if(pool) {
-+      return our_gethostbyaddr(pool, addr, len, type);
-+  } else {
-+      return realgethostbyaddr(addr, len, type);
-+  }  
-+}
-+
- int getaddrinfo(GETADDRINFO_SIGNATURE)
- {
-   if(pool) {
-Index: common.h
-===================================================================
-RCS file: /cvsroot/tork/torsocks/common.h,v
-retrieving revision 1.2
-diff -p -U3 -r1.2 common.h
---- common.h	15 Jun 2008 10:01:41 -0000	1.2
-+++ common.h	18 Jun 2008 21:21:37 -0000
-@@ -1,4 +1,33 @@
- /* Common functions provided in common.c */
-+/* GCC has several useful attributes. */
-+#if defined(__GNUC__) && __GNUC__ >= 3
-+#define ATTR_NORETURN __attribute__((noreturn))
-+#define ATTR_PURE __attribute__((pure))
-+#define ATTR_CONST __attribute__((const))
-+#define ATTR_MALLOC __attribute__((malloc))
-+#define ATTR_NORETURN __attribute__((noreturn))
-+#define ATTR_NONNULL(x) __attribute__((nonnull x))
-+/** Macro: Evaluates to <b>exp</b> and hints the compiler that the value
-+ * of <b>exp</b> will probably be true. */
-+#define PREDICT_LIKELY(exp) __builtin_expect((exp), 1)
-+/** Macro: Evaluates to <b>exp</b> and hints the compiler that the value
-+ * of <b>exp</b> will probably be false. */
-+#define PREDICT_UNLIKELY(exp) __builtin_expect((exp), 0)
-+#else
-+#define ATTR_NORETURN
-+#define ATTR_PURE
-+#define ATTR_CONST
-+#define ATTR_MALLOC
-+#define ATTR_NORETURN
-+#define ATTR_NONNULL(x)
-+#define PREDICT_LIKELY(exp) (exp)
-+#define PREDICT_UNLIKELY(exp) (exp)
-+#endif
-+
-+uint16_t get_uint16(const char *cp) ATTR_PURE ATTR_NONNULL((1));
-+uint32_t get_uint32(const char *cp) ATTR_PURE ATTR_NONNULL((1));
-+void set_uint16(char *cp, uint16_t v) ATTR_NONNULL((1));
-+void set_uint32(char *cp, uint32_t v) ATTR_NONNULL((1));
- 
- void set_log_options(int, char *, int);
- void show_msg(int level, const char *, ...);
-Index: dead_pool.h
-===================================================================
-RCS file: /cvsroot/tork/torsocks/dead_pool.h,v
-retrieving revision 1.2
-diff -p -U3 -r1.2 dead_pool.h
---- dead_pool.h	15 Jun 2008 10:02:53 -0000	1.2
-+++ dead_pool.h	18 Jun 2008 21:21:38 -0000
-@@ -35,6 +35,8 @@ int is_dead_address(dead_pool *pool, uin
- char *get_pool_entry(dead_pool *pool, struct in_addr *addr);
- int search_pool_for_name(dead_pool *pool, const char *name);
- struct hostent *our_gethostbyname(dead_pool *pool, const char *name);
-+struct hostent *our_gethostbyaddr(dead_pool *pool, const void *addr,
-+                                  socklen_t len, int type);
- int our_getaddrinfo(dead_pool *pool, const char *node, const char *service, 
-     void *hints, void *res);
- struct hostent *our_getipnodebyname(dead_pool *pool, const char *name, 
-Index: parser.h
-===================================================================
-RCS file: /cvsroot/tork/torsocks/parser.h,v
-retrieving revision 1.1.1.1
-diff -p -U3 -r1.1.1.1 parser.h
---- parser.h	15 Jun 2008 09:43:02 -0000	1.1.1.1
-+++ parser.h	18 Jun 2008 21:21:38 -0000
-@@ -35,7 +35,7 @@ struct parsedfile {
-    struct serverent *paths;
-    int tordns_enabled;
-    int tordns_failopen;
--   int tordns_cache_size;
-+   unsigned int tordns_cache_size;
-    struct netent *tordns_deadpool_range;
- };
- 
-Index: tsocks.h
-===================================================================
-RCS file: /cvsroot/tork/torsocks/tsocks.h,v
-retrieving revision 1.1.1.1
-diff -p -U3 -r1.1.1.1 tsocks.h
---- tsocks.h	15 Jun 2008 09:43:01 -0000	1.1.1.1
-+++ tsocks.h	18 Jun 2008 21:21:38 -0000
-@@ -50,8 +50,8 @@ struct connreq {
-    int selectevents;
- 
-    /* Buffer for sending and receiving on the socket */
--   int datalen;
--   int datadone;
-+   unsigned int datalen;
-+   unsigned int datadone;
-    char buffer[2048];
- 
-    struct connreq *next;
-Index: config.h.in
-===================================================================
-RCS file: /cvsroot/tork/torsocks/config.h.in,v
-retrieving revision 1.1.1.1
-diff -p -U3 -r1.1.1.1 config.h.in
---- config.h.in	15 Jun 2008 09:43:02 -0000	1.1.1.1
-+++ config.h.in	18 Jun 2008 21:21:38 -0000
-@@ -83,6 +83,9 @@ in inspectsocks */
- #undef GETIPNODEBYNAME_SIGNATURE
- 
- 
-+/* Description */
-+#undef GETHOSTBYADDR_SIGNATURE
-+
- /* Define to 1 if you have the <inttypes.h> header file. */
- #undef HAVE_INTTYPES_H
- 
-Index: configure.in
-===================================================================
-RCS file: /cvsroot/tork/torsocks/configure.in,v
-retrieving revision 1.1.1.1
-diff -p -U3 -r1.1.1.1 configure.in
---- configure.in	15 Jun 2008 09:43:00 -0000	1.1.1.1
-+++ configure.in	18 Jun 2008 21:21:38 -0000
-@@ -384,6 +384,10 @@ dnl Emit signature for gethostbyname
- PROTO="const char *name"
- AC_DEFINE_UNQUOTED(GETHOSTBYNAME_SIGNATURE, [${PROTO}])
- 
-+dnl Emit signature for gethostbyaddr
-+PROTO="const void *addr, socklen_t len, int type"
-+AC_DEFINE_UNQUOTED(GETHOSTBYADDR_SIGNATURE, [${PROTO}], [Description])
-+
- dnl Emit signature for getaddrinfo
- PROTO="const char *node, const char *service, void *hints, void *res"
- AC_DEFINE_UNQUOTED(GETADDRINFO_SIGNATURE, [${PROTO}])
diff --git a/patches/getpeername.patch b/patches/getpeername.patch
deleted file mode 100644
index f66d133..0000000
--- a/patches/getpeername.patch
+++ /dev/null
@@ -1,350 +0,0 @@
-diff -ur tsocks-1.8beta5.orig/acconfig.h tsocks-1.8beta5.clean/acconfig.h
---- tsocks-1.8beta5.orig/acconfig.h	Sat May 18 06:59:38 2002
-+++ tsocks-1.8beta5.clean/acconfig.h	Sat Mar 27 11:12:03 2004
-@@ -43,6 +43,9 @@
- /* Prototype and function header for close function */
- #undef CLOSE_SIGNATURE
- 
-+/* Prototype and function header for getpeername function */
-+#undef GETPEERNAME_SIGNATURE
-+
- /* Work out which function we have for conversion from string IPs to 
- numerical ones */
- #undef HAVE_INET_ADDR
-diff -ur tsocks-1.8beta5.orig/config.h.in tsocks-1.8beta5.clean/config.h.in
---- tsocks-1.8beta5.orig/config.h.in	Sat May 18 06:59:42 2002
-+++ tsocks-1.8beta5.clean/config.h.in	Sat Mar 27 11:21:58 2004
-@@ -46,6 +46,9 @@
- /* Prototype and function header for close function */
- #undef CLOSE_SIGNATURE
- 
-+/* Prototype and function header for close function */
-+#undef GETPEERNAME_SIGNATURE
-+
- /* Work out which function we have for conversion from string IPs to 
- numerical ones */
- #undef HAVE_INET_ADDR
-diff -ur tsocks-1.8beta5.orig/config.status tsocks-1.8beta5.clean/config.status
---- tsocks-1.8beta5.orig/config.status	Sat Mar 27 11:25:17 2004
-+++ tsocks-1.8beta5.clean/config.status	Sat Mar 27 11:22:01 2004
-@@ -2,9 +2,9 @@
- # Generated automatically by configure.
- # Run this file to recreate the current configuration.
- # This directory was configured as follows,
--# on host inky:
-+# on host seppia:
- #
--# ./configure  --prefix=/usr --libdir=/usr/lib --mandir=/usr/share/man --with-conf=/etc/tsocks.conf --enable-socksdns --enable-hostnames
-+# ./configure 
- #
- # Compiler output produced by configure, useful for debugging
- # configure, is in ./config.log if it exists.
-@@ -14,8 +14,8 @@
- do
-   case "$ac_option" in
-   -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
--    echo "running ${CONFIG_SHELL-/bin/sh} ./configure  --prefix=/usr --libdir=/usr/lib --mandir=/usr/share/man --with-conf=/etc/tsocks.conf --enable-socksdns --enable-hostnames --no-create --no-recursion"
--    exec ${CONFIG_SHELL-/bin/sh} ./configure  --prefix=/usr --libdir=/usr/lib --mandir=/usr/share/man --with-conf=/etc/tsocks.conf --enable-socksdns --enable-hostnames --no-create --no-recursion ;;
-+    echo "running ${CONFIG_SHELL-/bin/sh} ./configure  --no-create --no-recursion"
-+    exec ${CONFIG_SHELL-/bin/sh} ./configure  --no-create --no-recursion ;;
-   -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
-     echo "./config.status generated by autoconf version 2.13"
-     exit 0 ;;
-@@ -53,11 +53,11 @@
- s%@sysconfdir@%${prefix}/etc%g
- s%@sharedstatedir@%${prefix}/com%g
- s%@localstatedir@%${prefix}/var%g
--s%@libdir@%/usr/lib%g
-+s%@libdir@%/lib%g
- s%@includedir@%${prefix}/include%g
- s%@oldincludedir@%/usr/include%g
- s%@infodir@%${prefix}/info%g
--s%@mandir@%/usr/share/man%g
-+s%@mandir@%${prefix}/man%g
- s%@host@%i686-pc-linux-gnu%g
- s%@host_alias@%i686-pc-linux-gnu%g
- s%@host_cpu@%i686%g
-@@ -255,15 +255,15 @@
-   mv conftest.out conftest.in
- 
-   cat > conftest.frag <<CEOF
--${ac_dA}USE_SOCKS_DNS${ac_dB}USE_SOCKS_DNS${ac_dC}1${ac_dD}
--${ac_uA}USE_SOCKS_DNS${ac_uB}USE_SOCKS_DNS${ac_uC}1${ac_uD}
--${ac_eA}USE_SOCKS_DNS${ac_eB}USE_SOCKS_DNS${ac_eC}1${ac_eD}
- ${ac_dA}ALLOW_ENV_CONFIG${ac_dB}ALLOW_ENV_CONFIG${ac_dC}1${ac_dD}
- ${ac_uA}ALLOW_ENV_CONFIG${ac_uB}ALLOW_ENV_CONFIG${ac_uC}1${ac_uD}
- ${ac_eA}ALLOW_ENV_CONFIG${ac_eB}ALLOW_ENV_CONFIG${ac_eC}1${ac_eD}
- ${ac_dA}ALLOW_MSG_OUTPUT${ac_dB}ALLOW_MSG_OUTPUT${ac_dC}1${ac_dD}
- ${ac_uA}ALLOW_MSG_OUTPUT${ac_uB}ALLOW_MSG_OUTPUT${ac_uC}1${ac_uD}
- ${ac_eA}ALLOW_MSG_OUTPUT${ac_eB}ALLOW_MSG_OUTPUT${ac_eC}1${ac_eD}
-+${ac_dA}HOSTNAMES${ac_dB}HOSTNAMES${ac_dC}1${ac_dD}
-+${ac_uA}HOSTNAMES${ac_uB}HOSTNAMES${ac_uC}1${ac_uD}
-+${ac_eA}HOSTNAMES${ac_eB}HOSTNAMES${ac_eC}1${ac_eD}
- ${ac_dA}SELECT_SIGNATURE${ac_dB}SELECT_SIGNATURE${ac_dC}int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout${ac_dD}
- ${ac_uA}SELECT_SIGNATURE${ac_uB}SELECT_SIGNATURE${ac_uC}int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout${ac_uD}
- ${ac_eA}SELECT_SIGNATURE${ac_eB}SELECT_SIGNATURE${ac_eC}int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout${ac_eD}
-@@ -282,15 +282,18 @@
- ${ac_dA}CLOSE_SIGNATURE${ac_dB}CLOSE_SIGNATURE${ac_dC}int fd${ac_dD}
- ${ac_uA}CLOSE_SIGNATURE${ac_uB}CLOSE_SIGNATURE${ac_uC}int fd${ac_uD}
- ${ac_eA}CLOSE_SIGNATURE${ac_eB}CLOSE_SIGNATURE${ac_eC}int fd${ac_eD}
--${ac_dA}POLL_SIGNATURE${ac_dB}POLL_SIGNATURE${ac_dC}struct pollfd *ufds, unsigned long nfds, int timeout${ac_dD}
--${ac_uA}POLL_SIGNATURE${ac_uB}POLL_SIGNATURE${ac_uC}struct pollfd *ufds, unsigned long nfds, int timeout${ac_uD}
--${ac_eA}POLL_SIGNATURE${ac_eB}POLL_SIGNATURE${ac_eC}struct pollfd *ufds, unsigned long nfds, int timeout${ac_eD}
-+${ac_dA}GETPEERNAME_SIGNATURE${ac_dB}GETPEERNAME_SIGNATURE${ac_dC}int __fd, struct sockaddr * __name, socklen_t *__namelen${ac_dD}
-+${ac_uA}GETPEERNAME_SIGNATURE${ac_uB}GETPEERNAME_SIGNATURE${ac_uC}int __fd, struct sockaddr * __name, socklen_t *__namelen${ac_uD}
-+${ac_eA}GETPEERNAME_SIGNATURE${ac_eB}GETPEERNAME_SIGNATURE${ac_eC}int __fd, struct sockaddr * __name, socklen_t *__namelen${ac_eD}
- CEOF
-   sed -f conftest.frag conftest.in > conftest.out
-   rm -f conftest.in
-   mv conftest.out conftest.in
- 
-   cat > conftest.frag <<CEOF
-+${ac_dA}POLL_SIGNATURE${ac_dB}POLL_SIGNATURE${ac_dC}struct pollfd *ufds, unsigned long nfds, int timeout${ac_dD}
-+${ac_uA}POLL_SIGNATURE${ac_uB}POLL_SIGNATURE${ac_uC}struct pollfd *ufds, unsigned long nfds, int timeout${ac_uD}
-+${ac_eA}POLL_SIGNATURE${ac_eB}POLL_SIGNATURE${ac_eC}struct pollfd *ufds, unsigned long nfds, int timeout${ac_eD}
- s%^[ 	]*#[ 	]*undef[ 	][ 	]*[a-zA-Z_][a-zA-Z_0-9]*%/* & */%
- CEOF
-   sed -f conftest.frag conftest.in > conftest.out
-diff -ur tsocks-1.8beta5.orig/configure tsocks-1.8beta5.clean/configure
---- tsocks-1.8beta5.orig/configure	Tue Jul 16 00:51:08 2002
-+++ tsocks-1.8beta5.clean/configure	Sat Mar 27 11:12:05 2004
-@@ -2225,14 +2225,60 @@
- EOF
- 
- 
-+
-+echo $ac_n "checking for correct getpeername prototype""... $ac_c" 1>&6
-+echo "configure:2231: checking for correct getpeername prototype" >&5
-+PROTO=
-+PROTO1='int __fd, const struct sockaddr * __name, int *__namelen'
-+PROTO2='int __fd, const struct sockaddr_in * __name, socklen_t *__namelen'
-+PROTO3='int __fd, struct sockaddr * __name, socklen_t *__namelen'
-+PROTO4='int __fd, const struct sockaddr * __name, socklen_t *__namelen'
-+for testproto in "${PROTO1}" \
-+                 "${PROTO2}" \
-+                 "${PROTO3}" \
-+                 "${PROTO4}" 
-+do
-+  if test "${PROTO}" = ""; then
-+    cat > conftest.$ac_ext <<EOF
-+#line 2244 "configure"
-+#include "confdefs.h"
-+
-+      #include <sys/socket.h>
-+      int getpeername($testproto);
-+    
-+int main() {
-+
-+; return 0; }
-+EOF
-+if { (eval echo configure:2254: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+  rm -rf conftest*
-+  PROTO="$testproto";
-+else
-+  echo "configure: failed program was:" >&5
-+  cat conftest.$ac_ext >&5
-+fi
-+rm -f conftest*
-+  fi
-+done
-+if test "${PROTO}" = ""; then
-+  { echo "configure: error: "no match found!"" 1>&2; exit 1; }
-+fi
-+echo "$ac_t""getpeername(${PROTO})" 1>&6
-+cat >> confdefs.h <<EOF
-+#define GETPEERNAME_SIGNATURE ${PROTO}
-+EOF
-+
-+
-+
-+
- echo $ac_n "checking for correct poll prototype""... $ac_c" 1>&6
--echo "configure:2230: checking for correct poll prototype" >&5
-+echo "configure:2276: checking for correct poll prototype" >&5
- PROTO=
- for testproto in 'struct pollfd *ufds, unsigned long nfds, int timeout' 
- do
-   if test "${PROTO}" = ""; then
-     cat > conftest.$ac_ext <<EOF
--#line 2236 "configure"
-+#line 2282 "configure"
- #include "confdefs.h"
- 
-       #include <sys/poll.h>
-@@ -2242,7 +2288,7 @@
- 
- ; return 0; }
- EOF
--if { (eval echo configure:2246: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-+if { (eval echo configure:2292: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
-   rm -rf conftest*
-   PROTO="$testproto";
- else
-diff -ur tsocks-1.8beta5.orig/configure.in tsocks-1.8beta5.clean/configure.in
---- tsocks-1.8beta5.orig/configure.in	Tue Jul 16 00:51:03 2002
-+++ tsocks-1.8beta5.clean/configure.in	Sat Mar 27 11:11:02 2004
-@@ -309,6 +309,34 @@
- AC_MSG_RESULT([close(${PROTO})])
- AC_DEFINE_UNQUOTED(CLOSE_SIGNATURE, [${PROTO}])
- 
-+
-+dnl Find the correct getpeername prototype on this machine 
-+AC_MSG_CHECKING(for correct getpeername prototype)
-+PROTO=
-+PROTO1='int __fd, const struct sockaddr * __name, int *__namelen'
-+PROTO2='int __fd, const struct sockaddr_in * __name, socklen_t *__namelen'
-+PROTO3='int __fd, struct sockaddr * __name, socklen_t *__namelen'
-+PROTO4='int __fd, const struct sockaddr * __name, socklen_t *__namelen'
-+for testproto in "${PROTO1}" \
-+                 "${PROTO2}" \
-+                 "${PROTO3}" \
-+                 "${PROTO4}" 
-+do
-+  if test "${PROTO}" = ""; then
-+    AC_TRY_COMPILE([
-+      #include <sys/socket.h>
-+      int getpeername($testproto);
-+    ],,[PROTO="$testproto";],)
-+  fi
-+done
-+if test "${PROTO}" = ""; then
-+  AC_MSG_ERROR("no match found!")
-+fi
-+AC_MSG_RESULT([getpeername(${PROTO})])
-+AC_DEFINE_UNQUOTED(GETPEERNAME_SIGNATURE, [${PROTO}])
-+
-+
-+
- dnl Find the correct poll prototype on this machine 
- AC_MSG_CHECKING(for correct poll prototype)
- PROTO=
-Only in tsocks-1.8beta5.clean: ld-pre
-Only in tsocks-1.8beta5.clean: sel
-diff -ur tsocks-1.8beta5.orig/tsocks.c tsocks-1.8beta5.clean/tsocks.c
---- tsocks-1.8beta5.orig/tsocks.c	Tue Jul 16 00:50:52 2002
-+++ tsocks-1.8beta5.clean/tsocks.c	Sat Mar 27 13:17:58 2004
-@@ -62,6 +62,7 @@
- static int (*realselect)(SELECT_SIGNATURE);
- static int (*realpoll)(POLL_SIGNATURE);
- static int (*realclose)(CLOSE_SIGNATURE);
-+static int (*realgetpeername)(GETPEERNAME_SIGNATURE);
- static struct parsedfile *config;
- static struct connreq *requests = NULL;
- static int suid = 0;
-@@ -73,6 +74,7 @@
- int select(SELECT_SIGNATURE);
- int poll(POLL_SIGNATURE);
- int close(CLOSE_SIGNATURE);
-+int getpeername(GETPEERNAME_SIGNATURE);
- #ifdef USE_SOCKS_DNS
- int res_init(void);
- #endif
-@@ -109,14 +111,15 @@
- 	/* most programs that are run won't use our services, so     */
- 	/* we do our general initialization on first call            */
- 
--   /* Determine the logging level */
--   suid = (getuid() != geteuid());
-+	/* Determine the logging level */
-+	suid = (getuid() != geteuid());
- 
- #ifndef USE_OLD_DLSYM
- 	realconnect = dlsym(RTLD_NEXT, "connect");
- 	realselect = dlsym(RTLD_NEXT, "select");
- 	realpoll = dlsym(RTLD_NEXT, "poll");
- 	realclose = dlsym(RTLD_NEXT, "close");
-+	realgetpeername = dlsym(RTLD_NEXT, "getpeername");
- 	#ifdef USE_SOCKS_DNS
- 	realresinit = dlsym(RTLD_NEXT, "res_init");
- 	#endif
-@@ -125,14 +128,15 @@
- 	realconnect = dlsym(lib, "connect");
- 	realselect = dlsym(lib, "select");
- 	realpoll = dlsym(lib, "poll");
-+	realgetpeername = dlsym(lib, "getpeername");
- 	#ifdef USE_SOCKS_DNS
- 	realresinit = dlsym(lib, "res_init");
- 	#endif
--	dlclose(lib);	
-+	dlclose(lib);
- 
- 	lib = dlopen(LIBC, RTLD_LAZY);
--   realclose = dlsym(lib, "close");
--	dlclose(lib);	
-+	realclose = dlsym(lib, "close");
-+	dlclose(lib);
- #endif
- }
- 
-@@ -348,8 +352,10 @@
- 
-    /* If we're not currently managing any requests we can just 
-     * leave here */
--   if (!requests)
-+   if (!requests) {
-+      show_msg(MSGDEBUG, "No requests waiting, calling real select\n");
-       return(realselect(n, readfds, writefds, exceptfds, timeout));
-+   }
- 
-    get_environment();
- 
-@@ -703,6 +709,50 @@
-    return(rc);
- }
- 
-+/* If we are not done setting up the connection yet, return
-+ * -1 and ENOTCONN, otherwise call getpeername
-+ *
-+ * This is necessary since some applications, when using non-blocking connect,
-+ * (like ircII) use getpeername() to find out if they are connected already.
-+ *
-+ * This results in races sometimes, where the client sends data to the socket
-+ * before we are done with the socks connection setup.  Another solution would
-+ * be to intercept send().
-+ * 
-+ * This could be extended to actually set the peername to the peer the
-+ * client application has requested, but not for now.
-+ *
-+ * PP, Sat, 27 Mar 2004 11:30:23 +0100
-+ */
-+int getpeername(GETPEERNAME_SIGNATURE) {
-+   struct connreq *conn;
-+   int rc;
-+
-+    if (realgetpeername == NULL) {
-+        show_msg(MSGERR, "Unresolved symbol: getpeername\n");
-+        return(-1);
-+    }
-+
-+   show_msg(MSGDEBUG, "Call to getpeername for fd %d\n", __fd);
-+
-+
-+   rc = realgetpeername(__fd, __name, __namelen);
-+   if (rc == -1)
-+       return rc;
-+
-+   /* Are we handling this connect? */
-+   if ((conn = find_socks_request(__fd, 1))) {
-+       /* While we are at it, we might was well try to do something useful */
-+       handle_request(conn);
-+
-+       if (conn->state != DONE) {
-+           errno = ENOTCONN;
-+           return(-1);
-+       }
-+   }
-+   return rc;
-+}
-+
- static struct connreq *new_socks_request(int sockid, struct sockaddr_in *connaddr, 
-                                          struct sockaddr_in *serveraddr, 
-                                          struct serverent *path) {
-@@ -852,7 +902,7 @@
-                     sizeof(conn->serveraddr));
- 
-    show_msg(MSGDEBUG, "Connect returned %d, errno is %d\n", rc, errno); 
--	if (rc) {
-+   if (rc) {
-       if (errno != EINPROGRESS) {
-          show_msg(MSGERR, "Error %d attempting to connect to SOCKS "
-                   "server (%s)\n", errno, strerror(errno));
diff --git a/patches/infiniteloop.patch b/patches/infiniteloop.patch
deleted file mode 100644
index 4b0deb9..0000000
--- a/patches/infiniteloop.patch
+++ /dev/null
@@ -1,20 +0,0 @@
---- tsocks-1.8.orig/tsocks.c    2002-03-13 14:02:04.000000000 +0100
-+++ tsocks-1.8/tsocks.c 2004-03-20 11:30:57.000000000 +0100
-@@ -951,14 +951,18 @@
-    show_msg(MSGDEBUG, "Reading from server (expecting %d bytes)\n", conn->datalen);
-    while ((rc == 0) && (conn->datadone != conn->datalen)) {
-       rc = recv(conn->sockid, conn->buffer + conn->datadone, 
-                 conn->datalen - conn->datadone, 0);
-       if (rc > 0) {
-          conn->datadone += rc;
-          rc = 0;
-+      } else if (rc == 0) {
-+         show_msg(MSGDEBUG, "Peer has shutdown but we only read %d of %d bytes.\n",
-+            conn->datadone, conn->datalen);
-+         rc = ENOTCONN; /* ENOTCONN seems like the most fitting error message */
-       } else {
-          if (errno != EWOULDBLOCK)
-             show_msg(MSGDEBUG, "Read failed, %s\n", strerror(errno));
-          rc = errno;
-       }
-    }
diff --git a/patches/localaddresses.patch b/patches/localaddresses.patch
deleted file mode 100644
index d69c7e8..0000000
--- a/patches/localaddresses.patch
+++ /dev/null
@@ -1,15 +0,0 @@
---- parser.c.old        2006-04-01 17:54:46.687832056 -0500
-+++ parser.c    2006-04-01 17:55:47.552579208 -0500
-@@ -74,8 +74,10 @@
-                } 
-                fclose(conf);
- 
--               /* Always add the 127.0.0.1/255.0.0.0 subnet to local */
--               handle_local(config, 0, "127.0.0.0/255.0.0.0");
-+               if (!config->localnets) {
-+                       /* Use 127.0.0.1/255.0.0.0 by default */
-+                       handle_local(config, 0, "127.0.0.0/255.0.0.0");
-+               }
- 
-                /* Check default server */
-                check_server(&(config->defaultserver));
diff --git a/patches/tordns.patch b/patches/tordns.patch
deleted file mode 100644
index bf8d79b..0000000
--- a/patches/tordns.patch
+++ /dev/null
@@ -1,11004 +0,0 @@
-diff -rN -U 5 tsocks-1.8/acconfig.h tsocks/acconfig.h
---- tsocks-1.8/acconfig.h	2002-05-18 16:59:38.000000000 +1200
-+++ tsocks/acconfig.h	2005-10-01 17:22:09.000000000 +1200
-@@ -51,10 +51,13 @@
- /* We use strsep which isn't on all machines, but we provide our own
- definition of it for those which don't have it, this causes us to define
- our version */
- #undef DEFINE_STRSEP
- 
-+/* Should we resolve DNS entries in a way which works well with tor? */
-+#undef USE_TOR_DNS
-+
- /* Allow the use of DNS names in the socks configuration file for socks
- servers. This doesn't work if socksified DNS is enabled for obvious
- reasons, it also introduces overhead, but people seem to want it */
- #define HOSTNAMES 0
- 
-@@ -62,5 +65,16 @@
- in inspectsocks */
- #undef HAVE_GETHOSTBYNAME
- 
- /* Location of configuration file (typically /etc/tsocks.conf) */
- #undef CONF_FILE 
-+
-+/* Define to indicate the correct signature for gethostbyname_r */
-+#undef HAVE_FUNC_GETHOSTBYNAME_R_6
-+#undef HAVE_FUNC_GETHOSTBYNAME_R_5
-+#undef HAVE_FUNC_GETHOSTBYNAME_R_3
-+
-+/* Signatures for name resolution stuff */
-+#undef GETHOSTBYNAME_SIGNATURE
-+#undef GETADDRINFO_SIGNATURE
-+#undef GETIPNODEBYNAME_SIGNATURE
-+
-diff -rN -U 5 tsocks-1.8/aclocal/ac_c_gethostbyname_r.m4 tsocks/aclocal/ac_c_gethostbyname_r.m4
---- tsocks-1.8/aclocal/ac_c_gethostbyname_r.m4	1970-01-01 12:00:00.000000000 +1200
-+++ tsocks/aclocal/ac_c_gethostbyname_r.m4	2005-09-27 05:55:58.000000000 +1200
-@@ -0,0 +1,132 @@
-+dnl http://autoconf-archive.cryp.to/ax_func_which_gethostbyname_r.html
-+
-+AC_DEFUN([AX_FUNC_WHICH_GETHOSTBYNAME_R], [
-+
-+    AC_LANG_PUSH(C)
-+    AC_MSG_CHECKING([how many arguments gethostbyname_r() takes])
-+
-+    AC_CACHE_VAL(ac_cv_func_which_gethostbyname_r, [
-+
-+################################################################
-+
-+ac_cv_func_which_gethostbyname_r=unknown
-+
-+#
-+# ONE ARGUMENT (sanity check)
-+#
-+
-+# This should fail, as there is no variant of gethostbyname_r() that takes
-+# a single argument. If it actually compiles, then we can assume that
-+# netdb.h is not declaring the function, and the compiler is thereby
-+# assuming an implicit prototype. In which case, we're out of luck.
-+#
-+AC_COMPILE_IFELSE(
-+    AC_LANG_PROGRAM(
-+        [[#include <netdb.h>]],
-+        [[
-+            char *name = "www.gnu.org";
-+            (void)gethostbyname_r(name) /* ; */
-+        ]]),
-+    ac_cv_func_which_gethostbyname_r=no)
-+
-+#
-+# SIX ARGUMENTS
-+# (e.g. Linux)
-+#
-+
-+if test "$ac_cv_func_which_gethostbyname_r" = "unknown"; then
-+
-+AC_COMPILE_IFELSE(
-+    AC_LANG_PROGRAM(
-+        [[#include <netdb.h>]],
-+        [[
-+            char *name = "www.gnu.org";
-+            struct hostent ret, *retp;
-+            char buf@<:@1024@:>@;
-+            int buflen = 1024;
-+            int my_h_errno;
-+            (void)gethostbyname_r(name, &ret, buf, buflen, &retp, &my_h_errno) /* ; */
-+        ]]),
-+    ac_cv_func_which_gethostbyname_r=six)
-+
-+fi
-+
-+#
-+# FIVE ARGUMENTS
-+# (e.g. Solaris)
-+#
-+
-+if test "$ac_cv_func_which_gethostbyname_r" = "unknown"; then
-+
-+AC_COMPILE_IFELSE(
-+    AC_LANG_PROGRAM(
-+        [[#include <netdb.h>]],
-+        [[
-+            char *name = "www.gnu.org";
-+            struct hostent ret;
-+            char buf@<:@1024@:>@;
-+            int buflen = 1024;
-+            int my_h_errno;
-+            (void)gethostbyname_r(name, &ret, buf, buflen, &my_h_errno) /* ; */
-+        ]]),
-+    ac_cv_func_which_gethostbyname_r=five)
-+
-+fi
-+
-+#
-+# THREE ARGUMENTS
-+# (e.g. AIX, HP-UX, Tru64)
-+#
-+
-+if test "$ac_cv_func_which_gethostbyname_r" = "unknown"; then
-+
-+AC_COMPILE_IFELSE(
-+    AC_LANG_PROGRAM(
-+        [[#include <netdb.h>]],
-+        [[
-+            char *name = "www.gnu.org";
-+            struct hostent ret;
-+            struct hostent_data data;
-+            (void)gethostbyname_r(name, &ret, &data) /* ; */
-+        ]]),
-+    ac_cv_func_which_gethostbyname_r=three)
-+
-+fi
-+
-+################################################################
-+
-+]) dnl end AC_CACHE_VAL
-+
-+case "$ac_cv_func_which_gethostbyname_r" in
-+    three)
-+    AC_MSG_RESULT([three])
-+    AC_DEFINE(HAVE_FUNC_GETHOSTBYNAME_R_3)
-+    ;;
-+
-+    five)
-+    AC_MSG_RESULT([five])
-+    AC_DEFINE(HAVE_FUNC_GETHOSTBYNAME_R_5)
-+    ;;
-+
-+    six)
-+    AC_MSG_RESULT([six])
-+    AC_DEFINE(HAVE_FUNC_GETHOSTBYNAME_R_6)
-+    ;;
-+
-+    no)
-+    AC_MSG_RESULT([cannot find function declaration in netdb.h])
-+    ;;
-+
-+    unknown)
-+    AC_MSG_RESULT([can't tell])
-+    ;;
-+
-+    *)
-+    AC_MSG_ERROR([internal error])
-+    ;;
-+esac
-+
-+AC_LANG_POP(C)
-+
-+]) dnl end AC_DEFUN
-+
-diff -rN -U 5 tsocks-1.8/autogen.sh tsocks/autogen.sh
---- tsocks-1.8/autogen.sh	1970-01-01 12:00:00.000000000 +1200
-+++ tsocks/autogen.sh	2005-10-01 17:54:45.000000000 +1200
-@@ -0,0 +1,6 @@
-+#!/bin/sh
-+
-+aclocal -I aclocal
-+autoconf
-+autoheader
-+
-diff -rN -U 5 tsocks-1.8/ChangeLog tsocks/ChangeLog
---- tsocks-1.8/ChangeLog	2002-05-18 17:22:26.000000000 +1200
-+++ tsocks/ChangeLog	2005-10-02 16:03:18.000000000 +1300
-@@ -1,5 +1,9 @@
-+version 1.80tordns - 2005.10.4 bls at totalinfosecurity.com
-+   Intercept gethostbyname() and friends, added --tordns
-+   option for better name resolution with Tor.
-+
- version 1.80Beta5 - 2002.?.?? delius at progsoc.uts.edu.au
-    Intercept close() to fix problems with tsocks and 
-       kmail 
-    Add FAQ to distribution
- 
-diff -rN -U 5 tsocks-1.8/common.c tsocks/common.c
---- tsocks-1.8/common.c	2002-07-16 10:35:06.000000000 +1200
-+++ tsocks/common.c	2005-10-01 21:37:00.000000000 +1200
-@@ -76,10 +76,31 @@
-    }
- 
-    logstamp = timestamp;
- }
- 
-+/* Count the bits in a netmask.  This is a little bit buggy; it assumes 
-+   all the zeroes are on the right... */
-+
-+int count_netmask_bits(uint32_t mask)
-+{
-+    int i;
-+    int nbits = 0;
-+
-+    for(i=0; i<32; i++) {
-+        if((mask >> i) & 1) {
-+            nbits++;
-+        } 
-+    }
-+    mask = ~mask;
-+    mask = ntohl(mask);
-+    if(mask & (mask+1)) {
-+        return -1;  /* Noncontiguous */
-+    }
-+    return nbits;
-+}
-+
- void show_msg(int level, char *fmt, ...) {
- 	va_list ap;
- 	int saveerr;
- 	extern char *progname;
-    char timestring[20];
-@@ -105,11 +126,11 @@
-       strftime(timestring, sizeof(timestring),  "%H:%M:%S", 
-                localtime(&timestamp));
-       fprintf(logfile, "%s ", timestring);
-    }
- 
--   fputs(progname, logfile);
-+   // fputs(progname, logfile);
- 
-    if (logstamp) {
-       fprintf(logfile, "(%d)", getpid());
-    }
-    
-diff -rN -U 5 tsocks-1.8/common.h tsocks/common.h
---- tsocks-1.8/common.h	2002-07-16 10:27:00.000000000 +1200
-+++ tsocks/common.h	2005-09-27 10:48:20.000000000 +1200
-@@ -1,9 +1,10 @@
- /* Common functions provided in common.c */
- 
- void set_log_options(int, char *, int);
- void show_msg(int level, char *, ...);
-+int count_netmask_bits(uint32_t mask);
- unsigned int resolve_ip(char *, int, int);
- 
- #define MSGNONE   -1
- #define MSGERR    0
- #define MSGWARN   1
-diff -rN -U 5 tsocks-1.8/config.h.in tsocks/config.h.in
---- tsocks-1.8/config.h.in	2002-05-18 16:59:42.000000000 +1200
-+++ tsocks/config.h.in	2005-10-01 17:23:20.000000000 +1200
-@@ -1,9 +1,7 @@
--/* config.h.in.  Generated automatically from configure.in by autoheader.  */
--
--/* Define if you have the ANSI C header files.  */
--#undef STDC_HEADERS
-+/* config.h.in.  Generated from configure.in by autoheader.  */
-+/* accconfig.h -- `autoheader' will generate config.h.in for tsocks . */
- 
- /* Allow tsocks to generate messages to stderr when errors are
- encountered, this is really important and should only be disabled if
- you're REALLY sure. It can also be turned off at run time, see the man
- page for details */
-@@ -49,10 +47,18 @@
- /* Work out which function we have for conversion from string IPs to 
- numerical ones */
- #undef HAVE_INET_ADDR
- #undef HAVE_INET_ATON
- 
-+/* We use strsep which isn't on all machines, but we provide our own
-+definition of it for those which don't have it, this causes us to define
-+our version */
-+#undef DEFINE_STRSEP
-+
-+/* Should we resolve DNS entries in a way which works well with tor? */
-+#undef USE_TOR_DNS
-+
- /* Allow the use of DNS names in the socks configuration file for socks
- servers. This doesn't work if socksified DNS is enabled for obvious
- reasons, it also introduces overhead, but people seem to want it */
- #define HOSTNAMES 0
- 
-@@ -61,28 +67,90 @@
- #undef HAVE_GETHOSTBYNAME
- 
- /* Location of configuration file (typically /etc/tsocks.conf) */
- #undef CONF_FILE 
- 
--/* Define if you have the strcspn function.  */
-+/* Define to indicate the correct signature for gethostbyname_r */
-+#undef HAVE_FUNC_GETHOSTBYNAME_R_6
-+#undef HAVE_FUNC_GETHOSTBYNAME_R_5
-+#undef HAVE_FUNC_GETHOSTBYNAME_R_3
-+
-+/* Signatures for name resolution stuff */
-+#undef GETHOSTBYNAME_SIGNATURE
-+#undef GETADDRINFO_SIGNATURE
-+#undef GETIPNODEBYNAME_SIGNATURE
-+
-+
-+/* Define to 1 if you have the <inttypes.h> header file. */
-+#undef HAVE_INTTYPES_H
-+
-+/* Define to 1 if you have the `dl' library (-ldl). */
-+#undef HAVE_LIBDL
-+
-+/* Define to 1 if you have the `socket' library (-lsocket). */
-+#undef HAVE_LIBSOCKET
-+
-+/* Define to 1 if you have the <memory.h> header file. */
-+#undef HAVE_MEMORY_H
-+
-+/* Define to 1 if you have the `mmap' function. */
-+#undef HAVE_MMAP
-+
-+/* Define to 1 if you have the <stdint.h> header file. */
-+#undef HAVE_STDINT_H
-+
-+/* Define to 1 if you have the <stdlib.h> header file. */
-+#undef HAVE_STDLIB_H
-+
-+/* Define to 1 if you have the `strcasecmp' function. */
-+#undef HAVE_STRCASECMP
-+
-+/* Define to 1 if you have the `strcspn' function. */
- #undef HAVE_STRCSPN
- 
--/* Define if you have the strdup function.  */
-+/* Define to 1 if you have the `strdup' function. */
- #undef HAVE_STRDUP
- 
--/* Define if you have the strerror function.  */
-+/* Define to 1 if you have the `strerror' function. */
- #undef HAVE_STRERROR
- 
--/* Define if you have the strspn function.  */
-+/* Define to 1 if you have the <strings.h> header file. */
-+#undef HAVE_STRINGS_H
-+
-+/* Define to 1 if you have the <string.h> header file. */
-+#undef HAVE_STRING_H
-+
-+/* Define to 1 if you have the `strncasecmp' function. */
-+#undef HAVE_STRNCASECMP
-+
-+/* Define to 1 if you have the `strspn' function. */
- #undef HAVE_STRSPN
- 
--/* Define if you have the strtol function.  */
-+/* Define to 1 if you have the `strtol' function. */
- #undef HAVE_STRTOL
- 
--/* Define if you have the <unistd.h> header file.  */
-+/* Define to 1 if you have the <sys/stat.h> header file. */
-+#undef HAVE_SYS_STAT_H
-+
-+/* Define to 1 if you have the <sys/types.h> header file. */
-+#undef HAVE_SYS_TYPES_H
-+
-+/* Define to 1 if you have the <unistd.h> header file. */
- #undef HAVE_UNISTD_H
- 
--/* Define if you have the dl library (-ldl).  */
--#undef HAVE_LIBDL
-+/* Define to the address where bug reports for this package should be sent. */
-+#undef PACKAGE_BUGREPORT
- 
--/* Define if you have the socket library (-lsocket).  */
--#undef HAVE_LIBSOCKET
-+/* Define to the full name of this package. */
-+#undef PACKAGE_NAME
-+
-+/* Define to the full name and version of this package. */
-+#undef PACKAGE_STRING
-+
-+/* Define to the one symbol short name of this package. */
-+#undef PACKAGE_TARNAME
-+
-+/* Define to the version of this package. */
-+#undef PACKAGE_VERSION
-+
-+/* Define to 1 if you have the ANSI C header files. */
-+#undef STDC_HEADERS
-diff -rN -U 5 tsocks-1.8/config.status tsocks/config.status
---- tsocks-1.8/config.status	2002-07-16 10:51:14.000000000 +1200
-+++ tsocks/config.status	1970-01-01 12:00:00.000000000 +1200
-@@ -1,312 +0,0 @@
--#! /bin/sh
--# Generated automatically by configure.
--# Run this file to recreate the current configuration.
--# This directory was configured as follows,
--# on host cardini.homenet:
--#
--# ./configure 
--#
--# Compiler output produced by configure, useful for debugging
--# configure, is in ./config.log if it exists.
--
--ac_cs_usage="Usage: ./config.status [--recheck] [--version] [--help]"
--for ac_option
--do
--  case "$ac_option" in
--  -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
--    echo "running ${CONFIG_SHELL-/bin/sh} ./configure  --no-create --no-recursion"
--    exec ${CONFIG_SHELL-/bin/sh} ./configure  --no-create --no-recursion ;;
--  -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
--    echo "./config.status generated by autoconf version 2.13"
--    exit 0 ;;
--  -help | --help | --hel | --he | --h)
--    echo "$ac_cs_usage"; exit 0 ;;
--  *) echo "$ac_cs_usage"; exit 1 ;;
--  esac
--done
--
--ac_given_srcdir=.
--ac_given_INSTALL="/usr/bin/install -c"
--
--trap 'rm -fr Makefile config.h conftest*; exit 1' 1 2 15
--
--# Protect against being on the right side of a sed subst in config.status.
--sed 's/%@/@@/; s/@%/@@/; s/%g$/@g/; /@g$/s/[\\&%]/\\&/g;
-- s/@@/%@/; s/@@/@%/; s/@g$/%g/' > conftest.subs <<\CEOF
--/^[ 	]*VPATH[ 	]*=[^:]*$/d
--
--s%@SHELL@%/bin/sh%g
--s%@CFLAGS@%-g -O2 -Wall%g
--s%@CPPFLAGS@%%g
--s%@CXXFLAGS@%%g
--s%@FFLAGS@%%g
--s%@DEFS@%-DHAVE_CONFIG_H%g
--s%@LDFLAGS@%%g
--s%@LIBS@% -lc%g
--s%@exec_prefix@%${prefix}%g
--s%@prefix@%/usr%g
--s%@program_transform_name@%s,x,x,%g
--s%@bindir@%${exec_prefix}/bin%g
--s%@sbindir@%${exec_prefix}/sbin%g
--s%@libexecdir@%${exec_prefix}/libexec%g
--s%@datadir@%${prefix}/share%g
--s%@sysconfdir@%${prefix}/etc%g
--s%@sharedstatedir@%${prefix}/com%g
--s%@localstatedir@%${prefix}/var%g
--s%@libdir@%/lib%g
--s%@includedir@%${prefix}/include%g
--s%@oldincludedir@%/usr/include%g
--s%@infodir@%${prefix}/info%g
--s%@mandir@%${prefix}/man%g
--s%@host@%i586-pc-linux-gnu%g
--s%@host_alias@%i586-pc-linux-gnu%g
--s%@host_cpu@%i586%g
--s%@host_vendor@%pc%g
--s%@host_os@%linux-gnu%g
--s%@CC@%gcc%g
--s%@INSTALL_PROGRAM@%${INSTALL}%g
--s%@INSTALL_SCRIPT@%${INSTALL_PROGRAM}%g
--s%@INSTALL_DATA@%${INSTALL} -m 644%g
--s%@LN_S@%ln -s%g
--s%@CPP@%gcc -E%g
--s%@FIND@%%g
--s%@TAIL@%%g
--s%@SPECIALLIBS@%-ldl %g
--
--CEOF
--
--# Split the substitutions into bite-sized pieces for seds with
--# small command number limits, like on Digital OSF/1 and HP-UX.
--ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script.
--ac_file=1 # Number of current file.
--ac_beg=1 # First line for current file.
--ac_end=$ac_max_sed_cmds # Line after last line for current file.
--ac_more_lines=:
--ac_sed_cmds=""
--while $ac_more_lines; do
--  if test $ac_beg -gt 1; then
--    sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file
--  else
--    sed "${ac_end}q" conftest.subs > conftest.s$ac_file
--  fi
--  if test ! -s conftest.s$ac_file; then
--    ac_more_lines=false
--    rm -f conftest.s$ac_file
--  else
--    if test -z "$ac_sed_cmds"; then
--      ac_sed_cmds="sed -f conftest.s$ac_file"
--    else
--      ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file"
--    fi
--    ac_file=`expr $ac_file + 1`
--    ac_beg=$ac_end
--    ac_end=`expr $ac_end + $ac_max_sed_cmds`
--  fi
--done
--if test -z "$ac_sed_cmds"; then
--  ac_sed_cmds=cat
--fi
--
--CONFIG_FILES=${CONFIG_FILES-"Makefile"}
--for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
--  # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
--  case "$ac_file" in
--  *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
--       ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
--  *) ac_file_in="${ac_file}.in" ;;
--  esac
--
--  # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories.
--
--  # Remove last slash and all that follows it.  Not all systems have dirname.
--  ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
--  if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
--    # The file is in a subdirectory.
--    test ! -d "$ac_dir" && mkdir "$ac_dir"
--    ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`"
--    # A "../" for each directory in $ac_dir_suffix.
--    ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'`
--  else
--    ac_dir_suffix= ac_dots=
--  fi
--
--  case "$ac_given_srcdir" in
--  .)  srcdir=.
--      if test -z "$ac_dots"; then top_srcdir=.
--      else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;;
--  /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;;
--  *) # Relative path.
--    srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix"
--    top_srcdir="$ac_dots$ac_given_srcdir" ;;
--  esac
--
--  case "$ac_given_INSTALL" in
--  [/$]*) INSTALL="$ac_given_INSTALL" ;;
--  *) INSTALL="$ac_dots$ac_given_INSTALL" ;;
--  esac
--
--  echo creating "$ac_file"
--  rm -f "$ac_file"
--  configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure."
--  case "$ac_file" in
--  *Makefile*) ac_comsub="1i\\
--# $configure_input" ;;
--  *) ac_comsub= ;;
--  esac
--
--  ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
--  sed -e "$ac_comsub
--s%@configure_input@%$configure_input%g
--s%@srcdir@%$srcdir%g
--s%@top_srcdir@%$top_srcdir%g
--s%@INSTALL@%$INSTALL%g
--" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file
--fi; done
--rm -f conftest.s*
--
--# These sed commands are passed to sed as "A NAME B NAME C VALUE D", where
--# NAME is the cpp macro being defined and VALUE is the value it is being given.
--#
--# ac_d sets the value in "#define NAME VALUE" lines.
--ac_dA='s%^\([ 	]*\)#\([ 	]*define[ 	][ 	]*\)'
--ac_dB='\([ 	][ 	]*\)[^ 	]*%\1#\2'
--ac_dC='\3'
--ac_dD='%g'
--# ac_u turns "#undef NAME" with trailing blanks into "#define NAME VALUE".
--ac_uA='s%^\([ 	]*\)#\([ 	]*\)undef\([ 	][ 	]*\)'
--ac_uB='\([ 	]\)%\1#\2define\3'
--ac_uC=' '
--ac_uD='\4%g'
--# ac_e turns "#undef NAME" without trailing blanks into "#define NAME VALUE".
--ac_eA='s%^\([ 	]*\)#\([ 	]*\)undef\([ 	][ 	]*\)'
--ac_eB='$%\1#\2define\3'
--ac_eC=' '
--ac_eD='%g'
--
--if test "${CONFIG_HEADERS+set}" != set; then
--  CONFIG_HEADERS="config.h"
--fi
--for ac_file in .. $CONFIG_HEADERS; do if test "x$ac_file" != x..; then
--  # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
--  case "$ac_file" in
--  *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
--       ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
--  *) ac_file_in="${ac_file}.in" ;;
--  esac
--
--  echo creating $ac_file
--
--  rm -f conftest.frag conftest.in conftest.out
--  ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
--  cat $ac_file_inputs > conftest.in
--
--  cat > conftest.frag <<CEOF
--${ac_dA}CONF_FILE${ac_dB}CONF_FILE${ac_dC}"/etc/tsocks.conf"${ac_dD}
--${ac_uA}CONF_FILE${ac_uB}CONF_FILE${ac_uC}"/etc/tsocks.conf"${ac_uD}
--${ac_eA}CONF_FILE${ac_eB}CONF_FILE${ac_eC}"/etc/tsocks.conf"${ac_eD}
--${ac_dA}STDC_HEADERS${ac_dB}STDC_HEADERS${ac_dC}1${ac_dD}
--${ac_uA}STDC_HEADERS${ac_uB}STDC_HEADERS${ac_uC}1${ac_uD}
--${ac_eA}STDC_HEADERS${ac_eB}STDC_HEADERS${ac_eC}1${ac_eD}
--${ac_dA}HAVE_UNISTD_H${ac_dB}HAVE_UNISTD_H${ac_dC}1${ac_dD}
--${ac_uA}HAVE_UNISTD_H${ac_uB}HAVE_UNISTD_H${ac_uC}1${ac_uD}
--${ac_eA}HAVE_UNISTD_H${ac_eB}HAVE_UNISTD_H${ac_eC}1${ac_eD}
--${ac_dA}HAVE_STRCSPN${ac_dB}HAVE_STRCSPN${ac_dC}1${ac_dD}
--${ac_uA}HAVE_STRCSPN${ac_uB}HAVE_STRCSPN${ac_uC}1${ac_uD}
--${ac_eA}HAVE_STRCSPN${ac_eB}HAVE_STRCSPN${ac_eC}1${ac_eD}
--CEOF
--  sed -f conftest.frag conftest.in > conftest.out
--  rm -f conftest.in
--  mv conftest.out conftest.in
--
--  cat > conftest.frag <<CEOF
--${ac_dA}HAVE_STRDUP${ac_dB}HAVE_STRDUP${ac_dC}1${ac_dD}
--${ac_uA}HAVE_STRDUP${ac_uB}HAVE_STRDUP${ac_uC}1${ac_uD}
--${ac_eA}HAVE_STRDUP${ac_eB}HAVE_STRDUP${ac_eC}1${ac_eD}
--${ac_dA}HAVE_STRERROR${ac_dB}HAVE_STRERROR${ac_dC}1${ac_dD}
--${ac_uA}HAVE_STRERROR${ac_uB}HAVE_STRERROR${ac_uC}1${ac_uD}
--${ac_eA}HAVE_STRERROR${ac_eB}HAVE_STRERROR${ac_eC}1${ac_eD}
--${ac_dA}HAVE_STRSPN${ac_dB}HAVE_STRSPN${ac_dC}1${ac_dD}
--${ac_uA}HAVE_STRSPN${ac_uB}HAVE_STRSPN${ac_uC}1${ac_uD}
--${ac_eA}HAVE_STRSPN${ac_eB}HAVE_STRSPN${ac_eC}1${ac_eD}
--${ac_dA}HAVE_STRTOL${ac_dB}HAVE_STRTOL${ac_dC}1${ac_dD}
--${ac_uA}HAVE_STRTOL${ac_uB}HAVE_STRTOL${ac_uC}1${ac_uD}
--${ac_eA}HAVE_STRTOL${ac_eB}HAVE_STRTOL${ac_eC}1${ac_eD}
--CEOF
--  sed -f conftest.frag conftest.in > conftest.out
--  rm -f conftest.in
--  mv conftest.out conftest.in
--
--  cat > conftest.frag <<CEOF
--${ac_dA}HAVE_INET_ATON${ac_dB}HAVE_INET_ATON${ac_dC}1${ac_dD}
--${ac_uA}HAVE_INET_ATON${ac_uB}HAVE_INET_ATON${ac_uC}1${ac_uD}
--${ac_eA}HAVE_INET_ATON${ac_eB}HAVE_INET_ATON${ac_eC}1${ac_eD}
--${ac_dA}HAVE_GETHOSTBYNAME${ac_dB}HAVE_GETHOSTBYNAME${ac_dC}1${ac_dD}
--${ac_uA}HAVE_GETHOSTBYNAME${ac_uB}HAVE_GETHOSTBYNAME${ac_uC}1${ac_uD}
--${ac_eA}HAVE_GETHOSTBYNAME${ac_eB}HAVE_GETHOSTBYNAME${ac_eC}1${ac_eD}
--${ac_dA}HAVE_LIBDL${ac_dB}HAVE_LIBDL${ac_dC}1${ac_dD}
--${ac_uA}HAVE_LIBDL${ac_uB}HAVE_LIBDL${ac_uC}1${ac_uD}
--${ac_eA}HAVE_LIBDL${ac_eB}HAVE_LIBDL${ac_eC}1${ac_eD}
--${ac_dA}ALLOW_ENV_CONFIG${ac_dB}ALLOW_ENV_CONFIG${ac_dC}1${ac_dD}
--${ac_uA}ALLOW_ENV_CONFIG${ac_uB}ALLOW_ENV_CONFIG${ac_uC}1${ac_uD}
--${ac_eA}ALLOW_ENV_CONFIG${ac_eB}ALLOW_ENV_CONFIG${ac_eC}1${ac_eD}
--CEOF
--  sed -f conftest.frag conftest.in > conftest.out
--  rm -f conftest.in
--  mv conftest.out conftest.in
--
--  cat > conftest.frag <<CEOF
--${ac_dA}ALLOW_MSG_OUTPUT${ac_dB}ALLOW_MSG_OUTPUT${ac_dC}1${ac_dD}
--${ac_uA}ALLOW_MSG_OUTPUT${ac_uB}ALLOW_MSG_OUTPUT${ac_uC}1${ac_uD}
--${ac_eA}ALLOW_MSG_OUTPUT${ac_eB}ALLOW_MSG_OUTPUT${ac_eC}1${ac_eD}
--${ac_dA}HOSTNAMES${ac_dB}HOSTNAMES${ac_dC}1${ac_dD}
--${ac_uA}HOSTNAMES${ac_uB}HOSTNAMES${ac_uC}1${ac_uD}
--${ac_eA}HOSTNAMES${ac_eB}HOSTNAMES${ac_eC}1${ac_eD}
--${ac_dA}SELECT_SIGNATURE${ac_dB}SELECT_SIGNATURE${ac_dC}int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout${ac_dD}
--${ac_uA}SELECT_SIGNATURE${ac_uB}SELECT_SIGNATURE${ac_uC}int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout${ac_uD}
--${ac_eA}SELECT_SIGNATURE${ac_eB}SELECT_SIGNATURE${ac_eC}int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout${ac_eD}
--${ac_dA}CONNECT_SIGNATURE${ac_dB}CONNECT_SIGNATURE${ac_dC}int __fd, const struct sockaddr_in * __addr, socklen_t __len${ac_dD}
--${ac_uA}CONNECT_SIGNATURE${ac_uB}CONNECT_SIGNATURE${ac_uC}int __fd, const struct sockaddr_in * __addr, socklen_t __len${ac_uD}
--${ac_eA}CONNECT_SIGNATURE${ac_eB}CONNECT_SIGNATURE${ac_eC}int __fd, const struct sockaddr_in * __addr, socklen_t __len${ac_eD}
--CEOF
--  sed -f conftest.frag conftest.in > conftest.out
--  rm -f conftest.in
--  mv conftest.out conftest.in
--
--  cat > conftest.frag <<CEOF
--${ac_dA}CONNECT_SOCKARG${ac_dB}CONNECT_SOCKARG${ac_dC}struct sockaddr_in *${ac_dD}
--${ac_uA}CONNECT_SOCKARG${ac_uB}CONNECT_SOCKARG${ac_uC}struct sockaddr_in *${ac_uD}
--${ac_eA}CONNECT_SOCKARG${ac_eB}CONNECT_SOCKARG${ac_eC}struct sockaddr_in *${ac_eD}
--${ac_dA}CLOSE_SIGNATURE${ac_dB}CLOSE_SIGNATURE${ac_dC}int fd${ac_dD}
--${ac_uA}CLOSE_SIGNATURE${ac_uB}CLOSE_SIGNATURE${ac_uC}int fd${ac_uD}
--${ac_eA}CLOSE_SIGNATURE${ac_eB}CLOSE_SIGNATURE${ac_eC}int fd${ac_eD}
--${ac_dA}POLL_SIGNATURE${ac_dB}POLL_SIGNATURE${ac_dC}struct pollfd *ufds, unsigned long nfds, int timeout${ac_dD}
--${ac_uA}POLL_SIGNATURE${ac_uB}POLL_SIGNATURE${ac_uC}struct pollfd *ufds, unsigned long nfds, int timeout${ac_uD}
--${ac_eA}POLL_SIGNATURE${ac_eB}POLL_SIGNATURE${ac_eC}struct pollfd *ufds, unsigned long nfds, int timeout${ac_eD}
--s%^[ 	]*#[ 	]*undef[ 	][ 	]*[a-zA-Z_][a-zA-Z_0-9]*%/* & */%
--CEOF
--  sed -f conftest.frag conftest.in > conftest.out
--  rm -f conftest.in
--  mv conftest.out conftest.in
--
--  rm -f conftest.frag conftest.h
--  echo "/* $ac_file.  Generated automatically by configure.  */" > conftest.h
--  cat conftest.in >> conftest.h
--  rm -f conftest.in
--  if cmp -s $ac_file conftest.h 2>/dev/null; then
--    echo "$ac_file is unchanged"
--    rm -f conftest.h
--  else
--    # Remove last slash and all that follows it.  Not all systems have dirname.
--      ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
--      if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
--      # The file is in a subdirectory.
--      test ! -d "$ac_dir" && mkdir "$ac_dir"
--    fi
--    rm -f $ac_file
--    mv conftest.h $ac_file
--  fi
--fi; done
--
--
--
--exit 0
-diff -rN -U 5 tsocks-1.8/configure tsocks/configure
---- tsocks-1.8/configure	2002-07-16 10:51:08.000000000 +1200
-+++ tsocks/configure	2005-10-02 21:57:17.000000000 +1300
-@@ -1,53 +1,345 @@
- #! /bin/sh
--
- # Guess values for system-dependent variables and create Makefiles.
--# Generated automatically using autoconf version 2.13 
--# Copyright (C) 1992, 93, 94, 95, 96 Free Software Foundation, Inc.
-+# Generated by GNU Autoconf 2.59.
- #
-+# Copyright (C) 2003 Free Software Foundation, Inc.
- # This configure script is free software; the Free Software Foundation
- # gives unlimited permission to copy, distribute and modify it.
-+## --------------------- ##
-+## M4sh Initialization.  ##
-+## --------------------- ##
-+
-+# Be Bourne compatible
-+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
-+  emulate sh
-+  NULLCMD=:
-+  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
-+  # is contrary to our usage.  Disable this feature.
-+  alias -g '${1+"$@"}'='"$@"'
-+elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
-+  set -o posix
-+fi
-+DUALCASE=1; export DUALCASE # for MKS sh
-+
-+# Support unset when possible.
-+if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
-+  as_unset=unset
-+else
-+  as_unset=false
-+fi
-+
-+
-+# Work around bugs in pre-3.0 UWIN ksh.
-+$as_unset ENV MAIL MAILPATH
-+PS1='$ '
-+PS2='> '
-+PS4='+ '
-+
-+# NLS nuisances.
-+for as_var in \
-+  LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
-+  LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
-+  LC_TELEPHONE LC_TIME
-+do
-+  if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
-+    eval $as_var=C; export $as_var
-+  else
-+    $as_unset $as_var
-+  fi
-+done
-+
-+# Required to use basename.
-+if expr a : '\(a\)' >/dev/null 2>&1; then
-+  as_expr=expr
-+else
-+  as_expr=false
-+fi
-+
-+if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
-+  as_basename=basename
-+else
-+  as_basename=false
-+fi
-+
-+
-+# Name of the executable.
-+as_me=`$as_basename "$0" ||
-+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
-+	 X"$0" : 'X\(//\)$' \| \
-+	 X"$0" : 'X\(/\)$' \| \
-+	 .     : '\(.\)' 2>/dev/null ||
-+echo X/"$0" |
-+    sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
-+  	  /^X\/\(\/\/\)$/{ s//\1/; q; }
-+  	  /^X\/\(\/\).*/{ s//\1/; q; }
-+  	  s/.*/./; q'`
-+
-+
-+# PATH needs CR, and LINENO needs CR and PATH.
-+# Avoid depending upon Character Ranges.
-+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-+as_cr_digits='0123456789'
-+as_cr_alnum=$as_cr_Letters$as_cr_digits
-+
-+# The user is always right.
-+if test "${PATH_SEPARATOR+set}" != set; then
-+  echo "#! /bin/sh" >conf$$.sh
-+  echo  "exit 0"   >>conf$$.sh
-+  chmod +x conf$$.sh
-+  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
-+    PATH_SEPARATOR=';'
-+  else
-+    PATH_SEPARATOR=:
-+  fi
-+  rm -f conf$$.sh
-+fi
-+
-+
-+  as_lineno_1=$LINENO
-+  as_lineno_2=$LINENO
-+  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
-+  test "x$as_lineno_1" != "x$as_lineno_2" &&
-+  test "x$as_lineno_3"  = "x$as_lineno_2"  || {
-+  # Find who we are.  Look in the path if we contain no path at all
-+  # relative or not.
-+  case $0 in
-+    *[\\/]* ) as_myself=$0 ;;
-+    *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-+for as_dir in $PATH
-+do
-+  IFS=$as_save_IFS
-+  test -z "$as_dir" && as_dir=.
-+  test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-+done
-+
-+       ;;
-+  esac
-+  # We did not find ourselves, most probably we were run as `sh COMMAND'
-+  # in which case we are not to be found in the path.
-+  if test "x$as_myself" = x; then
-+    as_myself=$0
-+  fi
-+  if test ! -f "$as_myself"; then
-+    { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2
-+   { (exit 1); exit 1; }; }
-+  fi
-+  case $CONFIG_SHELL in
-+  '')
-+    as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-+for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
-+do
-+  IFS=$as_save_IFS
-+  test -z "$as_dir" && as_dir=.
-+  for as_base in sh bash ksh sh5; do
-+	 case $as_dir in
-+	 /*)
-+	   if ("$as_dir/$as_base" -c '
-+  as_lineno_1=$LINENO
-+  as_lineno_2=$LINENO
-+  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
-+  test "x$as_lineno_1" != "x$as_lineno_2" &&
-+  test "x$as_lineno_3"  = "x$as_lineno_2" ') 2>/dev/null; then
-+	     $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; }
-+	     $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
-+	     CONFIG_SHELL=$as_dir/$as_base
-+	     export CONFIG_SHELL
-+	     exec "$CONFIG_SHELL" "$0" ${1+"$@"}
-+	   fi;;
-+	 esac
-+       done
-+done
-+;;
-+  esac
-+
-+  # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
-+  # uniformly replaced by the line number.  The first 'sed' inserts a
-+  # line-number line before each line; the second 'sed' does the real
-+  # work.  The second script uses 'N' to pair each line-number line
-+  # with the numbered line, and appends trailing '-' during
-+  # substitution so that $LINENO is not a special case at line end.
-+  # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
-+  # second 'sed' script.  Blame Lee E. McMahon for sed's syntax.  :-)
-+  sed '=' <$as_myself |
-+    sed '
-+      N
-+      s,$,-,
-+      : loop
-+      s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
-+      t loop
-+      s,-$,,
-+      s,^['$as_cr_digits']*\n,,
-+    ' >$as_me.lineno &&
-+  chmod +x $as_me.lineno ||
-+    { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
-+   { (exit 1); exit 1; }; }
-+
-+  # Don't try to exec as it changes $[0], causing all sort of problems
-+  # (the dirname of $[0] is not the place where we might find the
-+  # original and so on.  Autoconf is especially sensible to this).
-+  . ./$as_me.lineno
-+  # Exit status is that of the last command.
-+  exit
-+}
-+
-+
-+case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
-+  *c*,-n*) ECHO_N= ECHO_C='
-+' ECHO_T='	' ;;
-+  *c*,*  ) ECHO_N=-n ECHO_C= ECHO_T= ;;
-+  *)       ECHO_N= ECHO_C='\c' ECHO_T= ;;
-+esac
-+
-+if expr a : '\(a\)' >/dev/null 2>&1; then
-+  as_expr=expr
-+else
-+  as_expr=false
-+fi
-+
-+rm -f conf$$ conf$$.exe conf$$.file
-+echo >conf$$.file
-+if ln -s conf$$.file conf$$ 2>/dev/null; then
-+  # We could just check for DJGPP; but this test a) works b) is more generic
-+  # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
-+  if test -f conf$$.exe; then
-+    # Don't use ln at all; we don't have any links
-+    as_ln_s='cp -p'
-+  else
-+    as_ln_s='ln -s'
-+  fi
-+elif ln conf$$.file conf$$ 2>/dev/null; then
-+  as_ln_s=ln
-+else
-+  as_ln_s='cp -p'
-+fi
-+rm -f conf$$ conf$$.exe conf$$.file
-+
-+if mkdir -p . 2>/dev/null; then
-+  as_mkdir_p=:
-+else
-+  test -d ./-p && rmdir ./-p
-+  as_mkdir_p=false
-+fi
-+
-+as_executable_p="test -f"
-+
-+# Sed expression to map a string onto a valid CPP name.
-+as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-+
-+# Sed expression to map a string onto a valid variable name.
-+as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-+
-+
-+# IFS
-+# We need space, tab and new line, in precisely that order.
-+as_nl='
-+'
-+IFS=" 	$as_nl"
-+
-+# CDPATH.
-+$as_unset CDPATH
-+
- 
--# Defaults:
--ac_help=
-+# Name of the host.
-+# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
-+# so uname gets run too.
-+ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
-+
-+exec 6>&1
-+
-+#
-+# Initializations.
-+#
- ac_default_prefix=/usr/local
--# Any additions from configure.in:
-+ac_config_libobj_dir=.
-+cross_compiling=no
-+subdirs=
-+MFLAGS=
-+MAKEFLAGS=
-+SHELL=${CONFIG_SHELL-/bin/sh}
-+
-+# Maximum number of lines to put in a shell here document.
-+# This variable seems obsolete.  It should probably be removed, and
-+# only ac_max_sed_lines should be used.
-+: ${ac_max_here_lines=38}
-+
-+# Identity of this package.
-+PACKAGE_NAME=
-+PACKAGE_TARNAME=
-+PACKAGE_VERSION=
-+PACKAGE_STRING=
-+PACKAGE_BUGREPORT=
-+
-+ac_unique_file="saveme.c"
- ac_default_prefix=/usr
--ac_help="$ac_help
--  --enable-socksdns	      force dns lookups to use tcp "
--ac_help="$ac_help
--  --disable-debug         disable ALL error messages from tsocks "
--ac_help="$ac_help
--  --enable-oldmethod	   use the old method to override connect "
--ac_help="$ac_help
--  --disable-hostnames	   disable hostname lookups for socks servers "
--ac_help="$ac_help
--  --disable-envconf       do not allow TSOCKS_CONF_FILE to specify configuration file "
--ac_help="$ac_help
--  --with-conf=<file>      location of configuration file (/etc/tsocks.conf default)"
-+# Factoring default headers for most tests.
-+ac_includes_default="\
-+#include <stdio.h>
-+#if HAVE_SYS_TYPES_H
-+# include <sys/types.h>
-+#endif
-+#if HAVE_SYS_STAT_H
-+# include <sys/stat.h>
-+#endif
-+#if STDC_HEADERS
-+# include <stdlib.h>
-+# include <stddef.h>
-+#else
-+# if HAVE_STDLIB_H
-+#  include <stdlib.h>
-+# endif
-+#endif
-+#if HAVE_STRING_H
-+# if !STDC_HEADERS && HAVE_MEMORY_H
-+#  include <memory.h>
-+# endif
-+# include <string.h>
-+#endif
-+#if HAVE_STRINGS_H
-+# include <strings.h>
-+#endif
-+#if HAVE_INTTYPES_H
-+# include <inttypes.h>
-+#else
-+# if HAVE_STDINT_H
-+#  include <stdint.h>
-+# endif
-+#endif
-+#if HAVE_UNISTD_H
-+# include <unistd.h>
-+#endif"
-+
-+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA LN_S CPP EGREP DEADPOOL_O FIND TAIL SPECIALLIBS LIBOBJS LTLIBOBJS'
-+ac_subst_files=''
- 
- # Initialize some variables set by options.
-+ac_init_help=
-+ac_init_version=false
- # The variables have the same names as the options, with
- # dashes changed to underlines.
--build=NONE
--cache_file=./config.cache
-+cache_file=/dev/null
- exec_prefix=NONE
--host=NONE
- no_create=
--nonopt=NONE
- no_recursion=
- prefix=NONE
- program_prefix=NONE
- program_suffix=NONE
- program_transform_name=s,x,x,
- silent=
- site=
- srcdir=
--target=NONE
- verbose=
- x_includes=NONE
- x_libraries=NONE
-+
-+# Installation directory options.
-+# These are left unexpanded so users can "make install exec_prefix=/foo"
-+# and all the variables that are supposed to be based on exec_prefix
-+# by default will actually change.
-+# Use braces instead of parens because sh, perl, etc. also accept them.
- bindir='${exec_prefix}/bin'
- sbindir='${exec_prefix}/sbin'
- libexecdir='${exec_prefix}/libexec'
- datadir='${prefix}/share'
- sysconfdir='${prefix}/etc'
-@@ -57,199 +349,143 @@
- includedir='${prefix}/include'
- oldincludedir='/usr/include'
- infodir='${prefix}/info'
- mandir='${prefix}/man'
- 
--# Initialize some other variables.
--subdirs=
--MFLAGS= MAKEFLAGS=
--SHELL=${CONFIG_SHELL-/bin/sh}
--# Maximum number of lines to put in a shell here document.
--ac_max_here_lines=12
--
- ac_prev=
- for ac_option
- do
--
-   # If the previous option needs an argument, assign it.
-   if test -n "$ac_prev"; then
-     eval "$ac_prev=\$ac_option"
-     ac_prev=
-     continue
-   fi
- 
--  case "$ac_option" in
--  -*=*) ac_optarg=`echo "$ac_option" | sed 's/[-_a-zA-Z0-9]*=//'` ;;
--  *) ac_optarg= ;;
--  esac
-+  ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'`
- 
-   # Accept the important Cygnus configure options, so we can diagnose typos.
- 
--  case "$ac_option" in
-+  case $ac_option in
- 
-   -bindir | --bindir | --bindi | --bind | --bin | --bi)
-     ac_prev=bindir ;;
-   -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
--    bindir="$ac_optarg" ;;
-+    bindir=$ac_optarg ;;
- 
-   -build | --build | --buil | --bui | --bu)
--    ac_prev=build ;;
-+    ac_prev=build_alias ;;
-   -build=* | --build=* | --buil=* | --bui=* | --bu=*)
--    build="$ac_optarg" ;;
-+    build_alias=$ac_optarg ;;
- 
-   -cache-file | --cache-file | --cache-fil | --cache-fi \
-   | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
-     ac_prev=cache_file ;;
-   -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
-   | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
--    cache_file="$ac_optarg" ;;
-+    cache_file=$ac_optarg ;;
-+
-+  --config-cache | -C)
-+    cache_file=config.cache ;;
- 
-   -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
-     ac_prev=datadir ;;
-   -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
-   | --da=*)
--    datadir="$ac_optarg" ;;
-+    datadir=$ac_optarg ;;
- 
-   -disable-* | --disable-*)
--    ac_feature=`echo $ac_option|sed -e 's/-*disable-//'`
-+    ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
-     # Reject names that are not valid shell variable names.
--    if test -n "`echo $ac_feature| sed 's/[-a-zA-Z0-9_]//g'`"; then
--      { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
--    fi
--    ac_feature=`echo $ac_feature| sed 's/-/_/g'`
--    eval "enable_${ac_feature}=no" ;;
-+    expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
-+      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
-+   { (exit 1); exit 1; }; }
-+    ac_feature=`echo $ac_feature | sed 's/-/_/g'`
-+    eval "enable_$ac_feature=no" ;;
- 
-   -enable-* | --enable-*)
--    ac_feature=`echo $ac_option|sed -e 's/-*enable-//' -e 's/=.*//'`
-+    ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
-     # Reject names that are not valid shell variable names.
--    if test -n "`echo $ac_feature| sed 's/[-_a-zA-Z0-9]//g'`"; then
--      { echo "configure: error: $ac_feature: invalid feature name" 1>&2; exit 1; }
--    fi
--    ac_feature=`echo $ac_feature| sed 's/-/_/g'`
--    case "$ac_option" in
--      *=*) ;;
-+    expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
-+      { echo "$as_me: error: invalid feature name: $ac_feature" >&2
-+   { (exit 1); exit 1; }; }
-+    ac_feature=`echo $ac_feature | sed 's/-/_/g'`
-+    case $ac_option in
-+      *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
-       *) ac_optarg=yes ;;
-     esac
--    eval "enable_${ac_feature}='$ac_optarg'" ;;
-+    eval "enable_$ac_feature='$ac_optarg'" ;;
- 
-   -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
-   | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
-   | --exec | --exe | --ex)
-     ac_prev=exec_prefix ;;
-   -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
-   | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
-   | --exec=* | --exe=* | --ex=*)
--    exec_prefix="$ac_optarg" ;;
-+    exec_prefix=$ac_optarg ;;
- 
-   -gas | --gas | --ga | --g)
-     # Obsolete; use --with-gas.
-     with_gas=yes ;;
- 
--  -help | --help | --hel | --he)
--    # Omit some internal or obsolete options to make the list less imposing.
--    # This message is too long to be a string in the A/UX 3.1 sh.
--    cat << EOF
--Usage: configure [options] [host]
--Options: [defaults in brackets after descriptions]
--Configuration:
--  --cache-file=FILE       cache test results in FILE
--  --help                  print this message
--  --no-create             do not create output files
--  --quiet, --silent       do not print \`checking...' messages
--  --version               print the version of autoconf that created configure
--Directory and file names:
--  --prefix=PREFIX         install architecture-independent files in PREFIX
--                          [$ac_default_prefix]
--  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
--                          [same as prefix]
--  --bindir=DIR            user executables in DIR [EPREFIX/bin]
--  --sbindir=DIR           system admin executables in DIR [EPREFIX/sbin]
--  --libexecdir=DIR        program executables in DIR [EPREFIX/libexec]
--  --datadir=DIR           read-only architecture-independent data in DIR
--                          [PREFIX/share]
--  --sysconfdir=DIR        read-only single-machine data in DIR [PREFIX/etc]
--  --sharedstatedir=DIR    modifiable architecture-independent data in DIR
--                          [PREFIX/com]
--  --localstatedir=DIR     modifiable single-machine data in DIR [PREFIX/var]
--  --libdir=DIR            object code libraries in DIR [EPREFIX/lib]
--  --includedir=DIR        C header files in DIR [PREFIX/include]
--  --oldincludedir=DIR     C header files for non-gcc in DIR [/usr/include]
--  --infodir=DIR           info documentation in DIR [PREFIX/info]
--  --mandir=DIR            man documentation in DIR [PREFIX/man]
--  --srcdir=DIR            find the sources in DIR [configure dir or ..]
--  --program-prefix=PREFIX prepend PREFIX to installed program names
--  --program-suffix=SUFFIX append SUFFIX to installed program names
--  --program-transform-name=PROGRAM
--                          run sed PROGRAM on installed program names
--EOF
--    cat << EOF
--Host type:
--  --build=BUILD           configure for building on BUILD [BUILD=HOST]
--  --host=HOST             configure for HOST [guessed]
--  --target=TARGET         configure for TARGET [TARGET=HOST]
--Features and packages:
--  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
--  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
--  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
--  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
--  --x-includes=DIR        X include files are in DIR
--  --x-libraries=DIR       X library files are in DIR
--EOF
--    if test -n "$ac_help"; then
--      echo "--enable and --with options recognized:$ac_help"
--    fi
--    exit 0 ;;
-+  -help | --help | --hel | --he | -h)
-+    ac_init_help=long ;;
-+  -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
-+    ac_init_help=recursive ;;
-+  -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
-+    ac_init_help=short ;;
- 
-   -host | --host | --hos | --ho)
--    ac_prev=host ;;
-+    ac_prev=host_alias ;;
-   -host=* | --host=* | --hos=* | --ho=*)
--    host="$ac_optarg" ;;
-+    host_alias=$ac_optarg ;;
- 
-   -includedir | --includedir | --includedi | --included | --include \
-   | --includ | --inclu | --incl | --inc)
-     ac_prev=includedir ;;
-   -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
-   | --includ=* | --inclu=* | --incl=* | --inc=*)
--    includedir="$ac_optarg" ;;
-+    includedir=$ac_optarg ;;
- 
-   -infodir | --infodir | --infodi | --infod | --info | --inf)
-     ac_prev=infodir ;;
-   -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
--    infodir="$ac_optarg" ;;
-+    infodir=$ac_optarg ;;
- 
-   -libdir | --libdir | --libdi | --libd)
-     ac_prev=libdir ;;
-   -libdir=* | --libdir=* | --libdi=* | --libd=*)
--    libdir="$ac_optarg" ;;
-+    libdir=$ac_optarg ;;
- 
-   -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
-   | --libexe | --libex | --libe)
-     ac_prev=libexecdir ;;
-   -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
-   | --libexe=* | --libex=* | --libe=*)
--    libexecdir="$ac_optarg" ;;
-+    libexecdir=$ac_optarg ;;
- 
-   -localstatedir | --localstatedir | --localstatedi | --localstated \
-   | --localstate | --localstat | --localsta | --localst \
-   | --locals | --local | --loca | --loc | --lo)
-     ac_prev=localstatedir ;;
-   -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
-   | --localstate=* | --localstat=* | --localsta=* | --localst=* \
-   | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
--    localstatedir="$ac_optarg" ;;
-+    localstatedir=$ac_optarg ;;
- 
-   -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
-     ac_prev=mandir ;;
-   -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
--    mandir="$ac_optarg" ;;
-+    mandir=$ac_optarg ;;
- 
-   -nfp | --nfp | --nf)
-     # Obsolete; use --without-fp.
-     with_fp=no ;;
- 
-   -no-create | --no-create | --no-creat | --no-crea | --no-cre \
--  | --no-cr | --no-c)
-+  | --no-cr | --no-c | -n)
-     no_create=yes ;;
- 
-   -no-recursion | --no-recursion | --no-recursio | --no-recursi \
-   | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
-     no_recursion=yes ;;
-@@ -259,30 +495,30 @@
-   | --oldin | --oldi | --old | --ol | --o)
-     ac_prev=oldincludedir ;;
-   -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
-   | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
-   | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
--    oldincludedir="$ac_optarg" ;;
-+    oldincludedir=$ac_optarg ;;
- 
-   -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
-     ac_prev=prefix ;;
-   -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
--    prefix="$ac_optarg" ;;
-+    prefix=$ac_optarg ;;
- 
-   -program-prefix | --program-prefix | --program-prefi | --program-pref \
-   | --program-pre | --program-pr | --program-p)
-     ac_prev=program_prefix ;;
-   -program-prefix=* | --program-prefix=* | --program-prefi=* \
-   | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
--    program_prefix="$ac_optarg" ;;
-+    program_prefix=$ac_optarg ;;
- 
-   -program-suffix | --program-suffix | --program-suffi | --program-suff \
-   | --program-suf | --program-su | --program-s)
-     ac_prev=program_suffix ;;
-   -program-suffix=* | --program-suffix=* | --program-suffi=* \
-   | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
--    program_suffix="$ac_optarg" ;;
-+    program_suffix=$ac_optarg ;;
- 
-   -program-transform-name | --program-transform-name \
-   | --program-transform-nam | --program-transform-na \
-   | --program-transform-n | --program-transform- \
-   | --program-transform | --program-transfor \
-@@ -295,305 +531,842 @@
-   | --program-transform-n=* | --program-transform-=* \
-   | --program-transform=* | --program-transfor=* \
-   | --program-transfo=* | --program-transf=* \
-   | --program-trans=* | --program-tran=* \
-   | --progr-tra=* | --program-tr=* | --program-t=*)
--    program_transform_name="$ac_optarg" ;;
-+    program_transform_name=$ac_optarg ;;
- 
-   -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-   | -silent | --silent | --silen | --sile | --sil)
-     silent=yes ;;
- 
-   -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
-     ac_prev=sbindir ;;
-   -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
-   | --sbi=* | --sb=*)
--    sbindir="$ac_optarg" ;;
-+    sbindir=$ac_optarg ;;
- 
-   -sharedstatedir | --sharedstatedir | --sharedstatedi \
-   | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
-   | --sharedst | --shareds | --shared | --share | --shar \
-   | --sha | --sh)
-     ac_prev=sharedstatedir ;;
-   -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
-   | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
-   | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
-   | --sha=* | --sh=*)
--    sharedstatedir="$ac_optarg" ;;
-+    sharedstatedir=$ac_optarg ;;
- 
-   -site | --site | --sit)
-     ac_prev=site ;;
-   -site=* | --site=* | --sit=*)
--    site="$ac_optarg" ;;
-+    site=$ac_optarg ;;
- 
-   -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
-     ac_prev=srcdir ;;
-   -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
--    srcdir="$ac_optarg" ;;
-+    srcdir=$ac_optarg ;;
- 
-   -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
-   | --syscon | --sysco | --sysc | --sys | --sy)
-     ac_prev=sysconfdir ;;
-   -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
-   | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
--    sysconfdir="$ac_optarg" ;;
-+    sysconfdir=$ac_optarg ;;
- 
-   -target | --target | --targe | --targ | --tar | --ta | --t)
--    ac_prev=target ;;
-+    ac_prev=target_alias ;;
-   -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
--    target="$ac_optarg" ;;
-+    target_alias=$ac_optarg ;;
- 
-   -v | -verbose | --verbose | --verbos | --verbo | --verb)
-     verbose=yes ;;
- 
--  -version | --version | --versio | --versi | --vers)
--    echo "configure generated by autoconf version 2.13"
--    exit 0 ;;
-+  -version | --version | --versio | --versi | --vers | -V)
-+    ac_init_version=: ;;
- 
-   -with-* | --with-*)
--    ac_package=`echo $ac_option|sed -e 's/-*with-//' -e 's/=.*//'`
-+    ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
-     # Reject names that are not valid shell variable names.
--    if test -n "`echo $ac_package| sed 's/[-_a-zA-Z0-9]//g'`"; then
--      { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
--    fi
-+    expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
-+      { echo "$as_me: error: invalid package name: $ac_package" >&2
-+   { (exit 1); exit 1; }; }
-     ac_package=`echo $ac_package| sed 's/-/_/g'`
--    case "$ac_option" in
--      *=*) ;;
-+    case $ac_option in
-+      *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
-       *) ac_optarg=yes ;;
-     esac
--    eval "with_${ac_package}='$ac_optarg'" ;;
-+    eval "with_$ac_package='$ac_optarg'" ;;
- 
-   -without-* | --without-*)
--    ac_package=`echo $ac_option|sed -e 's/-*without-//'`
-+    ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'`
-     # Reject names that are not valid shell variable names.
--    if test -n "`echo $ac_package| sed 's/[-a-zA-Z0-9_]//g'`"; then
--      { echo "configure: error: $ac_package: invalid package name" 1>&2; exit 1; }
--    fi
--    ac_package=`echo $ac_package| sed 's/-/_/g'`
--    eval "with_${ac_package}=no" ;;
-+    expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
-+      { echo "$as_me: error: invalid package name: $ac_package" >&2
-+   { (exit 1); exit 1; }; }
-+    ac_package=`echo $ac_package | sed 's/-/_/g'`
-+    eval "with_$ac_package=no" ;;
- 
-   --x)
-     # Obsolete; use --with-x.
-     with_x=yes ;;
- 
-   -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
-   | --x-incl | --x-inc | --x-in | --x-i)
-     ac_prev=x_includes ;;
-   -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
-   | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
--    x_includes="$ac_optarg" ;;
-+    x_includes=$ac_optarg ;;
- 
-   -x-libraries | --x-libraries | --x-librarie | --x-librari \
-   | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
-     ac_prev=x_libraries ;;
-   -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
-   | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
--    x_libraries="$ac_optarg" ;;
-+    x_libraries=$ac_optarg ;;
- 
--  -*) { echo "configure: error: $ac_option: invalid option; use --help to show usage" 1>&2; exit 1; }
-+  -*) { echo "$as_me: error: unrecognized option: $ac_option
-+Try \`$0 --help' for more information." >&2
-+   { (exit 1); exit 1; }; }
-     ;;
- 
-+  *=*)
-+    ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
-+    # Reject names that are not valid shell variable names.
-+    expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
-+      { echo "$as_me: error: invalid variable name: $ac_envvar" >&2
-+   { (exit 1); exit 1; }; }
-+    ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`
-+    eval "$ac_envvar='$ac_optarg'"
-+    export $ac_envvar ;;
-+
-   *)
--    if test -n "`echo $ac_option| sed 's/[-a-z0-9.]//g'`"; then
--      echo "configure: warning: $ac_option: invalid host type" 1>&2
--    fi
--    if test "x$nonopt" != xNONE; then
--      { echo "configure: error: can only configure for one host and one target at a time" 1>&2; exit 1; }
--    fi
--    nonopt="$ac_option"
-+    # FIXME: should be removed in autoconf 3.0.
-+    echo "$as_me: WARNING: you should use --build, --host, --target" >&2
-+    expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
-+      echo "$as_me: WARNING: invalid host type: $ac_option" >&2
-+    : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
-     ;;
- 
-   esac
- done
- 
- if test -n "$ac_prev"; then
--  { echo "configure: error: missing argument to --`echo $ac_prev | sed 's/_/-/g'`" 1>&2; exit 1; }
--fi
--
--trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
--
--# File descriptor usage:
--# 0 standard input
--# 1 file creation
--# 2 errors and warnings
--# 3 some systems may open it to /dev/tty
--# 4 used on the Kubota Titan
--# 6 checking for... messages and results
--# 5 compiler messages saved in config.log
--if test "$silent" = yes; then
--  exec 6>/dev/null
--else
--  exec 6>&1
-+  ac_option=--`echo $ac_prev | sed 's/_/-/g'`
-+  { echo "$as_me: error: missing argument to $ac_option" >&2
-+   { (exit 1); exit 1; }; }
- fi
--exec 5>./config.log
- 
--echo "\
--This file contains any messages produced by compilers while
--running configure, to aid debugging if configure makes a mistake.
--" 1>&5
-+# Be sure to have absolute paths.
-+for ac_var in exec_prefix prefix
-+do
-+  eval ac_val=$`echo $ac_var`
-+  case $ac_val in
-+    [\\/$]* | ?:[\\/]* | NONE | '' ) ;;
-+    *)  { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
-+   { (exit 1); exit 1; }; };;
-+  esac
-+done
- 
--# Strip out --no-create and --no-recursion so they do not pile up.
--# Also quote any args containing shell metacharacters.
--ac_configure_args=
--for ac_arg
-+# Be sure to have absolute paths.
-+for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \
-+	      localstatedir libdir includedir oldincludedir infodir mandir
- do
--  case "$ac_arg" in
--  -no-create | --no-create | --no-creat | --no-crea | --no-cre \
--  | --no-cr | --no-c) ;;
--  -no-recursion | --no-recursion | --no-recursio | --no-recursi \
--  | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) ;;
--  *" "*|*"	"*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?]*)
--  ac_configure_args="$ac_configure_args '$ac_arg'" ;;
--  *) ac_configure_args="$ac_configure_args $ac_arg" ;;
-+  eval ac_val=$`echo $ac_var`
-+  case $ac_val in
-+    [\\/$]* | ?:[\\/]* ) ;;
-+    *)  { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
-+   { (exit 1); exit 1; }; };;
-   esac
- done
- 
--# NLS nuisances.
--# Only set these to C if already set.  These must not be set unconditionally
--# because not all systems understand e.g. LANG=C (notably SCO).
--# Fixing LC_MESSAGES prevents Solaris sh from translating var values in `set'!
--# Non-C LC_CTYPE values break the ctype check.
--if test "${LANG+set}"   = set; then LANG=C;   export LANG;   fi
--if test "${LC_ALL+set}" = set; then LC_ALL=C; export LC_ALL; fi
--if test "${LC_MESSAGES+set}" = set; then LC_MESSAGES=C; export LC_MESSAGES; fi
--if test "${LC_CTYPE+set}"    = set; then LC_CTYPE=C;    export LC_CTYPE;    fi
-+# There might be people who depend on the old broken behavior: `$host'
-+# used to hold the argument of --host etc.
-+# FIXME: To remove some day.
-+build=$build_alias
-+host=$host_alias
-+target=$target_alias
-+
-+# FIXME: To remove some day.
-+if test "x$host_alias" != x; then
-+  if test "x$build_alias" = x; then
-+    cross_compiling=maybe
-+    echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
-+    If a cross compiler is detected then cross compile mode will be used." >&2
-+  elif test "x$build_alias" != "x$host_alias"; then
-+    cross_compiling=yes
-+  fi
-+fi
- 
--# confdefs.h avoids OS command line length limits that DEFS can exceed.
--rm -rf conftest* confdefs.h
--# AIX cpp loses on an empty file, so make sure it contains at least a newline.
--echo > confdefs.h
-+ac_tool_prefix=
-+test -n "$host_alias" && ac_tool_prefix=$host_alias-
-+
-+test "$silent" = yes && exec 6>/dev/null
- 
--# A filename unique to this package, relative to the directory that
--# configure is in, which we can look for to find out if srcdir is correct.
--ac_unique_file=saveme.c
- 
- # Find the source files, if location was not specified.
- if test -z "$srcdir"; then
-   ac_srcdir_defaulted=yes
-   # Try the directory containing this script, then its parent.
--  ac_prog=$0
--  ac_confdir=`echo $ac_prog|sed 's%/[^/][^/]*$%%'`
--  test "x$ac_confdir" = "x$ac_prog" && ac_confdir=.
-+  ac_confdir=`(dirname "$0") 2>/dev/null ||
-+$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-+	 X"$0" : 'X\(//\)[^/]' \| \
-+	 X"$0" : 'X\(//\)$' \| \
-+	 X"$0" : 'X\(/\)' \| \
-+	 .     : '\(.\)' 2>/dev/null ||
-+echo X"$0" |
-+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
-+  	  /^X\(\/\/\)[^/].*/{ s//\1/; q; }
-+  	  /^X\(\/\/\)$/{ s//\1/; q; }
-+  	  /^X\(\/\).*/{ s//\1/; q; }
-+  	  s/.*/./; q'`
-   srcdir=$ac_confdir
-   if test ! -r $srcdir/$ac_unique_file; then
-     srcdir=..
-   fi
- else
-   ac_srcdir_defaulted=no
- fi
- if test ! -r $srcdir/$ac_unique_file; then
-   if test "$ac_srcdir_defaulted" = yes; then
--    { echo "configure: error: can not find sources in $ac_confdir or .." 1>&2; exit 1; }
-+    { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2
-+   { (exit 1); exit 1; }; }
-   else
--    { echo "configure: error: can not find sources in $srcdir" 1>&2; exit 1; }
-+    { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2
-+   { (exit 1); exit 1; }; }
-   fi
- fi
--srcdir=`echo "${srcdir}" | sed 's%\([^/]\)/*$%\1%'`
-+(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null ||
-+  { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2
-+   { (exit 1); exit 1; }; }
-+srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'`
-+ac_env_build_alias_set=${build_alias+set}
-+ac_env_build_alias_value=$build_alias
-+ac_cv_env_build_alias_set=${build_alias+set}
-+ac_cv_env_build_alias_value=$build_alias
-+ac_env_host_alias_set=${host_alias+set}
-+ac_env_host_alias_value=$host_alias
-+ac_cv_env_host_alias_set=${host_alias+set}
-+ac_cv_env_host_alias_value=$host_alias
-+ac_env_target_alias_set=${target_alias+set}
-+ac_env_target_alias_value=$target_alias
-+ac_cv_env_target_alias_set=${target_alias+set}
-+ac_cv_env_target_alias_value=$target_alias
-+ac_env_CC_set=${CC+set}
-+ac_env_CC_value=$CC
-+ac_cv_env_CC_set=${CC+set}
-+ac_cv_env_CC_value=$CC
-+ac_env_CFLAGS_set=${CFLAGS+set}
-+ac_env_CFLAGS_value=$CFLAGS
-+ac_cv_env_CFLAGS_set=${CFLAGS+set}
-+ac_cv_env_CFLAGS_value=$CFLAGS
-+ac_env_LDFLAGS_set=${LDFLAGS+set}
-+ac_env_LDFLAGS_value=$LDFLAGS
-+ac_cv_env_LDFLAGS_set=${LDFLAGS+set}
-+ac_cv_env_LDFLAGS_value=$LDFLAGS
-+ac_env_CPPFLAGS_set=${CPPFLAGS+set}
-+ac_env_CPPFLAGS_value=$CPPFLAGS
-+ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set}
-+ac_cv_env_CPPFLAGS_value=$CPPFLAGS
-+ac_env_CPP_set=${CPP+set}
-+ac_env_CPP_value=$CPP
-+ac_cv_env_CPP_set=${CPP+set}
-+ac_cv_env_CPP_value=$CPP
-+
-+#
-+# Report the --help message.
-+#
-+if test "$ac_init_help" = "long"; then
-+  # Omit some internal or obsolete options to make the list less imposing.
-+  # This message is too long to be a string in the A/UX 3.1 sh.
-+  cat <<_ACEOF
-+\`configure' configures this package to adapt to many kinds of systems.
-+
-+Usage: $0 [OPTION]... [VAR=VALUE]...
-+
-+To assign environment variables (e.g., CC, CFLAGS...), specify them as
-+VAR=VALUE.  See below for descriptions of some of the useful variables.
-+
-+Defaults for the options are specified in brackets.
-+
-+Configuration:
-+  -h, --help              display this help and exit
-+      --help=short        display options specific to this package
-+      --help=recursive    display the short help of all the included packages
-+  -V, --version           display version information and exit
-+  -q, --quiet, --silent   do not print \`checking...' messages
-+      --cache-file=FILE   cache test results in FILE [disabled]
-+  -C, --config-cache      alias for \`--cache-file=config.cache'
-+  -n, --no-create         do not create output files
-+      --srcdir=DIR        find the sources in DIR [configure dir or \`..']
-+
-+_ACEOF
-+
-+  cat <<_ACEOF
-+Installation directories:
-+  --prefix=PREFIX         install architecture-independent files in PREFIX
-+			  [$ac_default_prefix]
-+  --exec-prefix=EPREFIX   install architecture-dependent files in EPREFIX
-+			  [PREFIX]
-+
-+By default, \`make install' will install all the files in
-+\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc.  You can specify
-+an installation prefix other than \`$ac_default_prefix' using \`--prefix',
-+for instance \`--prefix=\$HOME'.
-+
-+For better control, use the options below.
-+
-+Fine tuning of the installation directories:
-+  --bindir=DIR           user executables [EPREFIX/bin]
-+  --sbindir=DIR          system admin executables [EPREFIX/sbin]
-+  --libexecdir=DIR       program executables [EPREFIX/libexec]
-+  --datadir=DIR          read-only architecture-independent data [PREFIX/share]
-+  --sysconfdir=DIR       read-only single-machine data [PREFIX/etc]
-+  --sharedstatedir=DIR   modifiable architecture-independent data [PREFIX/com]
-+  --localstatedir=DIR    modifiable single-machine data [PREFIX/var]
-+  --libdir=DIR           object code libraries [EPREFIX/lib]
-+  --includedir=DIR       C header files [PREFIX/include]
-+  --oldincludedir=DIR    C header files for non-gcc [/usr/include]
-+  --infodir=DIR          info documentation [PREFIX/info]
-+  --mandir=DIR           man documentation [PREFIX/man]
-+_ACEOF
-+
-+  cat <<\_ACEOF
-+
-+System types:
-+  --build=BUILD     configure for building on BUILD [guessed]
-+  --host=HOST       cross-compile to build programs to run on HOST [BUILD]
-+_ACEOF
-+fi
-+
-+if test -n "$ac_init_help"; then
-+
-+  cat <<\_ACEOF
-+
-+Optional Features:
-+  --disable-FEATURE       do not include FEATURE (same as --enable-FEATURE=no)
-+  --enable-FEATURE[=ARG]  include FEATURE [ARG=yes]
-+  --enable-socksdns       force dns lookups to use tcp
-+  --disable-tordns         don't override name lookup calls to use SOCKS
-+  --disable-debug         disable ALL error messages from tsocks
-+  --enable-oldmethod      use the old method to override connect
-+  --enable-hostnames      enable hostname lookups for socks servers
-+  --disable-envconf       do not allow TSOCKS_CONF_FILE to specify configuration file
-+
-+Optional Packages:
-+  --with-PACKAGE[=ARG]    use PACKAGE [ARG=yes]
-+  --without-PACKAGE       do not use PACKAGE (same as --with-PACKAGE=no)
-+  --with-conf=<file>      location of configuration file (/etc/tsocks.conf default)
-+
-+Some influential environment variables:
-+  CC          C compiler command
-+  CFLAGS      C compiler flags
-+  LDFLAGS     linker flags, e.g. -L<lib dir> if you have libraries in a
-+              nonstandard directory <lib dir>
-+  CPPFLAGS    C/C++ preprocessor flags, e.g. -I<include dir> if you have
-+              headers in a nonstandard directory <include dir>
-+  CPP         C preprocessor
-+
-+Use these variables to override the choices made by `configure' or to help
-+it to find libraries and programs with nonstandard names/locations.
-+
-+_ACEOF
-+fi
-+
-+if test "$ac_init_help" = "recursive"; then
-+  # If there are subdirs, report their specific --help.
-+  ac_popdir=`pwd`
-+  for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
-+    test -d $ac_dir || continue
-+    ac_builddir=.
-+
-+if test "$ac_dir" != .; then
-+  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
-+  # A "../" for each directory in $ac_dir_suffix.
-+  ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
-+else
-+  ac_dir_suffix= ac_top_builddir=
-+fi
-+
-+case $srcdir in
-+  .)  # No --srcdir option.  We are building in place.
-+    ac_srcdir=.
-+    if test -z "$ac_top_builddir"; then
-+       ac_top_srcdir=.
-+    else
-+       ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
-+    fi ;;
-+  [\\/]* | ?:[\\/]* )  # Absolute path.
-+    ac_srcdir=$srcdir$ac_dir_suffix;
-+    ac_top_srcdir=$srcdir ;;
-+  *) # Relative path.
-+    ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
-+    ac_top_srcdir=$ac_top_builddir$srcdir ;;
-+esac
-+
-+# Do not use `cd foo && pwd` to compute absolute paths, because
-+# the directories may not exist.
-+case `pwd` in
-+.) ac_abs_builddir="$ac_dir";;
-+*)
-+  case "$ac_dir" in
-+  .) ac_abs_builddir=`pwd`;;
-+  [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
-+  *) ac_abs_builddir=`pwd`/"$ac_dir";;
-+  esac;;
-+esac
-+case $ac_abs_builddir in
-+.) ac_abs_top_builddir=${ac_top_builddir}.;;
-+*)
-+  case ${ac_top_builddir}. in
-+  .) ac_abs_top_builddir=$ac_abs_builddir;;
-+  [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
-+  *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
-+  esac;;
-+esac
-+case $ac_abs_builddir in
-+.) ac_abs_srcdir=$ac_srcdir;;
-+*)
-+  case $ac_srcdir in
-+  .) ac_abs_srcdir=$ac_abs_builddir;;
-+  [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
-+  *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
-+  esac;;
-+esac
-+case $ac_abs_builddir in
-+.) ac_abs_top_srcdir=$ac_top_srcdir;;
-+*)
-+  case $ac_top_srcdir in
-+  .) ac_abs_top_srcdir=$ac_abs_builddir;;
-+  [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
-+  *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
-+  esac;;
-+esac
-+
-+    cd $ac_dir
-+    # Check for guested configure; otherwise get Cygnus style configure.
-+    if test -f $ac_srcdir/configure.gnu; then
-+      echo
-+      $SHELL $ac_srcdir/configure.gnu  --help=recursive
-+    elif test -f $ac_srcdir/configure; then
-+      echo
-+      $SHELL $ac_srcdir/configure  --help=recursive
-+    elif test -f $ac_srcdir/configure.ac ||
-+	   test -f $ac_srcdir/configure.in; then
-+      echo
-+      $ac_configure --help
-+    else
-+      echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
-+    fi
-+    cd "$ac_popdir"
-+  done
-+fi
-+
-+test -n "$ac_init_help" && exit 0
-+if $ac_init_version; then
-+  cat <<\_ACEOF
-+
-+Copyright (C) 2003 Free Software Foundation, Inc.
-+This configure script is free software; the Free Software Foundation
-+gives unlimited permission to copy, distribute and modify it.
-+_ACEOF
-+  exit 0
-+fi
-+exec 5>config.log
-+cat >&5 <<_ACEOF
-+This file contains any messages produced by compilers while
-+running configure, to aid debugging if configure makes a mistake.
-+
-+It was created by $as_me, which was
-+generated by GNU Autoconf 2.59.  Invocation command line was
-+
-+  $ $0 $@
-+
-+_ACEOF
-+{
-+cat <<_ASUNAME
-+## --------- ##
-+## Platform. ##
-+## --------- ##
-+
-+hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
-+uname -m = `(uname -m) 2>/dev/null || echo unknown`
-+uname -r = `(uname -r) 2>/dev/null || echo unknown`
-+uname -s = `(uname -s) 2>/dev/null || echo unknown`
-+uname -v = `(uname -v) 2>/dev/null || echo unknown`
-+
-+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
-+/bin/uname -X     = `(/bin/uname -X) 2>/dev/null     || echo unknown`
-+
-+/bin/arch              = `(/bin/arch) 2>/dev/null              || echo unknown`
-+/usr/bin/arch -k       = `(/usr/bin/arch -k) 2>/dev/null       || echo unknown`
-+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
-+hostinfo               = `(hostinfo) 2>/dev/null               || echo unknown`
-+/bin/machine           = `(/bin/machine) 2>/dev/null           || echo unknown`
-+/usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null       || echo unknown`
-+/bin/universe          = `(/bin/universe) 2>/dev/null          || echo unknown`
-+
-+_ASUNAME
-+
-+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-+for as_dir in $PATH
-+do
-+  IFS=$as_save_IFS
-+  test -z "$as_dir" && as_dir=.
-+  echo "PATH: $as_dir"
-+done
-+
-+} >&5
-+
-+cat >&5 <<_ACEOF
-+
-+
-+## ----------- ##
-+## Core tests. ##
-+## ----------- ##
-+
-+_ACEOF
-+
-+
-+# Keep a trace of the command line.
-+# Strip out --no-create and --no-recursion so they do not pile up.
-+# Strip out --silent because we don't want to record it for future runs.
-+# Also quote any args containing shell meta-characters.
-+# Make two passes to allow for proper duplicate-argument suppression.
-+ac_configure_args=
-+ac_configure_args0=
-+ac_configure_args1=
-+ac_sep=
-+ac_must_keep_next=false
-+for ac_pass in 1 2
-+do
-+  for ac_arg
-+  do
-+    case $ac_arg in
-+    -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
-+    -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-+    | -silent | --silent | --silen | --sile | --sil)
-+      continue ;;
-+    *" "*|*"	"*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
-+      ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
-+    esac
-+    case $ac_pass in
-+    1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
-+    2)
-+      ac_configure_args1="$ac_configure_args1 '$ac_arg'"
-+      if test $ac_must_keep_next = true; then
-+	ac_must_keep_next=false # Got value, back to normal.
-+      else
-+	case $ac_arg in
-+	  *=* | --config-cache | -C | -disable-* | --disable-* \
-+	  | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
-+	  | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
-+	  | -with-* | --with-* | -without-* | --without-* | --x)
-+	    case "$ac_configure_args0 " in
-+	      "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
-+	    esac
-+	    ;;
-+	  -* ) ac_must_keep_next=true ;;
-+	esac
-+      fi
-+      ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'"
-+      # Get rid of the leading space.
-+      ac_sep=" "
-+      ;;
-+    esac
-+  done
-+done
-+$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; }
-+$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; }
-+
-+# When interrupted or exit'd, cleanup temporary files, and complete
-+# config.log.  We remove comments because anyway the quotes in there
-+# would cause problems or look ugly.
-+# WARNING: Be sure not to use single quotes in there, as some shells,
-+# such as our DU 5.0 friend, will then `close' the trap.
-+trap 'exit_status=$?
-+  # Save into config.log some information that might help in debugging.
-+  {
-+    echo
-+
-+    cat <<\_ASBOX
-+## ---------------- ##
-+## Cache variables. ##
-+## ---------------- ##
-+_ASBOX
-+    echo
-+    # The following way of writing the cache mishandles newlines in values,
-+{
-+  (set) 2>&1 |
-+    case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in
-+    *ac_space=\ *)
-+      sed -n \
-+	"s/'"'"'/'"'"'\\\\'"'"''"'"'/g;
-+	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p"
-+      ;;
-+    *)
-+      sed -n \
-+	"s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
-+      ;;
-+    esac;
-+}
-+    echo
-+
-+    cat <<\_ASBOX
-+## ----------------- ##
-+## Output variables. ##
-+## ----------------- ##
-+_ASBOX
-+    echo
-+    for ac_var in $ac_subst_vars
-+    do
-+      eval ac_val=$`echo $ac_var`
-+      echo "$ac_var='"'"'$ac_val'"'"'"
-+    done | sort
-+    echo
-+
-+    if test -n "$ac_subst_files"; then
-+      cat <<\_ASBOX
-+## ------------- ##
-+## Output files. ##
-+## ------------- ##
-+_ASBOX
-+      echo
-+      for ac_var in $ac_subst_files
-+      do
-+	eval ac_val=$`echo $ac_var`
-+	echo "$ac_var='"'"'$ac_val'"'"'"
-+      done | sort
-+      echo
-+    fi
-+
-+    if test -s confdefs.h; then
-+      cat <<\_ASBOX
-+## ----------- ##
-+## confdefs.h. ##
-+## ----------- ##
-+_ASBOX
-+      echo
-+      sed "/^$/d" confdefs.h | sort
-+      echo
-+    fi
-+    test "$ac_signal" != 0 &&
-+      echo "$as_me: caught signal $ac_signal"
-+    echo "$as_me: exit $exit_status"
-+  } >&5
-+  rm -f core *.core &&
-+  rm -rf conftest* confdefs* conf$$* $ac_clean_files &&
-+    exit $exit_status
-+     ' 0
-+for ac_signal in 1 2 13 15; do
-+  trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
-+done
-+ac_signal=0
-+
-+# confdefs.h avoids OS command line length limits that DEFS can exceed.
-+rm -rf conftest* confdefs.h
-+# AIX cpp loses on an empty file, so make sure it contains at least a newline.
-+echo >confdefs.h
-+
-+# Predefined preprocessor variables.
-+
-+cat >>confdefs.h <<_ACEOF
-+#define PACKAGE_NAME "$PACKAGE_NAME"
-+_ACEOF
-+
-+
-+cat >>confdefs.h <<_ACEOF
-+#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
-+_ACEOF
- 
-+
-+cat >>confdefs.h <<_ACEOF
-+#define PACKAGE_VERSION "$PACKAGE_VERSION"
-+_ACEOF
-+
-+
-+cat >>confdefs.h <<_ACEOF
-+#define PACKAGE_STRING "$PACKAGE_STRING"
-+_ACEOF
-+
-+
-+cat >>confdefs.h <<_ACEOF
-+#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
-+_ACEOF
-+
-+
-+# Let the site file select an alternate cache file if it wants to.
- # Prefer explicitly selected file to automatically selected ones.
- if test -z "$CONFIG_SITE"; then
-   if test "x$prefix" != xNONE; then
-     CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
-   else
-     CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
-   fi
- fi
- for ac_site_file in $CONFIG_SITE; do
-   if test -r "$ac_site_file"; then
--    echo "loading site script $ac_site_file"
-+    { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
-+echo "$as_me: loading site script $ac_site_file" >&6;}
-+    sed 's/^/| /' "$ac_site_file" >&5
-     . "$ac_site_file"
-   fi
- done
- 
- if test -r "$cache_file"; then
--  echo "loading cache $cache_file"
--  . $cache_file
-+  # Some versions of bash will fail to source /dev/null (special
-+  # files actually), so we avoid doing that.
-+  if test -f "$cache_file"; then
-+    { echo "$as_me:$LINENO: loading cache $cache_file" >&5
-+echo "$as_me: loading cache $cache_file" >&6;}
-+    case $cache_file in
-+      [\\/]* | ?:[\\/]* ) . $cache_file;;
-+      *)                      . ./$cache_file;;
-+    esac
-+  fi
- else
--  echo "creating cache $cache_file"
--  > $cache_file
-+  { echo "$as_me:$LINENO: creating cache $cache_file" >&5
-+echo "$as_me: creating cache $cache_file" >&6;}
-+  >$cache_file
-+fi
-+
-+# Check that the precious variables saved in the cache have kept the same
-+# value.
-+ac_cache_corrupted=false
-+for ac_var in `(set) 2>&1 |
-+	       sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do
-+  eval ac_old_set=\$ac_cv_env_${ac_var}_set
-+  eval ac_new_set=\$ac_env_${ac_var}_set
-+  eval ac_old_val="\$ac_cv_env_${ac_var}_value"
-+  eval ac_new_val="\$ac_env_${ac_var}_value"
-+  case $ac_old_set,$ac_new_set in
-+    set,)
-+      { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-+echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
-+      ac_cache_corrupted=: ;;
-+    ,set)
-+      { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5
-+echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
-+      ac_cache_corrupted=: ;;
-+    ,);;
-+    *)
-+      if test "x$ac_old_val" != "x$ac_new_val"; then
-+	{ echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
-+echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
-+	{ echo "$as_me:$LINENO:   former value:  $ac_old_val" >&5
-+echo "$as_me:   former value:  $ac_old_val" >&2;}
-+	{ echo "$as_me:$LINENO:   current value: $ac_new_val" >&5
-+echo "$as_me:   current value: $ac_new_val" >&2;}
-+	ac_cache_corrupted=:
-+      fi;;
-+  esac
-+  # Pass precious variables to config.status.
-+  if test "$ac_new_set" = set; then
-+    case $ac_new_val in
-+    *" "*|*"	"*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
-+      ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
-+    *) ac_arg=$ac_var=$ac_new_val ;;
-+    esac
-+    case " $ac_configure_args " in
-+      *" '$ac_arg' "*) ;; # Avoid dups.  Use of quotes ensures accuracy.
-+      *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
-+    esac
-+  fi
-+done
-+if $ac_cache_corrupted; then
-+  { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5
-+echo "$as_me: error: changes in the environment can compromise the build" >&2;}
-+  { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
-+echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
-+   { (exit 1); exit 1; }; }
- fi
- 
- ac_ext=c
--# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
- ac_cpp='$CPP $CPPFLAGS'
--ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
--ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
--cross_compiling=$ac_cv_prog_cc_cross
--
--ac_exeext=
--ac_objext=o
--if (echo "testing\c"; echo 1,2,3) | grep c >/dev/null; then
--  # Stardent Vistra SVR4 grep lacks -e, says ghazi at caip.rutgers.edu.
--  if (echo -n testing; echo 1,2,3) | sed s/-n/xn/ | grep xn >/dev/null; then
--    ac_n= ac_c='
--' ac_t='	'
--  else
--    ac_n=-n ac_c= ac_t=
--  fi
--else
--  ac_n= ac_c='\c' ac_t=
--fi
-+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-+ac_compiler_gnu=$ac_cv_c_compiler_gnu
-+
-+
-+
-+
-+
-+
-+
-+
-+
-+
-+
-+
-+
- 
- 
- 
- 
- 
- 
-+          ac_config_headers="$ac_config_headers config.h"
-+
-+
-+
-+
- test "$libdir" = "\${exec_prefix}/lib" && libdir="/lib"
- 
- # Check whether --enable-socksdns or --disable-socksdns was given.
- if test "${enable_socksdns+set}" = set; then
-   enableval="$enable_socksdns"
--  :
--fi
- 
-+fi;
-+# Check whether --enable-tordns or --disable-tordns was given.
-+if test "${enable_tordns+set}" = set; then
-+  enableval="$enable_tordns"
-+
-+fi;
- # Check whether --enable-debug or --disable-debug was given.
- if test "${enable_debug+set}" = set; then
-   enableval="$enable_debug"
--  :
--fi
- 
-+fi;
- # Check whether --enable-oldmethod or --disable-oldmethod was given.
- if test "${enable_oldmethod+set}" = set; then
-   enableval="$enable_oldmethod"
--  :
--fi
- 
-+fi;
- # Check whether --enable-hostnames or --disable-hostnames was given.
- if test "${enable_hostnames+set}" = set; then
-   enableval="$enable_hostnames"
--  :
--fi
- 
-+fi;
- # Check whether --enable-envconf or --disable-envconf was given.
- if test "${enable_envconf+set}" = set; then
-   enableval="$enable_envconf"
--  :
--fi
-+
-+fi;
- 
- # Check whether --with-conf or --without-conf was given.
- if test "${with_conf+set}" = set; then
-   withval="$with_conf"
--  
-+
- if test "${withval}" = "yes" ; then
--  { echo "configure: error: "--with-conf requires the location of the configuration file as an argument"" 1>&2; exit 1; }
-+  { { echo "$as_me:$LINENO: error: \"--with-conf requires the location of the configuration file as an argument\"" >&5
-+echo "$as_me: error: \"--with-conf requires the location of the configuration file as an argument\"" >&2;}
-+   { (exit 1); exit 1; }; }
- else
--  cat >> confdefs.h <<EOF
-+  cat >>confdefs.h <<_ACEOF
- #define CONF_FILE "${withval}"
--EOF
-+_ACEOF
- 
- fi
- 
- else
--  
--  cat >> confdefs.h <<EOF
--#define CONF_FILE "/etc/tsocks.conf"
--EOF
- 
-+  cat >>confdefs.h <<_ACEOF
-+#define CONF_FILE "/etc/tsocks.conf"
-+_ACEOF
- 
--fi
- 
-+fi;
- 
- 
- ac_aux_dir=
- for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
-   if test -f $ac_dir/install-sh; then
-@@ -602,255 +1375,731 @@
-     break
-   elif test -f $ac_dir/install.sh; then
-     ac_aux_dir=$ac_dir
-     ac_install_sh="$ac_aux_dir/install.sh -c"
-     break
-+  elif test -f $ac_dir/shtool; then
-+    ac_aux_dir=$ac_dir
-+    ac_install_sh="$ac_aux_dir/shtool install -c"
-+    break
-   fi
- done
- if test -z "$ac_aux_dir"; then
--  { echo "configure: error: can not find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." 1>&2; exit 1; }
--fi
--ac_config_guess=$ac_aux_dir/config.guess
--ac_config_sub=$ac_aux_dir/config.sub
--ac_configure=$ac_aux_dir/configure # This should be Cygnus configure.
--
-+  { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5
-+echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;}
-+   { (exit 1); exit 1; }; }
-+fi
-+ac_config_guess="$SHELL $ac_aux_dir/config.guess"
-+ac_config_sub="$SHELL $ac_aux_dir/config.sub"
-+ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
- 
- # Make sure we can run config.sub.
--if ${CONFIG_SHELL-/bin/sh} $ac_config_sub sun4 >/dev/null 2>&1; then :
--else { echo "configure: error: can not run $ac_config_sub" 1>&2; exit 1; }
--fi
--
--echo $ac_n "checking host system type""... $ac_c" 1>&6
--echo "configure:624: checking host system type" >&5
--
--host_alias=$host
--case "$host_alias" in
--NONE)
--  case $nonopt in
--  NONE)
--    if host_alias=`${CONFIG_SHELL-/bin/sh} $ac_config_guess`; then :
--    else { echo "configure: error: can not guess host type; you must specify one" 1>&2; exit 1; }
--    fi ;;
--  *) host_alias=$nonopt ;;
--  esac ;;
--esac
-+$ac_config_sub sun4 >/dev/null 2>&1 ||
-+  { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5
-+echo "$as_me: error: cannot run $ac_config_sub" >&2;}
-+   { (exit 1); exit 1; }; }
-+
-+echo "$as_me:$LINENO: checking build system type" >&5
-+echo $ECHO_N "checking build system type... $ECHO_C" >&6
-+if test "${ac_cv_build+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+  ac_cv_build_alias=$build_alias
-+test -z "$ac_cv_build_alias" &&
-+  ac_cv_build_alias=`$ac_config_guess`
-+test -z "$ac_cv_build_alias" &&
-+  { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5
-+echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
-+   { (exit 1); exit 1; }; }
-+ac_cv_build=`$ac_config_sub $ac_cv_build_alias` ||
-+  { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" >&5
-+echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed" >&2;}
-+   { (exit 1); exit 1; }; }
-+
-+fi
-+echo "$as_me:$LINENO: result: $ac_cv_build" >&5
-+echo "${ECHO_T}$ac_cv_build" >&6
-+build=$ac_cv_build
-+build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-+build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-+build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
-+
-+
-+echo "$as_me:$LINENO: checking host system type" >&5
-+echo $ECHO_N "checking host system type... $ECHO_C" >&6
-+if test "${ac_cv_host+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+  ac_cv_host_alias=$host_alias
-+test -z "$ac_cv_host_alias" &&
-+  ac_cv_host_alias=$ac_cv_build_alias
-+ac_cv_host=`$ac_config_sub $ac_cv_host_alias` ||
-+  { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5
-+echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;}
-+   { (exit 1); exit 1; }; }
-+
-+fi
-+echo "$as_me:$LINENO: result: $ac_cv_host" >&5
-+echo "${ECHO_T}$ac_cv_host" >&6
-+host=$ac_cv_host
-+host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
-+host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
-+host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
- 
--host=`${CONFIG_SHELL-/bin/sh} $ac_config_sub $host_alias`
--host_cpu=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
--host_vendor=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
--host_os=`echo $host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
--echo "$ac_t""$host" 1>&6
- 
- 
--# Extract the first word of "gcc", so it can be a program name with args.
--set dummy gcc; ac_word=$2
--echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:648: checking for $ac_word" >&5
--if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
-+ac_ext=c
-+ac_cpp='$CPP $CPPFLAGS'
-+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-+ac_compiler_gnu=$ac_cv_c_compiler_gnu
-+if test -n "$ac_tool_prefix"; then
-+  # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
-+set dummy ${ac_tool_prefix}gcc; ac_word=$2
-+echo "$as_me:$LINENO: checking for $ac_word" >&5
-+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-+if test "${ac_cv_prog_CC+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
- else
-   if test -n "$CC"; then
-   ac_cv_prog_CC="$CC" # Let the user override the test.
- else
--  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
--  ac_dummy="$PATH"
--  for ac_dir in $ac_dummy; do
--    test -z "$ac_dir" && ac_dir=.
--    if test -f $ac_dir/$ac_word; then
--      ac_cv_prog_CC="gcc"
--      break
--    fi
--  done
--  IFS="$ac_save_ifs"
-+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-+for as_dir in $PATH
-+do
-+  IFS=$as_save_IFS
-+  test -z "$as_dir" && as_dir=.
-+  for ac_exec_ext in '' $ac_executable_extensions; do
-+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-+    ac_cv_prog_CC="${ac_tool_prefix}gcc"
-+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-+    break 2
-+  fi
-+done
-+done
-+
-+fi
-+fi
-+CC=$ac_cv_prog_CC
-+if test -n "$CC"; then
-+  echo "$as_me:$LINENO: result: $CC" >&5
-+echo "${ECHO_T}$CC" >&6
-+else
-+  echo "$as_me:$LINENO: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+fi
-+
-+fi
-+if test -z "$ac_cv_prog_CC"; then
-+  ac_ct_CC=$CC
-+  # Extract the first word of "gcc", so it can be a program name with args.
-+set dummy gcc; ac_word=$2
-+echo "$as_me:$LINENO: checking for $ac_word" >&5
-+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+  if test -n "$ac_ct_CC"; then
-+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-+else
-+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-+for as_dir in $PATH
-+do
-+  IFS=$as_save_IFS
-+  test -z "$as_dir" && as_dir=.
-+  for ac_exec_ext in '' $ac_executable_extensions; do
-+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-+    ac_cv_prog_ac_ct_CC="gcc"
-+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-+    break 2
-+  fi
-+done
-+done
-+
-+fi
-+fi
-+ac_ct_CC=$ac_cv_prog_ac_ct_CC
-+if test -n "$ac_ct_CC"; then
-+  echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
-+echo "${ECHO_T}$ac_ct_CC" >&6
-+else
-+  echo "$as_me:$LINENO: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+fi
-+
-+  CC=$ac_ct_CC
-+else
-+  CC="$ac_cv_prog_CC"
-+fi
-+
-+if test -z "$CC"; then
-+  if test -n "$ac_tool_prefix"; then
-+  # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
-+set dummy ${ac_tool_prefix}cc; ac_word=$2
-+echo "$as_me:$LINENO: checking for $ac_word" >&5
-+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-+if test "${ac_cv_prog_CC+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+  if test -n "$CC"; then
-+  ac_cv_prog_CC="$CC" # Let the user override the test.
-+else
-+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-+for as_dir in $PATH
-+do
-+  IFS=$as_save_IFS
-+  test -z "$as_dir" && as_dir=.
-+  for ac_exec_ext in '' $ac_executable_extensions; do
-+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-+    ac_cv_prog_CC="${ac_tool_prefix}cc"
-+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-+    break 2
-+  fi
-+done
-+done
-+
- fi
- fi
--CC="$ac_cv_prog_CC"
-+CC=$ac_cv_prog_CC
- if test -n "$CC"; then
--  echo "$ac_t""$CC" 1>&6
-+  echo "$as_me:$LINENO: result: $CC" >&5
-+echo "${ECHO_T}$CC" >&6
-+else
-+  echo "$as_me:$LINENO: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+fi
-+
-+fi
-+if test -z "$ac_cv_prog_CC"; then
-+  ac_ct_CC=$CC
-+  # Extract the first word of "cc", so it can be a program name with args.
-+set dummy cc; ac_word=$2
-+echo "$as_me:$LINENO: checking for $ac_word" >&5
-+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+  if test -n "$ac_ct_CC"; then
-+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-+else
-+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-+for as_dir in $PATH
-+do
-+  IFS=$as_save_IFS
-+  test -z "$as_dir" && as_dir=.
-+  for ac_exec_ext in '' $ac_executable_extensions; do
-+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-+    ac_cv_prog_ac_ct_CC="cc"
-+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-+    break 2
-+  fi
-+done
-+done
-+
-+fi
-+fi
-+ac_ct_CC=$ac_cv_prog_ac_ct_CC
-+if test -n "$ac_ct_CC"; then
-+  echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
-+echo "${ECHO_T}$ac_ct_CC" >&6
-+else
-+  echo "$as_me:$LINENO: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+fi
-+
-+  CC=$ac_ct_CC
- else
--  echo "$ac_t""no" 1>&6
-+  CC="$ac_cv_prog_CC"
- fi
- 
-+fi
- if test -z "$CC"; then
-   # Extract the first word of "cc", so it can be a program name with args.
- set dummy cc; ac_word=$2
--echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:678: checking for $ac_word" >&5
--if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
-+echo "$as_me:$LINENO: checking for $ac_word" >&5
-+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-+if test "${ac_cv_prog_CC+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
- else
-   if test -n "$CC"; then
-   ac_cv_prog_CC="$CC" # Let the user override the test.
- else
--  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
-   ac_prog_rejected=no
--  ac_dummy="$PATH"
--  for ac_dir in $ac_dummy; do
--    test -z "$ac_dir" && ac_dir=.
--    if test -f $ac_dir/$ac_word; then
--      if test "$ac_dir/$ac_word" = "/usr/ucb/cc"; then
--        ac_prog_rejected=yes
--	continue
--      fi
--      ac_cv_prog_CC="cc"
--      break
--    fi
--  done
--  IFS="$ac_save_ifs"
-+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-+for as_dir in $PATH
-+do
-+  IFS=$as_save_IFS
-+  test -z "$as_dir" && as_dir=.
-+  for ac_exec_ext in '' $ac_executable_extensions; do
-+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-+    if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
-+       ac_prog_rejected=yes
-+       continue
-+     fi
-+    ac_cv_prog_CC="cc"
-+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-+    break 2
-+  fi
-+done
-+done
-+
- if test $ac_prog_rejected = yes; then
-   # We found a bogon in the path, so make sure we never use it.
-   set dummy $ac_cv_prog_CC
-   shift
--  if test $# -gt 0; then
-+  if test $# != 0; then
-     # We chose a different compiler from the bogus one.
-     # However, it has the same basename, so the bogon will be chosen
-     # first if we set CC to just the basename; use the full file name.
-     shift
--    set dummy "$ac_dir/$ac_word" "$@"
--    shift
--    ac_cv_prog_CC="$@"
-+    ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
-   fi
- fi
- fi
- fi
--CC="$ac_cv_prog_CC"
-+CC=$ac_cv_prog_CC
- if test -n "$CC"; then
--  echo "$ac_t""$CC" 1>&6
-+  echo "$as_me:$LINENO: result: $CC" >&5
-+echo "${ECHO_T}$CC" >&6
- else
--  echo "$ac_t""no" 1>&6
-+  echo "$as_me:$LINENO: result: no" >&5
-+echo "${ECHO_T}no" >&6
- fi
- 
--  if test -z "$CC"; then
--    case "`uname -s`" in
--    *win32* | *WIN32*)
--      # Extract the first word of "cl", so it can be a program name with args.
--set dummy cl; ac_word=$2
--echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:729: checking for $ac_word" >&5
--if eval "test \"`echo '$''{'ac_cv_prog_CC'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
-+fi
-+if test -z "$CC"; then
-+  if test -n "$ac_tool_prefix"; then
-+  for ac_prog in cl
-+  do
-+    # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
-+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-+echo "$as_me:$LINENO: checking for $ac_word" >&5
-+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-+if test "${ac_cv_prog_CC+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
- else
-   if test -n "$CC"; then
-   ac_cv_prog_CC="$CC" # Let the user override the test.
- else
--  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
--  ac_dummy="$PATH"
--  for ac_dir in $ac_dummy; do
--    test -z "$ac_dir" && ac_dir=.
--    if test -f $ac_dir/$ac_word; then
--      ac_cv_prog_CC="cl"
--      break
--    fi
--  done
--  IFS="$ac_save_ifs"
-+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-+for as_dir in $PATH
-+do
-+  IFS=$as_save_IFS
-+  test -z "$as_dir" && as_dir=.
-+  for ac_exec_ext in '' $ac_executable_extensions; do
-+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-+    ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
-+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-+    break 2
-+  fi
-+done
-+done
-+
- fi
- fi
--CC="$ac_cv_prog_CC"
-+CC=$ac_cv_prog_CC
- if test -n "$CC"; then
--  echo "$ac_t""$CC" 1>&6
-+  echo "$as_me:$LINENO: result: $CC" >&5
-+echo "${ECHO_T}$CC" >&6
- else
--  echo "$ac_t""no" 1>&6
-+  echo "$as_me:$LINENO: result: no" >&5
-+echo "${ECHO_T}no" >&6
- fi
-- ;;
--    esac
-+
-+    test -n "$CC" && break
-+  done
-+fi
-+if test -z "$CC"; then
-+  ac_ct_CC=$CC
-+  for ac_prog in cl
-+do
-+  # Extract the first word of "$ac_prog", so it can be a program name with args.
-+set dummy $ac_prog; ac_word=$2
-+echo "$as_me:$LINENO: checking for $ac_word" >&5
-+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+  if test -n "$ac_ct_CC"; then
-+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
-+else
-+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-+for as_dir in $PATH
-+do
-+  IFS=$as_save_IFS
-+  test -z "$as_dir" && as_dir=.
-+  for ac_exec_ext in '' $ac_executable_extensions; do
-+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-+    ac_cv_prog_ac_ct_CC="$ac_prog"
-+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-+    break 2
-   fi
--  test -z "$CC" && { echo "configure: error: no acceptable cc found in \$PATH" 1>&2; exit 1; }
-+done
-+done
-+
-+fi
-+fi
-+ac_ct_CC=$ac_cv_prog_ac_ct_CC
-+if test -n "$ac_ct_CC"; then
-+  echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
-+echo "${ECHO_T}$ac_ct_CC" >&6
-+else
-+  echo "$as_me:$LINENO: result: no" >&5
-+echo "${ECHO_T}no" >&6
- fi
- 
--echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works""... $ac_c" 1>&6
--echo "configure:761: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) works" >&5
-+  test -n "$ac_ct_CC" && break
-+done
- 
--ac_ext=c
--# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
--ac_cpp='$CPP $CPPFLAGS'
--ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
--ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
--cross_compiling=$ac_cv_prog_cc_cross
-+  CC=$ac_ct_CC
-+fi
- 
--cat > conftest.$ac_ext << EOF
-+fi
- 
--#line 772 "configure"
--#include "confdefs.h"
- 
--main(){return(0);}
--EOF
--if { (eval echo configure:777: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
--  ac_cv_prog_cc_works=yes
--  # If we can't run a trivial program, we are probably using a cross compiler.
--  if (./conftest; exit) 2>/dev/null; then
--    ac_cv_prog_cc_cross=no
--  else
--    ac_cv_prog_cc_cross=yes
--  fi
-+test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
-+See \`config.log' for more details." >&5
-+echo "$as_me: error: no acceptable C compiler found in \$PATH
-+See \`config.log' for more details." >&2;}
-+   { (exit 1); exit 1; }; }
-+
-+# Provide some information about the compiler.
-+echo "$as_me:$LINENO:" \
-+     "checking for C compiler version" >&5
-+ac_compiler=`set X $ac_compile; echo $2`
-+{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
-+  (eval $ac_compiler --version </dev/null >&5) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }
-+{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5
-+  (eval $ac_compiler -v </dev/null >&5) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }
-+{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5
-+  (eval $ac_compiler -V </dev/null >&5) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }
-+
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+
-+int
-+main ()
-+{
-+
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+ac_clean_files_save=$ac_clean_files
-+ac_clean_files="$ac_clean_files a.out a.exe b.out"
-+# Try to create an executable without -o first, disregard a.out.
-+# It will help us diagnose broken compilers, and finding out an intuition
-+# of exeext.
-+echo "$as_me:$LINENO: checking for C compiler default output file name" >&5
-+echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6
-+ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
-+if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5
-+  (eval $ac_link_default) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; then
-+  # Find the output, starting from the most likely.  This scheme is
-+# not robust to junk in `.', hence go to wildcards (a.*) only as a last
-+# resort.
-+
-+# Be careful to initialize this variable, since it used to be cached.
-+# Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile.
-+ac_cv_exeext=
-+# b.out is created by i960 compilers.
-+for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out
-+do
-+  test -f "$ac_file" || continue
-+  case $ac_file in
-+    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj )
-+	;;
-+    conftest.$ac_ext )
-+	# This is the source file.
-+	;;
-+    [ab].out )
-+	# We found the default executable, but exeext='' is most
-+	# certainly right.
-+	break;;
-+    *.* )
-+	ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
-+	# FIXME: I believe we export ac_cv_exeext for Libtool,
-+	# but it would be cool to find out if it's true.  Does anybody
-+	# maintain Libtool? --akim.
-+	export ac_cv_exeext
-+	break;;
-+    * )
-+	break;;
-+  esac
-+done
- else
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
--  ac_cv_prog_cc_works=no
--fi
--rm -fr conftest*
--ac_ext=c
--# CFLAGS is not in ac_cpp because -g, -O, etc. are not valid cpp options.
--ac_cpp='$CPP $CPPFLAGS'
--ac_compile='${CC-cc} -c $CFLAGS $CPPFLAGS conftest.$ac_ext 1>&5'
--ac_link='${CC-cc} -o conftest${ac_exeext} $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5'
--cross_compiling=$ac_cv_prog_cc_cross
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
- 
--echo "$ac_t""$ac_cv_prog_cc_works" 1>&6
--if test $ac_cv_prog_cc_works = no; then
--  { echo "configure: error: installation or configuration problem: C compiler cannot create executables." 1>&2; exit 1; }
-+{ { echo "$as_me:$LINENO: error: C compiler cannot create executables
-+See \`config.log' for more details." >&5
-+echo "$as_me: error: C compiler cannot create executables
-+See \`config.log' for more details." >&2;}
-+   { (exit 77); exit 77; }; }
-+fi
-+
-+ac_exeext=$ac_cv_exeext
-+echo "$as_me:$LINENO: result: $ac_file" >&5
-+echo "${ECHO_T}$ac_file" >&6
-+
-+# Check the compiler produces executables we can run.  If not, either
-+# the compiler is broken, or we cross compile.
-+echo "$as_me:$LINENO: checking whether the C compiler works" >&5
-+echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6
-+# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
-+# If not cross compiling, check that we can run a simple program.
-+if test "$cross_compiling" != yes; then
-+  if { ac_try='./$ac_file'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+    cross_compiling=no
-+  else
-+    if test "$cross_compiling" = maybe; then
-+	cross_compiling=yes
-+    else
-+	{ { echo "$as_me:$LINENO: error: cannot run C compiled programs.
-+If you meant to cross compile, use \`--host'.
-+See \`config.log' for more details." >&5
-+echo "$as_me: error: cannot run C compiled programs.
-+If you meant to cross compile, use \`--host'.
-+See \`config.log' for more details." >&2;}
-+   { (exit 1); exit 1; }; }
-+    fi
-+  fi
- fi
--echo $ac_n "checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler""... $ac_c" 1>&6
--echo "configure:803: checking whether the C compiler ($CC $CFLAGS $LDFLAGS) is a cross-compiler" >&5
--echo "$ac_t""$ac_cv_prog_cc_cross" 1>&6
--cross_compiling=$ac_cv_prog_cc_cross
-+echo "$as_me:$LINENO: result: yes" >&5
-+echo "${ECHO_T}yes" >&6
- 
--echo $ac_n "checking whether we are using GNU C""... $ac_c" 1>&6
--echo "configure:808: checking whether we are using GNU C" >&5
--if eval "test \"`echo '$''{'ac_cv_prog_gcc'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
-+rm -f a.out a.exe conftest$ac_cv_exeext b.out
-+ac_clean_files=$ac_clean_files_save
-+# Check the compiler produces executables we can run.  If not, either
-+# the compiler is broken, or we cross compile.
-+echo "$as_me:$LINENO: checking whether we are cross compiling" >&5
-+echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6
-+echo "$as_me:$LINENO: result: $cross_compiling" >&5
-+echo "${ECHO_T}$cross_compiling" >&6
-+
-+echo "$as_me:$LINENO: checking for suffix of executables" >&5
-+echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6
-+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-+  (eval $ac_link) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; then
-+  # If both `conftest.exe' and `conftest' are `present' (well, observable)
-+# catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
-+# work properly (i.e., refer to `conftest.exe'), while it won't with
-+# `rm'.
-+for ac_file in conftest.exe conftest conftest.*; do
-+  test -f "$ac_file" || continue
-+  case $ac_file in
-+    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;;
-+    *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
-+	  export ac_cv_exeext
-+	  break;;
-+    * ) break;;
-+  esac
-+done
- else
--  cat > conftest.c <<EOF
--#ifdef __GNUC__
--  yes;
--#endif
--EOF
--if { ac_try='${CC-cc} -E conftest.c'; { (eval echo configure:817: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }; } | egrep yes >/dev/null 2>&1; then
--  ac_cv_prog_gcc=yes
-+  { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link
-+See \`config.log' for more details." >&5
-+echo "$as_me: error: cannot compute suffix of executables: cannot compile and link
-+See \`config.log' for more details." >&2;}
-+   { (exit 1); exit 1; }; }
-+fi
-+
-+rm -f conftest$ac_cv_exeext
-+echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5
-+echo "${ECHO_T}$ac_cv_exeext" >&6
-+
-+rm -f conftest.$ac_ext
-+EXEEXT=$ac_cv_exeext
-+ac_exeext=$EXEEXT
-+echo "$as_me:$LINENO: checking for suffix of object files" >&5
-+echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6
-+if test "${ac_cv_objext+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+  cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+
-+int
-+main ()
-+{
-+
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+rm -f conftest.o conftest.obj
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+  (eval $ac_compile) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; then
-+  for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do
-+  case $ac_file in
-+    *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;;
-+    *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
-+       break;;
-+  esac
-+done
- else
--  ac_cv_prog_gcc=no
--fi
--fi
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
- 
--echo "$ac_t""$ac_cv_prog_gcc" 1>&6
--
--if test $ac_cv_prog_gcc = yes; then
--  GCC=yes
--else
--  GCC=
--fi
-+{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile
-+See \`config.log' for more details." >&5
-+echo "$as_me: error: cannot compute suffix of object files: cannot compile
-+See \`config.log' for more details." >&2;}
-+   { (exit 1); exit 1; }; }
-+fi
-+
-+rm -f conftest.$ac_cv_objext conftest.$ac_ext
-+fi
-+echo "$as_me:$LINENO: result: $ac_cv_objext" >&5
-+echo "${ECHO_T}$ac_cv_objext" >&6
-+OBJEXT=$ac_cv_objext
-+ac_objext=$OBJEXT
-+echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
-+echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6
-+if test "${ac_cv_c_compiler_gnu+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+  cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+
-+int
-+main ()
-+{
-+#ifndef __GNUC__
-+       choke me
-+#endif
- 
--ac_test_CFLAGS="${CFLAGS+set}"
--ac_save_CFLAGS="$CFLAGS"
--CFLAGS=
--echo $ac_n "checking whether ${CC-cc} accepts -g""... $ac_c" 1>&6
--echo "configure:836: checking whether ${CC-cc} accepts -g" >&5
--if eval "test \"`echo '$''{'ac_cv_prog_cc_g'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
--else
--  echo 'void f(){}' > conftest.c
--if test -z "`${CC-cc} -g -c conftest.c 2>&1`"; then
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+  (eval $ac_compile) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest.$ac_objext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  ac_compiler_gnu=yes
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+ac_compiler_gnu=no
-+fi
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-+ac_cv_c_compiler_gnu=$ac_compiler_gnu
-+
-+fi
-+echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
-+echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6
-+GCC=`test $ac_compiler_gnu = yes && echo yes`
-+ac_test_CFLAGS=${CFLAGS+set}
-+ac_save_CFLAGS=$CFLAGS
-+CFLAGS="-g"
-+echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
-+echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6
-+if test "${ac_cv_prog_cc_g+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+  cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+
-+int
-+main ()
-+{
-+
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+  (eval $ac_compile) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest.$ac_objext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-   ac_cv_prog_cc_g=yes
- else
--  ac_cv_prog_cc_g=no
--fi
--rm -f conftest*
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
- 
-+ac_cv_prog_cc_g=no
- fi
--
--echo "$ac_t""$ac_cv_prog_cc_g" 1>&6
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-+fi
-+echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
-+echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
- if test "$ac_test_CFLAGS" = set; then
--  CFLAGS="$ac_save_CFLAGS"
-+  CFLAGS=$ac_save_CFLAGS
- elif test $ac_cv_prog_cc_g = yes; then
-   if test "$GCC" = yes; then
-     CFLAGS="-g -O2"
-   else
-     CFLAGS="-g"
-@@ -860,1774 +2109,4838 @@
-     CFLAGS="-O2"
-   else
-     CFLAGS=
-   fi
- fi
-+echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5
-+echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6
-+if test "${ac_cv_prog_cc_stdc+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+  ac_cv_prog_cc_stdc=no
-+ac_save_CC=$CC
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+#include <stdarg.h>
-+#include <stdio.h>
-+#include <sys/types.h>
-+#include <sys/stat.h>
-+/* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
-+struct buf { int x; };
-+FILE * (*rcsopen) (struct buf *, struct stat *, int);
-+static char *e (p, i)
-+     char **p;
-+     int i;
-+{
-+  return p[i];
-+}
-+static char *f (char * (*g) (char **, int), char **p, ...)
-+{
-+  char *s;
-+  va_list v;
-+  va_start (v,p);
-+  s = g (p, va_arg (v,int));
-+  va_end (v);
-+  return s;
-+}
-+
-+/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has
-+   function prototypes and stuff, but not '\xHH' hex character constants.
-+   These don't provoke an error unfortunately, instead are silently treated
-+   as 'x'.  The following induces an error, until -std1 is added to get
-+   proper ANSI mode.  Curiously '\x00'!='x' always comes out true, for an
-+   array size at least.  It's necessary to write '\x00'==0 to get something
-+   that's true only with -std1.  */
-+int osf4_cc_array ['\x00' == 0 ? 1 : -1];
-+
-+int test (int i, double x);
-+struct s1 {int (*f) (int a);};
-+struct s2 {int (*f) (double a);};
-+int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-+int argc;
-+char **argv;
-+int
-+main ()
-+{
-+return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+# Don't try gcc -ansi; that turns off useful extensions and
-+# breaks some systems' header files.
-+# AIX			-qlanglvl=ansi
-+# Ultrix and OSF/1	-std1
-+# HP-UX 10.20 and later	-Ae
-+# HP-UX older versions	-Aa -D_HPUX_SOURCE
-+# SVR4			-Xc -D__EXTENSIONS__
-+for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
-+do
-+  CC="$ac_save_CC $ac_arg"
-+  rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+  (eval $ac_compile) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest.$ac_objext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  ac_cv_prog_cc_stdc=$ac_arg
-+break
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+fi
-+rm -f conftest.err conftest.$ac_objext
-+done
-+rm -f conftest.$ac_ext conftest.$ac_objext
-+CC=$ac_save_CC
-+
-+fi
-+
-+case "x$ac_cv_prog_cc_stdc" in
-+  x|xno)
-+    echo "$as_me:$LINENO: result: none needed" >&5
-+echo "${ECHO_T}none needed" >&6 ;;
-+  *)
-+    echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5
-+echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6
-+    CC="$CC $ac_cv_prog_cc_stdc" ;;
-+esac
-+
-+# Some people use a C++ compiler to compile C.  Since we use `exit',
-+# in C++ we need to declare it.  In case someone uses the same compiler
-+# for both compiling C and C++ we need to have the C++ compiler decide
-+# the declaration of exit, since it's the most demanding environment.
-+cat >conftest.$ac_ext <<_ACEOF
-+#ifndef __cplusplus
-+  choke me
-+#endif
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+  (eval $ac_compile) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest.$ac_objext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  for ac_declaration in \
-+   '' \
-+   'extern "C" void std::exit (int) throw (); using std::exit;' \
-+   'extern "C" void std::exit (int); using std::exit;' \
-+   'extern "C" void exit (int) throw ();' \
-+   'extern "C" void exit (int);' \
-+   'void exit (int);'
-+do
-+  cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+$ac_declaration
-+#include <stdlib.h>
-+int
-+main ()
-+{
-+exit (42);
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+  (eval $ac_compile) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest.$ac_objext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  :
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+continue
-+fi
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-+  cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+$ac_declaration
-+int
-+main ()
-+{
-+exit (42);
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+  (eval $ac_compile) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest.$ac_objext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  break
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+fi
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-+done
-+rm -f conftest*
-+if test -n "$ac_declaration"; then
-+  echo '#ifdef __cplusplus' >>confdefs.h
-+  echo $ac_declaration      >>confdefs.h
-+  echo '#endif'             >>confdefs.h
-+fi
-+
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+fi
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-+ac_ext=c
-+ac_cpp='$CPP $CPPFLAGS'
-+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-+ac_compiler_gnu=$ac_cv_c_compiler_gnu
- 
- # Find a good install program.  We prefer a C program (faster),
- # so one script is as good as another.  But avoid the broken or
- # incompatible versions:
- # SysV /etc/install, /usr/sbin/install
- # SunOS /usr/etc/install
- # IRIX /sbin/install
- # AIX /bin/install
-+# AmigaOS /C/install, which installs bootblocks on floppy discs
- # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
- # AFS /usr/afsws/bin/install, which mishandles nonexistent args
- # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
-+# OS/2's system install, which has a completely different semantic
- # ./install, which can be erroneously created by make from ./install.sh.
--echo $ac_n "checking for a BSD compatible install""... $ac_c" 1>&6
--echo "configure:879: checking for a BSD compatible install" >&5
-+echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
-+echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6
- if test -z "$INSTALL"; then
--if eval "test \"`echo '$''{'ac_cv_path_install'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
-+if test "${ac_cv_path_install+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
- else
--    IFS="${IFS= 	}"; ac_save_IFS="$IFS"; IFS=":"
--  for ac_dir in $PATH; do
--    # Account for people who put trailing slashes in PATH elements.
--    case "$ac_dir/" in
--    /|./|.//|/etc/*|/usr/sbin/*|/usr/etc/*|/sbin/*|/usr/afsws/bin/*|/usr/ucb/*) ;;
--    *)
--      # OSF1 and SCO ODT 3.0 have their own names for install.
--      # Don't use installbsd from OSF since it installs stuff as root
--      # by default.
--      for ac_prog in ginstall scoinst install; do
--        if test -f $ac_dir/$ac_prog; then
-+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-+for as_dir in $PATH
-+do
-+  IFS=$as_save_IFS
-+  test -z "$as_dir" && as_dir=.
-+  # Account for people who put trailing slashes in PATH elements.
-+case $as_dir/ in
-+  ./ | .// | /cC/* | \
-+  /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
-+  ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
-+  /usr/ucb/* ) ;;
-+  *)
-+    # OSF1 and SCO ODT 3.0 have their own names for install.
-+    # Don't use installbsd from OSF since it installs stuff as root
-+    # by default.
-+    for ac_prog in ginstall scoinst install; do
-+      for ac_exec_ext in '' $ac_executable_extensions; do
-+	if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
- 	  if test $ac_prog = install &&
--            grep dspmsg $ac_dir/$ac_prog >/dev/null 2>&1; then
-+	    grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
- 	    # AIX install.  It has an incompatible calling convention.
- 	    :
-+	  elif test $ac_prog = install &&
-+	    grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
-+	    # program-specific install script used by HP pwplus--don't use.
-+	    :
- 	  else
--	    ac_cv_path_install="$ac_dir/$ac_prog -c"
--	    break 2
-+	    ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
-+	    break 3
- 	  fi
- 	fi
-       done
--      ;;
--    esac
--  done
--  IFS="$ac_save_IFS"
-+    done
-+    ;;
-+esac
-+done
-+
- 
- fi
-   if test "${ac_cv_path_install+set}" = set; then
--    INSTALL="$ac_cv_path_install"
-+    INSTALL=$ac_cv_path_install
-   else
-     # As a last resort, use the slow shell script.  We don't cache a
-     # path for INSTALL within a source directory, because that will
-     # break other packages using the cache if that directory is
-     # removed, or if the path is relative.
--    INSTALL="$ac_install_sh"
-+    INSTALL=$ac_install_sh
-   fi
- fi
--echo "$ac_t""$INSTALL" 1>&6
-+echo "$as_me:$LINENO: result: $INSTALL" >&5
-+echo "${ECHO_T}$INSTALL" >&6
- 
- # Use test -z because SunOS4 sh mishandles braces in ${var-val}.
- # It thinks the first close brace ends the variable substitution.
- test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
- 
--test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
-+test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
- 
- test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
- 
--echo $ac_n "checking whether ln -s works""... $ac_c" 1>&6
--echo "configure:932: checking whether ln -s works" >&5
--if eval "test \"`echo '$''{'ac_cv_prog_LN_S'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
--else
--  rm -f conftestdata
--if ln -s X conftestdata 2>/dev/null
--then
--  rm -f conftestdata
--  ac_cv_prog_LN_S="ln -s"
-+echo "$as_me:$LINENO: checking whether ln -s works" >&5
-+echo $ECHO_N "checking whether ln -s works... $ECHO_C" >&6
-+LN_S=$as_ln_s
-+if test "$LN_S" = "ln -s"; then
-+  echo "$as_me:$LINENO: result: yes" >&5
-+echo "${ECHO_T}yes" >&6
- else
--  ac_cv_prog_LN_S=ln
--fi
--fi
--LN_S="$ac_cv_prog_LN_S"
--if test "$ac_cv_prog_LN_S" = "ln -s"; then
--  echo "$ac_t""yes" 1>&6
--else
--  echo "$ac_t""no" 1>&6
-+  echo "$as_me:$LINENO: result: no, using $LN_S" >&5
-+echo "${ECHO_T}no, using $LN_S" >&6
- fi
- 
- 
--echo $ac_n "checking "if the C compiler accepts -Wall"""... $ac_c" 1>&6
--echo "configure:954: checking "if the C compiler accepts -Wall"" >&5
-+echo "$as_me:$LINENO: checking if the C compiler accepts -Wall" >&5
-+echo $ECHO_N "checking if the C compiler accepts -Wall... $ECHO_C" >&6
- OLDCFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -Wall"
--cat > conftest.$ac_ext <<EOF
--#line 958 "configure"
--#include "confdefs.h"
--
--int main() {
--
--; return 0; }
--EOF
--if { (eval echo configure:965: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
--  rm -rf conftest*
--  echo "$ac_t""yes" 1>&6
--else
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
--  rm -rf conftest*
--  
-+
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+
-+int
-+main ()
-+{
-+
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+  (eval $ac_compile) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest.$ac_objext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  echo "$as_me:$LINENO: result: yes" >&5
-+echo "${ECHO_T}yes" >&6
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+
-    CFLAGS="$OLDCFLAGS"
--   echo "$ac_t""no" 1>&6
-+   echo "$as_me:$LINENO: result: no" >&5
-+echo "${ECHO_T}no" >&6
- fi
--rm -f conftest*
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
- 
--echo $ac_n "checking how to run the C preprocessor""... $ac_c" 1>&6
--echo "configure:979: checking how to run the C preprocessor" >&5
-+ac_ext=c
-+ac_cpp='$CPP $CPPFLAGS'
-+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-+ac_compiler_gnu=$ac_cv_c_compiler_gnu
-+echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5
-+echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6
- # On Suns, sometimes $CPP names a directory.
- if test -n "$CPP" && test -d "$CPP"; then
-   CPP=
- fi
- if test -z "$CPP"; then
--if eval "test \"`echo '$''{'ac_cv_prog_CPP'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
-+  if test "${ac_cv_prog_CPP+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
- else
--    # This must be in double quotes, not single quotes, because CPP may get
--  # substituted into the Makefile and "${CC-cc}" will confuse make.
--  CPP="${CC-cc} -E"
-+      # Double quotes because CPP needs to be expanded
-+    for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
-+    do
-+      ac_preproc_ok=false
-+for ac_c_preproc_warn_flag in '' yes
-+do
-+  # Use a header file that comes with gcc, so configuring glibc
-+  # with a fresh cross-compiler works.
-+  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-+  # <limits.h> exists even on freestanding compilers.
-   # On the NeXT, cc -E runs the code through the compiler's parser,
--  # not just through cpp.
--  cat > conftest.$ac_ext <<EOF
--#line 994 "configure"
--#include "confdefs.h"
--#include <assert.h>
--Syntax Error
--EOF
--ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:1000: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
--ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
--if test -z "$ac_err"; then
--  :
-+  # not just through cpp. "Syntax error" is here to catch this case.
-+  cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+#ifdef __STDC__
-+# include <limits.h>
-+#else
-+# include <assert.h>
-+#endif
-+		     Syntax error
-+_ACEOF
-+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } >/dev/null; then
-+  if test -s conftest.err; then
-+    ac_cpp_err=$ac_c_preproc_warn_flag
-+    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-+  else
-+    ac_cpp_err=
-+  fi
- else
--  echo "$ac_err" >&5
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
--  rm -rf conftest*
--  CPP="${CC-cc} -E -traditional-cpp"
--  cat > conftest.$ac_ext <<EOF
--#line 1011 "configure"
--#include "confdefs.h"
--#include <assert.h>
--Syntax Error
--EOF
--ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:1017: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
--ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
--if test -z "$ac_err"; then
-+  ac_cpp_err=yes
-+fi
-+if test -z "$ac_cpp_err"; then
-   :
- else
--  echo "$ac_err" >&5
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
--  rm -rf conftest*
--  CPP="${CC-cc} -nologo -E"
--  cat > conftest.$ac_ext <<EOF
--#line 1028 "configure"
--#include "confdefs.h"
--#include <assert.h>
--Syntax Error
--EOF
--ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:1034: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
--ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
--if test -z "$ac_err"; then
--  :
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+  # Broken: fails on valid input.
-+continue
-+fi
-+rm -f conftest.err conftest.$ac_ext
-+
-+  # OK, works on sane cases.  Now check whether non-existent headers
-+  # can be detected and how.
-+  cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+#include <ac_nonexistent.h>
-+_ACEOF
-+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } >/dev/null; then
-+  if test -s conftest.err; then
-+    ac_cpp_err=$ac_c_preproc_warn_flag
-+    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-+  else
-+    ac_cpp_err=
-+  fi
- else
--  echo "$ac_err" >&5
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
--  rm -rf conftest*
--  CPP=/lib/cpp
-+  ac_cpp_err=yes
- fi
--rm -f conftest*
-+if test -z "$ac_cpp_err"; then
-+  # Broken: success on invalid input.
-+continue
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+  # Passes both tests.
-+ac_preproc_ok=:
-+break
- fi
--rm -f conftest*
-+rm -f conftest.err conftest.$ac_ext
-+
-+done
-+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-+rm -f conftest.err conftest.$ac_ext
-+if $ac_preproc_ok; then
-+  break
- fi
--rm -f conftest*
--  ac_cv_prog_CPP="$CPP"
-+
-+    done
-+    ac_cv_prog_CPP=$CPP
-+
-+fi
-+  CPP=$ac_cv_prog_CPP
-+else
-+  ac_cv_prog_CPP=$CPP
-+fi
-+echo "$as_me:$LINENO: result: $CPP" >&5
-+echo "${ECHO_T}$CPP" >&6
-+ac_preproc_ok=false
-+for ac_c_preproc_warn_flag in '' yes
-+do
-+  # Use a header file that comes with gcc, so configuring glibc
-+  # with a fresh cross-compiler works.
-+  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-+  # <limits.h> exists even on freestanding compilers.
-+  # On the NeXT, cc -E runs the code through the compiler's parser,
-+  # not just through cpp. "Syntax error" is here to catch this case.
-+  cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+#ifdef __STDC__
-+# include <limits.h>
-+#else
-+# include <assert.h>
-+#endif
-+		     Syntax error
-+_ACEOF
-+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } >/dev/null; then
-+  if test -s conftest.err; then
-+    ac_cpp_err=$ac_c_preproc_warn_flag
-+    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-+  else
-+    ac_cpp_err=
-+  fi
-+else
-+  ac_cpp_err=yes
-+fi
-+if test -z "$ac_cpp_err"; then
-+  :
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+  # Broken: fails on valid input.
-+continue
-+fi
-+rm -f conftest.err conftest.$ac_ext
-+
-+  # OK, works on sane cases.  Now check whether non-existent headers
-+  # can be detected and how.
-+  cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+#include <ac_nonexistent.h>
-+_ACEOF
-+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } >/dev/null; then
-+  if test -s conftest.err; then
-+    ac_cpp_err=$ac_c_preproc_warn_flag
-+    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-+  else
-+    ac_cpp_err=
-+  fi
-+else
-+  ac_cpp_err=yes
- fi
--  CPP="$ac_cv_prog_CPP"
-+if test -z "$ac_cpp_err"; then
-+  # Broken: success on invalid input.
-+continue
- else
--  ac_cv_prog_CPP="$CPP"
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+  # Passes both tests.
-+ac_preproc_ok=:
-+break
- fi
--echo "$ac_t""$CPP" 1>&6
-+rm -f conftest.err conftest.$ac_ext
- 
--echo $ac_n "checking for ANSI C header files""... $ac_c" 1>&6
--echo "configure:1059: checking for ANSI C header files" >&5
--if eval "test \"`echo '$''{'ac_cv_header_stdc'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
-+done
-+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
-+rm -f conftest.err conftest.$ac_ext
-+if $ac_preproc_ok; then
-+  :
- else
--  cat > conftest.$ac_ext <<EOF
--#line 1064 "configure"
--#include "confdefs.h"
-+  { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check
-+See \`config.log' for more details." >&5
-+echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check
-+See \`config.log' for more details." >&2;}
-+   { (exit 1); exit 1; }; }
-+fi
-+
-+ac_ext=c
-+ac_cpp='$CPP $CPPFLAGS'
-+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-+ac_compiler_gnu=$ac_cv_c_compiler_gnu
-+
-+
-+echo "$as_me:$LINENO: checking for egrep" >&5
-+echo $ECHO_N "checking for egrep... $ECHO_C" >&6
-+if test "${ac_cv_prog_egrep+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+  if echo a | (grep -E '(a|b)') >/dev/null 2>&1
-+    then ac_cv_prog_egrep='grep -E'
-+    else ac_cv_prog_egrep='egrep'
-+    fi
-+fi
-+echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5
-+echo "${ECHO_T}$ac_cv_prog_egrep" >&6
-+ EGREP=$ac_cv_prog_egrep
-+
-+
-+echo "$as_me:$LINENO: checking for ANSI C header files" >&5
-+echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6
-+if test "${ac_cv_header_stdc+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+  cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
- #include <stdlib.h>
- #include <stdarg.h>
- #include <string.h>
- #include <float.h>
--EOF
--ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:1072: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
--ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
--if test -z "$ac_err"; then
--  rm -rf conftest*
-+
-+int
-+main ()
-+{
-+
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+  (eval $ac_compile) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest.$ac_objext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-   ac_cv_header_stdc=yes
- else
--  echo "$ac_err" >&5
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
--  rm -rf conftest*
--  ac_cv_header_stdc=no
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+ac_cv_header_stdc=no
- fi
--rm -f conftest*
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
- 
- if test $ac_cv_header_stdc = yes; then
-   # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
--cat > conftest.$ac_ext <<EOF
--#line 1089 "configure"
--#include "confdefs.h"
-+  cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
- #include <string.h>
--EOF
-+
-+_ACEOF
- if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
--  egrep "memchr" >/dev/null 2>&1; then
-+  $EGREP "memchr" >/dev/null 2>&1; then
-   :
- else
--  rm -rf conftest*
-   ac_cv_header_stdc=no
- fi
- rm -f conftest*
- 
- fi
- 
- if test $ac_cv_header_stdc = yes; then
-   # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
--cat > conftest.$ac_ext <<EOF
--#line 1107 "configure"
--#include "confdefs.h"
-+  cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
- #include <stdlib.h>
--EOF
-+
-+_ACEOF
- if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
--  egrep "free" >/dev/null 2>&1; then
-+  $EGREP "free" >/dev/null 2>&1; then
-   :
- else
--  rm -rf conftest*
-   ac_cv_header_stdc=no
- fi
- rm -f conftest*
- 
- fi
- 
- if test $ac_cv_header_stdc = yes; then
-   # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
--if test "$cross_compiling" = yes; then
-+  if test "$cross_compiling" = yes; then
-   :
- else
--  cat > conftest.$ac_ext <<EOF
--#line 1128 "configure"
--#include "confdefs.h"
-+  cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
- #include <ctype.h>
--#define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
--#define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-+#if ((' ' & 0x0FF) == 0x020)
-+# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-+# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-+#else
-+# define ISLOWER(c) \
-+		   (('a' <= (c) && (c) <= 'i') \
-+		     || ('j' <= (c) && (c) <= 'r') \
-+		     || ('s' <= (c) && (c) <= 'z'))
-+# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-+#endif
-+
- #define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
--int main () { int i; for (i = 0; i < 256; i++)
--if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2);
--exit (0); }
--
--EOF
--if { (eval echo configure:1139: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
--then
-+int
-+main ()
-+{
-+  int i;
-+  for (i = 0; i < 256; i++)
-+    if (XOR (islower (i), ISLOWER (i))
-+	|| toupper (i) != TOUPPER (i))
-+      exit(2);
-+  exit (0);
-+}
-+_ACEOF
-+rm -f conftest$ac_exeext
-+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-+  (eval $ac_link) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-   :
- else
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
--  rm -fr conftest*
--  ac_cv_header_stdc=no
-+  echo "$as_me: program exited with status $ac_status" >&5
-+echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+( exit $ac_status )
-+ac_cv_header_stdc=no
- fi
--rm -fr conftest*
-+rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
- fi
--
- fi
- fi
--
--echo "$ac_t""$ac_cv_header_stdc" 1>&6
-+echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5
-+echo "${ECHO_T}$ac_cv_header_stdc" >&6
- if test $ac_cv_header_stdc = yes; then
--  cat >> confdefs.h <<\EOF
-+
-+cat >>confdefs.h <<\_ACEOF
- #define STDC_HEADERS 1
--EOF
-+_ACEOF
- 
- fi
- 
- 
--ac_safe=`echo "dlfcn.h" | sed 'y%./+-%__p_%'`
--echo $ac_n "checking for dlfcn.h""... $ac_c" 1>&6
--echo "configure:1165: checking for dlfcn.h" >&5
--if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
--else
--  cat > conftest.$ac_ext <<EOF
--#line 1170 "configure"
--#include "confdefs.h"
--#include <dlfcn.h>
--EOF
--ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:1175: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
--ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
--if test -z "$ac_err"; then
--  rm -rf conftest*
--  eval "ac_cv_header_$ac_safe=yes"
--else
--  echo "$ac_err" >&5
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
--  rm -rf conftest*
--  eval "ac_cv_header_$ac_safe=no"
--fi
--rm -f conftest*
--fi
--if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
--  echo "$ac_t""yes" 1>&6
--  :
--else
--  echo "$ac_t""no" 1>&6
--{ echo "configure: error: "dlfcn.h not found"" 1>&2; exit 1; }
--fi
-+# On IRIX 5.3, sys/types and inttypes.h are conflicting.
- 
- 
--ac_safe=`echo "sys/socket.h" | sed 'y%./+-%__p_%'`
--echo $ac_n "checking for sys/socket.h""... $ac_c" 1>&6
--echo "configure:1200: checking for sys/socket.h" >&5
--if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
--else
--  cat > conftest.$ac_ext <<EOF
--#line 1205 "configure"
--#include "confdefs.h"
--#include <sys/socket.h>
--EOF
--ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:1210: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
--ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
--if test -z "$ac_err"; then
--  rm -rf conftest*
--  eval "ac_cv_header_$ac_safe=yes"
--else
--  echo "$ac_err" >&5
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
--  rm -rf conftest*
--  eval "ac_cv_header_$ac_safe=no"
--fi
--rm -f conftest*
-+
-+
-+
-+
-+
-+
-+
-+for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
-+		  inttypes.h stdint.h unistd.h
-+do
-+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-+echo "$as_me:$LINENO: checking for $ac_header" >&5
-+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-+if eval "test \"\${$as_ac_Header+set}\" = set"; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+  cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+$ac_includes_default
-+
-+#include <$ac_header>
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+  (eval $ac_compile) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest.$ac_objext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  eval "$as_ac_Header=yes"
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+eval "$as_ac_Header=no"
-+fi
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-+fi
-+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-+if test `eval echo '${'$as_ac_Header'}'` = yes; then
-+  cat >>confdefs.h <<_ACEOF
-+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-+_ACEOF
-+
-+fi
-+
-+done
-+
-+
-+if test "${ac_cv_header_dlfcn_h+set}" = set; then
-+  echo "$as_me:$LINENO: checking for dlfcn.h" >&5
-+echo $ECHO_N "checking for dlfcn.h... $ECHO_C" >&6
-+if test "${ac_cv_header_dlfcn_h+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+fi
-+echo "$as_me:$LINENO: result: $ac_cv_header_dlfcn_h" >&5
-+echo "${ECHO_T}$ac_cv_header_dlfcn_h" >&6
-+else
-+  # Is the header compilable?
-+echo "$as_me:$LINENO: checking dlfcn.h usability" >&5
-+echo $ECHO_N "checking dlfcn.h usability... $ECHO_C" >&6
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+$ac_includes_default
-+#include <dlfcn.h>
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+  (eval $ac_compile) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest.$ac_objext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  ac_header_compiler=yes
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+ac_header_compiler=no
-+fi
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-+echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-+echo "${ECHO_T}$ac_header_compiler" >&6
-+
-+# Is the header present?
-+echo "$as_me:$LINENO: checking dlfcn.h presence" >&5
-+echo $ECHO_N "checking dlfcn.h presence... $ECHO_C" >&6
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+#include <dlfcn.h>
-+_ACEOF
-+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } >/dev/null; then
-+  if test -s conftest.err; then
-+    ac_cpp_err=$ac_c_preproc_warn_flag
-+    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-+  else
-+    ac_cpp_err=
-+  fi
-+else
-+  ac_cpp_err=yes
-+fi
-+if test -z "$ac_cpp_err"; then
-+  ac_header_preproc=yes
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+  ac_header_preproc=no
-+fi
-+rm -f conftest.err conftest.$ac_ext
-+echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-+echo "${ECHO_T}$ac_header_preproc" >&6
-+
-+# So?  What about this header?
-+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-+  yes:no: )
-+    { echo "$as_me:$LINENO: WARNING: dlfcn.h: accepted by the compiler, rejected by the preprocessor!" >&5
-+echo "$as_me: WARNING: dlfcn.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: dlfcn.h: proceeding with the compiler's result" >&5
-+echo "$as_me: WARNING: dlfcn.h: proceeding with the compiler's result" >&2;}
-+    ac_header_preproc=yes
-+    ;;
-+  no:yes:* )
-+    { echo "$as_me:$LINENO: WARNING: dlfcn.h: present but cannot be compiled" >&5
-+echo "$as_me: WARNING: dlfcn.h: present but cannot be compiled" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: dlfcn.h:     check for missing prerequisite headers?" >&5
-+echo "$as_me: WARNING: dlfcn.h:     check for missing prerequisite headers?" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: dlfcn.h: see the Autoconf documentation" >&5
-+echo "$as_me: WARNING: dlfcn.h: see the Autoconf documentation" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: dlfcn.h:     section \"Present But Cannot Be Compiled\"" >&5
-+echo "$as_me: WARNING: dlfcn.h:     section \"Present But Cannot Be Compiled\"" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: dlfcn.h: proceeding with the preprocessor's result" >&5
-+echo "$as_me: WARNING: dlfcn.h: proceeding with the preprocessor's result" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: dlfcn.h: in the future, the compiler will take precedence" >&5
-+echo "$as_me: WARNING: dlfcn.h: in the future, the compiler will take precedence" >&2;}
-+    (
-+      cat <<\_ASBOX
-+## ------------------------------------------ ##
-+## Report this to the AC_PACKAGE_NAME lists.  ##
-+## ------------------------------------------ ##
-+_ASBOX
-+    ) |
-+      sed "s/^/$as_me: WARNING:     /" >&2
-+    ;;
-+esac
-+echo "$as_me:$LINENO: checking for dlfcn.h" >&5
-+echo $ECHO_N "checking for dlfcn.h... $ECHO_C" >&6
-+if test "${ac_cv_header_dlfcn_h+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+  ac_cv_header_dlfcn_h=$ac_header_preproc
-+fi
-+echo "$as_me:$LINENO: result: $ac_cv_header_dlfcn_h" >&5
-+echo "${ECHO_T}$ac_cv_header_dlfcn_h" >&6
-+
- fi
--if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
--  echo "$ac_t""yes" 1>&6
-+if test $ac_cv_header_dlfcn_h = yes; then
-   :
- else
--  echo "$ac_t""no" 1>&6
--{ echo "configure: error: "sys/socket.h not found"" 1>&2; exit 1; }
-+  { { echo "$as_me:$LINENO: error: \"dlfcn.h not found\"" >&5
-+echo "$as_me: error: \"dlfcn.h not found\"" >&2;}
-+   { (exit 1); exit 1; }; }
- fi
- 
- 
--ac_safe=`echo "arpa/inet.h" | sed 'y%./+-%__p_%'`
--echo $ac_n "checking for arpa/inet.h""... $ac_c" 1>&6
--echo "configure:1235: checking for arpa/inet.h" >&5
--if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
-+
-+if test "${ac_cv_header_sys_socket_h+set}" = set; then
-+  echo "$as_me:$LINENO: checking for sys/socket.h" >&5
-+echo $ECHO_N "checking for sys/socket.h... $ECHO_C" >&6
-+if test "${ac_cv_header_sys_socket_h+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+fi
-+echo "$as_me:$LINENO: result: $ac_cv_header_sys_socket_h" >&5
-+echo "${ECHO_T}$ac_cv_header_sys_socket_h" >&6
-+else
-+  # Is the header compilable?
-+echo "$as_me:$LINENO: checking sys/socket.h usability" >&5
-+echo $ECHO_N "checking sys/socket.h usability... $ECHO_C" >&6
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+$ac_includes_default
-+#include <sys/socket.h>
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+  (eval $ac_compile) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest.$ac_objext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  ac_header_compiler=yes
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+ac_header_compiler=no
-+fi
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-+echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-+echo "${ECHO_T}$ac_header_compiler" >&6
-+
-+# Is the header present?
-+echo "$as_me:$LINENO: checking sys/socket.h presence" >&5
-+echo $ECHO_N "checking sys/socket.h presence... $ECHO_C" >&6
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+#include <sys/socket.h>
-+_ACEOF
-+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } >/dev/null; then
-+  if test -s conftest.err; then
-+    ac_cpp_err=$ac_c_preproc_warn_flag
-+    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-+  else
-+    ac_cpp_err=
-+  fi
- else
--  cat > conftest.$ac_ext <<EOF
--#line 1240 "configure"
--#include "confdefs.h"
--#include <arpa/inet.h>
--EOF
--ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:1245: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
--ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
--if test -z "$ac_err"; then
--  rm -rf conftest*
--  eval "ac_cv_header_$ac_safe=yes"
--else
--  echo "$ac_err" >&5
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
--  rm -rf conftest*
--  eval "ac_cv_header_$ac_safe=no"
-+  ac_cpp_err=yes
- fi
--rm -f conftest*
-+if test -z "$ac_cpp_err"; then
-+  ac_header_preproc=yes
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+  ac_header_preproc=no
-+fi
-+rm -f conftest.err conftest.$ac_ext
-+echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-+echo "${ECHO_T}$ac_header_preproc" >&6
-+
-+# So?  What about this header?
-+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-+  yes:no: )
-+    { echo "$as_me:$LINENO: WARNING: sys/socket.h: accepted by the compiler, rejected by the preprocessor!" >&5
-+echo "$as_me: WARNING: sys/socket.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: sys/socket.h: proceeding with the compiler's result" >&5
-+echo "$as_me: WARNING: sys/socket.h: proceeding with the compiler's result" >&2;}
-+    ac_header_preproc=yes
-+    ;;
-+  no:yes:* )
-+    { echo "$as_me:$LINENO: WARNING: sys/socket.h: present but cannot be compiled" >&5
-+echo "$as_me: WARNING: sys/socket.h: present but cannot be compiled" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: sys/socket.h:     check for missing prerequisite headers?" >&5
-+echo "$as_me: WARNING: sys/socket.h:     check for missing prerequisite headers?" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: sys/socket.h: see the Autoconf documentation" >&5
-+echo "$as_me: WARNING: sys/socket.h: see the Autoconf documentation" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: sys/socket.h:     section \"Present But Cannot Be Compiled\"" >&5
-+echo "$as_me: WARNING: sys/socket.h:     section \"Present But Cannot Be Compiled\"" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: sys/socket.h: proceeding with the preprocessor's result" >&5
-+echo "$as_me: WARNING: sys/socket.h: proceeding with the preprocessor's result" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: sys/socket.h: in the future, the compiler will take precedence" >&5
-+echo "$as_me: WARNING: sys/socket.h: in the future, the compiler will take precedence" >&2;}
-+    (
-+      cat <<\_ASBOX
-+## ------------------------------------------ ##
-+## Report this to the AC_PACKAGE_NAME lists.  ##
-+## ------------------------------------------ ##
-+_ASBOX
-+    ) |
-+      sed "s/^/$as_me: WARNING:     /" >&2
-+    ;;
-+esac
-+echo "$as_me:$LINENO: checking for sys/socket.h" >&5
-+echo $ECHO_N "checking for sys/socket.h... $ECHO_C" >&6
-+if test "${ac_cv_header_sys_socket_h+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+  ac_cv_header_sys_socket_h=$ac_header_preproc
- fi
--if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
--  echo "$ac_t""yes" 1>&6
-+echo "$as_me:$LINENO: result: $ac_cv_header_sys_socket_h" >&5
-+echo "${ECHO_T}$ac_cv_header_sys_socket_h" >&6
-+
-+fi
-+if test $ac_cv_header_sys_socket_h = yes; then
-   :
- else
--  echo "$ac_t""no" 1>&6
--{ echo "configure: error: "arpa/inet.h not found"" 1>&2; exit 1; }
-+  { { echo "$as_me:$LINENO: error: \"sys/socket.h not found\"" >&5
-+echo "$as_me: error: \"sys/socket.h not found\"" >&2;}
-+   { (exit 1); exit 1; }; }
- fi
- 
- 
--ac_safe=`echo "fcntl.h" | sed 'y%./+-%__p_%'`
--echo $ac_n "checking for fcntl.h""... $ac_c" 1>&6
--echo "configure:1270: checking for fcntl.h" >&5
--if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
-+
-+if test "${ac_cv_header_arpa_inet_h+set}" = set; then
-+  echo "$as_me:$LINENO: checking for arpa/inet.h" >&5
-+echo $ECHO_N "checking for arpa/inet.h... $ECHO_C" >&6
-+if test "${ac_cv_header_arpa_inet_h+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+fi
-+echo "$as_me:$LINENO: result: $ac_cv_header_arpa_inet_h" >&5
-+echo "${ECHO_T}$ac_cv_header_arpa_inet_h" >&6
-+else
-+  # Is the header compilable?
-+echo "$as_me:$LINENO: checking arpa/inet.h usability" >&5
-+echo $ECHO_N "checking arpa/inet.h usability... $ECHO_C" >&6
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+$ac_includes_default
-+#include <arpa/inet.h>
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+  (eval $ac_compile) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest.$ac_objext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  ac_header_compiler=yes
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+ac_header_compiler=no
-+fi
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-+echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-+echo "${ECHO_T}$ac_header_compiler" >&6
-+
-+# Is the header present?
-+echo "$as_me:$LINENO: checking arpa/inet.h presence" >&5
-+echo $ECHO_N "checking arpa/inet.h presence... $ECHO_C" >&6
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+#include <arpa/inet.h>
-+_ACEOF
-+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } >/dev/null; then
-+  if test -s conftest.err; then
-+    ac_cpp_err=$ac_c_preproc_warn_flag
-+    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-+  else
-+    ac_cpp_err=
-+  fi
- else
--  cat > conftest.$ac_ext <<EOF
--#line 1275 "configure"
--#include "confdefs.h"
--#include <fcntl.h>
--EOF
--ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:1280: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
--ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
--if test -z "$ac_err"; then
--  rm -rf conftest*
--  eval "ac_cv_header_$ac_safe=yes"
--else
--  echo "$ac_err" >&5
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
--  rm -rf conftest*
--  eval "ac_cv_header_$ac_safe=no"
-+  ac_cpp_err=yes
- fi
--rm -f conftest*
-+if test -z "$ac_cpp_err"; then
-+  ac_header_preproc=yes
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+  ac_header_preproc=no
-+fi
-+rm -f conftest.err conftest.$ac_ext
-+echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-+echo "${ECHO_T}$ac_header_preproc" >&6
-+
-+# So?  What about this header?
-+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-+  yes:no: )
-+    { echo "$as_me:$LINENO: WARNING: arpa/inet.h: accepted by the compiler, rejected by the preprocessor!" >&5
-+echo "$as_me: WARNING: arpa/inet.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: arpa/inet.h: proceeding with the compiler's result" >&5
-+echo "$as_me: WARNING: arpa/inet.h: proceeding with the compiler's result" >&2;}
-+    ac_header_preproc=yes
-+    ;;
-+  no:yes:* )
-+    { echo "$as_me:$LINENO: WARNING: arpa/inet.h: present but cannot be compiled" >&5
-+echo "$as_me: WARNING: arpa/inet.h: present but cannot be compiled" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: arpa/inet.h:     check for missing prerequisite headers?" >&5
-+echo "$as_me: WARNING: arpa/inet.h:     check for missing prerequisite headers?" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: arpa/inet.h: see the Autoconf documentation" >&5
-+echo "$as_me: WARNING: arpa/inet.h: see the Autoconf documentation" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: arpa/inet.h:     section \"Present But Cannot Be Compiled\"" >&5
-+echo "$as_me: WARNING: arpa/inet.h:     section \"Present But Cannot Be Compiled\"" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: arpa/inet.h: proceeding with the preprocessor's result" >&5
-+echo "$as_me: WARNING: arpa/inet.h: proceeding with the preprocessor's result" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: arpa/inet.h: in the future, the compiler will take precedence" >&5
-+echo "$as_me: WARNING: arpa/inet.h: in the future, the compiler will take precedence" >&2;}
-+    (
-+      cat <<\_ASBOX
-+## ------------------------------------------ ##
-+## Report this to the AC_PACKAGE_NAME lists.  ##
-+## ------------------------------------------ ##
-+_ASBOX
-+    ) |
-+      sed "s/^/$as_me: WARNING:     /" >&2
-+    ;;
-+esac
-+echo "$as_me:$LINENO: checking for arpa/inet.h" >&5
-+echo $ECHO_N "checking for arpa/inet.h... $ECHO_C" >&6
-+if test "${ac_cv_header_arpa_inet_h+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+  ac_cv_header_arpa_inet_h=$ac_header_preproc
- fi
--if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
--  echo "$ac_t""yes" 1>&6
-+echo "$as_me:$LINENO: result: $ac_cv_header_arpa_inet_h" >&5
-+echo "${ECHO_T}$ac_cv_header_arpa_inet_h" >&6
-+
-+fi
-+if test $ac_cv_header_arpa_inet_h = yes; then
-   :
- else
--  echo "$ac_t""no" 1>&6
--{ echo "configure: error: "fcntl.h not found"" 1>&2; exit 1; }
-+  { { echo "$as_me:$LINENO: error: \"arpa/inet.h not found\"" >&5
-+echo "$as_me: error: \"arpa/inet.h not found\"" >&2;}
-+   { (exit 1); exit 1; }; }
- fi
- 
- 
--ac_safe=`echo "sys/poll.h" | sed 'y%./+-%__p_%'`
--echo $ac_n "checking for sys/poll.h""... $ac_c" 1>&6
--echo "configure:1305: checking for sys/poll.h" >&5
--if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
-+
-+if test "${ac_cv_header_fcntl_h+set}" = set; then
-+  echo "$as_me:$LINENO: checking for fcntl.h" >&5
-+echo $ECHO_N "checking for fcntl.h... $ECHO_C" >&6
-+if test "${ac_cv_header_fcntl_h+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+fi
-+echo "$as_me:$LINENO: result: $ac_cv_header_fcntl_h" >&5
-+echo "${ECHO_T}$ac_cv_header_fcntl_h" >&6
-+else
-+  # Is the header compilable?
-+echo "$as_me:$LINENO: checking fcntl.h usability" >&5
-+echo $ECHO_N "checking fcntl.h usability... $ECHO_C" >&6
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+$ac_includes_default
-+#include <fcntl.h>
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+  (eval $ac_compile) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest.$ac_objext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  ac_header_compiler=yes
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+ac_header_compiler=no
-+fi
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-+echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-+echo "${ECHO_T}$ac_header_compiler" >&6
-+
-+# Is the header present?
-+echo "$as_me:$LINENO: checking fcntl.h presence" >&5
-+echo $ECHO_N "checking fcntl.h presence... $ECHO_C" >&6
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+#include <fcntl.h>
-+_ACEOF
-+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } >/dev/null; then
-+  if test -s conftest.err; then
-+    ac_cpp_err=$ac_c_preproc_warn_flag
-+    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-+  else
-+    ac_cpp_err=
-+  fi
- else
--  cat > conftest.$ac_ext <<EOF
--#line 1310 "configure"
--#include "confdefs.h"
-+  ac_cpp_err=yes
-+fi
-+if test -z "$ac_cpp_err"; then
-+  ac_header_preproc=yes
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+  ac_header_preproc=no
-+fi
-+rm -f conftest.err conftest.$ac_ext
-+echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-+echo "${ECHO_T}$ac_header_preproc" >&6
-+
-+# So?  What about this header?
-+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-+  yes:no: )
-+    { echo "$as_me:$LINENO: WARNING: fcntl.h: accepted by the compiler, rejected by the preprocessor!" >&5
-+echo "$as_me: WARNING: fcntl.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: fcntl.h: proceeding with the compiler's result" >&5
-+echo "$as_me: WARNING: fcntl.h: proceeding with the compiler's result" >&2;}
-+    ac_header_preproc=yes
-+    ;;
-+  no:yes:* )
-+    { echo "$as_me:$LINENO: WARNING: fcntl.h: present but cannot be compiled" >&5
-+echo "$as_me: WARNING: fcntl.h: present but cannot be compiled" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: fcntl.h:     check for missing prerequisite headers?" >&5
-+echo "$as_me: WARNING: fcntl.h:     check for missing prerequisite headers?" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: fcntl.h: see the Autoconf documentation" >&5
-+echo "$as_me: WARNING: fcntl.h: see the Autoconf documentation" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: fcntl.h:     section \"Present But Cannot Be Compiled\"" >&5
-+echo "$as_me: WARNING: fcntl.h:     section \"Present But Cannot Be Compiled\"" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: fcntl.h: proceeding with the preprocessor's result" >&5
-+echo "$as_me: WARNING: fcntl.h: proceeding with the preprocessor's result" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: fcntl.h: in the future, the compiler will take precedence" >&5
-+echo "$as_me: WARNING: fcntl.h: in the future, the compiler will take precedence" >&2;}
-+    (
-+      cat <<\_ASBOX
-+## ------------------------------------------ ##
-+## Report this to the AC_PACKAGE_NAME lists.  ##
-+## ------------------------------------------ ##
-+_ASBOX
-+    ) |
-+      sed "s/^/$as_me: WARNING:     /" >&2
-+    ;;
-+esac
-+echo "$as_me:$LINENO: checking for fcntl.h" >&5
-+echo $ECHO_N "checking for fcntl.h... $ECHO_C" >&6
-+if test "${ac_cv_header_fcntl_h+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+  ac_cv_header_fcntl_h=$ac_header_preproc
-+fi
-+echo "$as_me:$LINENO: result: $ac_cv_header_fcntl_h" >&5
-+echo "${ECHO_T}$ac_cv_header_fcntl_h" >&6
-+
-+fi
-+if test $ac_cv_header_fcntl_h = yes; then
-+  :
-+else
-+  { { echo "$as_me:$LINENO: error: \"fcntl.h not found\"" >&5
-+echo "$as_me: error: \"fcntl.h not found\"" >&2;}
-+   { (exit 1); exit 1; }; }
-+fi
-+
-+
-+
-+if test "${ac_cv_header_sys_poll_h+set}" = set; then
-+  echo "$as_me:$LINENO: checking for sys/poll.h" >&5
-+echo $ECHO_N "checking for sys/poll.h... $ECHO_C" >&6
-+if test "${ac_cv_header_sys_poll_h+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+fi
-+echo "$as_me:$LINENO: result: $ac_cv_header_sys_poll_h" >&5
-+echo "${ECHO_T}$ac_cv_header_sys_poll_h" >&6
-+else
-+  # Is the header compilable?
-+echo "$as_me:$LINENO: checking sys/poll.h usability" >&5
-+echo $ECHO_N "checking sys/poll.h usability... $ECHO_C" >&6
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+$ac_includes_default
-+#include <sys/poll.h>
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+  (eval $ac_compile) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest.$ac_objext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  ac_header_compiler=yes
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+ac_header_compiler=no
-+fi
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-+echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-+echo "${ECHO_T}$ac_header_compiler" >&6
-+
-+# Is the header present?
-+echo "$as_me:$LINENO: checking sys/poll.h presence" >&5
-+echo $ECHO_N "checking sys/poll.h presence... $ECHO_C" >&6
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
- #include <sys/poll.h>
--EOF
--ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:1315: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
--ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
--if test -z "$ac_err"; then
--  rm -rf conftest*
--  eval "ac_cv_header_$ac_safe=yes"
--else
--  echo "$ac_err" >&5
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
--  rm -rf conftest*
--  eval "ac_cv_header_$ac_safe=no"
-+_ACEOF
-+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } >/dev/null; then
-+  if test -s conftest.err; then
-+    ac_cpp_err=$ac_c_preproc_warn_flag
-+    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-+  else
-+    ac_cpp_err=
-+  fi
-+else
-+  ac_cpp_err=yes
- fi
--rm -f conftest*
-+if test -z "$ac_cpp_err"; then
-+  ac_header_preproc=yes
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+  ac_header_preproc=no
-+fi
-+rm -f conftest.err conftest.$ac_ext
-+echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-+echo "${ECHO_T}$ac_header_preproc" >&6
-+
-+# So?  What about this header?
-+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-+  yes:no: )
-+    { echo "$as_me:$LINENO: WARNING: sys/poll.h: accepted by the compiler, rejected by the preprocessor!" >&5
-+echo "$as_me: WARNING: sys/poll.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: sys/poll.h: proceeding with the compiler's result" >&5
-+echo "$as_me: WARNING: sys/poll.h: proceeding with the compiler's result" >&2;}
-+    ac_header_preproc=yes
-+    ;;
-+  no:yes:* )
-+    { echo "$as_me:$LINENO: WARNING: sys/poll.h: present but cannot be compiled" >&5
-+echo "$as_me: WARNING: sys/poll.h: present but cannot be compiled" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: sys/poll.h:     check for missing prerequisite headers?" >&5
-+echo "$as_me: WARNING: sys/poll.h:     check for missing prerequisite headers?" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: sys/poll.h: see the Autoconf documentation" >&5
-+echo "$as_me: WARNING: sys/poll.h: see the Autoconf documentation" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: sys/poll.h:     section \"Present But Cannot Be Compiled\"" >&5
-+echo "$as_me: WARNING: sys/poll.h:     section \"Present But Cannot Be Compiled\"" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: sys/poll.h: proceeding with the preprocessor's result" >&5
-+echo "$as_me: WARNING: sys/poll.h: proceeding with the preprocessor's result" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: sys/poll.h: in the future, the compiler will take precedence" >&5
-+echo "$as_me: WARNING: sys/poll.h: in the future, the compiler will take precedence" >&2;}
-+    (
-+      cat <<\_ASBOX
-+## ------------------------------------------ ##
-+## Report this to the AC_PACKAGE_NAME lists.  ##
-+## ------------------------------------------ ##
-+_ASBOX
-+    ) |
-+      sed "s/^/$as_me: WARNING:     /" >&2
-+    ;;
-+esac
-+echo "$as_me:$LINENO: checking for sys/poll.h" >&5
-+echo $ECHO_N "checking for sys/poll.h... $ECHO_C" >&6
-+if test "${ac_cv_header_sys_poll_h+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+  ac_cv_header_sys_poll_h=$ac_header_preproc
-+fi
-+echo "$as_me:$LINENO: result: $ac_cv_header_sys_poll_h" >&5
-+echo "${ECHO_T}$ac_cv_header_sys_poll_h" >&6
-+
- fi
--if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
--  echo "$ac_t""yes" 1>&6
-+if test $ac_cv_header_sys_poll_h = yes; then
-   :
- else
--  echo "$ac_t""no" 1>&6
--{ echo "configure: error: "sys/poll.h not found"" 1>&2; exit 1; }
-+  { { echo "$as_me:$LINENO: error: \"sys/poll.h not found\"" >&5
-+echo "$as_me: error: \"sys/poll.h not found\"" >&2;}
-+   { (exit 1); exit 1; }; }
-+fi
-+
-+
-+
-+if test "${ac_cv_header_sys_mman_h+set}" = set; then
-+  echo "$as_me:$LINENO: checking for sys/mman.h" >&5
-+echo $ECHO_N "checking for sys/mman.h... $ECHO_C" >&6
-+if test "${ac_cv_header_sys_mman_h+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+fi
-+echo "$as_me:$LINENO: result: $ac_cv_header_sys_mman_h" >&5
-+echo "${ECHO_T}$ac_cv_header_sys_mman_h" >&6
-+else
-+  # Is the header compilable?
-+echo "$as_me:$LINENO: checking sys/mman.h usability" >&5
-+echo $ECHO_N "checking sys/mman.h usability... $ECHO_C" >&6
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+$ac_includes_default
-+#include <sys/mman.h>
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+  (eval $ac_compile) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest.$ac_objext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  ac_header_compiler=yes
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+ac_header_compiler=no
-+fi
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-+echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-+echo "${ECHO_T}$ac_header_compiler" >&6
-+
-+# Is the header present?
-+echo "$as_me:$LINENO: checking sys/mman.h presence" >&5
-+echo $ECHO_N "checking sys/mman.h presence... $ECHO_C" >&6
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+#include <sys/mman.h>
-+_ACEOF
-+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } >/dev/null; then
-+  if test -s conftest.err; then
-+    ac_cpp_err=$ac_c_preproc_warn_flag
-+    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-+  else
-+    ac_cpp_err=
-+  fi
-+else
-+  ac_cpp_err=yes
- fi
-+if test -z "$ac_cpp_err"; then
-+  ac_header_preproc=yes
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
- 
-+  ac_header_preproc=no
-+fi
-+rm -f conftest.err conftest.$ac_ext
-+echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-+echo "${ECHO_T}$ac_header_preproc" >&6
-+
-+# So?  What about this header?
-+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-+  yes:no: )
-+    { echo "$as_me:$LINENO: WARNING: sys/mman.h: accepted by the compiler, rejected by the preprocessor!" >&5
-+echo "$as_me: WARNING: sys/mman.h: accepted by the compiler, rejected by the preprocessor!" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: sys/mman.h: proceeding with the compiler's result" >&5
-+echo "$as_me: WARNING: sys/mman.h: proceeding with the compiler's result" >&2;}
-+    ac_header_preproc=yes
-+    ;;
-+  no:yes:* )
-+    { echo "$as_me:$LINENO: WARNING: sys/mman.h: present but cannot be compiled" >&5
-+echo "$as_me: WARNING: sys/mman.h: present but cannot be compiled" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: sys/mman.h:     check for missing prerequisite headers?" >&5
-+echo "$as_me: WARNING: sys/mman.h:     check for missing prerequisite headers?" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: sys/mman.h: see the Autoconf documentation" >&5
-+echo "$as_me: WARNING: sys/mman.h: see the Autoconf documentation" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: sys/mman.h:     section \"Present But Cannot Be Compiled\"" >&5
-+echo "$as_me: WARNING: sys/mman.h:     section \"Present But Cannot Be Compiled\"" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: sys/mman.h: proceeding with the preprocessor's result" >&5
-+echo "$as_me: WARNING: sys/mman.h: proceeding with the preprocessor's result" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: sys/mman.h: in the future, the compiler will take precedence" >&5
-+echo "$as_me: WARNING: sys/mman.h: in the future, the compiler will take precedence" >&2;}
-+    (
-+      cat <<\_ASBOX
-+## ------------------------------------------ ##
-+## Report this to the AC_PACKAGE_NAME lists.  ##
-+## ------------------------------------------ ##
-+_ASBOX
-+    ) |
-+      sed "s/^/$as_me: WARNING:     /" >&2
-+    ;;
-+esac
-+echo "$as_me:$LINENO: checking for sys/mman.h" >&5
-+echo $ECHO_N "checking for sys/mman.h... $ECHO_C" >&6
-+if test "${ac_cv_header_sys_mman_h+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+  ac_cv_header_sys_mman_h=$ac_header_preproc
-+fi
-+echo "$as_me:$LINENO: result: $ac_cv_header_sys_mman_h" >&5
-+echo "${ECHO_T}$ac_cv_header_sys_mman_h" >&6
- 
--for ac_hdr in unistd.h
--do
--ac_safe=`echo "$ac_hdr" | sed 'y%./+-%__p_%'`
--echo $ac_n "checking for $ac_hdr""... $ac_c" 1>&6
--echo "configure:1342: checking for $ac_hdr" >&5
--if eval "test \"`echo '$''{'ac_cv_header_$ac_safe'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
--else
--  cat > conftest.$ac_ext <<EOF
--#line 1347 "configure"
--#include "confdefs.h"
--#include <$ac_hdr>
--EOF
--ac_try="$ac_cpp conftest.$ac_ext >/dev/null 2>conftest.out"
--{ (eval echo configure:1352: \"$ac_try\") 1>&5; (eval $ac_try) 2>&5; }
--ac_err=`grep -v '^ *+' conftest.out | grep -v "^conftest.${ac_ext}\$"`
--if test -z "$ac_err"; then
--  rm -rf conftest*
--  eval "ac_cv_header_$ac_safe=yes"
--else
--  echo "$ac_err" >&5
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
--  rm -rf conftest*
--  eval "ac_cv_header_$ac_safe=no"
- fi
--rm -f conftest*
-+if test $ac_cv_header_sys_mman_h = yes; then
-+  :
-+else
-+  { { echo "$as_me:$LINENO: error: \"sys/mman.h not found\"" >&5
-+echo "$as_me: error: \"sys/mman.h not found\"" >&2;}
-+   { (exit 1); exit 1; }; }
-+fi
-+
-+
-+
-+
-+for ac_header in unistd.h
-+do
-+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
-+if eval "test \"\${$as_ac_Header+set}\" = set"; then
-+  echo "$as_me:$LINENO: checking for $ac_header" >&5
-+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-+if eval "test \"\${$as_ac_Header+set}\" = set"; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+fi
-+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-+else
-+  # Is the header compilable?
-+echo "$as_me:$LINENO: checking $ac_header usability" >&5
-+echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+$ac_includes_default
-+#include <$ac_header>
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+  (eval $ac_compile) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest.$ac_objext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  ac_header_compiler=yes
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+ac_header_compiler=no
-+fi
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-+echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
-+echo "${ECHO_T}$ac_header_compiler" >&6
-+
-+# Is the header present?
-+echo "$as_me:$LINENO: checking $ac_header presence" >&5
-+echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+#include <$ac_header>
-+_ACEOF
-+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
-+  (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } >/dev/null; then
-+  if test -s conftest.err; then
-+    ac_cpp_err=$ac_c_preproc_warn_flag
-+    ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
-+  else
-+    ac_cpp_err=
-+  fi
-+else
-+  ac_cpp_err=yes
- fi
--if eval "test \"`echo '$ac_cv_header_'$ac_safe`\" = yes"; then
--  echo "$ac_t""yes" 1>&6
--    ac_tr_hdr=HAVE_`echo $ac_hdr | sed 'y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%'`
--  cat >> confdefs.h <<EOF
--#define $ac_tr_hdr 1
--EOF
-- 
-+if test -z "$ac_cpp_err"; then
-+  ac_header_preproc=yes
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+  ac_header_preproc=no
-+fi
-+rm -f conftest.err conftest.$ac_ext
-+echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
-+echo "${ECHO_T}$ac_header_preproc" >&6
-+
-+# So?  What about this header?
-+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
-+  yes:no: )
-+    { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
-+echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
-+echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
-+    ac_header_preproc=yes
-+    ;;
-+  no:yes:* )
-+    { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
-+echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: $ac_header:     check for missing prerequisite headers?" >&5
-+echo "$as_me: WARNING: $ac_header:     check for missing prerequisite headers?" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
-+echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&5
-+echo "$as_me: WARNING: $ac_header:     section \"Present But Cannot Be Compiled\"" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
-+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
-+    { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
-+echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
-+    (
-+      cat <<\_ASBOX
-+## ------------------------------------------ ##
-+## Report this to the AC_PACKAGE_NAME lists.  ##
-+## ------------------------------------------ ##
-+_ASBOX
-+    ) |
-+      sed "s/^/$as_me: WARNING:     /" >&2
-+    ;;
-+esac
-+echo "$as_me:$LINENO: checking for $ac_header" >&5
-+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
-+if eval "test \"\${$as_ac_Header+set}\" = set"; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
- else
--  echo "$ac_t""no" 1>&6
-+  eval "$as_ac_Header=\$ac_header_preproc"
- fi
-+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
-+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
-+
-+fi
-+if test `eval echo '${'$as_ac_Header'}'` = yes; then
-+  cat >>confdefs.h <<_ACEOF
-+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
-+_ACEOF
-+
-+fi
-+
- done
- 
- 
--for ac_func in strcspn strdup strerror strspn strtol
-+
-+
-+
-+
-+
-+
-+
-+
-+
-+for ac_func in strcspn strdup strerror strspn strtol mmap strcasecmp \
-+   strncasecmp strtol
- do
--echo $ac_n "checking for $ac_func""... $ac_c" 1>&6
--echo "configure:1382: checking for $ac_func" >&5
--if eval "test \"`echo '$''{'ac_cv_func_$ac_func'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
--else
--  cat > conftest.$ac_ext <<EOF
--#line 1387 "configure"
--#include "confdefs.h"
-+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
-+echo "$as_me:$LINENO: checking for $ac_func" >&5
-+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
-+if eval "test \"\${$as_ac_var+set}\" = set"; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+  cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
-+   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-+#define $ac_func innocuous_$ac_func
-+
- /* System header to define __stub macros and hopefully few prototypes,
--    which can conflict with char $ac_func(); below.  */
--#include <assert.h>
--/* Override any gcc2 internal prototype to avoid an error.  */
--/* We use char because int might match the return type of a gcc2
--    builtin and then its argument prototype would still apply.  */
--char $ac_func();
-+    which can conflict with char $ac_func (); below.
-+    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-+    <limits.h> exists even on freestanding compilers.  */
- 
--int main() {
-+#ifdef __STDC__
-+# include <limits.h>
-+#else
-+# include <assert.h>
-+#endif
- 
-+#undef $ac_func
-+
-+/* Override any gcc2 internal prototype to avoid an error.  */
-+#ifdef __cplusplus
-+extern "C"
-+{
-+#endif
-+/* We use char because int might match the return type of a gcc2
-+   builtin and then its argument prototype would still apply.  */
-+char $ac_func ();
- /* The GNU C library defines this for functions which it implements
-     to always fail with ENOSYS.  Some functions are actually named
-     something starting with __ and the normal name is an alias.  */
- #if defined (__stub_$ac_func) || defined (__stub___$ac_func)
- choke me
- #else
--$ac_func();
-+char (*f) () = $ac_func;
-+#endif
-+#ifdef __cplusplus
-+}
- #endif
- 
--; return 0; }
--EOF
--if { (eval echo configure:1410: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
--  rm -rf conftest*
--  eval "ac_cv_func_$ac_func=yes"
--else
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
--  rm -rf conftest*
--  eval "ac_cv_func_$ac_func=no"
-+int
-+main ()
-+{
-+return f != $ac_func;
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-+  (eval $ac_link) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest$ac_exeext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  eval "$as_ac_var=yes"
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+eval "$as_ac_var=no"
-+fi
-+rm -f conftest.err conftest.$ac_objext \
-+      conftest$ac_exeext conftest.$ac_ext
-+fi
-+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
-+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
-+if test `eval echo '${'$as_ac_var'}'` = yes; then
-+  cat >>confdefs.h <<_ACEOF
-+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
-+_ACEOF
-+
-+else
-+  { { echo "$as_me:$LINENO: error: \"Required function not found\"" >&5
-+echo "$as_me: error: \"Required function not found\"" >&2;}
-+   { (exit 1); exit 1; }; }
- fi
--rm -f conftest*
-+done
-+
-+
-+
-+
-+    ac_ext=c
-+ac_cpp='$CPP $CPPFLAGS'
-+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-+ac_compiler_gnu=$ac_cv_c_compiler_gnu
-+
-+    echo "$as_me:$LINENO: checking how many arguments gethostbyname_r() takes" >&5
-+echo $ECHO_N "checking how many arguments gethostbyname_r() takes... $ECHO_C" >&6
-+
-+    if test "${ac_cv_func_which_gethostbyname_r+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+
-+
-+
-+ac_cv_func_which_gethostbyname_r=unknown
-+
-+#
-+# ONE ARGUMENT (sanity check)
-+#
-+
-+# This should fail, as there is no variant of gethostbyname_r() that takes
-+# a single argument. If it actually compiles, then we can assume that
-+# netdb.h is not declaring the function, and the compiler is thereby
-+# assuming an implicit prototype. In which case, we're out of luck.
-+#
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+#include <netdb.h>
-+int
-+main ()
-+{
-+
-+            char *name = "www.gnu.org";
-+            (void)gethostbyname_r(name) /* ; */
-+
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+  (eval $ac_compile) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest.$ac_objext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  ac_cv_func_which_gethostbyname_r=no
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
- fi
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-+
-+#
-+# SIX ARGUMENTS
-+# (e.g. Linux)
-+#
-+
-+if test "$ac_cv_func_which_gethostbyname_r" = "unknown"; then
- 
--if eval "test \"`echo '$ac_cv_func_'$ac_func`\" = yes"; then
--  echo "$ac_t""yes" 1>&6
--    ac_tr_func=HAVE_`echo $ac_func | tr 'abcdefghijklmnopqrstuvwxyz' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'`
--  cat >> confdefs.h <<EOF
--#define $ac_tr_func 1
--EOF
-- 
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+#include <netdb.h>
-+int
-+main ()
-+{
-+
-+            char *name = "www.gnu.org";
-+            struct hostent ret, *retp;
-+            char buf[1024];
-+            int buflen = 1024;
-+            int my_h_errno;
-+            (void)gethostbyname_r(name, &ret, buf, buflen, &retp, &my_h_errno) /* ; */
-+
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+  (eval $ac_compile) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest.$ac_objext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  ac_cv_func_which_gethostbyname_r=six
- else
--  echo "$ac_t""no" 1>&6
--{ echo "configure: error: "Required function not found"" 1>&2; exit 1; }
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
- fi
--done
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-+
-+fi
-+
-+#
-+# FIVE ARGUMENTS
-+# (e.g. Solaris)
-+#
-+
-+if test "$ac_cv_func_which_gethostbyname_r" = "unknown"; then
-+
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+#include <netdb.h>
-+int
-+main ()
-+{
-+
-+            char *name = "www.gnu.org";
-+            struct hostent ret;
-+            char buf[1024];
-+            int buflen = 1024;
-+            int my_h_errno;
-+            (void)gethostbyname_r(name, &ret, buf, buflen, &my_h_errno) /* ; */
-+
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+  (eval $ac_compile) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest.$ac_objext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  ac_cv_func_which_gethostbyname_r=five
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+fi
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-+
-+fi
-+
-+#
-+# THREE ARGUMENTS
-+# (e.g. AIX, HP-UX, Tru64)
-+#
-+
-+if test "$ac_cv_func_which_gethostbyname_r" = "unknown"; then
-+
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+#include <netdb.h>
-+int
-+main ()
-+{
-+
-+            char *name = "www.gnu.org";
-+            struct hostent ret;
-+            struct hostent_data data;
-+            (void)gethostbyname_r(name, &ret, &data) /* ; */
-+
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+  (eval $ac_compile) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest.$ac_objext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  ac_cv_func_which_gethostbyname_r=three
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+fi
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-+
-+fi
-+
-+
-+
-+fi
-+
-+case "$ac_cv_func_which_gethostbyname_r" in
-+    three)
-+    echo "$as_me:$LINENO: result: three" >&5
-+echo "${ECHO_T}three" >&6
-+    cat >>confdefs.h <<\_ACEOF
-+#define HAVE_FUNC_GETHOSTBYNAME_R_3 1
-+_ACEOF
-+
-+    ;;
-+
-+    five)
-+    echo "$as_me:$LINENO: result: five" >&5
-+echo "${ECHO_T}five" >&6
-+    cat >>confdefs.h <<\_ACEOF
-+#define HAVE_FUNC_GETHOSTBYNAME_R_5 1
-+_ACEOF
-+
-+    ;;
-+
-+    six)
-+    echo "$as_me:$LINENO: result: six" >&5
-+echo "${ECHO_T}six" >&6
-+    cat >>confdefs.h <<\_ACEOF
-+#define HAVE_FUNC_GETHOSTBYNAME_R_6 1
-+_ACEOF
-+
-+    ;;
-+
-+    no)
-+    echo "$as_me:$LINENO: result: cannot find function declaration in netdb.h" >&5
-+echo "${ECHO_T}cannot find function declaration in netdb.h" >&6
-+    ;;
-+
-+    unknown)
-+    echo "$as_me:$LINENO: result: can't tell" >&5
-+echo "${ECHO_T}can't tell" >&6
-+    ;;
-+
-+    *)
-+    { { echo "$as_me:$LINENO: error: internal error" >&5
-+echo "$as_me: error: internal error" >&2;}
-+   { (exit 1); exit 1; }; }
-+    ;;
-+esac
-+
-+ac_ext=c
-+ac_cpp='$CPP $CPPFLAGS'
-+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
-+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
-+ac_compiler_gnu=$ac_cv_c_compiler_gnu
-+
-+
- 
- 
- OLDLIBS="${LIBS}"
- LIBS=
- CONNECTLIB=
- for LIB in c socket; do
--  echo $ac_n "checking for connect in -l"${LIB}"""... $ac_c" 1>&6
--echo "configure:1441: checking for connect in -l"${LIB}"" >&5
--ac_lib_var=`echo "${LIB}"'_'connect | sed 'y%./+-%__p_%'`
--if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
-+  as_ac_Lib=`echo "ac_cv_lib_"${LIB}"''_connect" | $as_tr_sh`
-+echo "$as_me:$LINENO: checking for connect in -l\"${LIB}\"" >&5
-+echo $ECHO_N "checking for connect in -l\"${LIB}\"... $ECHO_C" >&6
-+if eval "test \"\${$as_ac_Lib+set}\" = set"; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
- else
--  ac_save_LIBS="$LIBS"
-+  ac_check_lib_save_LIBS=$LIBS
- LIBS="-l"${LIB}"  $LIBS"
--cat > conftest.$ac_ext <<EOF
--#line 1449 "configure"
--#include "confdefs.h"
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+
- /* Override any gcc2 internal prototype to avoid an error.  */
-+#ifdef __cplusplus
-+extern "C"
-+#endif
- /* We use char because int might match the return type of a gcc2
--    builtin and then its argument prototype would still apply.  */
--char connect();
--
--int main() {
--connect()
--; return 0; }
--EOF
--if { (eval echo configure:1460: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
--  rm -rf conftest*
--  eval "ac_cv_lib_$ac_lib_var=yes"
--else
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
--  rm -rf conftest*
--  eval "ac_cv_lib_$ac_lib_var=no"
--fi
--rm -f conftest*
--LIBS="$ac_save_LIBS"
-+   builtin and then its argument prototype would still apply.  */
-+char connect ();
-+int
-+main ()
-+{
-+connect ();
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-+  (eval $ac_link) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest$ac_exeext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  eval "$as_ac_Lib=yes"
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+eval "$as_ac_Lib=no"
-+fi
-+rm -f conftest.err conftest.$ac_objext \
-+      conftest$ac_exeext conftest.$ac_ext
-+LIBS=$ac_check_lib_save_LIBS
-+fi
-+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Lib'}'`" >&5
-+echo "${ECHO_T}`eval echo '${'$as_ac_Lib'}'`" >&6
-+if test `eval echo '${'$as_ac_Lib'}'` = yes; then
- 
--fi
--if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
--  echo "$ac_t""yes" 1>&6
--  
-     CONNECTLIB="${LIB}"
-     break
--  
--else
--  echo "$ac_t""no" 1>&6
-+
- fi
- 
- done
- LIBS="${OLDLIBS} -l${CONNECTLIB}"
- if test "${CONNECTLIB}" = ""; then
--  { echo "configure: error: 'Could not find library containing connect()'" 1>&2; exit 1; }
--fi
-+  { { echo "$as_me:$LINENO: error: 'Could not find library containing connect()'" >&5
-+echo "$as_me: error: 'Could not find library containing connect()'" >&2;}
-+   { (exit 1); exit 1; }; }
-+fi
-+
-+echo "$as_me:$LINENO: checking for socket" >&5
-+echo $ECHO_N "checking for socket... $ECHO_C" >&6
-+if test "${ac_cv_func_socket+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+  cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+/* Define socket to an innocuous variant, in case <limits.h> declares socket.
-+   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-+#define socket innocuous_socket
- 
--echo $ac_n "checking for socket""... $ac_c" 1>&6
--echo "configure:1490: checking for socket" >&5
--if eval "test \"`echo '$''{'ac_cv_func_socket'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
--else
--  cat > conftest.$ac_ext <<EOF
--#line 1495 "configure"
--#include "confdefs.h"
- /* System header to define __stub macros and hopefully few prototypes,
--    which can conflict with char socket(); below.  */
--#include <assert.h>
--/* Override any gcc2 internal prototype to avoid an error.  */
--/* We use char because int might match the return type of a gcc2
--    builtin and then its argument prototype would still apply.  */
--char socket();
-+    which can conflict with char socket (); below.
-+    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-+    <limits.h> exists even on freestanding compilers.  */
- 
--int main() {
-+#ifdef __STDC__
-+# include <limits.h>
-+#else
-+# include <assert.h>
-+#endif
- 
-+#undef socket
-+
-+/* Override any gcc2 internal prototype to avoid an error.  */
-+#ifdef __cplusplus
-+extern "C"
-+{
-+#endif
-+/* We use char because int might match the return type of a gcc2
-+   builtin and then its argument prototype would still apply.  */
-+char socket ();
- /* The GNU C library defines this for functions which it implements
-     to always fail with ENOSYS.  Some functions are actually named
-     something starting with __ and the normal name is an alias.  */
- #if defined (__stub_socket) || defined (__stub___socket)
- choke me
- #else
--socket();
-+char (*f) () = socket;
-+#endif
-+#ifdef __cplusplus
-+}
- #endif
- 
--; return 0; }
--EOF
--if { (eval echo configure:1518: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
--  rm -rf conftest*
--  eval "ac_cv_func_socket=yes"
--else
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
--  rm -rf conftest*
--  eval "ac_cv_func_socket=no"
--fi
--rm -f conftest*
--fi
--
--if eval "test \"`echo '$ac_cv_func_'socket`\" = yes"; then
--  echo "$ac_t""yes" 1>&6
-+int
-+main ()
-+{
-+return f != socket;
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-+  (eval $ac_link) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest$ac_exeext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  ac_cv_func_socket=yes
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+ac_cv_func_socket=no
-+fi
-+rm -f conftest.err conftest.$ac_objext \
-+      conftest$ac_exeext conftest.$ac_ext
-+fi
-+echo "$as_me:$LINENO: result: $ac_cv_func_socket" >&5
-+echo "${ECHO_T}$ac_cv_func_socket" >&6
-+if test $ac_cv_func_socket = yes; then
-   :
- else
--  echo "$ac_t""no" 1>&6
- 
--  echo $ac_n "checking for socket in -lsocket""... $ac_c" 1>&6
--echo "configure:1537: checking for socket in -lsocket" >&5
--ac_lib_var=`echo socket'_'socket | sed 'y%./+-%__p_%'`
--if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
-+
-+echo "$as_me:$LINENO: checking for socket in -lsocket" >&5
-+echo $ECHO_N "checking for socket in -lsocket... $ECHO_C" >&6
-+if test "${ac_cv_lib_socket_socket+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
- else
--  ac_save_LIBS="$LIBS"
-+  ac_check_lib_save_LIBS=$LIBS
- LIBS="-lsocket  $LIBS"
--cat > conftest.$ac_ext <<EOF
--#line 1545 "configure"
--#include "confdefs.h"
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+
- /* Override any gcc2 internal prototype to avoid an error.  */
-+#ifdef __cplusplus
-+extern "C"
-+#endif
- /* We use char because int might match the return type of a gcc2
--    builtin and then its argument prototype would still apply.  */
--char socket();
--
--int main() {
--socket()
--; return 0; }
--EOF
--if { (eval echo configure:1556: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
--  rm -rf conftest*
--  eval "ac_cv_lib_$ac_lib_var=yes"
--else
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
--  rm -rf conftest*
--  eval "ac_cv_lib_$ac_lib_var=no"
--fi
--rm -f conftest*
--LIBS="$ac_save_LIBS"
--
--fi
--if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
--  echo "$ac_t""yes" 1>&6
--    ac_tr_lib=HAVE_LIB`echo socket | sed -e 's/[^a-zA-Z0-9_]/_/g' \
--    -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
--  cat >> confdefs.h <<EOF
--#define $ac_tr_lib 1
--EOF
-+   builtin and then its argument prototype would still apply.  */
-+char socket ();
-+int
-+main ()
-+{
-+socket ();
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-+  (eval $ac_link) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest$ac_exeext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  ac_cv_lib_socket_socket=yes
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+ac_cv_lib_socket_socket=no
-+fi
-+rm -f conftest.err conftest.$ac_objext \
-+      conftest$ac_exeext conftest.$ac_ext
-+LIBS=$ac_check_lib_save_LIBS
-+fi
-+echo "$as_me:$LINENO: result: $ac_cv_lib_socket_socket" >&5
-+echo "${ECHO_T}$ac_cv_lib_socket_socket" >&6
-+if test $ac_cv_lib_socket_socket = yes; then
-+  cat >>confdefs.h <<_ACEOF
-+#define HAVE_LIBSOCKET 1
-+_ACEOF
- 
-   LIBS="-lsocket $LIBS"
- 
- else
--  echo "$ac_t""no" 1>&6
--{ echo "configure: error: "socket function not found"" 1>&2; exit 1; }
-+  { { echo "$as_me:$LINENO: error: \"socket function not found\"" >&5
-+echo "$as_me: error: \"socket function not found\"" >&2;}
-+   { (exit 1); exit 1; }; }
- fi
- 
- fi
- 
- 
--echo $ac_n "checking for inet_aton""... $ac_c" 1>&6
--echo "configure:1588: checking for inet_aton" >&5
--if eval "test \"`echo '$''{'ac_cv_func_inet_aton'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
-+echo "$as_me:$LINENO: checking for inet_aton" >&5
-+echo $ECHO_N "checking for inet_aton... $ECHO_C" >&6
-+if test "${ac_cv_func_inet_aton+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
- else
--  cat > conftest.$ac_ext <<EOF
--#line 1593 "configure"
--#include "confdefs.h"
-+  cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+/* Define inet_aton to an innocuous variant, in case <limits.h> declares inet_aton.
-+   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-+#define inet_aton innocuous_inet_aton
-+
- /* System header to define __stub macros and hopefully few prototypes,
--    which can conflict with char inet_aton(); below.  */
--#include <assert.h>
--/* Override any gcc2 internal prototype to avoid an error.  */
--/* We use char because int might match the return type of a gcc2
--    builtin and then its argument prototype would still apply.  */
--char inet_aton();
-+    which can conflict with char inet_aton (); below.
-+    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-+    <limits.h> exists even on freestanding compilers.  */
- 
--int main() {
-+#ifdef __STDC__
-+# include <limits.h>
-+#else
-+# include <assert.h>
-+#endif
- 
-+#undef inet_aton
-+
-+/* Override any gcc2 internal prototype to avoid an error.  */
-+#ifdef __cplusplus
-+extern "C"
-+{
-+#endif
-+/* We use char because int might match the return type of a gcc2
-+   builtin and then its argument prototype would still apply.  */
-+char inet_aton ();
- /* The GNU C library defines this for functions which it implements
-     to always fail with ENOSYS.  Some functions are actually named
-     something starting with __ and the normal name is an alias.  */
- #if defined (__stub_inet_aton) || defined (__stub___inet_aton)
- choke me
- #else
--inet_aton();
-+char (*f) () = inet_aton;
-+#endif
-+#ifdef __cplusplus
-+}
- #endif
- 
--; return 0; }
--EOF
--if { (eval echo configure:1616: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
--  rm -rf conftest*
--  eval "ac_cv_func_inet_aton=yes"
--else
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
--  rm -rf conftest*
--  eval "ac_cv_func_inet_aton=no"
--fi
--rm -f conftest*
--fi
--
--if eval "test \"`echo '$ac_cv_func_'inet_aton`\" = yes"; then
--  echo "$ac_t""yes" 1>&6
--  cat >> confdefs.h <<\EOF
-+int
-+main ()
-+{
-+return f != inet_aton;
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-+  (eval $ac_link) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest$ac_exeext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  ac_cv_func_inet_aton=yes
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+ac_cv_func_inet_aton=no
-+fi
-+rm -f conftest.err conftest.$ac_objext \
-+      conftest$ac_exeext conftest.$ac_ext
-+fi
-+echo "$as_me:$LINENO: result: $ac_cv_func_inet_aton" >&5
-+echo "${ECHO_T}$ac_cv_func_inet_aton" >&6
-+if test $ac_cv_func_inet_aton = yes; then
-+  cat >>confdefs.h <<\_ACEOF
- #define HAVE_INET_ATON 1
--EOF
-+_ACEOF
- 
- else
--  echo "$ac_t""no" 1>&6
- 
--  echo $ac_n "checking for inet_addr""... $ac_c" 1>&6
--echo "configure:1638: checking for inet_addr" >&5
--if eval "test \"`echo '$''{'ac_cv_func_inet_addr'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
--else
--  cat > conftest.$ac_ext <<EOF
--#line 1643 "configure"
--#include "confdefs.h"
-+  echo "$as_me:$LINENO: checking for inet_addr" >&5
-+echo $ECHO_N "checking for inet_addr... $ECHO_C" >&6
-+if test "${ac_cv_func_inet_addr+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
-+else
-+  cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+/* Define inet_addr to an innocuous variant, in case <limits.h> declares inet_addr.
-+   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-+#define inet_addr innocuous_inet_addr
-+
- /* System header to define __stub macros and hopefully few prototypes,
--    which can conflict with char inet_addr(); below.  */
--#include <assert.h>
--/* Override any gcc2 internal prototype to avoid an error.  */
--/* We use char because int might match the return type of a gcc2
--    builtin and then its argument prototype would still apply.  */
--char inet_addr();
-+    which can conflict with char inet_addr (); below.
-+    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-+    <limits.h> exists even on freestanding compilers.  */
- 
--int main() {
-+#ifdef __STDC__
-+# include <limits.h>
-+#else
-+# include <assert.h>
-+#endif
-+
-+#undef inet_addr
- 
-+/* Override any gcc2 internal prototype to avoid an error.  */
-+#ifdef __cplusplus
-+extern "C"
-+{
-+#endif
-+/* We use char because int might match the return type of a gcc2
-+   builtin and then its argument prototype would still apply.  */
-+char inet_addr ();
- /* The GNU C library defines this for functions which it implements
-     to always fail with ENOSYS.  Some functions are actually named
-     something starting with __ and the normal name is an alias.  */
- #if defined (__stub_inet_addr) || defined (__stub___inet_addr)
- choke me
- #else
--inet_addr();
-+char (*f) () = inet_addr;
-+#endif
-+#ifdef __cplusplus
-+}
- #endif
- 
--; return 0; }
--EOF
--if { (eval echo configure:1666: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
--  rm -rf conftest*
--  eval "ac_cv_func_inet_addr=yes"
--else
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
--  rm -rf conftest*
--  eval "ac_cv_func_inet_addr=no"
--fi
--rm -f conftest*
--fi
--
--if eval "test \"`echo '$ac_cv_func_'inet_addr`\" = yes"; then
--  echo "$ac_t""yes" 1>&6
--  cat >> confdefs.h <<\EOF
-+int
-+main ()
-+{
-+return f != inet_addr;
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-+  (eval $ac_link) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest$ac_exeext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  ac_cv_func_inet_addr=yes
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+ac_cv_func_inet_addr=no
-+fi
-+rm -f conftest.err conftest.$ac_objext \
-+      conftest$ac_exeext conftest.$ac_ext
-+fi
-+echo "$as_me:$LINENO: result: $ac_cv_func_inet_addr" >&5
-+echo "${ECHO_T}$ac_cv_func_inet_addr" >&6
-+if test $ac_cv_func_inet_addr = yes; then
-+  cat >>confdefs.h <<\_ACEOF
- #define HAVE_INET_ADDR 1
--EOF
-+_ACEOF
- 
- else
--  echo "$ac_t""no" 1>&6
- 
--    echo $ac_n "checking for inet_addr in -lnsl""... $ac_c" 1>&6
--echo "configure:1688: checking for inet_addr in -lnsl" >&5
--ac_lib_var=`echo nsl'_'inet_addr | sed 'y%./+-%__p_%'`
--if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
-+    echo "$as_me:$LINENO: checking for inet_addr in -lnsl" >&5
-+echo $ECHO_N "checking for inet_addr in -lnsl... $ECHO_C" >&6
-+if test "${ac_cv_lib_nsl_inet_addr+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
- else
--  ac_save_LIBS="$LIBS"
--LIBS="-lnsl  $LIBS"
--cat > conftest.$ac_ext <<EOF
--#line 1696 "configure"
--#include "confdefs.h"
--/* Override any gcc2 internal prototype to avoid an error.  */
--/* We use char because int might match the return type of a gcc2
--    builtin and then its argument prototype would still apply.  */
--char inet_addr();
--
--int main() {
--inet_addr()
--; return 0; }
--EOF
--if { (eval echo configure:1707: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
--  rm -rf conftest*
--  eval "ac_cv_lib_$ac_lib_var=yes"
--else
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
--  rm -rf conftest*
--  eval "ac_cv_lib_$ac_lib_var=no"
--fi
--rm -f conftest*
--LIBS="$ac_save_LIBS"
-+  ac_check_lib_save_LIBS=$LIBS
-+LIBS="-lnsl  $LIBS"
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
- 
--fi
--if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
--  echo "$ac_t""yes" 1>&6
--   cat >> confdefs.h <<\EOF
-+/* Override any gcc2 internal prototype to avoid an error.  */
-+#ifdef __cplusplus
-+extern "C"
-+#endif
-+/* We use char because int might match the return type of a gcc2
-+   builtin and then its argument prototype would still apply.  */
-+char inet_addr ();
-+int
-+main ()
-+{
-+inet_addr ();
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-+  (eval $ac_link) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest$ac_exeext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  ac_cv_lib_nsl_inet_addr=yes
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+ac_cv_lib_nsl_inet_addr=no
-+fi
-+rm -f conftest.err conftest.$ac_objext \
-+      conftest$ac_exeext conftest.$ac_ext
-+LIBS=$ac_check_lib_save_LIBS
-+fi
-+echo "$as_me:$LINENO: result: $ac_cv_lib_nsl_inet_addr" >&5
-+echo "${ECHO_T}$ac_cv_lib_nsl_inet_addr" >&6
-+if test $ac_cv_lib_nsl_inet_addr = yes; then
-+   cat >>confdefs.h <<\_ACEOF
- #define HAVE_INET_ADDR 1
--EOF
-+_ACEOF
- 
--                                   LIBS="${LIBS} -lnsl" 
-+                                   LIBS="${LIBS} -lnsl"
- else
--  echo "$ac_t""no" 1>&6
- 
--		{ echo "configure: error: "Neither inet_aton or inet_addr present"" 1>&2; exit 1; }
-+		{ { echo "$as_me:$LINENO: error: \"Neither inet_aton or inet_addr present\"" >&5
-+echo "$as_me: error: \"Neither inet_aton or inet_addr present\"" >&2;}
-+   { (exit 1); exit 1; }; }
- fi
- 
- fi
- 
- fi
- 
- 
--echo $ac_n "checking for gethostbyname""... $ac_c" 1>&6
--echo "configure:1739: checking for gethostbyname" >&5
--if eval "test \"`echo '$''{'ac_cv_func_gethostbyname'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
-+echo "$as_me:$LINENO: checking for gethostbyname" >&5
-+echo $ECHO_N "checking for gethostbyname... $ECHO_C" >&6
-+if test "${ac_cv_func_gethostbyname+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
- else
--  cat > conftest.$ac_ext <<EOF
--#line 1744 "configure"
--#include "confdefs.h"
-+  cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+/* Define gethostbyname to an innocuous variant, in case <limits.h> declares gethostbyname.
-+   For example, HP-UX 11i <limits.h> declares gettimeofday.  */
-+#define gethostbyname innocuous_gethostbyname
-+
- /* System header to define __stub macros and hopefully few prototypes,
--    which can conflict with char gethostbyname(); below.  */
--#include <assert.h>
--/* Override any gcc2 internal prototype to avoid an error.  */
--/* We use char because int might match the return type of a gcc2
--    builtin and then its argument prototype would still apply.  */
--char gethostbyname();
-+    which can conflict with char gethostbyname (); below.
-+    Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-+    <limits.h> exists even on freestanding compilers.  */
- 
--int main() {
-+#ifdef __STDC__
-+# include <limits.h>
-+#else
-+# include <assert.h>
-+#endif
- 
-+#undef gethostbyname
-+
-+/* Override any gcc2 internal prototype to avoid an error.  */
-+#ifdef __cplusplus
-+extern "C"
-+{
-+#endif
-+/* We use char because int might match the return type of a gcc2
-+   builtin and then its argument prototype would still apply.  */
-+char gethostbyname ();
- /* The GNU C library defines this for functions which it implements
-     to always fail with ENOSYS.  Some functions are actually named
-     something starting with __ and the normal name is an alias.  */
- #if defined (__stub_gethostbyname) || defined (__stub___gethostbyname)
- choke me
- #else
--gethostbyname();
-+char (*f) () = gethostbyname;
-+#endif
-+#ifdef __cplusplus
-+}
- #endif
- 
--; return 0; }
--EOF
--if { (eval echo configure:1767: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
--  rm -rf conftest*
--  eval "ac_cv_func_gethostbyname=yes"
--else
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
--  rm -rf conftest*
--  eval "ac_cv_func_gethostbyname=no"
--fi
--rm -f conftest*
--fi
--
--if eval "test \"`echo '$ac_cv_func_'gethostbyname`\" = yes"; then
--  echo "$ac_t""yes" 1>&6
--  cat >> confdefs.h <<\EOF
-+int
-+main ()
-+{
-+return f != gethostbyname;
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-+  (eval $ac_link) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest$ac_exeext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  ac_cv_func_gethostbyname=yes
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+ac_cv_func_gethostbyname=no
-+fi
-+rm -f conftest.err conftest.$ac_objext \
-+      conftest$ac_exeext conftest.$ac_ext
-+fi
-+echo "$as_me:$LINENO: result: $ac_cv_func_gethostbyname" >&5
-+echo "${ECHO_T}$ac_cv_func_gethostbyname" >&6
-+if test $ac_cv_func_gethostbyname = yes; then
-+  cat >>confdefs.h <<\_ACEOF
- #define HAVE_GETHOSTBYNAME 1
--EOF
-+_ACEOF
- 
- else
--  echo "$ac_t""no" 1>&6
- 
--  echo $ac_n "checking for gethostbyname in -lxnet""... $ac_c" 1>&6
--echo "configure:1789: checking for gethostbyname in -lxnet" >&5
--ac_lib_var=`echo xnet'_'gethostbyname | sed 'y%./+-%__p_%'`
--if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
-+  echo "$as_me:$LINENO: checking for gethostbyname in -lxnet" >&5
-+echo $ECHO_N "checking for gethostbyname in -lxnet... $ECHO_C" >&6
-+if test "${ac_cv_lib_xnet_gethostbyname+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
- else
--  ac_save_LIBS="$LIBS"
-+  ac_check_lib_save_LIBS=$LIBS
- LIBS="-lxnet  $LIBS"
--cat > conftest.$ac_ext <<EOF
--#line 1797 "configure"
--#include "confdefs.h"
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+
- /* Override any gcc2 internal prototype to avoid an error.  */
-+#ifdef __cplusplus
-+extern "C"
-+#endif
- /* We use char because int might match the return type of a gcc2
--    builtin and then its argument prototype would still apply.  */
--char gethostbyname();
--
--int main() {
--gethostbyname()
--; return 0; }
--EOF
--if { (eval echo configure:1808: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
--  rm -rf conftest*
--  eval "ac_cv_lib_$ac_lib_var=yes"
--else
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
--  rm -rf conftest*
--  eval "ac_cv_lib_$ac_lib_var=no"
--fi
--rm -f conftest*
--LIBS="$ac_save_LIBS"
--
--fi
--if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
--  echo "$ac_t""yes" 1>&6
--  cat >> confdefs.h <<\EOF
-+   builtin and then its argument prototype would still apply.  */
-+char gethostbyname ();
-+int
-+main ()
-+{
-+gethostbyname ();
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-+  (eval $ac_link) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest$ac_exeext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  ac_cv_lib_xnet_gethostbyname=yes
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+ac_cv_lib_xnet_gethostbyname=no
-+fi
-+rm -f conftest.err conftest.$ac_objext \
-+      conftest$ac_exeext conftest.$ac_ext
-+LIBS=$ac_check_lib_save_LIBS
-+fi
-+echo "$as_me:$LINENO: result: $ac_cv_lib_xnet_gethostbyname" >&5
-+echo "${ECHO_T}$ac_cv_lib_xnet_gethostbyname" >&6
-+if test $ac_cv_lib_xnet_gethostbyname = yes; then
-+  cat >>confdefs.h <<\_ACEOF
- #define HAVE_GETHOSTBYNAME 1
--EOF
-+_ACEOF
- 
- else
--  echo "$ac_t""no" 1>&6
- 
--	       { echo "configure: error: "gethostbyname not found, name lookups in " \
--		      "tsocks and inspectsocks disabled"" 1>&2; exit 1; }
-+	       { { echo "$as_me:$LINENO: error: \"gethostbyname not found, name lookups in \" \
-+		      \"tsocks and inspectsocks disabled\"" >&5
-+echo "$as_me: error: \"gethostbyname not found, name lookups in \" \
-+		      \"tsocks and inspectsocks disabled\"" >&2;}
-+   { (exit 1); exit 1; }; }
- fi
- 
- fi
- 
- 
- SIMPLELIBS=${LIBS}
- LIBS=
- 
--echo $ac_n "checking for dlsym in -ldl""... $ac_c" 1>&6
--echo "configure:1841: checking for dlsym in -ldl" >&5
--ac_lib_var=`echo dl'_'dlsym | sed 'y%./+-%__p_%'`
--if eval "test \"`echo '$''{'ac_cv_lib_$ac_lib_var'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
-+
-+echo "$as_me:$LINENO: checking for dlsym in -ldl" >&5
-+echo $ECHO_N "checking for dlsym in -ldl... $ECHO_C" >&6
-+if test "${ac_cv_lib_dl_dlsym+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
- else
--  ac_save_LIBS="$LIBS"
-+  ac_check_lib_save_LIBS=$LIBS
- LIBS="-ldl  $LIBS"
--cat > conftest.$ac_ext <<EOF
--#line 1849 "configure"
--#include "confdefs.h"
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
-+
- /* Override any gcc2 internal prototype to avoid an error.  */
-+#ifdef __cplusplus
-+extern "C"
-+#endif
- /* We use char because int might match the return type of a gcc2
--    builtin and then its argument prototype would still apply.  */
--char dlsym();
--
--int main() {
--dlsym()
--; return 0; }
--EOF
--if { (eval echo configure:1860: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
--  rm -rf conftest*
--  eval "ac_cv_lib_$ac_lib_var=yes"
--else
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
--  rm -rf conftest*
--  eval "ac_cv_lib_$ac_lib_var=no"
--fi
--rm -f conftest*
--LIBS="$ac_save_LIBS"
--
--fi
--if eval "test \"`echo '$ac_cv_lib_'$ac_lib_var`\" = yes"; then
--  echo "$ac_t""yes" 1>&6
--    ac_tr_lib=HAVE_LIB`echo dl | sed -e 's/[^a-zA-Z0-9_]/_/g' \
--    -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/'`
--  cat >> confdefs.h <<EOF
--#define $ac_tr_lib 1
--EOF
-+   builtin and then its argument prototype would still apply.  */
-+char dlsym ();
-+int
-+main ()
-+{
-+dlsym ();
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext conftest$ac_exeext
-+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
-+  (eval $ac_link) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest$ac_exeext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-+  ac_cv_lib_dl_dlsym=yes
-+else
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
-+ac_cv_lib_dl_dlsym=no
-+fi
-+rm -f conftest.err conftest.$ac_objext \
-+      conftest$ac_exeext conftest.$ac_ext
-+LIBS=$ac_check_lib_save_LIBS
-+fi
-+echo "$as_me:$LINENO: result: $ac_cv_lib_dl_dlsym" >&5
-+echo "${ECHO_T}$ac_cv_lib_dl_dlsym" >&6
-+if test $ac_cv_lib_dl_dlsym = yes; then
-+  cat >>confdefs.h <<_ACEOF
-+#define HAVE_LIBDL 1
-+_ACEOF
- 
-   LIBS="-ldl $LIBS"
- 
- else
--  echo "$ac_t""no" 1>&6
--{ echo "configure: error: "libdl is required"" 1>&2; exit 1; }
-+  { { echo "$as_me:$LINENO: error: \"libdl is required\"" >&5
-+echo "$as_me: error: \"libdl is required\"" >&2;}
-+   { (exit 1); exit 1; }; }
- fi
- 
- 
--echo $ac_n "checking "for RTLD_NEXT from dlfcn.h"""... $ac_c" 1>&6
--echo "configure:1890: checking "for RTLD_NEXT from dlfcn.h"" >&5
--cat > conftest.$ac_ext <<EOF
--#line 1892 "configure"
--#include "confdefs.h"
-+echo "$as_me:$LINENO: checking for RTLD_NEXT from dlfcn.h" >&5
-+echo $ECHO_N "checking for RTLD_NEXT from dlfcn.h... $ECHO_C" >&6
-+cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
- 
-  #include <dlfcn.h>
-  #ifdef RTLD_NEXT
- 	yes
-  #endif
- 
--EOF
-+_ACEOF
- if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
--  egrep "yes" >/dev/null 2>&1; then
--  rm -rf conftest*
--  
--  echo "$ac_t""yes" 1>&6
-+  $EGREP "yes" >/dev/null 2>&1; then
-+
-+  echo "$as_me:$LINENO: result: yes" >&5
-+echo "${ECHO_T}yes" >&6
- 
- else
--  rm -rf conftest*
--  
--  echo "$ac_t""no" 1>&6
--  echo $ac_n "checking "for RTLD_NEXT from dlfcn.h with _GNU_SOURCE"""... $ac_c" 1>&6
--echo "configure:1912: checking "for RTLD_NEXT from dlfcn.h with _GNU_SOURCE"" >&5
--  cat > conftest.$ac_ext <<EOF
--#line 1914 "configure"
--#include "confdefs.h"
-+
-+  echo "$as_me:$LINENO: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+  echo "$as_me:$LINENO: checking for RTLD_NEXT from dlfcn.h with _GNU_SOURCE" >&5
-+echo $ECHO_N "checking for RTLD_NEXT from dlfcn.h with _GNU_SOURCE... $ECHO_C" >&6
-+  cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
- 
-    #define _GNU_SOURCE
-    #include <dlfcn.h>
-    #ifdef RTLD_NEXT
- 	yes
-    #endif
--  
--EOF
-+
-+_ACEOF
- if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
--  egrep "yes" >/dev/null 2>&1; then
--  rm -rf conftest*
--  
--    echo "$ac_t""yes" 1>&6
--    cat >> confdefs.h <<\EOF
-+  $EGREP "yes" >/dev/null 2>&1; then
-+
-+    echo "$as_me:$LINENO: result: yes" >&5
-+echo "${ECHO_T}yes" >&6
-+    cat >>confdefs.h <<\_ACEOF
- #define USE_GNU_SOURCE 1
--EOF
-+_ACEOF
-+
- 
--  
- else
--  rm -rf conftest*
--  
--    echo "$ac_t""no" 1>&6
--    cat >> confdefs.h <<\EOF
-+
-+    echo "$as_me:$LINENO: result: no" >&5
-+echo "${ECHO_T}no" >&6
-+    cat >>confdefs.h <<\_ACEOF
- #define USE_OLD_DLSYM 1
--EOF
-+_ACEOF
- 
-     oldmethod="yes"
--  
-+
- fi
- rm -f conftest*
--    
-+
- 
- fi
- rm -f conftest*
- 
- 
- if test "${enable_socksdns}" = "yes"; then
--  cat >> confdefs.h <<\EOF
-+  cat >>confdefs.h <<\_ACEOF
- #define USE_SOCKS_DNS 1
--EOF
-+_ACEOF
-+
-+fi
- 
-+echo "$as_me:$LINENO: checking whether to enable tordns" >&5
-+echo $ECHO_N "checking whether to enable tordns... $ECHO_C" >&6
-+if test "x${enable_tordns}" = "x"; then
-+  cat >>confdefs.h <<\_ACEOF
-+#define USE_TOR_DNS 1
-+_ACEOF
-+
-+  DEADPOOL_O="\${DEADPOOL}.o"
-+  echo "$as_me:$LINENO: result: yes" >&5
-+echo "${ECHO_T}yes" >&6
-+else
-+  DEADPOOL_O=""
-+  echo "$as_me:$LINENO: result: no" >&5
-+echo "${ECHO_T}no" >&6
- fi
- 
-+
- if test "x${enable_envconf}" = "x"; then
--  cat >> confdefs.h <<\EOF
-+  cat >>confdefs.h <<\_ACEOF
- #define ALLOW_ENV_CONFIG 1
--EOF
-+_ACEOF
- 
- fi
- 
- if test "${enable_oldmethod}" = "yes"; then
--  cat >> confdefs.h <<\EOF
-+  cat >>confdefs.h <<\_ACEOF
- #define USE_OLD_DLSYM 1
--EOF
-+_ACEOF
- 
-   oldmethod="yes"
- fi
- 
- if test "x${enable_debug}" = "x"; then
--  cat >> confdefs.h <<\EOF
-+  cat >>confdefs.h <<\_ACEOF
- #define ALLOW_MSG_OUTPUT 1
--EOF
-+_ACEOF
- 
- fi
- 
--if test "x${enable_hostnames}" = "x"; then
--  cat >> confdefs.h <<\EOF
-+if test "x${enable_hostnames}" = "xyes"; then
-+  cat >>confdefs.h <<\_ACEOF
- #define HOSTNAMES 1
--EOF
-+_ACEOF
- 
- fi
- 
- if test "${enable_socksdns}" = "yes" -a \
--        "x${enable_hostnames}" = "x" ; then
--  { echo "configure: error: "--enable-socksdns is not valid without --disable-hostnames"" 1>&2; exit 1; }
-+        "x${enable_hostnames}" = "xyes" ; then
-+  { { echo "$as_me:$LINENO: error: \"--enable-socksdns is not valid with --enable-hostnames\"" >&5
-+echo "$as_me: error: \"--enable-socksdns is not valid with --enable-hostnames\"" >&2;}
-+   { (exit 1); exit 1; }; }
-+fi
-+
-+if test "x${enable_tordns}" = "x" -a \
-+        "x${enable_hostnames}" = "xyes" ; then
-+  { { echo "$as_me:$LINENO: error: \"--enable-tordns is not valid with --enable-hostnames\"" >&5
-+echo "$as_me: error: \"--enable-tordns is not valid with --enable-hostnames\"" >&2;}
-+   { (exit 1); exit 1; }; }
- fi
- 
--if test "${oldmethod}" = "yes"; then 
--      
-+if test "${oldmethod}" = "yes"; then
-+
-       # Extract the first word of "find", so it can be a program name with args.
- set dummy find; ac_word=$2
--echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:1998: checking for $ac_word" >&5
--if eval "test \"`echo '$''{'ac_cv_prog_FIND'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
-+echo "$as_me:$LINENO: checking for $ac_word" >&5
-+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-+if test "${ac_cv_prog_FIND+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
- else
-   if test -n "$FIND"; then
-   ac_cv_prog_FIND="$FIND" # Let the user override the test.
- else
--  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
--  ac_dummy="$PATH"
--  for ac_dir in $ac_dummy; do
--    test -z "$ac_dir" && ac_dir=.
--    if test -f $ac_dir/$ac_word; then
--      ac_cv_prog_FIND="find"
--      break
--    fi
--  done
--  IFS="$ac_save_ifs"
-+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-+for as_dir in $PATH
-+do
-+  IFS=$as_save_IFS
-+  test -z "$as_dir" && as_dir=.
-+  for ac_exec_ext in '' $ac_executable_extensions; do
-+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-+    ac_cv_prog_FIND="find"
-+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-+    break 2
-+  fi
-+done
-+done
-+
- fi
- fi
--FIND="$ac_cv_prog_FIND"
-+FIND=$ac_cv_prog_FIND
- if test -n "$FIND"; then
--  echo "$ac_t""$FIND" 1>&6
-+  echo "$as_me:$LINENO: result: $FIND" >&5
-+echo "${ECHO_T}$FIND" >&6
- else
--  echo "$ac_t""no" 1>&6
-+  echo "$as_me:$LINENO: result: no" >&5
-+echo "${ECHO_T}no" >&6
- fi
- 
-   if test "${FIND}" = ""; then
--    { echo "configure: error: 'find not found in path'" 1>&2; exit 1; }
-+    { { echo "$as_me:$LINENO: error: 'find not found in path'" >&5
-+echo "$as_me: error: 'find not found in path'" >&2;}
-+   { (exit 1); exit 1; }; }
-   fi
- 
-       # Extract the first word of "tail", so it can be a program name with args.
- set dummy tail; ac_word=$2
--echo $ac_n "checking for $ac_word""... $ac_c" 1>&6
--echo "configure:2031: checking for $ac_word" >&5
--if eval "test \"`echo '$''{'ac_cv_prog_TAIL'+set}'`\" = set"; then
--  echo $ac_n "(cached) $ac_c" 1>&6
-+echo "$as_me:$LINENO: checking for $ac_word" >&5
-+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
-+if test "${ac_cv_prog_TAIL+set}" = set; then
-+  echo $ECHO_N "(cached) $ECHO_C" >&6
- else
-   if test -n "$TAIL"; then
-   ac_cv_prog_TAIL="$TAIL" # Let the user override the test.
- else
--  IFS="${IFS= 	}"; ac_save_ifs="$IFS"; IFS=":"
--  ac_dummy="$PATH"
--  for ac_dir in $ac_dummy; do
--    test -z "$ac_dir" && ac_dir=.
--    if test -f $ac_dir/$ac_word; then
--      ac_cv_prog_TAIL="tail"
--      break
--    fi
--  done
--  IFS="$ac_save_ifs"
-+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-+for as_dir in $PATH
-+do
-+  IFS=$as_save_IFS
-+  test -z "$as_dir" && as_dir=.
-+  for ac_exec_ext in '' $ac_executable_extensions; do
-+  if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-+    ac_cv_prog_TAIL="tail"
-+    echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
-+    break 2
-+  fi
-+done
-+done
-+
- fi
- fi
--TAIL="$ac_cv_prog_TAIL"
-+TAIL=$ac_cv_prog_TAIL
- if test -n "$TAIL"; then
--  echo "$ac_t""$TAIL" 1>&6
-+  echo "$as_me:$LINENO: result: $TAIL" >&5
-+echo "${ECHO_T}$TAIL" >&6
- else
--  echo "$ac_t""no" 1>&6
-+  echo "$as_me:$LINENO: result: no" >&5
-+echo "${ECHO_T}no" >&6
- fi
- 
-   if test "${TAIL}" = ""; then
--    { echo "configure: error: 'tail not found in path'" 1>&2; exit 1; }
-+    { { echo "$as_me:$LINENO: error: 'tail not found in path'" >&5
-+echo "$as_me: error: 'tail not found in path'" >&2;}
-+   { (exit 1); exit 1; }; }
-   fi
- 
--    echo $ac_n "checking "location of lib${CONNECTLIB}.so"""... $ac_c" 1>&6
--echo "configure:2062: checking "location of lib${CONNECTLIB}.so"" >&5
-+    echo "$as_me:$LINENO: checking location of lib${CONNECTLIB}.so" >&5
-+echo $ECHO_N "checking location of lib${CONNECTLIB}.so... $ECHO_C" >&6
-   LIBCONNECT=
-   for DIR in '/lib' '/usr/lib'; do
-     if test "${LIBCONNECT}" = ""; then
-       LIBCONNECT=`$FIND $DIR -name "lib${CONNECTLIB}.so.?" 2>/dev/null | $TAIL -1`
-     fi
-   done
- 
--  cat >> confdefs.h <<EOF
-+  cat >>confdefs.h <<_ACEOF
- #define LIBCONNECT "${LIBCONNECT}"
--EOF
-+_ACEOF
- 
-   if test "${LIBCONNECT}" = ""; then
--     { echo "configure: error: "not found!"" 1>&2; exit 1; }
-+     { { echo "$as_me:$LINENO: error: \"not found!\"" >&5
-+echo "$as_me: error: \"not found!\"" >&2;}
-+   { (exit 1); exit 1; }; }
-   fi
- 
--  echo "$ac_t""$LIBCONNECT" 1>&6
-+  echo "$as_me:$LINENO: result: $LIBCONNECT" >&5
-+echo "${ECHO_T}$LIBCONNECT" >&6
- 
--    echo $ac_n "checking "location of libc.so"""... $ac_c" 1>&6
--echo "configure:2081: checking "location of libc.so"" >&5
-+    echo "$as_me:$LINENO: checking location of libc.so" >&5
-+echo $ECHO_N "checking location of libc.so... $ECHO_C" >&6
-   LIBC=
-   for DIR in '/lib' '/usr/lib'; do
-     if test "${LIBC}" = ""; then
-       LIBC=`$FIND $DIR -name "libc.so.?" 2>/dev/null | $TAIL -1`
-     fi
-   done
- 
--  cat >> confdefs.h <<EOF
-+  cat >>confdefs.h <<_ACEOF
- #define LIBC "${LIBC}"
--EOF
-+_ACEOF
- 
-   if test "${LIBC}" = ""; then
--     { echo "configure: error: "not found!"" 1>&2; exit 1; }
-+     { { echo "$as_me:$LINENO: error: \"not found!\"" >&5
-+echo "$as_me: error: \"not found!\"" >&2;}
-+   { (exit 1); exit 1; }; }
-   fi
- 
--  echo "$ac_t""$LIBC" 1>&6
-+  echo "$as_me:$LINENO: result: $LIBC" >&5
-+echo "${ECHO_T}$LIBC" >&6
- fi
- 
--echo $ac_n "checking for correct select prototype""... $ac_c" 1>&6
--echo "configure:2101: checking for correct select prototype" >&5
-+echo "$as_me:$LINENO: checking for correct select prototype" >&5
-+echo $ECHO_N "checking for correct select prototype... $ECHO_C" >&6
- PROTO=
--for testproto in 'int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout' 
-+for testproto in 'int n, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout'
- do
-   if test "${PROTO}" = ""; then
--    cat > conftest.$ac_ext <<EOF
--#line 2107 "configure"
--#include "confdefs.h"
-+    cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
- 
-       #include <sys/time.h>
-       #include <sys/types.h>
-       #include <unistd.h>
-       int select($testproto);
--    
--int main() {
- 
--; return 0; }
--EOF
--if { (eval echo configure:2119: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
--  rm -rf conftest*
-+int
-+main ()
-+{
-+
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+  (eval $ac_compile) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest.$ac_objext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-   PROTO="$testproto";
- else
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
- fi
--rm -f conftest*
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-   fi
- done
- if test "${PROTO}" = ""; then
--  { echo "configure: error: "no match found!"" 1>&2; exit 1; }
--fi
--echo "$ac_t""select(${PROTO})" 1>&6
--cat >> confdefs.h <<EOF
-+  { { echo "$as_me:$LINENO: error: \"no match found!\"" >&5
-+echo "$as_me: error: \"no match found!\"" >&2;}
-+   { (exit 1); exit 1; }; }
-+fi
-+echo "$as_me:$LINENO: result: select(${PROTO})" >&5
-+echo "${ECHO_T}select(${PROTO})" >&6
-+cat >>confdefs.h <<_ACEOF
- #define SELECT_SIGNATURE ${PROTO}
--EOF
-+_ACEOF
- 
- 
--echo $ac_n "checking for correct connect prototype""... $ac_c" 1>&6
--echo "configure:2139: checking for correct connect prototype" >&5
-+echo "$as_me:$LINENO: checking for correct connect prototype" >&5
-+echo $ECHO_N "checking for correct connect prototype... $ECHO_C" >&6
- PROTO=
- PROTO1='int __fd, const struct sockaddr * __addr, int len'
- PROTO2='int __fd, const struct sockaddr_in * __addr, socklen_t __len'
- PROTO3='int __fd, struct sockaddr * __addr, int __len'
- PROTO4='int __fd, const struct sockaddr * __addr, socklen_t __len'
- for testproto in "${PROTO1}" \
-                  "${PROTO2}" \
-                  "${PROTO3}" \
--                 "${PROTO4}" 
-+                 "${PROTO4}"
- do
-   if test "${PROTO}" = ""; then
--    cat > conftest.$ac_ext <<EOF
--#line 2152 "configure"
--#include "confdefs.h"
-+    cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
- 
-       #include <sys/socket.h>
-       int connect($testproto);
--    
--int main() {
- 
--; return 0; }
--EOF
--if { (eval echo configure:2162: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
--  rm -rf conftest*
-+int
-+main ()
-+{
-+
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+  (eval $ac_compile) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest.$ac_objext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-   PROTO="$testproto";
- else
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
- fi
--rm -f conftest*
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-   fi
- done
- if test "${PROTO}" = ""; then
--  { echo "configure: error: "no match found!"" 1>&2; exit 1; }
--fi
--echo "$ac_t""connect(${PROTO})" 1>&6
--cat >> confdefs.h <<EOF
-+  { { echo "$as_me:$LINENO: error: \"no match found!\"" >&5
-+echo "$as_me: error: \"no match found!\"" >&2;}
-+   { (exit 1); exit 1; }; }
-+fi
-+echo "$as_me:$LINENO: result: connect(${PROTO})" >&5
-+echo "${ECHO_T}connect(${PROTO})" >&6
-+cat >>confdefs.h <<_ACEOF
- #define CONNECT_SIGNATURE ${PROTO}
--EOF
-+_ACEOF
- 
- 
- SOCKETARG="struct sockaddr *"
- case "${PROTO}" in
-    *sockaddr_in*)
-       SOCKETARG="struct sockaddr_in *"
-       ;;
- esac
--cat >> confdefs.h <<EOF
-+cat >>confdefs.h <<_ACEOF
- #define CONNECT_SOCKARG ${SOCKETARG}
--EOF
-+_ACEOF
- 
- 
--echo $ac_n "checking for correct close prototype""... $ac_c" 1>&6
--echo "configure:2193: checking for correct close prototype" >&5
-+echo "$as_me:$LINENO: checking for correct close prototype" >&5
-+echo $ECHO_N "checking for correct close prototype... $ECHO_C" >&6
- PROTO=
- PROTO1='int fd'
--for testproto in "${PROTO1}" 
-+for testproto in "${PROTO1}"
- do
-   if test "${PROTO}" = ""; then
--    cat > conftest.$ac_ext <<EOF
--#line 2200 "configure"
--#include "confdefs.h"
-+    cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
- 
-       #include <stdlib.h>
-       int close($testproto);
--    
--int main() {
- 
--; return 0; }
--EOF
--if { (eval echo configure:2210: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
--  rm -rf conftest*
-+int
-+main ()
-+{
-+
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+  (eval $ac_compile) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest.$ac_objext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-   PROTO="$testproto";
- else
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
- fi
--rm -f conftest*
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-   fi
- done
- if test "${PROTO}" = ""; then
--  { echo "configure: error: "no match found!"" 1>&2; exit 1; }
--fi
--echo "$ac_t""close(${PROTO})" 1>&6
--cat >> confdefs.h <<EOF
-+  { { echo "$as_me:$LINENO: error: \"no match found!\"" >&5
-+echo "$as_me: error: \"no match found!\"" >&2;}
-+   { (exit 1); exit 1; }; }
-+fi
-+echo "$as_me:$LINENO: result: close(${PROTO})" >&5
-+echo "${ECHO_T}close(${PROTO})" >&6
-+cat >>confdefs.h <<_ACEOF
- #define CLOSE_SIGNATURE ${PROTO}
--EOF
-+_ACEOF
- 
- 
--echo $ac_n "checking for correct poll prototype""... $ac_c" 1>&6
--echo "configure:2230: checking for correct poll prototype" >&5
-+echo "$as_me:$LINENO: checking for correct poll prototype" >&5
-+echo $ECHO_N "checking for correct poll prototype... $ECHO_C" >&6
- PROTO=
--for testproto in 'struct pollfd *ufds, unsigned long nfds, int timeout' 
-+for testproto in 'struct pollfd *ufds, unsigned long nfds, int timeout'
- do
-   if test "${PROTO}" = ""; then
--    cat > conftest.$ac_ext <<EOF
--#line 2236 "configure"
--#include "confdefs.h"
-+    cat >conftest.$ac_ext <<_ACEOF
-+/* confdefs.h.  */
-+_ACEOF
-+cat confdefs.h >>conftest.$ac_ext
-+cat >>conftest.$ac_ext <<_ACEOF
-+/* end confdefs.h.  */
- 
-       #include <sys/poll.h>
-       int poll($testproto);
--    
--int main() {
- 
--; return 0; }
--EOF
--if { (eval echo configure:2246: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
--  rm -rf conftest*
-+int
-+main ()
-+{
-+
-+  ;
-+  return 0;
-+}
-+_ACEOF
-+rm -f conftest.$ac_objext
-+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
-+  (eval $ac_compile) 2>conftest.er1
-+  ac_status=$?
-+  grep -v '^ *+' conftest.er1 >conftest.err
-+  rm -f conftest.er1
-+  cat conftest.err >&5
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); } &&
-+	 { ac_try='test -z "$ac_c_werror_flag"			 || test ! -s conftest.err'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; } &&
-+	 { ac_try='test -s conftest.$ac_objext'
-+  { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
-+  (eval $ac_try) 2>&5
-+  ac_status=$?
-+  echo "$as_me:$LINENO: \$? = $ac_status" >&5
-+  (exit $ac_status); }; }; then
-   PROTO="$testproto";
- else
--  echo "configure: failed program was:" >&5
--  cat conftest.$ac_ext >&5
-+  echo "$as_me: failed program was:" >&5
-+sed 's/^/| /' conftest.$ac_ext >&5
-+
- fi
--rm -f conftest*
-+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
-   fi
- done
- if test "${PROTO}" = ""; then
--  { echo "configure: error: "no match found!"" 1>&2; exit 1; }
--fi
--echo "$ac_t""poll(${PROTO})" 1>&6
--cat >> confdefs.h <<EOF
-+  { { echo "$as_me:$LINENO: error: \"no match found!\"" >&5
-+echo "$as_me: error: \"no match found!\"" >&2;}
-+   { (exit 1); exit 1; }; }
-+fi
-+echo "$as_me:$LINENO: result: poll(${PROTO})" >&5
-+echo "${ECHO_T}poll(${PROTO})" >&6
-+cat >>confdefs.h <<_ACEOF
- #define POLL_SIGNATURE ${PROTO}
--EOF
-+_ACEOF
-+
-+
-+PROTO="const char *name"
-+cat >>confdefs.h <<_ACEOF
-+#define GETHOSTBYNAME_SIGNATURE ${PROTO}
-+_ACEOF
-+
-+
-+PROTO="const char *node, const char *service, void *hints, void *res"
-+cat >>confdefs.h <<_ACEOF
-+#define GETADDRINFO_SIGNATURE ${PROTO}
-+_ACEOF
-+
-+
-+PROTO="const char *name, int af, int flags, int *error_num"
-+cat >>confdefs.h <<_ACEOF
-+#define GETIPNODEBYNAME_SIGNATURE ${PROTO}
-+_ACEOF
- 
- 
- SPECIALLIBS=${LIBS}
- 
- LIBS=${SIMPLELIBS}
- 
--trap '' 1 2 15
--cat > confcache <<\EOF
-+          ac_config_files="$ac_config_files Makefile"
-+cat >confcache <<\_ACEOF
- # This file is a shell script that caches the results of configure
- # tests run on this system so they can be shared between configure
--# scripts and configure runs.  It is not useful on other systems.
--# If it contains results you don't want to keep, you may remove or edit it.
-+# scripts and configure runs, see configure's option --config-cache.
-+# It is not useful on other systems.  If it contains results you don't
-+# want to keep, you may remove or edit it.
- #
--# By default, configure uses ./config.cache as the cache file,
--# creating it if it does not exist already.  You can give configure
--# the --cache-file=FILE option to use a different cache file; that is
--# what configure does when it calls configure scripts in
--# subdirectories, so they share the cache.
--# Giving --cache-file=/dev/null disables caching, for debugging configure.
--# config.status only pays attention to the cache file if you give it the
--# --recheck option to rerun configure.
-+# config.status only pays attention to the cache file if you give it
-+# the --recheck option to rerun configure.
- #
--EOF
-+# `ac_cv_env_foo' variables (set or unset) will be overridden when
-+# loading this file, other *unset* `ac_cv_foo' will be assigned the
-+# following values.
-+
-+_ACEOF
-+
- # The following way of writing the cache mishandles newlines in values,
- # but we know of no workaround that is simple, portable, and efficient.
- # So, don't put newlines in cache variables' values.
- # Ultrix sh set writes to stderr and can't be redirected directly,
- # and sets the high bit in the cache file unless we assign to the vars.
--(set) 2>&1 |
--  case `(ac_space=' '; set | grep ac_space) 2>&1` in
--  *ac_space=\ *)
--    # `set' does not quote correctly, so add quotes (double-quote substitution
--    # turns \\\\ into \\, and sed turns \\ into \).
--    sed -n \
--      -e "s/'/'\\\\''/g" \
--      -e "s/^\\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\\)=\\(.*\\)/\\1=\${\\1='\\2'}/p"
--    ;;
--  *)
--    # `set' quotes correctly as required by POSIX, so do not add quotes.
--    sed -n -e 's/^\([a-zA-Z0-9_]*_cv_[a-zA-Z0-9_]*\)=\(.*\)/\1=${\1=\2}/p'
--    ;;
--  esac >> confcache
--if cmp -s $cache_file confcache; then
--  :
--else
-+{
-+  (set) 2>&1 |
-+    case `(ac_space=' '; set | grep ac_space) 2>&1` in
-+    *ac_space=\ *)
-+      # `set' does not quote correctly, so add quotes (double-quote
-+      # substitution turns \\\\ into \\, and sed turns \\ into \).
-+      sed -n \
-+	"s/'/'\\\\''/g;
-+	  s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
-+      ;;
-+    *)
-+      # `set' quotes correctly as required by POSIX, so do not add quotes.
-+      sed -n \
-+	"s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
-+      ;;
-+    esac;
-+} |
-+  sed '
-+     t clear
-+     : clear
-+     s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
-+     t end
-+     /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
-+     : end' >>confcache
-+if diff $cache_file confcache >/dev/null 2>&1; then :; else
-   if test -w $cache_file; then
--    echo "updating cache $cache_file"
--    cat confcache > $cache_file
-+    test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file"
-+    cat confcache >$cache_file
-   else
-     echo "not updating unwritable cache $cache_file"
-   fi
- fi
- rm -f confcache
- 
--trap 'rm -fr conftest* confdefs* core core.* *.core $ac_clean_files; exit 1' 1 2 15
--
- test "x$prefix" = xNONE && prefix=$ac_default_prefix
- # Let make expand exec_prefix.
- test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
- 
--# Any assignment to VPATH causes Sun make to only execute
--# the first set of double-colon rules, so remove it if not needed.
--# If there is a colon in the path, we need to keep it.
-+# VPATH may cause trouble with some makes, so we remove $(srcdir),
-+# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
-+# trailing colons and then remove the whole line if VPATH becomes empty
-+# (actually we leave an empty line to preserve line numbers).
- if test "x$srcdir" = x.; then
--  ac_vpsub='/^[ 	]*VPATH[ 	]*=[^:]*$/d'
-+  ac_vpsub='/^[	 ]*VPATH[	 ]*=/{
-+s/:*\$(srcdir):*/:/;
-+s/:*\${srcdir}:*/:/;
-+s/:*@srcdir@:*/:/;
-+s/^\([^=]*=[	 ]*\):*/\1/;
-+s/:*$//;
-+s/^[^=]*=[	 ]*$//;
-+}'
- fi
- 
--trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15
--
- DEFS=-DHAVE_CONFIG_H
- 
--# Without the "./", some shells look in PATH for config.status.
--: ${CONFIG_STATUS=./config.status}
-+ac_libobjs=
-+ac_ltlibobjs=
-+for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
-+  # 1. Remove the extension, and $U if already installed.
-+  ac_i=`echo "$ac_i" |
-+	 sed 's/\$U\././;s/\.o$//;s/\.obj$//'`
-+  # 2. Add them.
-+  ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext"
-+  ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo'
-+done
-+LIBOBJS=$ac_libobjs
- 
--echo creating $CONFIG_STATUS
--rm -f $CONFIG_STATUS
--cat > $CONFIG_STATUS <<EOF
--#! /bin/sh
--# Generated automatically by configure.
-+LTLIBOBJS=$ac_ltlibobjs
-+
-+
-+
-+: ${CONFIG_STATUS=./config.status}
-+ac_clean_files_save=$ac_clean_files
-+ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-+{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
-+echo "$as_me: creating $CONFIG_STATUS" >&6;}
-+cat >$CONFIG_STATUS <<_ACEOF
-+#! $SHELL
-+# Generated by $as_me.
- # Run this file to recreate the current configuration.
--# This directory was configured as follows,
--# on host `(hostname || uname -n) 2>/dev/null | sed 1q`:
--#
--# $0 $ac_configure_args
--#
- # Compiler output produced by configure, useful for debugging
--# configure, is in ./config.log if it exists.
-+# configure, is in config.log if it exists.
- 
--ac_cs_usage="Usage: $CONFIG_STATUS [--recheck] [--version] [--help]"
--for ac_option
-+debug=false
-+ac_cs_recheck=false
-+ac_cs_silent=false
-+SHELL=\${CONFIG_SHELL-$SHELL}
-+_ACEOF
-+
-+cat >>$CONFIG_STATUS <<\_ACEOF
-+## --------------------- ##
-+## M4sh Initialization.  ##
-+## --------------------- ##
-+
-+# Be Bourne compatible
-+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
-+  emulate sh
-+  NULLCMD=:
-+  # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
-+  # is contrary to our usage.  Disable this feature.
-+  alias -g '${1+"$@"}'='"$@"'
-+elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
-+  set -o posix
-+fi
-+DUALCASE=1; export DUALCASE # for MKS sh
-+
-+# Support unset when possible.
-+if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
-+  as_unset=unset
-+else
-+  as_unset=false
-+fi
-+
-+
-+# Work around bugs in pre-3.0 UWIN ksh.
-+$as_unset ENV MAIL MAILPATH
-+PS1='$ '
-+PS2='> '
-+PS4='+ '
-+
-+# NLS nuisances.
-+for as_var in \
-+  LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
-+  LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
-+  LC_TELEPHONE LC_TIME
-+do
-+  if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
-+    eval $as_var=C; export $as_var
-+  else
-+    $as_unset $as_var
-+  fi
-+done
-+
-+# Required to use basename.
-+if expr a : '\(a\)' >/dev/null 2>&1; then
-+  as_expr=expr
-+else
-+  as_expr=false
-+fi
-+
-+if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
-+  as_basename=basename
-+else
-+  as_basename=false
-+fi
-+
-+
-+# Name of the executable.
-+as_me=`$as_basename "$0" ||
-+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
-+	 X"$0" : 'X\(//\)$' \| \
-+	 X"$0" : 'X\(/\)$' \| \
-+	 .     : '\(.\)' 2>/dev/null ||
-+echo X/"$0" |
-+    sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
-+  	  /^X\/\(\/\/\)$/{ s//\1/; q; }
-+  	  /^X\/\(\/\).*/{ s//\1/; q; }
-+  	  s/.*/./; q'`
-+
-+
-+# PATH needs CR, and LINENO needs CR and PATH.
-+# Avoid depending upon Character Ranges.
-+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
-+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
-+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
-+as_cr_digits='0123456789'
-+as_cr_alnum=$as_cr_Letters$as_cr_digits
-+
-+# The user is always right.
-+if test "${PATH_SEPARATOR+set}" != set; then
-+  echo "#! /bin/sh" >conf$$.sh
-+  echo  "exit 0"   >>conf$$.sh
-+  chmod +x conf$$.sh
-+  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
-+    PATH_SEPARATOR=';'
-+  else
-+    PATH_SEPARATOR=:
-+  fi
-+  rm -f conf$$.sh
-+fi
-+
-+
-+  as_lineno_1=$LINENO
-+  as_lineno_2=$LINENO
-+  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
-+  test "x$as_lineno_1" != "x$as_lineno_2" &&
-+  test "x$as_lineno_3"  = "x$as_lineno_2"  || {
-+  # Find who we are.  Look in the path if we contain no path at all
-+  # relative or not.
-+  case $0 in
-+    *[\\/]* ) as_myself=$0 ;;
-+    *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-+for as_dir in $PATH
-+do
-+  IFS=$as_save_IFS
-+  test -z "$as_dir" && as_dir=.
-+  test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
-+done
-+
-+       ;;
-+  esac
-+  # We did not find ourselves, most probably we were run as `sh COMMAND'
-+  # in which case we are not to be found in the path.
-+  if test "x$as_myself" = x; then
-+    as_myself=$0
-+  fi
-+  if test ! -f "$as_myself"; then
-+    { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5
-+echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;}
-+   { (exit 1); exit 1; }; }
-+  fi
-+  case $CONFIG_SHELL in
-+  '')
-+    as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
-+for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
- do
--  case "\$ac_option" in
-+  IFS=$as_save_IFS
-+  test -z "$as_dir" && as_dir=.
-+  for as_base in sh bash ksh sh5; do
-+	 case $as_dir in
-+	 /*)
-+	   if ("$as_dir/$as_base" -c '
-+  as_lineno_1=$LINENO
-+  as_lineno_2=$LINENO
-+  as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
-+  test "x$as_lineno_1" != "x$as_lineno_2" &&
-+  test "x$as_lineno_3"  = "x$as_lineno_2" ') 2>/dev/null; then
-+	     $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; }
-+	     $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
-+	     CONFIG_SHELL=$as_dir/$as_base
-+	     export CONFIG_SHELL
-+	     exec "$CONFIG_SHELL" "$0" ${1+"$@"}
-+	   fi;;
-+	 esac
-+       done
-+done
-+;;
-+  esac
-+
-+  # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
-+  # uniformly replaced by the line number.  The first 'sed' inserts a
-+  # line-number line before each line; the second 'sed' does the real
-+  # work.  The second script uses 'N' to pair each line-number line
-+  # with the numbered line, and appends trailing '-' during
-+  # substitution so that $LINENO is not a special case at line end.
-+  # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
-+  # second 'sed' script.  Blame Lee E. McMahon for sed's syntax.  :-)
-+  sed '=' <$as_myself |
-+    sed '
-+      N
-+      s,$,-,
-+      : loop
-+      s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
-+      t loop
-+      s,-$,,
-+      s,^['$as_cr_digits']*\n,,
-+    ' >$as_me.lineno &&
-+  chmod +x $as_me.lineno ||
-+    { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5
-+echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;}
-+   { (exit 1); exit 1; }; }
-+
-+  # Don't try to exec as it changes $[0], causing all sort of problems
-+  # (the dirname of $[0] is not the place where we might find the
-+  # original and so on.  Autoconf is especially sensible to this).
-+  . ./$as_me.lineno
-+  # Exit status is that of the last command.
-+  exit
-+}
-+
-+
-+case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
-+  *c*,-n*) ECHO_N= ECHO_C='
-+' ECHO_T='	' ;;
-+  *c*,*  ) ECHO_N=-n ECHO_C= ECHO_T= ;;
-+  *)       ECHO_N= ECHO_C='\c' ECHO_T= ;;
-+esac
-+
-+if expr a : '\(a\)' >/dev/null 2>&1; then
-+  as_expr=expr
-+else
-+  as_expr=false
-+fi
-+
-+rm -f conf$$ conf$$.exe conf$$.file
-+echo >conf$$.file
-+if ln -s conf$$.file conf$$ 2>/dev/null; then
-+  # We could just check for DJGPP; but this test a) works b) is more generic
-+  # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
-+  if test -f conf$$.exe; then
-+    # Don't use ln at all; we don't have any links
-+    as_ln_s='cp -p'
-+  else
-+    as_ln_s='ln -s'
-+  fi
-+elif ln conf$$.file conf$$ 2>/dev/null; then
-+  as_ln_s=ln
-+else
-+  as_ln_s='cp -p'
-+fi
-+rm -f conf$$ conf$$.exe conf$$.file
-+
-+if mkdir -p . 2>/dev/null; then
-+  as_mkdir_p=:
-+else
-+  test -d ./-p && rmdir ./-p
-+  as_mkdir_p=false
-+fi
-+
-+as_executable_p="test -f"
-+
-+# Sed expression to map a string onto a valid CPP name.
-+as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
-+
-+# Sed expression to map a string onto a valid variable name.
-+as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
-+
-+
-+# IFS
-+# We need space, tab and new line, in precisely that order.
-+as_nl='
-+'
-+IFS=" 	$as_nl"
-+
-+# CDPATH.
-+$as_unset CDPATH
-+
-+exec 6>&1
-+
-+# Open the log real soon, to keep \$[0] and so on meaningful, and to
-+# report actual input values of CONFIG_FILES etc. instead of their
-+# values after options handling.  Logging --version etc. is OK.
-+exec 5>>config.log
-+{
-+  echo
-+  sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
-+## Running $as_me. ##
-+_ASBOX
-+} >&5
-+cat >&5 <<_CSEOF
-+
-+This file was extended by $as_me, which was
-+generated by GNU Autoconf 2.59.  Invocation command line was
-+
-+  CONFIG_FILES    = $CONFIG_FILES
-+  CONFIG_HEADERS  = $CONFIG_HEADERS
-+  CONFIG_LINKS    = $CONFIG_LINKS
-+  CONFIG_COMMANDS = $CONFIG_COMMANDS
-+  $ $0 $@
-+
-+_CSEOF
-+echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5
-+echo >&5
-+_ACEOF
-+
-+# Files that config.status was made for.
-+if test -n "$ac_config_files"; then
-+  echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS
-+fi
-+
-+if test -n "$ac_config_headers"; then
-+  echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS
-+fi
-+
-+if test -n "$ac_config_links"; then
-+  echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS
-+fi
-+
-+if test -n "$ac_config_commands"; then
-+  echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS
-+fi
-+
-+cat >>$CONFIG_STATUS <<\_ACEOF
-+
-+ac_cs_usage="\
-+\`$as_me' instantiates files from templates according to the
-+current configuration.
-+
-+Usage: $0 [OPTIONS] [FILE]...
-+
-+  -h, --help       print this help, then exit
-+  -V, --version    print version number, then exit
-+  -q, --quiet      do not print progress messages
-+  -d, --debug      don't remove temporary files
-+      --recheck    update $as_me by reconfiguring in the same conditions
-+  --file=FILE[:TEMPLATE]
-+		   instantiate the configuration file FILE
-+  --header=FILE[:TEMPLATE]
-+		   instantiate the configuration header FILE
-+
-+Configuration files:
-+$config_files
-+
-+Configuration headers:
-+$config_headers
-+
-+Report bugs to <bug-autoconf at gnu.org>."
-+_ACEOF
-+
-+cat >>$CONFIG_STATUS <<_ACEOF
-+ac_cs_version="\\
-+config.status
-+configured by $0, generated by GNU Autoconf 2.59,
-+  with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
-+
-+Copyright (C) 2003 Free Software Foundation, Inc.
-+This config.status script is free software; the Free Software Foundation
-+gives unlimited permission to copy, distribute and modify it."
-+srcdir=$srcdir
-+INSTALL="$INSTALL"
-+_ACEOF
-+
-+cat >>$CONFIG_STATUS <<\_ACEOF
-+# If no file are specified by the user, then we need to provide default
-+# value.  By we need to know if files were specified by the user.
-+ac_need_defaults=:
-+while test $# != 0
-+do
-+  case $1 in
-+  --*=*)
-+    ac_option=`expr "x$1" : 'x\([^=]*\)='`
-+    ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'`
-+    ac_shift=:
-+    ;;
-+  -*)
-+    ac_option=$1
-+    ac_optarg=$2
-+    ac_shift=shift
-+    ;;
-+  *) # This is not an option, so the user has probably given explicit
-+     # arguments.
-+     ac_option=$1
-+     ac_need_defaults=false;;
-+  esac
-+
-+  case $ac_option in
-+  # Handling of the options.
-+_ACEOF
-+cat >>$CONFIG_STATUS <<\_ACEOF
-   -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
--    echo "running \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion"
--    exec \${CONFIG_SHELL-/bin/sh} $0 $ac_configure_args --no-create --no-recursion ;;
--  -version | --version | --versio | --versi | --vers | --ver | --ve | --v)
--    echo "$CONFIG_STATUS generated by autoconf version 2.13"
--    exit 0 ;;
--  -help | --help | --hel | --he | --h)
--    echo "\$ac_cs_usage"; exit 0 ;;
--  *) echo "\$ac_cs_usage"; exit 1 ;;
-+    ac_cs_recheck=: ;;
-+  --version | --vers* | -V )
-+    echo "$ac_cs_version"; exit 0 ;;
-+  --he | --h)
-+    # Conflict between --help and --header
-+    { { echo "$as_me:$LINENO: error: ambiguous option: $1
-+Try \`$0 --help' for more information." >&5
-+echo "$as_me: error: ambiguous option: $1
-+Try \`$0 --help' for more information." >&2;}
-+   { (exit 1); exit 1; }; };;
-+  --help | --hel | -h )
-+    echo "$ac_cs_usage"; exit 0 ;;
-+  --debug | --d* | -d )
-+    debug=: ;;
-+  --file | --fil | --fi | --f )
-+    $ac_shift
-+    CONFIG_FILES="$CONFIG_FILES $ac_optarg"
-+    ac_need_defaults=false;;
-+  --header | --heade | --head | --hea )
-+    $ac_shift
-+    CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg"
-+    ac_need_defaults=false;;
-+  -q | -quiet | --quiet | --quie | --qui | --qu | --q \
-+  | -silent | --silent | --silen | --sile | --sil | --si | --s)
-+    ac_cs_silent=: ;;
-+
-+  # This is an error.
-+  -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1
-+Try \`$0 --help' for more information." >&5
-+echo "$as_me: error: unrecognized option: $1
-+Try \`$0 --help' for more information." >&2;}
-+   { (exit 1); exit 1; }; } ;;
-+
-+  *) ac_config_targets="$ac_config_targets $1" ;;
-+
-   esac
-+  shift
- done
- 
--ac_given_srcdir=$srcdir
--ac_given_INSTALL="$INSTALL"
-+ac_configure_extra_args=
-+
-+if $ac_cs_silent; then
-+  exec 6>/dev/null
-+  ac_configure_extra_args="$ac_configure_extra_args --silent"
-+fi
-+
-+_ACEOF
-+cat >>$CONFIG_STATUS <<_ACEOF
-+if \$ac_cs_recheck; then
-+  echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6
-+  exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
-+fi
-+
-+_ACEOF
-+
-+
-+
- 
--trap 'rm -fr `echo "Makefile config.h" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
--EOF
--cat >> $CONFIG_STATUS <<EOF
--
--# Protect against being on the right side of a sed subst in config.status.
--sed 's/%@/@@/; s/@%/@@/; s/%g\$/@g/; /@g\$/s/[\\\\&%]/\\\\&/g;
-- s/@@/%@/; s/@@/@%/; s/@g\$/%g/' > conftest.subs <<\\CEOF
--$ac_vpsub
--$extrasub
--s%@SHELL@%$SHELL%g
--s%@CFLAGS@%$CFLAGS%g
--s%@CPPFLAGS@%$CPPFLAGS%g
--s%@CXXFLAGS@%$CXXFLAGS%g
--s%@FFLAGS@%$FFLAGS%g
--s%@DEFS@%$DEFS%g
--s%@LDFLAGS@%$LDFLAGS%g
--s%@LIBS@%$LIBS%g
--s%@exec_prefix@%$exec_prefix%g
--s%@prefix@%$prefix%g
--s%@program_transform_name@%$program_transform_name%g
--s%@bindir@%$bindir%g
--s%@sbindir@%$sbindir%g
--s%@libexecdir@%$libexecdir%g
--s%@datadir@%$datadir%g
--s%@sysconfdir@%$sysconfdir%g
--s%@sharedstatedir@%$sharedstatedir%g
--s%@localstatedir@%$localstatedir%g
--s%@libdir@%$libdir%g
--s%@includedir@%$includedir%g
--s%@oldincludedir@%$oldincludedir%g
--s%@infodir@%$infodir%g
--s%@mandir@%$mandir%g
--s%@host@%$host%g
--s%@host_alias@%$host_alias%g
--s%@host_cpu@%$host_cpu%g
--s%@host_vendor@%$host_vendor%g
--s%@host_os@%$host_os%g
--s%@CC@%$CC%g
--s%@INSTALL_PROGRAM@%$INSTALL_PROGRAM%g
--s%@INSTALL_SCRIPT@%$INSTALL_SCRIPT%g
--s%@INSTALL_DATA@%$INSTALL_DATA%g
--s%@LN_S@%$LN_S%g
--s%@CPP@%$CPP%g
--s%@FIND@%$FIND%g
--s%@TAIL@%$TAIL%g
--s%@SPECIALLIBS@%$SPECIALLIBS%g
- 
-+cat >>$CONFIG_STATUS <<\_ACEOF
-+for ac_config_target in $ac_config_targets
-+do
-+  case "$ac_config_target" in
-+  # Handling of arguments.
-+  "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
-+  "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
-+  *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
-+echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
-+   { (exit 1); exit 1; }; };;
-+  esac
-+done
-+
-+# If the user did not use the arguments to specify the items to instantiate,
-+# then the envvar interface is used.  Set only those that are not.
-+# We use the long form for the default assignment because of an extremely
-+# bizarre bug on SunOS 4.1.3.
-+if $ac_need_defaults; then
-+  test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
-+  test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
-+fi
-+
-+# Have a temporary directory for convenience.  Make it in the build tree
-+# simply because there is no reason to put it here, and in addition,
-+# creating and moving files from /tmp can sometimes cause problems.
-+# Create a temporary directory, and hook for its removal unless debugging.
-+$debug ||
-+{
-+  trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
-+  trap '{ (exit 1); exit 1; }' 1 2 13 15
-+}
-+
-+# Create a (secure) tmp directory for tmp files.
-+
-+{
-+  tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` &&
-+  test -n "$tmp" && test -d "$tmp"
-+}  ||
-+{
-+  tmp=./confstat$$-$RANDOM
-+  (umask 077 && mkdir $tmp)
-+} ||
-+{
-+   echo "$me: cannot create a temporary directory in ." >&2
-+   { (exit 1); exit 1; }
-+}
-+
-+_ACEOF
-+
-+cat >>$CONFIG_STATUS <<_ACEOF
-+
-+#
-+# CONFIG_FILES section.
-+#
-+
-+# No need to generate the scripts if there are no CONFIG_FILES.
-+# This happens for instance when ./config.status config.h
-+if test -n "\$CONFIG_FILES"; then
-+  # Protect against being on the right side of a sed subst in config.status.
-+  sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g;
-+   s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF
-+s, at SHELL@,$SHELL,;t t
-+s, at PATH_SEPARATOR@,$PATH_SEPARATOR,;t t
-+s, at PACKAGE_NAME@,$PACKAGE_NAME,;t t
-+s, at PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t
-+s, at PACKAGE_VERSION@,$PACKAGE_VERSION,;t t
-+s, at PACKAGE_STRING@,$PACKAGE_STRING,;t t
-+s, at PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t
-+s, at exec_prefix@,$exec_prefix,;t t
-+s, at prefix@,$prefix,;t t
-+s, at program_transform_name@,$program_transform_name,;t t
-+s, at bindir@,$bindir,;t t
-+s, at sbindir@,$sbindir,;t t
-+s, at libexecdir@,$libexecdir,;t t
-+s, at datadir@,$datadir,;t t
-+s, at sysconfdir@,$sysconfdir,;t t
-+s, at sharedstatedir@,$sharedstatedir,;t t
-+s, at localstatedir@,$localstatedir,;t t
-+s, at libdir@,$libdir,;t t
-+s, at includedir@,$includedir,;t t
-+s, at oldincludedir@,$oldincludedir,;t t
-+s, at infodir@,$infodir,;t t
-+s, at mandir@,$mandir,;t t
-+s, at build_alias@,$build_alias,;t t
-+s, at host_alias@,$host_alias,;t t
-+s, at target_alias@,$target_alias,;t t
-+s, at DEFS@,$DEFS,;t t
-+s, at ECHO_C@,$ECHO_C,;t t
-+s, at ECHO_N@,$ECHO_N,;t t
-+s, at ECHO_T@,$ECHO_T,;t t
-+s, at LIBS@,$LIBS,;t t
-+s, at build@,$build,;t t
-+s, at build_cpu@,$build_cpu,;t t
-+s, at build_vendor@,$build_vendor,;t t
-+s, at build_os@,$build_os,;t t
-+s, at host@,$host,;t t
-+s, at host_cpu@,$host_cpu,;t t
-+s, at host_vendor@,$host_vendor,;t t
-+s, at host_os@,$host_os,;t t
-+s, at CC@,$CC,;t t
-+s, at CFLAGS@,$CFLAGS,;t t
-+s, at LDFLAGS@,$LDFLAGS,;t t
-+s, at CPPFLAGS@,$CPPFLAGS,;t t
-+s, at ac_ct_CC@,$ac_ct_CC,;t t
-+s, at EXEEXT@,$EXEEXT,;t t
-+s, at OBJEXT@,$OBJEXT,;t t
-+s, at INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t
-+s, at INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t
-+s, at INSTALL_DATA@,$INSTALL_DATA,;t t
-+s, at LN_S@,$LN_S,;t t
-+s, at CPP@,$CPP,;t t
-+s, at EGREP@,$EGREP,;t t
-+s, at DEADPOOL_O@,$DEADPOOL_O,;t t
-+s, at FIND@,$FIND,;t t
-+s, at TAIL@,$TAIL,;t t
-+s, at SPECIALLIBS@,$SPECIALLIBS,;t t
-+s, at LIBOBJS@,$LIBOBJS,;t t
-+s, at LTLIBOBJS@,$LTLIBOBJS,;t t
- CEOF
--EOF
- 
--cat >> $CONFIG_STATUS <<\EOF
-+_ACEOF
- 
--# Split the substitutions into bite-sized pieces for seds with
--# small command number limits, like on Digital OSF/1 and HP-UX.
--ac_max_sed_cmds=90 # Maximum number of lines to put in a sed script.
--ac_file=1 # Number of current file.
--ac_beg=1 # First line for current file.
--ac_end=$ac_max_sed_cmds # Line after last line for current file.
--ac_more_lines=:
--ac_sed_cmds=""
--while $ac_more_lines; do
--  if test $ac_beg -gt 1; then
--    sed "1,${ac_beg}d; ${ac_end}q" conftest.subs > conftest.s$ac_file
--  else
--    sed "${ac_end}q" conftest.subs > conftest.s$ac_file
--  fi
--  if test ! -s conftest.s$ac_file; then
--    ac_more_lines=false
--    rm -f conftest.s$ac_file
--  else
--    if test -z "$ac_sed_cmds"; then
--      ac_sed_cmds="sed -f conftest.s$ac_file"
-+  cat >>$CONFIG_STATUS <<\_ACEOF
-+  # Split the substitutions into bite-sized pieces for seds with
-+  # small command number limits, like on Digital OSF/1 and HP-UX.
-+  ac_max_sed_lines=48
-+  ac_sed_frag=1 # Number of current file.
-+  ac_beg=1 # First line for current file.
-+  ac_end=$ac_max_sed_lines # Line after last line for current file.
-+  ac_more_lines=:
-+  ac_sed_cmds=
-+  while $ac_more_lines; do
-+    if test $ac_beg -gt 1; then
-+      sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
-+    else
-+      sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
-+    fi
-+    if test ! -s $tmp/subs.frag; then
-+      ac_more_lines=false
-     else
--      ac_sed_cmds="$ac_sed_cmds | sed -f conftest.s$ac_file"
-+      # The purpose of the label and of the branching condition is to
-+      # speed up the sed processing (if there are no `@' at all, there
-+      # is no need to browse any of the substitutions).
-+      # These are the two extra sed commands mentioned above.
-+      (echo ':t
-+  /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed
-+      if test -z "$ac_sed_cmds"; then
-+	ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed"
-+      else
-+	ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed"
-+      fi
-+      ac_sed_frag=`expr $ac_sed_frag + 1`
-+      ac_beg=$ac_end
-+      ac_end=`expr $ac_end + $ac_max_sed_lines`
-     fi
--    ac_file=`expr $ac_file + 1`
--    ac_beg=$ac_end
--    ac_end=`expr $ac_end + $ac_max_sed_cmds`
-+  done
-+  if test -z "$ac_sed_cmds"; then
-+    ac_sed_cmds=cat
-   fi
--done
--if test -z "$ac_sed_cmds"; then
--  ac_sed_cmds=cat
--fi
--EOF
--
--cat >> $CONFIG_STATUS <<EOF
-+fi # test -n "$CONFIG_FILES"
- 
--CONFIG_FILES=\${CONFIG_FILES-"Makefile"}
--EOF
--cat >> $CONFIG_STATUS <<\EOF
--for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then
-+_ACEOF
-+cat >>$CONFIG_STATUS <<\_ACEOF
-+for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue
-   # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
--  case "$ac_file" in
--  *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
--       ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
--  *) ac_file_in="${ac_file}.in" ;;
-+  case $ac_file in
-+  - | *:- | *:-:* ) # input from stdin
-+	cat >$tmp/stdin
-+	ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
-+	ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
-+  *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
-+	ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
-+  * )   ac_file_in=$ac_file.in ;;
-   esac
- 
--  # Adjust a relative srcdir, top_srcdir, and INSTALL for subdirectories.
--
--  # Remove last slash and all that follows it.  Not all systems have dirname.
--  ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
--  if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
--    # The file is in a subdirectory.
--    test ! -d "$ac_dir" && mkdir "$ac_dir"
--    ac_dir_suffix="/`echo $ac_dir|sed 's%^\./%%'`"
--    # A "../" for each directory in $ac_dir_suffix.
--    ac_dots=`echo $ac_dir_suffix|sed 's%/[^/]*%../%g'`
--  else
--    ac_dir_suffix= ac_dots=
--  fi
--
--  case "$ac_given_srcdir" in
--  .)  srcdir=.
--      if test -z "$ac_dots"; then top_srcdir=.
--      else top_srcdir=`echo $ac_dots|sed 's%/$%%'`; fi ;;
--  /*) srcdir="$ac_given_srcdir$ac_dir_suffix"; top_srcdir="$ac_given_srcdir" ;;
-+  # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories.
-+  ac_dir=`(dirname "$ac_file") 2>/dev/null ||
-+$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-+	 X"$ac_file" : 'X\(//\)[^/]' \| \
-+	 X"$ac_file" : 'X\(//\)$' \| \
-+	 X"$ac_file" : 'X\(/\)' \| \
-+	 .     : '\(.\)' 2>/dev/null ||
-+echo X"$ac_file" |
-+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
-+  	  /^X\(\/\/\)[^/].*/{ s//\1/; q; }
-+  	  /^X\(\/\/\)$/{ s//\1/; q; }
-+  	  /^X\(\/\).*/{ s//\1/; q; }
-+  	  s/.*/./; q'`
-+  { if $as_mkdir_p; then
-+    mkdir -p "$ac_dir"
-+  else
-+    as_dir="$ac_dir"
-+    as_dirs=
-+    while test ! -d "$as_dir"; do
-+      as_dirs="$as_dir $as_dirs"
-+      as_dir=`(dirname "$as_dir") 2>/dev/null ||
-+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-+	 X"$as_dir" : 'X\(//\)[^/]' \| \
-+	 X"$as_dir" : 'X\(//\)$' \| \
-+	 X"$as_dir" : 'X\(/\)' \| \
-+	 .     : '\(.\)' 2>/dev/null ||
-+echo X"$as_dir" |
-+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
-+  	  /^X\(\/\/\)[^/].*/{ s//\1/; q; }
-+  	  /^X\(\/\/\)$/{ s//\1/; q; }
-+  	  /^X\(\/\).*/{ s//\1/; q; }
-+  	  s/.*/./; q'`
-+    done
-+    test ! -n "$as_dirs" || mkdir $as_dirs
-+  fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5
-+echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
-+   { (exit 1); exit 1; }; }; }
-+
-+  ac_builddir=.
-+
-+if test "$ac_dir" != .; then
-+  ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
-+  # A "../" for each directory in $ac_dir_suffix.
-+  ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
-+else
-+  ac_dir_suffix= ac_top_builddir=
-+fi
-+
-+case $srcdir in
-+  .)  # No --srcdir option.  We are building in place.
-+    ac_srcdir=.
-+    if test -z "$ac_top_builddir"; then
-+       ac_top_srcdir=.
-+    else
-+       ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
-+    fi ;;
-+  [\\/]* | ?:[\\/]* )  # Absolute path.
-+    ac_srcdir=$srcdir$ac_dir_suffix;
-+    ac_top_srcdir=$srcdir ;;
-   *) # Relative path.
--    srcdir="$ac_dots$ac_given_srcdir$ac_dir_suffix"
--    top_srcdir="$ac_dots$ac_given_srcdir" ;;
--  esac
-+    ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
-+    ac_top_srcdir=$ac_top_builddir$srcdir ;;
-+esac
-+
-+# Do not use `cd foo && pwd` to compute absolute paths, because
-+# the directories may not exist.
-+case `pwd` in
-+.) ac_abs_builddir="$ac_dir";;
-+*)
-+  case "$ac_dir" in
-+  .) ac_abs_builddir=`pwd`;;
-+  [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
-+  *) ac_abs_builddir=`pwd`/"$ac_dir";;
-+  esac;;
-+esac
-+case $ac_abs_builddir in
-+.) ac_abs_top_builddir=${ac_top_builddir}.;;
-+*)
-+  case ${ac_top_builddir}. in
-+  .) ac_abs_top_builddir=$ac_abs_builddir;;
-+  [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
-+  *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
-+  esac;;
-+esac
-+case $ac_abs_builddir in
-+.) ac_abs_srcdir=$ac_srcdir;;
-+*)
-+  case $ac_srcdir in
-+  .) ac_abs_srcdir=$ac_abs_builddir;;
-+  [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
-+  *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
-+  esac;;
-+esac
-+case $ac_abs_builddir in
-+.) ac_abs_top_srcdir=$ac_top_srcdir;;
-+*)
-+  case $ac_top_srcdir in
-+  .) ac_abs_top_srcdir=$ac_abs_builddir;;
-+  [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
-+  *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
-+  esac;;
-+esac
- 
--  case "$ac_given_INSTALL" in
--  [/$]*) INSTALL="$ac_given_INSTALL" ;;
--  *) INSTALL="$ac_dots$ac_given_INSTALL" ;;
--  esac
- 
--  echo creating "$ac_file"
--  rm -f "$ac_file"
--  configure_input="Generated automatically from `echo $ac_file_in|sed 's%.*/%%'` by configure."
--  case "$ac_file" in
--  *Makefile*) ac_comsub="1i\\
--# $configure_input" ;;
--  *) ac_comsub= ;;
-+  case $INSTALL in
-+  [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
-+  *) ac_INSTALL=$ac_top_builddir$INSTALL ;;
-   esac
- 
--  ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
--  sed -e "$ac_comsub
--s%@configure_input@%$configure_input%g
--s%@srcdir@%$srcdir%g
--s%@top_srcdir@%$top_srcdir%g
--s%@INSTALL@%$INSTALL%g
--" $ac_file_inputs | (eval "$ac_sed_cmds") > $ac_file
--fi; done
--rm -f conftest.s*
-+  # Let's still pretend it is `configure' which instantiates (i.e., don't
-+  # use $as_me), people would be surprised to read:
-+  #    /* config.h.  Generated by config.status.  */
-+  if test x"$ac_file" = x-; then
-+    configure_input=
-+  else
-+    configure_input="$ac_file.  "
-+  fi
-+  configure_input=$configure_input"Generated from `echo $ac_file_in |
-+				     sed 's,.*/,,'` by configure."
-+
-+  # First look for the input files in the build tree, otherwise in the
-+  # src tree.
-+  ac_file_inputs=`IFS=:
-+    for f in $ac_file_in; do
-+      case $f in
-+      -) echo $tmp/stdin ;;
-+      [\\/$]*)
-+	 # Absolute (can't be DOS-style, as IFS=:)
-+	 test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
-+echo "$as_me: error: cannot find input file: $f" >&2;}
-+   { (exit 1); exit 1; }; }
-+	 echo "$f";;
-+      *) # Relative
-+	 if test -f "$f"; then
-+	   # Build tree
-+	   echo "$f"
-+	 elif test -f "$srcdir/$f"; then
-+	   # Source tree
-+	   echo "$srcdir/$f"
-+	 else
-+	   # /dev/null tree
-+	   { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
-+echo "$as_me: error: cannot find input file: $f" >&2;}
-+   { (exit 1); exit 1; }; }
-+	 fi;;
-+      esac
-+    done` || { (exit 1); exit 1; }
-+
-+  if test x"$ac_file" != x-; then
-+    { echo "$as_me:$LINENO: creating $ac_file" >&5
-+echo "$as_me: creating $ac_file" >&6;}
-+    rm -f "$ac_file"
-+  fi
-+_ACEOF
-+cat >>$CONFIG_STATUS <<_ACEOF
-+  sed "$ac_vpsub
-+$extrasub
-+_ACEOF
-+cat >>$CONFIG_STATUS <<\_ACEOF
-+:t
-+/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
-+s, at configure_input@,$configure_input,;t t
-+s, at srcdir@,$ac_srcdir,;t t
-+s, at abs_srcdir@,$ac_abs_srcdir,;t t
-+s, at top_srcdir@,$ac_top_srcdir,;t t
-+s, at abs_top_srcdir@,$ac_abs_top_srcdir,;t t
-+s, at builddir@,$ac_builddir,;t t
-+s, at abs_builddir@,$ac_abs_builddir,;t t
-+s, at top_builddir@,$ac_top_builddir,;t t
-+s, at abs_top_builddir@,$ac_abs_top_builddir,;t t
-+s, at INSTALL@,$ac_INSTALL,;t t
-+" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out
-+  rm -f $tmp/stdin
-+  if test x"$ac_file" != x-; then
-+    mv $tmp/out $ac_file
-+  else
-+    cat $tmp/out
-+    rm -f $tmp/out
-+  fi
-+
-+done
-+_ACEOF
-+cat >>$CONFIG_STATUS <<\_ACEOF
-+
-+#
-+# CONFIG_HEADER section.
-+#
- 
- # These sed commands are passed to sed as "A NAME B NAME C VALUE D", where
- # NAME is the cpp macro being defined and VALUE is the value it is being given.
- #
- # ac_d sets the value in "#define NAME VALUE" lines.
--ac_dA='s%^\([ 	]*\)#\([ 	]*define[ 	][ 	]*\)'
--ac_dB='\([ 	][ 	]*\)[^ 	]*%\1#\2'
--ac_dC='\3'
--ac_dD='%g'
--# ac_u turns "#undef NAME" with trailing blanks into "#define NAME VALUE".
--ac_uA='s%^\([ 	]*\)#\([ 	]*\)undef\([ 	][ 	]*\)'
--ac_uB='\([ 	]\)%\1#\2define\3'
-+ac_dA='s,^\([	 ]*\)#\([	 ]*define[	 ][	 ]*\)'
-+ac_dB='[	 ].*$,\1#\2'
-+ac_dC=' '
-+ac_dD=',;t'
-+# ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE".
-+ac_uA='s,^\([	 ]*\)#\([	 ]*\)undef\([	 ][	 ]*\)'
-+ac_uB='$,\1#\2define\3'
- ac_uC=' '
--ac_uD='\4%g'
--# ac_e turns "#undef NAME" without trailing blanks into "#define NAME VALUE".
--ac_eA='s%^\([ 	]*\)#\([ 	]*\)undef\([ 	][ 	]*\)'
--ac_eB='$%\1#\2define\3'
--ac_eC=' '
--ac_eD='%g'
--
--if test "${CONFIG_HEADERS+set}" != set; then
--EOF
--cat >> $CONFIG_STATUS <<EOF
--  CONFIG_HEADERS="config.h"
--EOF
--cat >> $CONFIG_STATUS <<\EOF
--fi
--for ac_file in .. $CONFIG_HEADERS; do if test "x$ac_file" != x..; then
-+ac_uD=',;t'
-+
-+for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue
-   # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
--  case "$ac_file" in
--  *:*) ac_file_in=`echo "$ac_file"|sed 's%[^:]*:%%'`
--       ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;;
--  *) ac_file_in="${ac_file}.in" ;;
-+  case $ac_file in
-+  - | *:- | *:-:* ) # input from stdin
-+	cat >$tmp/stdin
-+	ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
-+	ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
-+  *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
-+	ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
-+  * )   ac_file_in=$ac_file.in ;;
-   esac
- 
--  echo creating $ac_file
-+  test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5
-+echo "$as_me: creating $ac_file" >&6;}
- 
--  rm -f conftest.frag conftest.in conftest.out
--  ac_file_inputs=`echo $ac_file_in|sed -e "s%^%$ac_given_srcdir/%" -e "s%:% $ac_given_srcdir/%g"`
--  cat $ac_file_inputs > conftest.in
--
--EOF
--
--# Transform confdefs.h into a sed script conftest.vals that substitutes
--# the proper values into config.h.in to produce config.h.  And first:
--# Protect against being on the right side of a sed subst in config.status.
--# Protect against being in an unquoted here document in config.status.
--rm -f conftest.vals
--cat > conftest.hdr <<\EOF
--s/[\\&%]/\\&/g
--s%[\\$`]%\\&%g
--s%#define \([A-Za-z_][A-Za-z0-9_]*\) *\(.*\)%${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD}%gp
--s%ac_d%ac_u%gp
--s%ac_u%ac_e%gp
--EOF
--sed -n -f conftest.hdr confdefs.h > conftest.vals
--rm -f conftest.hdr
-+  # First look for the input files in the build tree, otherwise in the
-+  # src tree.
-+  ac_file_inputs=`IFS=:
-+    for f in $ac_file_in; do
-+      case $f in
-+      -) echo $tmp/stdin ;;
-+      [\\/$]*)
-+	 # Absolute (can't be DOS-style, as IFS=:)
-+	 test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
-+echo "$as_me: error: cannot find input file: $f" >&2;}
-+   { (exit 1); exit 1; }; }
-+	 # Do quote $f, to prevent DOS paths from being IFS'd.
-+	 echo "$f";;
-+      *) # Relative
-+	 if test -f "$f"; then
-+	   # Build tree
-+	   echo "$f"
-+	 elif test -f "$srcdir/$f"; then
-+	   # Source tree
-+	   echo "$srcdir/$f"
-+	 else
-+	   # /dev/null tree
-+	   { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
-+echo "$as_me: error: cannot find input file: $f" >&2;}
-+   { (exit 1); exit 1; }; }
-+	 fi;;
-+      esac
-+    done` || { (exit 1); exit 1; }
-+  # Remove the trailing spaces.
-+  sed 's/[	 ]*$//' $ac_file_inputs >$tmp/in
-+
-+_ACEOF
-+
-+# Transform confdefs.h into two sed scripts, `conftest.defines' and
-+# `conftest.undefs', that substitutes the proper values into
-+# config.h.in to produce config.h.  The first handles `#define'
-+# templates, and the second `#undef' templates.
-+# And first: Protect against being on the right side of a sed subst in
-+# config.status.  Protect against being in an unquoted here document
-+# in config.status.
-+rm -f conftest.defines conftest.undefs
-+# Using a here document instead of a string reduces the quoting nightmare.
-+# Putting comments in sed scripts is not portable.
-+#
-+# `end' is used to avoid that the second main sed command (meant for
-+# 0-ary CPP macros) applies to n-ary macro definitions.
-+# See the Autoconf documentation for `clear'.
-+cat >confdef2sed.sed <<\_ACEOF
-+s/[\\&,]/\\&/g
-+s,[\\$`],\\&,g
-+t clear
-+: clear
-+s,^[	 ]*#[	 ]*define[	 ][	 ]*\([^	 (][^	 (]*\)\(([^)]*)\)[	 ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp
-+t end
-+s,^[	 ]*#[	 ]*define[	 ][	 ]*\([^	 ][^	 ]*\)[	 ]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp
-+: end
-+_ACEOF
-+# If some macros were called several times there might be several times
-+# the same #defines, which is useless.  Nevertheless, we may not want to
-+# sort them, since we want the *last* AC-DEFINE to be honored.
-+uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines
-+sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs
-+rm -f confdef2sed.sed
- 
- # This sed command replaces #undef with comments.  This is necessary, for
- # example, in the case of _POSIX_SOURCE, which is predefined and required
- # on some systems where configure will not decide to define it.
--cat >> conftest.vals <<\EOF
--s%^[ 	]*#[ 	]*undef[ 	][ 	]*[a-zA-Z_][a-zA-Z_0-9]*%/* & */%
--EOF
--
--# Break up conftest.vals because some shells have a limit on
--# the size of here documents, and old seds have small limits too.
--
-+cat >>conftest.undefs <<\_ACEOF
-+s,^[	 ]*#[	 ]*undef[	 ][	 ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */,
-+_ACEOF
-+
-+# Break up conftest.defines because some shells have a limit on the size
-+# of here documents, and old seds have small limits too (100 cmds).
-+echo '  # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS
-+echo '  if grep "^[	 ]*#[	 ]*define" $tmp/in >/dev/null; then' >>$CONFIG_STATUS
-+echo '  # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS
-+echo '  :' >>$CONFIG_STATUS
- rm -f conftest.tail
--while :
-+while grep . conftest.defines >/dev/null
- do
--  ac_lines=`grep -c . conftest.vals`
--  # grep -c gives empty output for an empty file on some AIX systems.
--  if test -z "$ac_lines" || test "$ac_lines" -eq 0; then break; fi
--  # Write a limited-size here document to conftest.frag.
--  echo '  cat > conftest.frag <<CEOF' >> $CONFIG_STATUS
--  sed ${ac_max_here_lines}q conftest.vals >> $CONFIG_STATUS
-+  # Write a limited-size here document to $tmp/defines.sed.
-+  echo '  cat >$tmp/defines.sed <<CEOF' >>$CONFIG_STATUS
-+  # Speed up: don't consider the non `#define' lines.
-+  echo '/^[	 ]*#[	 ]*define/!b' >>$CONFIG_STATUS
-+  # Work around the forget-to-reset-the-flag bug.
-+  echo 't clr' >>$CONFIG_STATUS
-+  echo ': clr' >>$CONFIG_STATUS
-+  sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS
-   echo 'CEOF
--  sed -f conftest.frag conftest.in > conftest.out
--  rm -f conftest.in
--  mv conftest.out conftest.in
--' >> $CONFIG_STATUS
--  sed 1,${ac_max_here_lines}d conftest.vals > conftest.tail
--  rm -f conftest.vals
--  mv conftest.tail conftest.vals
--done
--rm -f conftest.vals
--
--cat >> $CONFIG_STATUS <<\EOF
--  rm -f conftest.frag conftest.h
--  echo "/* $ac_file.  Generated automatically by configure.  */" > conftest.h
--  cat conftest.in >> conftest.h
--  rm -f conftest.in
--  if cmp -s $ac_file conftest.h 2>/dev/null; then
--    echo "$ac_file is unchanged"
--    rm -f conftest.h
--  else
--    # Remove last slash and all that follows it.  Not all systems have dirname.
--      ac_dir=`echo $ac_file|sed 's%/[^/][^/]*$%%'`
--      if test "$ac_dir" != "$ac_file" && test "$ac_dir" != .; then
--      # The file is in a subdirectory.
--      test ! -d "$ac_dir" && mkdir "$ac_dir"
--    fi
--    rm -f $ac_file
--    mv conftest.h $ac_file
-+  sed -f $tmp/defines.sed $tmp/in >$tmp/out
-+  rm -f $tmp/in
-+  mv $tmp/out $tmp/in
-+' >>$CONFIG_STATUS
-+  sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail
-+  rm -f conftest.defines
-+  mv conftest.tail conftest.defines
-+done
-+rm -f conftest.defines
-+echo '  fi # grep' >>$CONFIG_STATUS
-+echo >>$CONFIG_STATUS
-+
-+# Break up conftest.undefs because some shells have a limit on the size
-+# of here documents, and old seds have small limits too (100 cmds).
-+echo '  # Handle all the #undef templates' >>$CONFIG_STATUS
-+rm -f conftest.tail
-+while grep . conftest.undefs >/dev/null
-+do
-+  # Write a limited-size here document to $tmp/undefs.sed.
-+  echo '  cat >$tmp/undefs.sed <<CEOF' >>$CONFIG_STATUS
-+  # Speed up: don't consider the non `#undef'
-+  echo '/^[	 ]*#[	 ]*undef/!b' >>$CONFIG_STATUS
-+  # Work around the forget-to-reset-the-flag bug.
-+  echo 't clr' >>$CONFIG_STATUS
-+  echo ': clr' >>$CONFIG_STATUS
-+  sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS
-+  echo 'CEOF
-+  sed -f $tmp/undefs.sed $tmp/in >$tmp/out
-+  rm -f $tmp/in
-+  mv $tmp/out $tmp/in
-+' >>$CONFIG_STATUS
-+  sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail
-+  rm -f conftest.undefs
-+  mv conftest.tail conftest.undefs
-+done
-+rm -f conftest.undefs
-+
-+cat >>$CONFIG_STATUS <<\_ACEOF
-+  # Let's still pretend it is `configure' which instantiates (i.e., don't
-+  # use $as_me), people would be surprised to read:
-+  #    /* config.h.  Generated by config.status.  */
-+  if test x"$ac_file" = x-; then
-+    echo "/* Generated by configure.  */" >$tmp/config.h
-+  else
-+    echo "/* $ac_file.  Generated by configure.  */" >$tmp/config.h
-   fi
--fi; done
-+  cat $tmp/in >>$tmp/config.h
-+  rm -f $tmp/in
-+  if test x"$ac_file" != x-; then
-+    if diff $ac_file $tmp/config.h >/dev/null 2>&1; then
-+      { echo "$as_me:$LINENO: $ac_file is unchanged" >&5
-+echo "$as_me: $ac_file is unchanged" >&6;}
-+    else
-+      ac_dir=`(dirname "$ac_file") 2>/dev/null ||
-+$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-+	 X"$ac_file" : 'X\(//\)[^/]' \| \
-+	 X"$ac_file" : 'X\(//\)$' \| \
-+	 X"$ac_file" : 'X\(/\)' \| \
-+	 .     : '\(.\)' 2>/dev/null ||
-+echo X"$ac_file" |
-+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
-+  	  /^X\(\/\/\)[^/].*/{ s//\1/; q; }
-+  	  /^X\(\/\/\)$/{ s//\1/; q; }
-+  	  /^X\(\/\).*/{ s//\1/; q; }
-+  	  s/.*/./; q'`
-+      { if $as_mkdir_p; then
-+    mkdir -p "$ac_dir"
-+  else
-+    as_dir="$ac_dir"
-+    as_dirs=
-+    while test ! -d "$as_dir"; do
-+      as_dirs="$as_dir $as_dirs"
-+      as_dir=`(dirname "$as_dir") 2>/dev/null ||
-+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-+	 X"$as_dir" : 'X\(//\)[^/]' \| \
-+	 X"$as_dir" : 'X\(//\)$' \| \
-+	 X"$as_dir" : 'X\(/\)' \| \
-+	 .     : '\(.\)' 2>/dev/null ||
-+echo X"$as_dir" |
-+    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
-+  	  /^X\(\/\/\)[^/].*/{ s//\1/; q; }
-+  	  /^X\(\/\/\)$/{ s//\1/; q; }
-+  	  /^X\(\/\).*/{ s//\1/; q; }
-+  	  s/.*/./; q'`
-+    done
-+    test ! -n "$as_dirs" || mkdir $as_dirs
-+  fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5
-+echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
-+   { (exit 1); exit 1; }; }; }
- 
--EOF
--cat >> $CONFIG_STATUS <<EOF
-+      rm -f $ac_file
-+      mv $tmp/config.h $ac_file
-+    fi
-+  else
-+    cat $tmp/config.h
-+    rm -f $tmp/config.h
-+  fi
-+done
-+_ACEOF
- 
--EOF
--cat >> $CONFIG_STATUS <<\EOF
-+cat >>$CONFIG_STATUS <<\_ACEOF
- 
--exit 0
--EOF
-+{ (exit 0); exit 0; }
-+_ACEOF
- chmod +x $CONFIG_STATUS
--rm -fr confdefs* $ac_clean_files
--test "$no_create" = yes || ${CONFIG_SHELL-/bin/sh} $CONFIG_STATUS || exit 1
-+ac_clean_files=$ac_clean_files_save
-+
-+
-+# configure is writing to config.log, and then calls config.status.
-+# config.status does its own redirection, appending to config.log.
-+# Unfortunately, on DOS this fails, as config.log is still kept open
-+# by configure, so config.status won't be able to write to it; its
-+# output is simply discarded.  So we exec the FD to /dev/null,
-+# effectively closing config.log, so it can be properly (re)opened and
-+# appended to by config.status.  When coming back to configure, we
-+# need to make the FD available again.
-+if test "$no_create" != yes; then
-+  ac_cs_success=:
-+  ac_config_status_args=
-+  test "$silent" = yes &&
-+    ac_config_status_args="$ac_config_status_args --quiet"
-+  exec 5>/dev/null
-+  $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
-+  exec 5>>config.log
-+  # Use ||, not &&, to avoid exiting from the if with $? = 1, which
-+  # would make configure fail if this is the last instruction.
-+  $ac_cs_success || { (exit 1); exit 1; }
-+fi
- 
-diff -rN -U 5 tsocks-1.8/configure.in tsocks/configure.in
---- tsocks-1.8/configure.in	2002-07-16 10:51:03.000000000 +1200
-+++ tsocks/configure.in	2005-10-02 21:52:00.000000000 +1300
-@@ -11,17 +11,19 @@
- dnl /etc/ld.so.preload file
- test "$libdir" = "\${exec_prefix}/lib" && libdir="/lib"
- 
- dnl Arguments we allow
- AC_ARG_ENABLE(socksdns,
--[  --enable-socksdns	      force dns lookups to use tcp ])
-+[  --enable-socksdns       force dns lookups to use tcp ])
-+AC_ARG_ENABLE(tordns,
-+[  --disable-tordns         don't override name lookup calls to use SOCKS ])   
- AC_ARG_ENABLE(debug,
- [  --disable-debug         disable ALL error messages from tsocks ])
- AC_ARG_ENABLE(oldmethod,
--[  --enable-oldmethod	   use the old method to override connect ])
-+[  --enable-oldmethod      use the old method to override connect ])
- AC_ARG_ENABLE(hostnames,
--[  --disable-hostnames	   disable hostname lookups for socks servers ])
-+[  --enable-hostnames      enable hostname lookups for socks servers ])
- AC_ARG_ENABLE(envconf,
- [  --disable-envconf       do not allow TSOCKS_CONF_FILE to specify configuration file ])
- AC_ARG_WITH(conf,
- [  --with-conf=<file>      location of configuration file (/etc/tsocks.conf default)],[
- if test "${withval}" = "yes" ; then
-@@ -43,11 +45,11 @@
- AC_PROG_CC
- AC_PROG_INSTALL
- AC_PROG_LN_S
- 
- dnl Check if the C compiler accepts -Wall
--AC_MSG_CHECKING("if the C compiler accepts -Wall")
-+AC_MSG_CHECKING(if the C compiler accepts -Wall)
- OLDCFLAGS="$CFLAGS"
- CFLAGS="$CFLAGS -Wall"
- AC_TRY_COMPILE(,,AC_MSG_RESULT(yes),[
-    CFLAGS="$OLDCFLAGS"
-    AC_MSG_RESULT(no)])
-@@ -68,16 +70,23 @@
- AC_CHECK_HEADER(fcntl.h,,AC_MSG_ERROR("fcntl.h not found"))
- 
- dnl Check for the poll header
- AC_CHECK_HEADER(sys/poll.h,,AC_MSG_ERROR("sys/poll.h not found"))
- 
-+dnl Check for the mmap header
-+AC_CHECK_HEADER(sys/mman.h,,AC_MSG_ERROR("sys/mman.h not found"))
-+
- dnl Other headers we're interested in
- AC_CHECK_HEADERS(unistd.h)
- 
- dnl Checks for library functions.
--AC_CHECK_FUNCS(strcspn strdup strerror strspn strtol,,[ 
--	       AC_MSG_ERROR("Required function not found")])
-+AC_CHECK_FUNCS(strcspn strdup strerror strspn strtol mmap strcasecmp \
-+   strncasecmp strtol,,[AC_MSG_ERROR("Required function not found")])
-+
-+dnl Find which version of gethostbyname_r we should be using (actually this
-+dnl isn't used right now).
-+AX_FUNC_WHICH_GETHOSTBYNAME_R
- 
- dnl First find the library that contains connect() (obviously
- dnl the most important library for us). Once we've found it
- dnl we chuck it on the end of LIBS, that lib may end up there
- dnl more than once (since we do our search with an empty libs
-@@ -123,22 +132,22 @@
- dnl Checks for libraries.
- dnl Replace `main' with a function in -ldl:
- AC_CHECK_LIB(dl, dlsym,,AC_MSG_ERROR("libdl is required"))
- 
- dnl If we're using gcc here define _GNU_SOURCE
--AC_MSG_CHECKING("for RTLD_NEXT from dlfcn.h")
-+AC_MSG_CHECKING(for RTLD_NEXT from dlfcn.h)
- AC_EGREP_CPP(yes,
- [
-  #include <dlfcn.h>
-  #ifdef RTLD_NEXT
- 	yes
-  #endif
- ], [
-   AC_MSG_RESULT(yes)
- ], [
-   AC_MSG_RESULT(no)
--  AC_MSG_CHECKING("for RTLD_NEXT from dlfcn.h with _GNU_SOURCE")
-+  AC_MSG_CHECKING(for RTLD_NEXT from dlfcn.h with _GNU_SOURCE)
-   AC_EGREP_CPP(yes,
-   [
-    #define _GNU_SOURCE
-    #include <dlfcn.h>
-    #ifdef RTLD_NEXT
-@@ -156,10 +165,21 @@
- 
- if test "${enable_socksdns}" = "yes"; then
-   AC_DEFINE(USE_SOCKS_DNS)
- fi
- 
-+AC_MSG_CHECKING(whether to enable tordns)
-+if test "x${enable_tordns}" = "x"; then
-+  AC_DEFINE(USE_TOR_DNS)
-+  DEADPOOL_O="\${DEADPOOL}.o"
-+  AC_MSG_RESULT(yes)
-+else 
-+  DEADPOOL_O=""
-+  AC_MSG_RESULT(no)
-+fi
-+AC_SUBST(DEADPOOL_O)
-+
- if test "x${enable_envconf}" = "x"; then
-   AC_DEFINE(ALLOW_ENV_CONFIG)
- fi
- 
- if test "${enable_oldmethod}" = "yes"; then
-@@ -169,17 +189,22 @@
- 
- if test "x${enable_debug}" = "x"; then
-   AC_DEFINE(ALLOW_MSG_OUTPUT)
- fi
- 
--if test "x${enable_hostnames}" = "x"; then
-+if test "x${enable_hostnames}" = "xyes"; then
-   AC_DEFINE(HOSTNAMES)
- fi
- 
- if test "${enable_socksdns}" = "yes" -a \
--        "x${enable_hostnames}" = "x" ; then
--  AC_MSG_ERROR("--enable-socksdns is not valid without --disable-hostnames")
-+        "x${enable_hostnames}" = "xyes" ; then
-+  AC_MSG_ERROR("--enable-socksdns is not valid with --enable-hostnames")
-+fi
-+
-+if test "x${enable_tordns}" = "x" -a \
-+        "x${enable_hostnames}" = "xyes" ; then
-+  AC_MSG_ERROR("--enable-tordns is not valid with --enable-hostnames")
- fi
- 
- dnl If we have to use the old method of overriding connect (i.e no
- dnl RTLD_NEXT) we need to know the location of the library that
- dnl contains connect(), select(), poll() and close()
-@@ -201,11 +226,11 @@
-   if test "${TAIL}" = ""; then
-     AC_MSG_ERROR('tail not found in path')
-   fi
- 
-   dnl Now find the library we need
--  AC_MSG_CHECKING("location of lib${CONNECTLIB}.so")
-+  AC_MSG_CHECKING(location of lib${CONNECTLIB}.so)
-   LIBCONNECT=
-   for DIR in '/lib' '/usr/lib'; do
-     if test "${LIBCONNECT}" = ""; then
-       LIBCONNECT=`$FIND $DIR -name "lib${CONNECTLIB}.so.?" 2>/dev/null | $TAIL -1`
-     fi
-@@ -217,11 +242,11 @@
-   fi
- 
-   AC_MSG_RESULT($LIBCONNECT)
- 
-   dnl close() should be in libc, find it
--  AC_MSG_CHECKING("location of libc.so")
-+  AC_MSG_CHECKING(location of libc.so)
-   LIBC=
-   for DIR in '/lib' '/usr/lib'; do
-     if test "${LIBC}" = ""; then
-       LIBC=`$FIND $DIR -name "libc.so.?" 2>/dev/null | $TAIL -1`
-     fi
-@@ -325,10 +350,22 @@
-   AC_MSG_ERROR("no match found!")
- fi
- AC_MSG_RESULT([poll(${PROTO})])
- AC_DEFINE_UNQUOTED(POLL_SIGNATURE, [${PROTO}])
- 
-+dnl Emit signature for gethostbyname
-+PROTO="const char *name"
-+AC_DEFINE_UNQUOTED(GETHOSTBYNAME_SIGNATURE, [${PROTO}])
-+
-+dnl Emit signature for getaddrinfo
-+PROTO="const char *node, const char *service, void *hints, void *res"
-+AC_DEFINE_UNQUOTED(GETADDRINFO_SIGNATURE, [${PROTO}])
-+
-+dnl Emit signature for getipnodebyname
-+PROTO="const char *name, int af, int flags, int *error_num"
-+AC_DEFINE_UNQUOTED(GETIPNODEBYNAME_SIGNATURE, [${PROTO}])
-+
- dnl Output the special librarys (libdl etc needed for tsocks)
- SPECIALLIBS=${LIBS}
- AC_SUBST(SPECIALLIBS)
- LIBS=${SIMPLELIBS}
- 
-diff -rN -U 5 tsocks-1.8/dead_pool.c tsocks/dead_pool.c
---- tsocks-1.8/dead_pool.c	1970-01-01 12:00:00.000000000 +1200
-+++ tsocks/dead_pool.c	2005-10-01 21:26:53.000000000 +1200
-@@ -0,0 +1,541 @@
-+#include <stdio.h>
-+#include <sys/socket.h>
-+#include <netinet/in.h>
-+#include <arpa/inet.h>
-+#include <netdb.h>
-+#include <stdlib.h>
-+#include <string.h>
-+#include <sys/mman.h>
-+#include "common.h"
-+#include "dead_pool.h"
-+
-+int store_pool_entry(dead_pool *pool, char *hostname, struct in_addr *addr);
-+void get_next_dead_address(dead_pool *pool, uint32_t *result);
-+
-+static int
-+do_resolve(const char *hostname, uint32_t sockshost, uint16_t socksport,
-+           uint32_t *result_addr);
-+
-+/* Compares the last strlen(s2) characters of s1 with s2.  Returns as for
-+   strcasecmp. */
-+static int 
-+strcasecmpend(const char *s1, const char *s2)
-+{
-+   size_t n1 = strlen(s1), n2 = strlen(s2);
-+   if (n2>n1) /* then they can't be the same; figure out which is bigger */
-+       return strcasecmp(s1,s2);
-+   else
-+       return strncasecmp(s1+(n1-n2), s2, n2);
-+}
-+
-+dead_pool *
-+init_pool(int pool_size, struct in_addr deadrange_base, 
-+    struct in_addr deadrange_mask, char *sockshost, uint16_t socksport)
-+{
-+    int i, deadrange_bits, deadrange_width, deadrange_size;
-+    struct in_addr socks_server;
-+    dead_pool *newpool = NULL;
-+
-+    /* Count bits in netmask and determine deadrange width. */
-+    deadrange_bits = count_netmask_bits(deadrange_mask.s_addr);
-+    if(deadrange_bits == -1) {
-+        show_msg(MSGERR, "init_pool: invalid netmask for deadrange\n");
-+        return NULL;
-+    } 
-+    deadrange_width = 32 - deadrange_bits;
-+
-+    show_msg(MSGDEBUG, "deadrange width is %d bits\n", deadrange_width);
-+
-+    /* Now work out how many IPs are available in the deadrange and check
-+       that this number makes sense.  If the deadpool is bigger than the 
-+       deadrange we shrink the pool. */
-+
-+    for(i=0, deadrange_size = 1; i < deadrange_width; i++) {
-+        deadrange_size *= 2;
-+    }
-+
-+    if(deadrange_size < pool_size) {
-+        show_msg(MSGWARN, "tordns cache size was %d, but deadrange size is %d: "
-+                 "shrinking pool size to %d entries\n", pool_size, 
-+                 deadrange_size, deadrange_size);
-+        pool_size = deadrange_size;
-+    }
-+    if(pool_size < 1) {
-+        show_msg(MSGERR, "tordns cache size is 0, disabling tordns\n");
-+        return NULL;
-+    }
-+
-+    /* Allocate space for the dead_pool structure */
-+    newpool = (dead_pool *) mmap(0, sizeof(dead_pool), 
-+                   PROT_READ | PROT_WRITE, 
-+                   MAP_SHARED | MAP_ANONYMOUS, -1, 0); 
-+    if(!newpool) {
-+        show_msg(MSGERR, "init_pool: unable to mmap deadpool "
-+                 "(tried to map %d bytes)\n", sizeof(dead_pool));
-+        return NULL;
-+    }
-+
-+    /* Initialize the dead_pool structure */
-+#ifdef HAVE_INET_ATON
-+    inet_aton(sockshost, &socks_server);
-+#elif defined(HAVE_INET_ADDR)
-+    socks_server.s_addr = inet_addr(sockshost);
-+#endif
-+    newpool->sockshost = ntohl(socks_server.s_addr);
-+    newpool->socksport = socksport;
-+    newpool->deadrange_base = ntohl(deadrange_base.s_addr);
-+    newpool->deadrange_mask = ntohl(deadrange_mask.s_addr);
-+    newpool->deadrange_size = deadrange_size;
-+    newpool->write_pos = 0;
-+    newpool->dead_pos = 0;
-+    newpool->n_entries = pool_size;
-+
-+    /* Allocate space for the entries */
-+    newpool->entries = (pool_ent *) mmap(0, newpool->n_entries * sizeof(pool_ent), 
-+                            PROT_READ | PROT_WRITE, 
-+                            MAP_SHARED | MAP_ANONYMOUS, -1, 0); 
-+    if(!newpool->entries) {
-+        munmap((void *)newpool, sizeof(dead_pool));
-+        show_msg(MSGERR, "init_pool: unable to mmap deadpool entries "
-+                 "(tried to map %d bytes)\n", 
-+                 newpool->n_entries * sizeof(pool_ent)); 
-+        return NULL;
-+    }
-+
-+    /* Initialize the entries */
-+    for(i=0; i < newpool->n_entries; i++) {
-+        newpool->entries[i].ip = -1;
-+        newpool->entries[i].name[0] = '\0';
-+    }
-+
-+    return newpool;
-+}
-+
-+int 
-+is_dead_address(dead_pool *pool, uint32_t addr) 
-+{
-+    uint32_t haddr = ntohl(addr);
-+    if(pool == NULL) {
-+        return 0;
-+    }
-+    return (pool->deadrange_base == (haddr & pool->deadrange_mask));
-+}
-+
-+void
-+get_next_dead_address(dead_pool *pool, uint32_t *result)
-+{
-+    *result = htonl(pool->deadrange_base + pool->dead_pos++);
-+    if(pool->dead_pos >= pool->deadrange_size) {
-+        pool->dead_pos = 0;
-+    }
-+}
-+
-+int 
-+store_pool_entry(dead_pool *pool, char *hostname, struct in_addr *addr)
-+{
-+  int position = pool->write_pos;
-+  int oldpos;
-+  int rc;
-+  uint32_t intaddr;
-+
-+  show_msg(MSGDEBUG, "store_pool_entry: storing '%s'\n", hostname);
-+  show_msg(MSGDEBUG, "store_pool_entry: write pos is: %d\n", pool->write_pos);
-+
-+  /* Check to see if name already exists in pool */
-+  oldpos = search_pool_for_name(pool, hostname);
-+  if(oldpos != -1){
-+      show_msg(MSGDEBUG, "store_pool_entry: not storing (entry exists)\n");
-+      addr->s_addr = pool->entries[oldpos].ip;
-+      return oldpos;
-+  }
-+
-+  /* If this is a .onion host, then we return a bogus ip from our deadpool, 
-+     otherwise we try to resolve it and store the 'real' IP */
-+  if(strcasecmpend(hostname, ".onion") == 0) {
-+      get_next_dead_address(pool, &pool->entries[position].ip);
-+  } else {
-+      rc = do_resolve(hostname, pool->sockshost, pool->socksport, &intaddr);
-+      if(rc != 0) {
-+          show_msg(MSGWARN, "failed to resolve: %s\n", hostname);
-+          return -1;
-+      } 
-+      if(is_dead_address(pool, intaddr)) {
-+          show_msg(MSGERR, "resolved %s -> %d (deadpool address) IGNORED\n");
-+          return -1;
-+      }
-+      pool->entries[position].ip = intaddr;
-+  }
-+
-+  strncpy(pool->entries[position].name, hostname, 255);
-+  pool->entries[position].name[255] = '\0';
-+  pool->write_pos++;
-+  if(pool->write_pos >= pool->n_entries) {
-+      pool->write_pos = 0;
-+  }
-+  addr->s_addr = pool->entries[position].ip;
-+
-+  show_msg(MSGDEBUG, "store_pool_entry: stored entry in slot '%d'\n", position);
-+
-+  return position;
-+}
-+
-+int 
-+search_pool_for_name(dead_pool *pool, const char *name) 
-+{
-+  int i;
-+  for(i=0; i < pool->n_entries; i++){
-+    if(strcmp(name, pool->entries[i].name) == 0){
-+      return i;
-+    }
-+  }
-+  return -1;
-+}
-+
-+char *
-+get_pool_entry(dead_pool *pool, struct in_addr *addr)
-+{
-+  int i;
-+  uint32_t intaddr = addr->s_addr;
-+
-+  if(pool == NULL) {
-+      return NULL;
-+  }
-+
-+  show_msg(MSGDEBUG, "get_pool_entry: searching for: %s\n", inet_ntoa(*addr));
-+  for(i=0; i<pool->n_entries; i++) {
-+    if(intaddr == pool->entries[i].ip) {
-+        show_msg(MSGDEBUG, "get_pool_entry: found: %s\n", pool->entries[i].name);
-+        return pool->entries[i].name;
-+    }
-+  }
-+  show_msg(MSGDEBUG, "get_pool_entry: address not found\n");
-+
-+  return NULL;
-+}
-+
-+static int
-+build_socks4a_resolve_request(char **out,
-+                              const char *username,
-+                              const char *hostname)
-+{
-+  size_t len;
-+  uint16_t port = htons(0);  /* port: 0. */
-+  uint32_t addr = htonl(0x00000001u); /* addr: 0.0.0.1 */
-+
-+  len = 8 + strlen(username) + 1 + strlen(hostname) + 1;
-+  *out = malloc(len);
-+  (*out)[0] = 4;      /* SOCKS version 4 */
-+  (*out)[1] = '\xF0'; /* Command: resolve. */
-+
-+  memcpy((*out)+2, &port, sizeof(port));
-+  memcpy((*out)+4, &addr, sizeof(addr));
-+  strcpy((*out)+8, username);
-+  strcpy((*out)+8+strlen(username)+1, hostname);
-+
-+  return len;
-+}
-+
-+#define RESPONSE_LEN 8
-+
-+static int
-+parse_socks4a_resolve_response(const char *response, size_t len,
-+                               uint32_t *addr_out)
-+{
-+  uint8_t status;
-+  uint16_t port;
-+
-+  if (len < RESPONSE_LEN) {
-+    show_msg(MSGWARN,"Truncated socks response.\n"); 
-+    return -1;
-+  }
-+  if (((uint8_t)response[0])!=0) { /* version: 0 */
-+    show_msg(MSGWARN,"Nonzero version in socks response: bad format.\n");
-+    return -1;
-+  }
-+  status = (uint8_t)response[1];
-+
-+  memcpy(&port, response+2, sizeof(port));
-+  if (port!=0) { /* port: 0 */
-+    show_msg(MSGWARN,"Nonzero port in socks response: bad format.\n"); 
-+    return -1;
-+  }
-+  if (status != 90) {
-+    show_msg(MSGWARN,"Bad status: socks request failed.\n"); 
-+    return -1;
-+  }
-+
-+  memcpy(addr_out, response+4, sizeof(*addr_out));
-+
-+  return 0;
-+}
-+
-+static int
-+do_resolve(const char *hostname, uint32_t sockshost, uint16_t socksport,
-+           uint32_t *result_addr)
-+{
-+  int s;
-+  struct sockaddr_in socksaddr;
-+  char *req, *cp;
-+  int r, len;
-+  char response_buf[RESPONSE_LEN];
-+
-+  show_msg(MSGDEBUG, "do_resolve: resolving %s\n", hostname);
-+
-+  s = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP);
-+  if (s<0) {
-+    show_msg(MSGWARN, "do_resolve: problem creating socket\n"); 
-+    return -1;
-+  }
-+
-+  memset(&socksaddr, 0, sizeof(socksaddr));
-+  socksaddr.sin_family = AF_INET;
-+  socksaddr.sin_port = htons(socksport);
-+  socksaddr.sin_addr.s_addr = htonl(sockshost);
-+  if (realconnect(s, (struct sockaddr*)&socksaddr, sizeof(socksaddr))) {
-+    show_msg(MSGWARN, "do_resolve: error connecting to SOCKS server\n");
-+    return -1;
-+  }
-+
-+  if ((len = build_socks4a_resolve_request(&req, "", hostname))<0) {
-+    show_msg(MSGWARN, "do_resolve: error generating SOCKS request\n"); 
-+    return -1;
-+  }
-+
-+  cp = req;
-+  while (len) {
-+    r = send(s, cp, len, 0);
-+    if (r<0) {
-+      show_msg(MSGWARN, "do_resolve: error sending SOCKS request\n"); 
-+      free(req);
-+      return -1;
-+    }
-+    len -= r;
-+    cp += r;
-+  }
-+  free(req);
-+
-+  len = 0;
-+  while (len < RESPONSE_LEN) {
-+    r = recv(s, response_buf+len, RESPONSE_LEN-len, 0);
-+    if (r==0) {
-+      show_msg(MSGWARN, "do_resolve: EOF while reading SOCKS response\n"); 
-+      return -1;
-+    }
-+    if (r<0) {
-+      show_msg(MSGWARN, "do_resolve: error reading SOCKS response\n"); 
-+      return -1;
-+    }
-+    len += r;
-+  }
-+
-+  realclose(s);
-+
-+  if (parse_socks4a_resolve_response(response_buf, RESPONSE_LEN, result_addr) < 0){
-+    show_msg(MSGWARN, "do_resolve: error parsing SOCKS response\n");
-+    return -1;
-+  }
-+
-+  show_msg(MSGDEBUG, "do_resolve: success\n");
-+
-+  return 0;
-+}
-+
-+struct hostent *
-+our_gethostbyname(dead_pool *pool, const char *name)
-+{
-+  int pos;
-+  static struct in_addr addr;
-+  static struct hostent he;
-+  static char *addrs[2];
-+
-+  show_msg(MSGDEBUG, "our_gethostbyname: '%s' requested\n", name);
-+
-+  pos = store_pool_entry(pool,(char *) name, &addr);
-+  if(pos == -1) {
-+      h_errno = HOST_NOT_FOUND;
-+      return NULL;
-+  }
-+
-+  addrs[0] = (char *)&addr;
-+  addrs[1] = NULL;
-+
-+  he.h_name      = pool->entries[pos].name;
-+  he.h_aliases   = NULL;
-+  he.h_length    = 4;
-+  he.h_addrtype  = AF_INET;
-+  he.h_addr_list = addrs;
-+
-+  show_msg(MSGDEBUG, "our_gethostbyname: resolved '%s' to: '%s'\n", 
-+           name, inet_ntoa(*((struct in_addr *)he.h_addr)));
-+
-+  return &he;
-+}
-+
-+static struct hostent *
-+alloc_hostent(int af)
-+{
-+    struct hostent *he = NULL;
-+    char **addr_list = NULL;
-+    void *addr = NULL;
-+    char **aliases = NULL;
-+
-+    if(af != AF_INET && af != AF_INET6) {
-+        return NULL;
-+    }
-+
-+    /* Since the memory we allocate here will be free'd by freehostent and
-+       that function is opaque to us, it's likely that we'll leak a little 
-+       bit of memory here. */
-+
-+    he = malloc(sizeof(struct hostent));
-+    addr_list = malloc(2 * sizeof(char *));
-+    if(af == AF_INET6) {
-+        addr = malloc(sizeof(struct in6_addr));
-+    } else {
-+        addr = malloc(sizeof(struct in_addr));
-+    }
-+    aliases = malloc(sizeof(char *));
-+
-+    if(he == NULL || addr_list == NULL || addr == NULL || aliases == NULL) {
-+        if(he)
-+            free(he);
-+        if(addr_list)
-+            free(addr_list);
-+        if(addr)
-+            free(addr);
-+        if(aliases)
-+            free(aliases);
-+    }
-+
-+    he->h_name = NULL;
-+    he->h_addr_list = addr_list;
-+    he->h_addr_list[0] = addr;
-+    he->h_addr_list[1] = NULL;
-+    he->h_aliases = aliases;
-+    he->h_aliases[0] = NULL;
-+    he->h_length = af == AF_INET ? 4 : 16;
-+    he->h_addrtype = af;
-+
-+    return he;
-+}
-+
-+/* On Linux, there's no freehostent() anymore; we might as well implement
-+   this ourselves. */
-+
-+static void
-+free_hostent(struct hostent *he)
-+{
-+    int i;
-+    if(he->h_name) {
-+        free(he->h_name);
-+    }
-+    if(he->h_aliases) {
-+        for(i=0; he->h_aliases[i] != NULL; i++) {
-+            free(he->h_aliases[i]);
-+        }
-+        free(he->h_aliases);
-+    }
-+    if(he->h_addr_list) {
-+        free(he->h_addr_list);
-+    }
-+    free(he);
-+}
-+
-+int
-+our_getaddrinfo(dead_pool *pool, const char *node, const char *service, 
-+                void *hints, void *res)
-+{
-+    int pos;
-+    struct in_addr addr;
-+    char *ipstr;
-+    int ret;
-+
-+    /* If "node" looks like a dotted-decimal ip address, then just call 
-+       the real getaddrinfo; otherwise we'll need to get an address from 
-+       our pool. */
-+
-+    /* TODO: work out what to do with AF_INET6 requests */
-+
-+#ifdef HAVE_INET_ATON
-+    if(inet_aton(node, &addr) == 0) {
-+#elif defined(HAVE_INET_ADDR)
-+    /* If we're stuck with inet_addr, then getaddrinfo() won't work 
-+       properly with 255.255.255.255 (= -1).  There's not much we can
-+       do about this */
-+    in_addr_t is_valid;
-+    is_valid = inet_addr(node);
-+    if(is_valid == -1) {
-+#endif
-+        pos = store_pool_entry(pool, (char *) node, &addr);
-+        if(pos == -1) {
-+            return EAI_NONAME;
-+        } else {
-+            ipstr = strdup(inet_ntoa(addr));
-+            ret = realgetaddrinfo(ipstr, service, hints, res);
-+            free(ipstr);
-+        }
-+    } else {
-+        ret = realgetaddrinfo(node, service, hints, res);
-+    }
-+
-+    return ret;
-+}
-+
-+struct hostent *
-+our_getipnodebyname(dead_pool *pool, const char *name, int af, int flags, 
-+                    int *error_num)
-+{
-+    int pos;
-+    struct hostent *he = NULL;
-+    int want_4in6 = 0;
-+    char addr_convert_buf[80];
-+    struct in_addr pool_addr;
-+
-+    if(af == AF_INET6) {
-+        /* Caller has requested an AF_INET6 address, and is not prepared to
-+           accept IPv4-mapped IPV6 addresses. There's nothing we can do to
-+           service their request. */
-+        if((flags & AI_V4MAPPED) == 0) {
-+            show_msg(MSGWARN, "getipnodebyname: asked for V6 addresses only, "
-+                     "but tsocks can't handle that\n");
-+            *error_num = NO_RECOVERY;
-+            return NULL;
-+        } else {
-+            want_4in6 = 1;
-+        }
-+    }
-+
-+    pos = store_pool_entry(pool, (char *)name, &pool_addr);
-+    if(pos == -1) {
-+        *error_num = HOST_NOT_FOUND;
-+        return NULL;
-+    }
-+
-+    he = alloc_hostent(af);
-+    if(he == NULL) {
-+        show_msg(MSGERR, "getipnodebyname: failed to allocate hostent\n");
-+        *error_num = NO_RECOVERY;
-+        return NULL;
-+    }
-+
-+    if(want_4in6) {
-+        /* Convert the ipv4 address in *addr to an IPv4 in IPv6 mapped 
-+           address. TODO: inet_ntoa() is thread-safe on Solaris but might
-+           not be on other platforms. */
-+        strcpy(addr_convert_buf, "::FFFF:");
-+        strcpy(addr_convert_buf+7, inet_ntoa(pool_addr));
-+        if(inet_pton(AF_INET6, addr_convert_buf, he->h_addr_list[0]) != 1) {
-+            show_msg(MSGERR, "getipnodebyname: inet_pton() failed!\n");
-+            free_hostent(he);
-+            *error_num = NO_RECOVERY;
-+            return NULL;
-+        }
-+    } else {
-+        ((struct in_addr *) he->h_addr_list[0])->s_addr = pool_addr.s_addr;
-+    }
-+    he->h_name = strdup(name);
-+
-+    return he;
-+}
-+
-+
-diff -rN -U 5 tsocks-1.8/dead_pool.h tsocks/dead_pool.h
---- tsocks-1.8/dead_pool.h	1970-01-01 12:00:00.000000000 +1200
-+++ tsocks/dead_pool.h	2005-10-01 18:28:53.000000000 +1200
-@@ -0,0 +1,44 @@
-+#ifndef _DEAD_POOL_H
-+#define _DEAD_POOL_H
-+
-+#include <config.h>
-+
-+extern int (*realconnect)(CONNECT_SIGNATURE);
-+extern int (*realclose)(CLOSE_SIGNATURE);
-+extern int (*realgetaddrinfo)(GETADDRINFO_SIGNATURE);
-+
-+struct struct_pool_ent {
-+  unsigned int ip;
-+  char name[256];
-+};
-+
-+typedef struct struct_pool_ent pool_ent;
-+
-+struct struct_dead_pool {
-+  pool_ent *entries;            /* Points to array of pool entries */
-+  int n_entries;                /* Number of entries in the deadpool */
-+  unsigned int deadrange_base;  /* Deadrange start IP in host byte order */
-+  unsigned int deadrange_mask;  /* Deadrange netmask in host byte order */
-+  unsigned int deadrange_size;  /* Number of IPs in the deadrange */
-+  unsigned int write_pos;       /* Next position to use in the pool array */
-+  unsigned int dead_pos;        /* Next 'unused' deadpool IP */
-+  uint32_t sockshost;     
-+  uint16_t socksport;
-+  char pad[2];
-+};
-+
-+typedef struct struct_dead_pool dead_pool;
-+
-+dead_pool *init_pool(int deadpool_size, struct in_addr deadrange_base, 
-+    struct in_addr deadrange_mask, char *sockshost, uint16_t socksport);
-+int is_dead_address(dead_pool *pool, uint32_t addr);
-+char *get_pool_entry(dead_pool *pool, struct in_addr *addr);
-+int search_pool_for_name(dead_pool *pool, const char *name);
-+struct hostent *our_gethostbyname(dead_pool *pool, const char *name);
-+int our_getaddrinfo(dead_pool *pool, const char *node, const char *service, 
-+    void *hints, void *res);
-+struct hostent *our_getipnodebyname(dead_pool *pool, const char *name, 
-+    int af, int flags, int *error_num);
-+
-+#endif /* _DEAD_POOL_H */
-+
-diff -rN -U 5 tsocks-1.8/INSTALL tsocks/INSTALL
---- tsocks-1.8/INSTALL	2002-05-18 14:12:30.000000000 +1200
-+++ tsocks/INSTALL	2005-10-02 15:49:59.000000000 +1300
-@@ -2,14 +2,19 @@
- -------------------------------
- 
- 1. Unpack the archive (though if you're reading this you've already
- achieved that)
- 
--   tar -zxvf tsocks-<version>.tar.gx
-+   tar -zxvf tsocks-<version>.tar.gz
-+                 OR
-+   tar -jxvf tsocks-<version>.tar.bz
- 
- 2. Run ./configure, options which might be of interest (and that are 
-    specific to tsocks include):
-+	--disable-tordns	This option disables tordns, which causes
-+				names to be looked up in a way designed to
-+				work well with Tor.
- 	--enable-socksdns	This option causes tsocks to intercept
- 				DNS lookups and attempt to force them
- 				to use TCP instead of UDP and thus
- 				be proxied through the socks server. This
- 				is not a very elegant thing to do and
-@@ -24,14 +29,14 @@
- 				address of the connect() method tsocks
- 				overrides, instead it loads a reference
- 				to the libc shared library and then uses
- 				dlsym(). Again this is not very elegant
- 				and shouldn't be required.
--	--disable-hostnames	This disables DNS lookups on names
-+	--enable-hostnames	This enables DNS lookups on names
- 				provided as socks servers in the config
--				file. This option is necessary
--				if socks dns is enabled since tsocks
-+				file. This option is not compatible with
-+				tordns or socks dns, since tsocks
- 				can't send a socks dns request to resolve
- 				the location of the socks server. 
- 	--with-conf=<filename>	You can specify the location of the tsocks
- 				configuration file using this option, it
- 				defaults to '/etc/tsocks.conf'
-diff -rN -U 5 tsocks-1.8/Makefile.in tsocks/Makefile.in
---- tsocks-1.8/Makefile.in	2002-03-16 23:12:40.000000000 +1300
-+++ tsocks/Makefile.in	2005-10-02 21:58:35.000000000 +1300
-@@ -17,15 +17,17 @@
- INSPECT = inspectsocks
- SAVE = saveme
- LIB_NAME = libtsocks
- COMMON = common
- PARSER = parser
-+DEADPOOL = dead_pool
- VALIDATECONF = validateconf
- SCRIPT = tsocks
- SHLIB_MAJOR = 1
- SHLIB_MINOR = 8
- SHLIB = ${LIB_NAME}.so.${SHLIB_MAJOR}.${SHLIB_MINOR}
-+DEADPOOL_O = @DEADPOOL_O@
- 
- INSTALL = @INSTALL@
- INSTALL_DATA = @INSTALL_DATA@
- CFLAGS = @CFLAGS@
- INCLUDES = -I.
-@@ -47,12 +49,12 @@
- 	${SHCC} ${CFLAGS} ${INCLUDES} -o ${INSPECT} ${INSPECT}.c ${COMMON}.o ${LIBS} 
- 
- ${SAVE}: ${SAVE}.c
- 	${SHCC} ${CFLAGS} ${INCLUDES} -static -o ${SAVE} ${SAVE}.c
- 
--${SHLIB}: ${OBJS} ${COMMON}.o ${PARSER}.o
--	${SHCC} ${CFLAGS} ${INCLUDES} -nostdlib -shared -o ${SHLIB} ${OBJS} ${COMMON}.o ${PARSER}.o ${DYNLIB_FLAGS} ${SPECIALLIBS} ${LIBS}
-+${SHLIB}: ${OBJS} ${COMMON}.o ${PARSER}.o ${DEADPOOL_O}
-+	${SHCC} ${CFLAGS} ${INCLUDES} -nostdlib -shared -o ${SHLIB} ${OBJS} ${COMMON}.o ${PARSER}.o ${DEADPOOL_O} ${DYNLIB_FLAGS} ${SPECIALLIBS} ${LIBS}
- 	ln -sf ${SHLIB} ${LIB_NAME}.so
- 
- %.so: %.c
- 	${SHCC} ${CFLAGS} ${INCLUDES} -c ${CC_SWITCHES} $< -o $@
- 
-@@ -81,6 +83,9 @@
- 	
- clean:
- 	-rm -f *.so *.so.* *.o *~ ${TARGETS}
- 
- distclean: clean
--	-rm -f config.cache config.log config.h Makefile
-+	-rm -f config.cache config.log config.h Makefile \
-+		aclocal.m4 config.status 
-+	-rm -rf autom4te.cache
-+
-diff -rN -U 5 tsocks-1.8/parser.c tsocks/parser.c
---- tsocks-1.8/parser.c	2002-03-14 01:34:22.000000000 +1300
-+++ tsocks/parser.c	2005-10-01 21:56:10.000000000 +1200
-@@ -27,10 +27,13 @@
- static int handle_reaches(struct parsedfile *, int, char *);
- static int handle_server(struct parsedfile *, int, char *);
- static int handle_type(struct parsedfile *config, int, char *);
- static int handle_port(struct parsedfile *config, int, char *);
- static int handle_local(struct parsedfile *, int, char *);
-+static int handle_tordns_enabled(struct parsedfile *, int, char *);
-+static int handle_tordns_deadpool_range(struct parsedfile *, int, char *);
-+static int handle_tordns_cache_size(struct parsedfile *, int, char *);
- static int handle_defuser(struct parsedfile *, int, char *);
- static int handle_defpass(struct parsedfile *, int, char *);
- static int make_netent(char *value, struct netent **ent);
- 
- int read_config (char *filename, struct parsedfile *config) {
-@@ -41,13 +44,17 @@
- 	struct serverent *server;
- 
-    /* Clear out the structure */
-    memset(config, 0x0, sizeof(*config));
- 
--	/* Initialization */
-+   /* Initialization */
-    currentcontext = &(config->defaultserver);
- 
-+   /* Tordns defaults */
-+   config->tordns_cache_size = 256;
-+   config->tordns_enabled = 1;
-+
- 	/* If a filename wasn't provided, use the default */
- 	if (filename == NULL) {
- 		strncpy(line, CONF_FILE, sizeof(line) - 1);
- 		/* Insure null termination */
- 		line[sizeof(line) - 1] = (char) 0;
-@@ -56,11 +63,11 @@
- 
- 	/* Read the configuration file */
- 	if ((conf = fopen(filename, "r")) == NULL) {
- 		show_msg(MSGERR, "Could not open socks configuration file "
- 			   "(%s), assuming all networks local\n", filename);
--      handle_local(config, 0, "0.0.0.0/0.0.0.0");
-+        handle_local(config, 0, "0.0.0.0/0.0.0.0");
- 		rc = 1; /* Severe errors reading configuration */
- 	}	
- 	else {
-       memset(&(config->defaultserver), 0x0, sizeof(config->defaultserver));
- 
-@@ -82,13 +89,17 @@
- 		server = (config->paths);
- 		while (server != NULL) {
- 			check_server(server);
- 			server = server->next;
- 		}
--
- 	}
- 
-+    /* Initialize tordns deadpool_range if not supplied */
-+    if(config->tordns_deadpool_range == NULL) {
-+        handle_tordns_deadpool_range(config, 0, "127.0.69.0/255.255.255.0");
-+    }
-+
- 	return(rc);
- }
- 
- /* Check server entries (and establish defaults) */
- static int check_server(struct serverent *server) {
-@@ -150,11 +161,17 @@
- 				handle_defuser(config, lineno, words[2]);
- 			} else if (!strcmp(words[0], "default_pass")) {
- 				handle_defpass(config, lineno, words[2]);
- 			} else if (!strcmp(words[0], "local")) {
- 				handle_local(config, lineno, words[2]);
--			} else {
-+            } else if (!strcmp(words[0], "tordns_enable")) {
-+                handle_tordns_enabled(config, lineno, words[2]);
-+            } else if (!strcmp(words[0], "tordns_deadpool_range")) {
-+                handle_tordns_deadpool_range(config, lineno, words[2]);
-+            } else if (!strcmp(words[0], "tordns_cache_size")) {
-+                handle_tordns_cache_size(config, lineno, words[2]);
-+            } else {
- 				show_msg(MSGERR, "Invalid pair type (%s) specified "
- 					   "on line %d in configuration file, "
- 					   "\"%s\"\n", words[0], lineno, 
- 					   savedline);
- 			}
-@@ -416,10 +433,130 @@
- 	}
- 	
- 	return(0);
- }
- 
-+static int handle_flag(char *value) 
-+{
-+    if(!strcasecmp(value, "true") || !strcasecmp(value, "yes")  
-+                                  || !strcmp(value, "1")) {
-+        return 1;
-+    } else if (!strcasecmp(value, "false") || !strcasecmp(value, "no") 
-+                                           || !strcmp(value, "0")) {
-+        return 0;
-+    } else {
-+        return -1;
-+    }    
-+}
-+
-+static int handle_tordns_enabled(struct parsedfile *config, int lineno,
-+                           char *value)
-+{
-+    int val = handle_flag(value);
-+    if(val == -1) {
-+        show_msg(MSGERR, "Invalid value %s supplied for tordns_enabled at "
-+                 "line %d in config file, IGNORED\n", value, lineno);
-+    } else {
-+        config->tordns_enabled = val;
-+    }
-+    return 0;
-+}
-+
-+static int handle_tordns_cache_size(struct parsedfile *config, int lineno,
-+                           char *value)
-+{
-+    char *endptr;
-+    long size = strtol(value, &endptr, 10);
-+    if(*endptr != '\0') {
-+        show_msg(MSGERR, "Error parsing integer value for "
-+                 "tordns_cache_size (%s), using default %d\n", 
-+                 value, config->tordns_cache_size);
-+    } else if(size < 128) {
-+        show_msg(MSGERR, "The value supplied for tordns_cache_size (%d) "
-+                 "is too small (<128), using default %d\n", size, 
-+                 config->tordns_cache_size);
-+    } else if(size > 4096) {
-+        show_msg(MSGERR, "The value supplied for tordns_cache_range (%d) "
-+                 "is too large (>4096), using default %d\n", size, 
-+                 config->tordns_cache_size);
-+    } else {
-+        config->tordns_cache_size = size;
-+    }
-+    return 0;
-+}
-+
-+static int handle_tordns_deadpool_range(struct parsedfile *config, int lineno, 
-+                           char *value)
-+{
-+    int rc;
-+    struct netent *ent;
-+
-+    if (config->tordns_deadpool_range != NULL) {
-+        show_msg(MSGERR, "Only one 'deadpool' entry permitted, found a "
-+               "second at line %d in configuration file.\n");
-+        return(0);
-+    }
-+
-+    if (currentcontext != &(config->defaultserver)) {
-+        show_msg(MSGERR, "Deadpool cannot be specified in path "
-+               "block at like %d in configuration file. "
-+               "(Path block started at line %d)\n",
-+               lineno, currentcontext->lineno);
-+        return(0);
-+    }
-+
-+    rc = make_netent(value, &ent);
-+    /* This is copied from handle_local and should probably be folded into
-+       a generic whinge() function or something */
-+    switch(rc) {
-+        case 1:
-+            show_msg(MSGERR, "The deadpool specification (%s) is not validly "
-+                   "constructed on line %d in configuration "
-+                   "file\n", value, lineno);
-+            return(0);
-+            break;
-+        case 2:
-+            show_msg(MSGERR, "IP for deadpool "
-+                   "network specification (%s) is not valid on line "
-+                   "%d in configuration file\n", value, lineno);
-+            return(0);
-+            break;
-+        case 3:
-+            show_msg(MSGERR, "SUBNET for " 
-+                   "deadpool network specification (%s) is not valid on "
-+                   "line %d in configuration file\n", value, 
-+                   lineno);
-+            return(0);
-+            break;
-+        case 4:
-+            show_msg(MSGERR, "IP (%s) & ", inet_ntoa(ent->localip));
-+            show_msg(MSGERR, "SUBNET (%s) != IP on line %d in "
-+                   "configuration file, ignored\n",
-+                   inet_ntoa(ent->localnet), lineno);
-+            return(0);
-+        case 5:
-+        case 6:
-+        case 7:
-+            show_msg(MSGERR, "Port specification is invalid and "
-+                   "not allowed in deadpool specification "
-+               "(%s) on line %d in configuration file\n",
-+                   value, lineno);
-+            return(0);
-+         break;
-+    }
-+    if (ent->startport || ent->endport) {
-+        show_msg(MSGERR, "Port specification is "
-+           "not allowed in deadpool specification "
-+           "(%s) on line %d in configuration file\n",
-+           value, lineno);
-+        return(0);
-+    }
-+
-+    config->tordns_deadpool_range = ent;
-+    return 0;
-+}
-+
- static int handle_local(struct parsedfile *config, int lineno, char *value) {
- 	int rc;
- 	struct netent *ent;
- 
- 	if (currentcontext != &(config->defaultserver)) {
-diff -rN -U 5 tsocks-1.8/parser.h tsocks/parser.h
---- tsocks-1.8/parser.h	2002-02-10 20:26:27.000000000 +1300
-+++ tsocks/parser.h	2005-10-01 18:40:35.000000000 +1200
-@@ -23,18 +23,22 @@
- struct netent {
-    struct in_addr localip; /* Base IP of the network */
-    struct in_addr localnet; /* Mask for the network */
-    unsigned long startport; /* Range of ports for the */
-    unsigned long endport;   /* network                */
--	struct netent *next; /* Pointer to next network entry */
-+   struct netent *next; /* Pointer to next network entry */
- };
- 
- /* Structure representing a complete parsed file */
- struct parsedfile {
-    struct netent *localnets;
-    struct serverent defaultserver;
-    struct serverent *paths;
-+   int tordns_enabled;
-+   int tordns_failopen;
-+   int tordns_cache_size;
-+   struct netent *tordns_deadpool_range;
- };
- 
- /* Functions provided by parser module */
- int read_config(char *, struct parsedfile *);
- int is_local(struct parsedfile *, struct in_addr *);
-diff -rN -U 5 tsocks-1.8/README.TORDNS tsocks/README.TORDNS
---- tsocks-1.8/README.TORDNS	1970-01-01 12:00:00.000000000 +1200
-+++ tsocks/README.TORDNS	2005-10-02 15:47:16.000000000 +1300
-@@ -0,0 +1,187 @@
-+
-+TORDNS
-+======
-+
-+What is it?
-+-----------
-+
-+This patch modifies the tsocks library to use SOCKS for name resolution.
-+
-+
-+Why should I use it?
-+--------------------
-+
-+* It's easier.
-+
-+When using this patch you don't (always..) need to run 'tor-resolve' when 
-+using 'torify' anymore.  Also, 'torify' now works directly with SSH without 
-+the need for connect scripts or other fiddling. [As long as SSH is not 
-+installed suid root].
-+
-+* It allows you to use programs which are not SOCKS aware to connect to 
-+.onion sites. 
-+
-+For example, you can ssh directly to a .onion site, or use telnet / netcat
-+without hassle.  
-+
-+
-+QUICK: what do I need to do to make it work?
-+--------------------------------------------
-+
-+Configuration instructions:
-+
-+1) Get the sources
-+
-+wget http://ftp1.sourceforge.net/tsocks/tsocks-1.8beta5.tar.gz
-+wget http://www.totalinfosecurity.com/patches/tor-tsocks/tordns-1.8b5.patch
-+
-+2) Unpack and apply the tsocks patch
-+
-+tar xzvf tsocks-1.8beta5.tar.gz
-+cd tsocks-1.8
-+patch -p1 < ../tordns-1.8b5.patch
-+
-+3) Configure, compile and install
-+
-+NOTE: The default 'configure' settings for tsocks have been changed by 
-+this patch.  The --disable-hostnames option (don't try to use DNS to look
-+up SOCKS servers) is now enabled by default.  Also, tordns is enabled 
-+by default.
-+
-+./configure 
-+make 
-+make install 
-+
-+All the tordns config options have sane default values which you should
-+not need to change.  
-+
-+
-+Why did I need to use 'tor-resolve' with 'torify' in the first place?
-+---------------------------------------------------------------------
-+
-+Because if you run "torify telnet bar.foo.com 31337", for example, then 
-+you're leaking information about what sites you're visiting to DNS servers.  
-+
-+The tor-resolve utility resolves names through tor using SOCKS, in a way
-+that shouldn't compromise your privacy.
-+
-+
-+What won't work with this?
-+--------------------------
-+
-+The 'tordns' feature for tsocks only works with applications using the 
-+standard c library name lookup mechanisms.
-+
-+Some programs roll their own name lookup functions, for example, 'curl' 
-+uses the 'adns' library, not the standard c library name lookup calls.  
-+In this case, you'll still be leaking DNS requests.
-+
-+However, it seems that most programs which go to the trouble of implementing 
-+asynchronous DNS requests or doing other tricky things have native SOCKS or
-+HTTP proxy support.  
-+
-+Requests for reverse name lookups are not intercepted.
-+
-+Finally, the tsocks library is NOT thread-safe, with or without this patch.
-+You should not 'torify' multithreaded applications.
-+
-+
-+How does it work?
-+-----------------
-+
-+This patch adds interceptors for common name resolution calls to tsocks.  
-+Specifically, the 'gethostbyname', 'getaddrinfo' and 'getipnodebyname' library 
-+functions. (gethostbyname_r is not supported).
-+
-+When a call to one of these functions is intercepted, a SOCKS4A resolve 
-+request is used to retrieve the relevant information, and the results are
-+cached. 
-+
-+When the application calls 'connect', the cache is consulted and instead
-+of making a SOCKS5 request and supplying the IP address, we connect using 
-+the name.  This prevents those messages in the tor logs which look like:
-+
-+  Sep 23 10:12:20.901 [warn] fetch_from_buf_socks(): Your application (using s
-+  ocks5 on port 80) is giving Tor only an IP address. Applications that do DNS
-+  resolves themselves may leak information. Consider using Socks4A (e.g. via
-+  privoxy or socat) instead.
-+
-+There are special provisions for handling .onion sites.  When a program asks
-+to resolve a name ending in '.onion', no name lookup is performed.  A bogus IP 
-+address is returned. The range of unused IP addresses to hand out is called the 
-+"deadpool".  This IP address doesn't mean anything in particular, and could be 
-+considered a cookie associated with the name.  When the application eventually 
-+calls 'connect' with this bogus IP, the cache is consulted and the result is a 
-+SOCKS5 request which includes the name of the .onion site.
-+
-+The default deadpool range is '127.0.69.0/255.255.255.0'.  NOTE: if a resolve
-+request results in an IP from the deadpool range then the response is rejected,
-+and it appears to the application that the lookup failed.
-+
-+The lookup cache is kept in mmap'd memory and shared across fork() calls.
-+This is because some programs perform name lookups in a child process and 
-+then invoke 'connect' in the parent as a kind of "poor man's async DNS".  
-+
-+
-+Advanced configuration options
-+------------------------------
-+
-+The following options have been added to the tsocks configuration file:
-+
-+tordns_enable
-+
-+  The default value is 'true'.  If you set it to 'false', tsocks should work 
-+  just like it did without the tordns patch.  
-+
-+  
-+tordns_deadpool_range
-+
-+  The default value is '127.0.69.0/255.255.255.0'.  This specifies what range
-+  of IP addresses will be handed to the application as "cookies" for .onion
-+  names.  Of course, you should pick a block of addresses which you aren't 
-+  going to ever need to actually connect to.    
-+
-+
-+tordns_cache_size
-+
-+  This specifies the number of IP addresses looked up through socks to cache.
-+  The default value is 256. The default value is 256.  Each entry consumes 260 
-+  bytes of memory, so the default adds 66,560 bytes of overhead to each 
-+  'torified' process. NOTE: if the number of IP addresses in 
-+  tordns_deadpool_range is less than the value specified for tordns_cache_size, 
-+  then the cache will be shrunk to fit the deadpool range. This is to prevent 
-+  duplicate deadpool addresses from ever appearing in the cache.
-+
-+
-+TODO
-+----
-+
-+* Think about how local names get resolved.  Is it important?  For example,
-+  if I 'telnet localhost' which using tordns, what should happen?  Should
-+  we search through /etc/hosts ourselves or what?  
-+  
-+* What about the isc library calls like res_init and so on?  How widely are
-+  they use?  Does this present a more elegant way to implement this stuff?
-+
-+* Perhaps intercept res_query etc and try to do something appropriate.
-+
-+* It should be possible to make this thread-safe with --enable-threads.
-+
-+* validateconf needs to be updated to understand (and show information about)
-+  the tordns configuration options.
-+
-+* Perhaps intercept reverse name lookups?
-+
-+* In fact, one could modify tsocks further to play nicely with tor.  For 
-+  example, you could prevent nonlocal UDP traffic from being sent at all,
-+  and so on.
-+
-+
-+******************************************************
-+Questions or comments, please contact:
-+Blair Strang (bls at totalinfosecurity.com)
-+Caleb Anderson (caleb.anderson at totalinfosecurity.com)
-+Carl Purvis (carl.purvis at totalinfosecurity.com)
-+
-+Total Information Security Ltd.
-+http://www.totalinfosecurity.com/
-diff -rN -U 5 tsocks-1.8/tsocks.c tsocks/tsocks.c
---- tsocks-1.8/tsocks.c	2002-07-16 10:50:52.000000000 +1200
-+++ tsocks/tsocks.c	2005-10-01 22:01:48.000000000 +1200
-@@ -51,19 +51,26 @@
- #ifdef USE_SOCKS_DNS
- #include <resolv.h>
- #endif
- #include <parser.h>
- #include <tsocks.h>
-+#include "dead_pool.h"
- 
- /* Global Declarations */
- #ifdef USE_SOCKS_DNS
- static int (*realresinit)(void);
- #endif
--static int (*realconnect)(CONNECT_SIGNATURE);
-+#ifdef USE_TOR_DNS
-+static dead_pool *pool = NULL;
-+static struct hostent *(*realgethostbyname)(GETHOSTBYNAME_SIGNATURE);
-+int (*realgetaddrinfo)(GETADDRINFO_SIGNATURE);
-+static struct hostent *(*realgetipnodebyname)(GETIPNODEBYNAME_SIGNATURE);
-+#endif
-+int (*realconnect)(CONNECT_SIGNATURE);
- static int (*realselect)(SELECT_SIGNATURE);
- static int (*realpoll)(POLL_SIGNATURE);
--static int (*realclose)(CLOSE_SIGNATURE);
-+int (*realclose)(CLOSE_SIGNATURE);
- static struct parsedfile *config;
- static struct connreq *requests = NULL;
- static int suid = 0;
- static char *conffile = NULL;
- 
-@@ -74,10 +81,15 @@
- int poll(POLL_SIGNATURE);
- int close(CLOSE_SIGNATURE);
- #ifdef USE_SOCKS_DNS
- int res_init(void);
- #endif
-+#ifdef USE_TOR_DNS
-+struct hostent *gethostbyname(GETHOSTBYNAME_SIGNATURE);
-+int getaddrinfo(GETADDRINFO_SIGNATURE);
-+struct hostent *getipnodebyname(GETIPNODEBYNAME_SIGNATURE);
-+#endif 
- 
- /* Private Function Prototypes */
- static int get_config();
- static int get_environment();
- static int connect_server(struct connreq *conn);
-@@ -97,10 +109,14 @@
- static int recv_buffer(struct connreq *conn);
- static int read_socksv5_method(struct connreq *conn);
- static int read_socksv4_req(struct connreq *conn);
- static int read_socksv5_connect(struct connreq *conn);
- static int read_socksv5_auth(struct connreq *conn);
-+#ifdef USE_TOR_DNS
-+static int deadpool_init();
-+static int send_socksv4a_request(struct connreq *conn, const char *onion_host);
-+#endif
- 
- void _init(void) {
- #ifdef USE_OLD_DLSYM
- 	void *lib;
- #endif
-@@ -118,24 +134,38 @@
- 	realpoll = dlsym(RTLD_NEXT, "poll");
- 	realclose = dlsym(RTLD_NEXT, "close");
- 	#ifdef USE_SOCKS_DNS
- 	realresinit = dlsym(RTLD_NEXT, "res_init");
- 	#endif
-+    #ifdef USE_TOR_DNS
-+    realgethostbyname = dlsym(RTLD_NEXT, "gethostbyname");
-+    realgetaddrinfo = dlsym(RTLD_NEXT, "getaddrinfo");
-+    realgetipnodebyname = dlsym(RTLD_NEXT, "getipnodebyname");
-+    #endif
- #else
- 	lib = dlopen(LIBCONNECT, RTLD_LAZY);
- 	realconnect = dlsym(lib, "connect");
- 	realselect = dlsym(lib, "select");
- 	realpoll = dlsym(lib, "poll");
- 	#ifdef USE_SOCKS_DNS
- 	realresinit = dlsym(lib, "res_init");
- 	#endif
--	dlclose(lib);	
--
-+    #ifdef USE_TOR_DNS
-+    realgethostbyname = dlsym(lib, "gethostbyname");
-+    realgetaddrinfo = dlsym(lib, "getaddrinfo");
-+    realgetipnodebyname = dlsym(RTLD_NEXT, "getipnodebyname");
-+    #endif
-+    dlclose(lib);	
- 	lib = dlopen(LIBC, RTLD_LAZY);
--   realclose = dlsym(lib, "close");
-+	realclose = dlsym(lib, "close");
- 	dlclose(lib);	
- #endif
-+#ifdef USE_TOR_DNS
-+    /* Unfortunately, we can't do this lazily because otherwise our mmap'd
-+       area won't be shared across fork()s. */
-+    deadpool_init();
-+#endif 
- }
- 
- static int get_environment() {
-    static int done = 0;
-    int loglevel = MSGERR;
-@@ -181,12 +211,11 @@
-    if (config->paths)
-       show_msg(MSGDEBUG, "First lineno for first path is %d\n", config->paths->lineno);
- 
-    done = 1;
- 
--	return(0);
--
-+   return(0);
- }
- 
- int connect(CONNECT_SIGNATURE) {
- 	struct sockaddr_in *connaddr;
- 	struct sockaddr_in peer_address;
-@@ -271,16 +300,21 @@
-    if (!getpeername(__fd, (struct sockaddr *) &peer_address, &namelen)) {
-       show_msg(MSGDEBUG, "Socket is already connected, defering to "
-                          "real connect\n");
- 		return(realconnect(__fd, __addr, __len));
-    }
--      
-+     
-    show_msg(MSGDEBUG, "Got connection request for socket %d to "
-                       "%s\n", __fd, inet_ntoa(connaddr->sin_addr));
- 
-    /* If the address is local call realconnect */
-+#ifdef USE_TOR_DNS
-+   if (!(is_local(config, &(connaddr->sin_addr))) && 
-+       !is_dead_address(pool, connaddr->sin_addr.s_addr)) {
-+#else 
-    if (!(is_local(config, &(connaddr->sin_addr)))) {
-+#endif
-       show_msg(MSGDEBUG, "Connection for socket %d is local\n", __fd);
-       return(realconnect(__fd, __addr, __len));
-    }
- 
-    /* Ok, so its not local, we need a path to the net */
-@@ -869,19 +903,74 @@
-    return((rc ? errno : 0));
- }
- 
- static int send_socks_request(struct connreq *conn) {
- 	int rc = 0;
--	
--	if (conn->path->type == 4) 
--		rc = send_socksv4_request(conn);
--	else
--		rc = send_socksv5_method(conn);
- 
-+#ifdef USE_TOR_DNS
-+    if (conn->path->type == 4) {
-+        char *name = get_pool_entry(pool, &(conn->connaddr.sin_addr));
-+        if(name != NULL) {
-+            rc = send_socksv4a_request(conn,name);
-+        } else {
-+            rc = send_socksv4_request(conn);
-+        }
-+#else 
-+    if (conn->path->type == 4) {
-+      rc = send_socksv4_request(conn);
-+#endif
-+    } else {
-+	  rc = send_socksv5_method(conn);
-+	}
-    return(rc);
- }			
- 
-+#ifdef USE_TOR_DNS
-+static int send_socksv4a_request(struct connreq *conn,const char *onion_host) 
-+{
-+  struct passwd *user;
-+  struct sockreq *thisreq;
-+  int endOfUser;
-+  /* Determine the current username */
-+  user = getpwuid(getuid());	
-+
-+  thisreq = (struct sockreq *) conn->buffer;
-+  endOfUser=sizeof(struct sockreq) +
-+  (user == NULL ? 0 : strlen(user->pw_name)) + 1;
-+
-+  /* Check the buffer has enough space for the request  */
-+  /* and the user name                                  */
-+  conn->datalen = endOfUser+ 
-+                  (onion_host == NULL ? 0 : strlen(onion_host)) + 1;
-+  if (sizeof(conn->buffer) < conn->datalen) {
-+      show_msg(MSGERR, "The SOCKS username is too long");
-+      conn->state = FAILED;
-+      return(ECONNREFUSED);
-+  }
-+
-+  /* Create the request */
-+  thisreq->version = 4;
-+  thisreq->command = 1;
-+  thisreq->dstport = conn->connaddr.sin_port;
-+  thisreq->dstip   = htonl(1);
-+
-+  /* Copy the username */
-+  strcpy((char *) thisreq + sizeof(struct sockreq), 
-+         (user == NULL ? "" : user->pw_name));
-+
-+  /* Copy the onion host */
-+  strcpy((char *) thisreq + endOfUser,
-+         (onion_host == NULL ? "" : onion_host));
-+
-+  conn->datadone = 0;
-+  conn->state = SENDING;
-+  conn->nextstate = SENTV4REQ;
-+
-+  return(0);   
-+}
-+#endif /* USE_TOR_DNS */
-+
- static int send_socksv4_request(struct connreq *conn) {
- 	struct passwd *user;
- 	struct sockreq *thisreq;
- 	
- 	/* Determine the current username */
-@@ -931,10 +1020,14 @@
- 
-    return(0);
- }			
- 
- static int send_socksv5_connect(struct connreq *conn) {
-+#ifdef USE_TOR_DNS
-+   int namelen = 0;
-+   char *name = NULL;
-+#endif
-    char constring[] = { 0x05,    /* Version 5 SOCKS */
-                         0x01,    /* Connect request */
-                         0x00,    /* Reserved        */
-                         0x01 };  /* IP Version 4    */
- 
-@@ -942,14 +1035,42 @@
-    conn->datadone = 0;
-    conn->state = SENDING;
-    conn->nextstate = SENTV5CONNECT;
-    memcpy(conn->buffer, constring, sizeof(constring)); 
-    conn->datalen = sizeof(constring);
--	memcpy(&conn->buffer[conn->datalen], &(conn->connaddr.sin_addr.s_addr), 
--          sizeof(conn->connaddr.sin_addr.s_addr));
--   conn->datalen += sizeof(conn->connaddr.sin_addr.s_addr);
--	memcpy(&conn->buffer[conn->datalen], &(conn->connaddr.sin_port), sizeof(conn->connaddr.sin_port));
-+
-+#ifdef USE_TOR_DNS
-+   show_msg(MSGDEBUG, "send_socksv5_connect: looking for: %s\n",
-+            inet_ntoa(conn->connaddr.sin_addr));
-+
-+   name = get_pool_entry(pool, &(conn->connaddr.sin_addr));
-+   if(name != NULL) {
-+       namelen = strlen(name);
-+       if(namelen > 255) {  /* "Can't happen" */
-+           name = NULL;
-+       }
-+   }
-+   if(name != NULL) {
-+       show_msg(MSGDEBUG, "send_socksv5_connect: found it!\n");
-+       /* Substitute the domain name from the pool into the SOCKS request. */
-+       conn->buffer[3] = 0x03;  /* Change the ATYP field */
-+       conn->buffer[4] = namelen;  /* Length of name */
-+       conn->datalen++;
-+       memcpy(&conn->buffer[conn->datalen], name, namelen);
-+       conn->datalen += namelen;
-+   } else {
-+       show_msg(MSGDEBUG, "send_socksv5_connect: ip address not found\n");
-+#endif
-+       /* Use the raw IP address */
-+       memcpy(&conn->buffer[conn->datalen], &(conn->connaddr.sin_addr.s_addr), 
-+              sizeof(conn->connaddr.sin_addr.s_addr));
-+       conn->datalen += sizeof(conn->connaddr.sin_addr.s_addr);
-+#ifdef USE_TOR_DNS
-+   }
-+#endif
-+   memcpy(&conn->buffer[conn->datalen], &(conn->connaddr.sin_port), 
-+        sizeof(conn->connaddr.sin_port));
-    conn->datalen += sizeof(conn->connaddr.sin_port);
- 
-    return(0);
- }			
- 
-@@ -1175,24 +1296,56 @@
- 
-    return(rc);
- }
- #endif
- 
--#if 0
--	/* Get the flags of the socket, (incase its non blocking */
--	if ((sockflags = fcntl(sockid, F_GETFL)) == -1) {
--		sockflags = 0;
--	}
-+#ifdef USE_TOR_DNS
-+static int deadpool_init()
-+{
-+  if(!pool) {
-+      get_environment();
-+      get_config();
-+      if(config->tordns_enabled) {
-+          pool = init_pool(
-+              config->tordns_cache_size, 
-+              config->tordns_deadpool_range->localip, 
-+              config->tordns_deadpool_range->localnet, 
-+              config->defaultserver.address,
-+              config->defaultserver.port
-+          );
-+          if(!pool) {
-+              show_msg(MSGERR, "failed to initialize deadpool: tordns disabled\n");
-+          }
-+      }
-+  }
-+  return 0;
-+}
-+
-+struct hostent *gethostbyname(GETHOSTBYNAME_SIGNATURE)
-+{
-+  if(pool) {
-+      return our_gethostbyname(pool, name);
-+  } else {
-+      return realgethostbyname(name);
-+  }  
-+}
-+
-+int getaddrinfo(GETADDRINFO_SIGNATURE)
-+{
-+  if(pool) {
-+      return our_getaddrinfo(pool, node, service, hints, res);
-+  } else {
-+      return realgetaddrinfo(node, service, hints, res);
-+  }
-+}
-+
-+struct hostent *getipnodebyname(GETIPNODEBYNAME_SIGNATURE)
-+{
-+  if(pool) {
-+      return our_getipnodebyname(pool, name, af, flags, error_num);
-+  } else {
-+      return realgetipnodebyname(name, af, flags, error_num);
-+  }
-+}
- 
--	/* If the flags show the socket as blocking, set it to   */
--	/* blocking for our connection to the socks server       */
--	if ((sockflags & O_NONBLOCK) != 0) {
--		fcntl(sockid, F_SETFL, sockflags & (~(O_NONBLOCK)));
--	}
- #endif 
--#if 0
--	/* If the socket was in non blocking mode, restore that */
--	if ((sockflags & O_NONBLOCK) != 0) {
--		fcntl(sockid, F_SETFL, sockflags);
--	}
--#endif
- 
-diff -rN -U 5 tsocks-1.8/tsocks.conf.5 tsocks/tsocks.conf.5
---- tsocks-1.8/tsocks.conf.5	2002-05-18 14:13:08.000000000 +1200
-+++ tsocks/tsocks.conf.5	2005-10-01 21:41:50.000000000 +1200
-@@ -124,10 +124,33 @@
- 150.0.0.0:80-1024/255.0.0.0" indicates to tsocks that the SOCKS server 
- specified in the current path block should be used to access any IPs in the 
- range 150.0.0.0 to 150.255.255.255 when the connection request is for ports
- 80-1024.
- 
-+.TP
-+.I tordns_enable
-+This enables the use of the 'tordns' feature in tsocks, which overrides the
-+standard C library name resolution calls to use SOCKS.    The default value is 
-+'true'. 
-+
-+.TP
-+.I tordns_deadpool_range
-+Tor hidden sites do not have real IP addresses.  This specifies what range of 
-+IP addresses will be handed to the application as "cookies" for .onion names.  
-+Of course, you should pick a block of addresses which you aren't going to ever 
-+need to actually connect to. The default value is '127.0.69.0/255.255.255.0'.
-+
-+.TP
-+.I tordns_cache_size
-+This specifies the number of IP addresses looked up through SOCKS to cache.
-+The default value is 256.  Each entry consumes 260 bytes of memory, so the
-+default adds 66,560 bytes of overhead to each 'torified' process. NOTE: if
-+the number of IP addresses in tordns_deadpool_range is less than the value
-+specified for tordns_cache_size, then the cache will be shrunk to fit the
-+deadpool range. This is to prevent duplicate deadpool addresses from ever
-+appearing in the cache. 
-+
- .SH UTILITIES
- tsocks comes with two utilities that can be useful in creating and verifying
- the tsocks configuration file. 
- 
- .TP
-diff -rN -U 5 tsocks-1.8/tsocks.h tsocks/tsocks.h
---- tsocks-1.8/tsocks.h	2002-03-14 01:58:09.000000000 +1300
-+++ tsocks/tsocks.h	2005-09-24 01:38:12.000000000 +1200
-@@ -50,11 +50,11 @@
-    int selectevents;
- 
-    /* Buffer for sending and receiving on the socket */
-    int datalen;
-    int datadone;
--   char buffer[1024];
-+   char buffer[2048];
- 
-    struct connreq *next;
- };
- 
- /* Connection statuses */
-diff -rN -U 5 tsocks-1.8/validateconf.c tsocks/validateconf.c
---- tsocks-1.8/validateconf.c	2002-02-07 23:49:59.000000000 +1300
-+++ tsocks/validateconf.c	2005-10-01 19:38:08.000000000 +1200
-@@ -161,11 +161,24 @@
- 			printf("\n");
- 			server = server->next;
- 		}	
- 	} 
- 
--	return;
-+#ifdef USE_TOR_DNS
-+    /* Show tordns configuration options */
-+    printf("=== TorDNS Configuration Options ===\n");
-+    printf("Tor DNS enabled:        %s\n", 
-+           config->tordns_enabled ? "yes" : "no");
-+    printf("Tor DNS deadpool range: %s/", 
-+           inet_ntoa(config->tordns_deadpool_range->localip));
-+    printf("%s\n", 
-+        inet_ntoa(config->tordns_deadpool_range->localnet));
-+    printf("Tor DNS cache size:     %d\n", config->tordns_cache_size);
-+    printf("\n");
-+#endif
-+
-+    return;
- }
- 
- void show_server(struct parsedfile *config, struct serverent *server, int def) {
- 	struct in_addr res;
- 	struct netent *net;





More information about the tor-commits mailing list