]> Pileus Git - ~andy/fetchmail/commitdiff
IPv6 patches.
authorEric S. Raymond <esr@thyrsus.com>
Sun, 19 Dec 1999 20:15:47 +0000 (20:15 -0000)
committerEric S. Raymond <esr@thyrsus.com>
Sun, 19 Dec 1999 20:15:47 +0000 (20:15 -0000)
svn path=/trunk/; revision=2666

INSTALL
Makefile.in
NEWS
configure.in
design-notes.html
fetchmail-FAQ.html
fetchmail-features.html
socket.c

diff --git a/INSTALL b/INSTALL
index 79ff04860b41373d7ce96220b3c9bbec20f3a541..0db142c4203c96ecfebc92e275dd582be8907d1d 100644 (file)
--- a/INSTALL
+++ b/INSTALL
@@ -26,11 +26,12 @@ you should install OPIE.  You need version 2.32 or better.
 The OPIE library sources are available at ftp://ftp.inner.net/pub/opie.
 You can also find OPIE and IPV6-capable servers there.
 
-Building in IPv6 support or the IPsec patches *requires*
- that Craig
-Metz's inet6-apps kit be installed; the IPsec patches require that the
-kit be built with network security API support enabled. The kit can be
-gotten from ftp.ipv6.inner.net:/pub/ipv6 (via IPv6) or ftp.inner.net
+Building in IPv6 support *requires* glibc 2.1.1 (or newer) or 
+that Craig Metz's inet6-apps kit be installed.
+The IPsec patches *requires* inet6-apps kit.;
+the IPsec patches require that the kit be built with network
+security API support enabled. The kit can be gotten from
+ftp.ipv6.inner.net:/pub/ipv6 (via IPv6) or ftp.inner.net
 /pub/ipv6 (via IPv4).
 
 2. CONFIGURE
index 25ced5d67080f205f06549d2f2d2cd429e7b225c..2527d3c01d065b6a6be87dda26e77fa4b15029c3 100644 (file)
@@ -86,7 +86,7 @@ protobjs = rcfile_y.o rcfile_l.o socket.o getpass.o pop2.o pop3.o imap.o \
        etrn.o fetchmail.o env.o options.o daemon.o driver.o sink.o \
        rfc822.o smtp.o xmalloc.o uid.o mxget.o md5c.o md5ify.o rpa.o \
        interface.o netrc.o base64.o error.o unmime.o conf.o checkalias.o \
-       smbdes.o smbencrypt.o smbmd4.o smbutil.o
+       smbdes.o smbencrypt.o smbmd4.o smbutil.o ipv6-connect.o
 
 objs = $(protobjs) $(extras) $(EXTRAOBJ)
 
@@ -100,7 +100,7 @@ srcs = $(srcdir)/socket.c $(srcdir)/getpass.c $(srcdir)/pop2.c              \
        $(srcdir)/interface.c $(srcdir)/netrc.c $(srcdir)/base64.c      \
        $(srcdir)/error.c $(srcdir)/unmime.c $(srcdir)/conf.c           \
        $(srcdir)/checkalias.c $(srcdir)/smbdes.c $(srcdir)/smbencrypt.c \
-       $(srcdir)/smbmd4.c $(srcdir)/smbutil.c
+       $(srcdir)/smbmd4.c $(srcdir)/smbutil.c $(srcdir)/ipv6-connect.c
 
 .SUFFIXES:
 .SUFFIXES: .o .c .h .y .l .ps .dvi .info .texi
diff --git a/NEWS b/NEWS
index c80e81b454bfe5ca5f9ec7bdf1fbacc2b0e25f7c..221e1537585cddf4066c2f37994bc57b9fa1917e 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -12,6 +12,8 @@ a Certifying Authority we recognize?).
 * Added FAQ item R10 on timeouts during messages.
 * Fixed indentation problem in fetchmailconf.
 * Federico Schwindt's patch to fix broken SSL configuration.
+* Fixes to use fetchmail with IPv6 enabled on glibc without inet6-apps 
+  installed; thanks to Arkadiusz Mi¶kiewicz.
 
 fetchmail-5.2.0 (Tue Nov 30 14:24:25 EST 1999), 18302 lines:
 * fetchmailconf now complains and exits gracefully when not run under X.
index ca4addeaff2e9ef6d6ec0ba36cf221815d48bd2f..f1e329232c106f51be2a3769fcfaf5523dfea5fc 100644 (file)
@@ -287,12 +287,13 @@ test "$with_opie" = "yes" && AC_DEFINE(OPIE_ENABLE)
 
 AC_ARG_ENABLE(inet6,
        [  --enable-inet6          support IPv6 (requires the inet6-apps library)],
-        [ unset ac_cv_lib_inet6_getaddrinfo; AC_CHECK_LIB(inet6,getaddrinfo,,
-         [ unset ac_cv_lib_inet6_getaddrinfo;
-           LDFLAGS="$LDFLAGS -L/usr/inet6/lib";
-            AC_CHECK_LIB(inet6, getaddrinfo,,
-              [ echo 'configure: cannot find libinet6, which is required for IPv6 support.'; 
-             exit 1]) ]) ]
+
+       [ AC_CHECK_FUNC(getaddrinfo, [with_inet6=yes],
+         [ LDFLAGS="$LDFLAGS -L/usr/inet6/lib";
+           AC_CHECK_LIB(inet6, getaddrinfo, [with_inet6=yes],
+           [ echo 'configure: cannot find proper glibc version or libinet6,';
+             echo '           which is required for IPv6 support.';
+             exit 1]) ] )],
        [with_inet6=no])
 test "$with_inet6" = "yes" && AC_DEFINE(INET6_ENABLE)
 
index 2204d56f6479a2be5319ba921cf6956287e7e5c9..567c5be601dc32902e47b3f55810571812863e90 100644 (file)
@@ -10,7 +10,7 @@
 <table width="100%" cellpadding=0><tr>
 <td width="30%">Back to <a href="/~esr/index.html">Fetchmail Home Page</a>
 <td width="30%" align=center>To <a href="/~esr/sitemap.html">Site Map</a>
-<td width="30%" align=right>$Date: 1999/09/26 20:37:39 $
+<td width="30%" align=right>$Date: 1999/12/19 20:15:47 $
 </table>
 <HR>
 <H1 ALIGN=CENTER>Design Notes On Fetchmail</H1>
@@ -293,12 +293,6 @@ not too distant future, we'll zap the ifdefs and just let autoconf
 check for getaddrinfo. IPv6 support comes pretty much automatically
 once you have protocol family independence.<P>
 
-Craig Metz used his inner_connect() function to handle most of the
-connect work. This is a nonstandard function not likely to ever exist
-in a system's libc, but we can just include that source file if the
-day comes when we want to support IPv6 without the inet6-apps
-library. It just makes life easier.<P>
-
 <H1>Internationalization</H1>
 
 Internationalization is handled using GNU gettext (see the file
@@ -541,7 +535,7 @@ all shaped the design in one way or another.<P>
 <table width="100%" cellpadding=0><tr>
 <td width="30%">Back to <a href="index.html">Fetchmail Home Page</a>
 <td width="30%" align=center>To <a href="/~esr/sitemap.html">Site Map</a>
-<td width="30%" align=right>$Date: 1999/09/26 20:37:39 $
+<td width="30%" align=right>$Date: 1999/12/19 20:15:47 $
 </table>
 
 <P><ADDRESS>Eric S. Raymond <A HREF="mailto:esr@thyrsus.com">&lt;esr@snark.thyrsus.com&gt;</A></ADDRESS>
index 543a4b93de78c939170e0ebf2f310ca404876bbb..8ac81bd0ea429a1633091f1135804bc050cc3120 100644 (file)
@@ -10,7 +10,7 @@
 <table width="100%" cellpadding=0><tr>
 <td width="30%">Back to <a href="index.html">Fetchmail Home Page</a>
 <td width="30%" align=center>To <a href="/~esr/sitemap.html">Site Map</a>
-<td width="30%" align=right>$Date: 1999/12/19 18:22:47 $
+<td width="30%" align=right>$Date: 1999/12/19 20:11:48 $
 </table>
 <HR>
 <H1>Frequently Asked Questions About Fetchmail</H1>
@@ -1536,7 +1536,7 @@ Geocities are lame, you should boycott them anyway.<P>
 <h2><a name="K2">K2. How can I use fetchmail with IPv6 and IPsec?</a></h2>
 
 To use fetchmail with IPv6, you need a system that supports IPv6, the "Basic
-Socket Interface Extensions for IPv6" (RFC 2133), and the inet6-apps kit.
+Socket Interface Extensions for IPv6" (RFC 2133).
 This currently means that you need to have a BSD/OS or NetBSD system with
 the NRL IPv6+IPsec software distribution or a Linux system with the latest
 experimental kernel and net-tools. It should not be hard to build fetchmail on
@@ -2508,7 +2508,7 @@ inactivity timeout.<p>
 <table width="100%" cellpadding=0><tr>
 <td width="30%">Back to <a href="index.html">Fetchmail Home Page</a>
 <td width="30%" align=center>To <a href="/~esr/sitemap.html">Site Map</a>
-<td width="30%" align=right>$Date: 1999/12/19 18:22:47 $
+<td width="30%" align=right>$Date: 1999/12/19 20:11:48 $
 </table>
 
 <P><ADDRESS>Eric S. Raymond <A HREF="mailto:esr@thyrsus.com">&lt;esr@snark.thyrsus.com&gt;</A></ADDRESS>
index 81d8ac19c41891e33b4e36aaf5bd1acd02cce726..68d745f8c9c4b7c9aee07cab4f04fbdc66f2eb0b 100644 (file)
@@ -10,7 +10,7 @@
 <table width="100%" cellpadding=0><tr>
 <td width="30%">Back to <a href="index.html">Fetchmail Home Page</a>
 <td width="30%" align=center>To <a href="/~esr/sitemap.html">Site Map</a>
-<td width="30%" align=right>$Date: 1999/10/27 00:15:09 $
+<td width="30%" align=right>$Date: 1999/12/19 20:11:48 $
 </table>
 <HR>
 
@@ -65,7 +65,9 @@ suppressed).
 <LI> Support for IMAP-OTP authentication using Craig Metz's patches 
      for UW IMAP.
 
-<LI> Support for IPv6 and IPSEC (using Craig Metz's inet6-apps library).
+<LI> Support for IPv6 (using glibc or Craig Metz's inet6-apps library).
+
+<Li> Support for IPSEC (using Craig Metz's inet6-apps library).
 
 <LI> Support for IMAP with RFC1731-conformant GSSAPI authentication.
 
@@ -182,7 +184,7 @@ get-mail, gwpop, pimp-1.0, pop-perl5-1.2, popc, popmail-1.6 and upop.<P>
 <table width="100%" cellpadding=0><tr>
 <td width="30%">Back to <a href="index.html">Fetchmail Home Page</a>
 <td width="30%" align=center>To <a href="/~esr/sitemap.html">Site Map</a>
-<td width="30%" align=right>$Date: 1999/10/27 00:15:09 $
+<td width="30%" align=right>$Date: 1999/12/19 20:11:48 $
 </table>
 
 <P><ADDRESS>Eric S. Raymond <A HREF="mailto:esr@thyrsus.com">&lt;esr@snark.thyrsus.com&gt;</A></ADDRESS>
index 09237d2fe81fb8e432818f82c17205f6fd14ceee..9dfa5587347e43666fc4aeb5a514c10d5f9f90e5 100644 (file)
--- a/socket.c
+++ b/socket.c
@@ -122,6 +122,7 @@ int SockOpen(const char *host, const char *service, const char *options,
             const char *plugin)
 {
     struct addrinfo *ai, req;
+    int i;
 #if NET_SECURITY
     void *request = NULL;
     int requestlen;