diff options
author | Eric S. Raymond <esr@thyrsus.com> | 1998-11-20 15:52:48 +0000 |
---|---|---|
committer | Eric S. Raymond <esr@thyrsus.com> | 1998-11-20 15:52:48 +0000 |
commit | c8ecb908dde9760ac2ff55f73ffd02f1a0046f59 (patch) | |
tree | 838bf5742ee57de487e1afb0154cfd40cc96582d | |
parent | 85ea804517dc39280113a281a71397fdefe59d3c (diff) | |
download | fetchmail-c8ecb908dde9760ac2ff55f73ffd02f1a0046f59.tar.gz fetchmail-c8ecb908dde9760ac2ff55f73ffd02f1a0046f59.tar.bz2 fetchmail-c8ecb908dde9760ac2ff55f73ffd02f1a0046f59.zip |
Added socks library support.
svn path=/trunk/; revision=2189
-rw-r--r-- | Makefile.in | 3 | ||||
-rw-r--r-- | NEWS | 3 | ||||
-rw-r--r-- | README | 7 | ||||
-rw-r--r-- | acconfig.h | 4 | ||||
-rw-r--r-- | configure.in | 36 | ||||
-rw-r--r-- | fetchmail-FAQ.html | 10 | ||||
-rw-r--r-- | fetchmail.c | 16 |
7 files changed, 71 insertions, 8 deletions
diff --git a/Makefile.in b/Makefile.in index b4ec65f4..313dfa49 100644 --- a/Makefile.in +++ b/Makefile.in @@ -23,6 +23,7 @@ YACC = @YACC@ YACCFLAGS = -dt CEFLAGS = @CEFLAGS@ +CPFLAGS = @CPFLAGS@ LDEFLAGS = @LDEFLAGS@ # How to invoke ranlib. This is only used by the `glob' subdirectory. @@ -116,7 +117,7 @@ unmime: unmime.c base64.c rfc822.c xmalloc.c error.c memmove.c $(CC) -DSTANDALONE -g -o $@ $^ .c.o: - $(CC) $(defines) -c -I$(srcdir) -I. $(CEFLAGS) $(CFLAGS) $< + $(CC) $(defines) -c $(CPFLAGS) -I$(srcdir) -I. $(CEFLAGS) $(CFLAGS) $< # For some losing Unix makes. SHELL = /bin/sh @@ -2,7 +2,8 @@ fetchmail-4.6.7 (): * Gerald Britton's patches to enable Hesiod support. -* Postmater option fix from Bill Metzenthen <billm@melbpc.org.au>. +* Postmaster option fix from Bill Metzenthen <billm@melbpc.org.au>. +* Socks library support forom Guiseppe Guerini. There are 248 people on fetchmail-friends and 306 on fetchmail-announce. @@ -18,9 +18,10 @@ extensively tested under 4.4BSD, AIX, HP-UX versions 9 and 10, SunOS, Solaris, NEXTSTEP, and OSF 3.2. It should be readily portable to other Unix variants (it uses GNU -autoconf). It has also been ported to QNX; to build under QNX, see -the header comments in the Makefile. It is reported to build and run -under AmigaOS. +autoconf). It has been ported to LynxOS and will build there without +special action. It has also been ported to QNX; to build under QNX, +see the header comments in the Makefile. It is reported to build and +run under AmigaOS. A beta OS/2 port of fetchmail is available from Jason F. McBrayer at http://studentweb.tulane.edu/%7Ejmcbray/os2. @@ -90,6 +90,10 @@ /* Define if you want GSSAPI authentication */ #undef GSSAPI + +/* Define if you want built-in SOCKS support */ +#undef HAVE_SOCKS + /* Leave that blank line there!! Autoheader needs it. If you're adding to this file, keep in mind: diff --git a/configure.in b/configure.in index 817046e7..1b16b394 100644 --- a/configure.in +++ b/configure.in @@ -29,10 +29,25 @@ AC_C_CONST dnl getopt needs this. AC_PROG_LEX AC_PROG_YACC +AC_SUBST(CPFLAGS) AC_SUBST(CEFLAGS) AC_SUBST(LDEFLAGS) AC_SUBST(LIBOBJS) +# Check for LynxOS special case: -lbsd needed (at least on 2.3.0) and -s +# not working. +if test `uname` = "LynxOS" +then + echo "Adding -lbsd to standard libraries" + LIBS="$LIBS -lbsd" + LDFLAGS="" + if test `uname -r` = "2.5.0" + then + echo "Prepending standard include path to gcc flags" + CPFLAGS="-I/usr/include" + fi +fi + # Under sysV68, socket and friends are provided by the C library. # -linet does not provide socket, but causes multiple definition # errors at link-time. It is thus better to only use the C library. @@ -305,9 +320,28 @@ else done fi +### use option --with-socks=DIR to point at SOCKS library +AC_ARG_WITH(socks, + [ --with-socks[=DIR] add built-in SOCKS firewall access], +[ +if test "$with_socks" != no +then + if test "$with_socks" != yes + then + LDEFLAGS="$LDEFLAGS -L$with_socks" + else + AC_CHECK_LIB(socks, Rconnect,, + AC_MSG_ERROR([could not find libsocks which is needed for built-in SOCKS support])) + fi + AC_DEFINE(HAVE_SOCKS) + CEFLAGS="$CEFLAGS -Dconnect=Rconnect -Dgetsockname=Rgetsockname -Dbind=Rbind -Daccept=Raccept -Dlisten=Rlisten -Dselect=Rselect" + LIBS="-lsocks $LIBS" +fi]) + + ### use option --with-hesiod=DIR to point at a HESIOD directory AC_ARG_WITH(hesiod, - [ --with-hesiod=DIR point fetchmail compilation at a HESIOD directory]) + [ --with-hesiod=DIR point fetchmail compilation at a HESIOD directory]) if test -n "$with_hesiod" then diff --git a/fetchmail-FAQ.html b/fetchmail-FAQ.html index c1ee49f5..8d1915ae 100644 --- a/fetchmail-FAQ.html +++ b/fetchmail-FAQ.html @@ -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: 1998/11/03 01:00:56 $ +<td width="30%" align=right>$Date: 1998/11/20 15:52:47 $ </table> <HR> <H1>Frequently Asked Questions About Fetchmail</H1> @@ -1279,6 +1279,12 @@ gave us the following recipe:<P> It wasn't that hard, was it? :-)<P> +Giuseppe Guerini added a --with-socks option that supports linking +with socks library. If you specify the value of this option as +``yes'', the configure script will try to find the Rconnect library +and set the makefile up to link it. You can also specify a directory +containing the Rconnect library.<p> + <hr> <h2><a name="#S6">S6. How can I use fetchmail with geocities POP3 servers?</a></h2> @@ -2210,7 +2216,7 @@ Re-ordering messages is a user-agent function, anyway.<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: 1998/11/03 01:00:56 $ +<td width="30%" align=right>$Date: 1998/11/20 15:52:47 $ </table> <P><ADDRESS>Eric S. Raymond <A HREF="mailto:esr@thyrsus.com"><esr@snark.thyrsus.com></A></ADDRESS> diff --git a/fetchmail.c b/fetchmail.c index f06f6f26..95848491 100644 --- a/fetchmail.c +++ b/fetchmail.c @@ -195,6 +195,11 @@ int main (int argc, char **argv) #if NET_SECURITY printf("+NETSEC"); #endif /* NET_SECURITY */ +#ifdef HAVE_SOCKS + #if HAVE_SOCKS + printf("+SOCKS"); + #endif +#endif /* HAVE_SOCKS */ putchar('\n'); /* this is an attempt to help remote debugging */ @@ -415,6 +420,17 @@ int main (int argc, char **argv) } } +/* Time to initiate the SOCKS library (this is not mandatory: it just + registers the correct application name for logging purpose. If you + have some problem, comment these lines). */ +#ifdef HAVE_SOCKS + #if HAVE_SOCKS +/* Mmmh... I don't like hardcoded application names, + but "fetchmail" is everywhere... */ + SOCKSinit("fetchmail"); + #endif +#endif /* HAVE_SOCKS */ + /* * Maybe time to go to demon mode... */ |