aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--INSTALL22
-rw-r--r--Makefile.in12
-rw-r--r--NEWS20
-rw-r--r--driver.c4
-rw-r--r--fetchmail.c2
-rw-r--r--fetchmail.man32
-rw-r--r--options.c2
-rw-r--r--rcfile_l.l4
8 files changed, 75 insertions, 23 deletions
diff --git a/INSTALL b/INSTALL
index 609e8ecf..cf5d50d8 100644
--- a/INSTALL
+++ b/INSTALL
@@ -1,5 +1,7 @@
INSTALL Instructions for fetchmail
+1. CONFIGURE
+
Installing fetchmail is easy. From within this directory, type:
./configure
@@ -9,10 +11,16 @@ specifics of your system. If you want to specify a particular compiler
(e.g. you have gcc but want to compile with cc), set the environment
variable CC before you run configure.
+The configure script accepts certain standard configuration options.
+These include --prefix, --exec-prefix, --bindir, --infodir, --mandir,
+and --srcdir. Do `config --help' for more.
+
If you're running QNX, edit the distributed Makefile directly. The
QNX values for various macros are there but commented out; all you
have to do is uncomment them.
+2. MAKE
+
Next run
make
@@ -20,6 +28,8 @@ Next run
This will compile fetchmail for your system. Note that in order to
build it, you'll need either flex at version 2.5.3 org greater, or lex.
+3. INSTALL
+
Lastly, become root and run
make install
@@ -37,6 +47,8 @@ is so it can call rresvport and bind to a privileged port, so the
server's TCP/IP will see that and know it's OK to let it bind to
a privileged port at the other end.
+4. SET UP A RUN CONTROL FILE
+
See the man page or the file sample.rcfile for a description of how to
configure your individual preferences.
@@ -47,4 +59,14 @@ at version 3.0b6 or later, do this
in order to migrate.
+5. TEST
+
+I strongly recommend that your first fetchmail run use the -v and -k
+options, in case there is something not quite right with your local
+delivery configuration or your port 25 listener. Also, beware
+of aliases that direct your local mail back to the server host!
+
+6. USE IT
+
Enjoy!
+
diff --git a/Makefile.in b/Makefile.in
index 8960f52b..ecfea794 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -3,7 +3,7 @@
# If you're running QNX, we can't assume a working autoconf.
# So just uncomment all the lines marked QNX.
-VERS=1.6
+VERS=1.7
# Ultrix 2.2 make doesn't expand the value of VPATH.
srcdir = @srcdir@
@@ -40,20 +40,20 @@ EXTRASRC = @EXTRASRC@
EXTRAOBJ = @EXTRAOBJ@
# Common prefix for machine-independent installed files.
-prefix = /usr/local
+prefix = @prefix@
# Common prefix for machine-dependent installed files.
-exec_prefix = $(prefix)
+exec_prefix = @exec_prefix@
# Name under which to install fetchmail
instname = fetchmail
# Directory in which to install.
-bindir = $(exec_prefix)/bin
+bindir = @bindir@
# Directory to install the Info files in.
-infodir = $(prefix)/info
+infodir = @infodir@
# Number to put on the man page filename.
manext = 1
# Directory to install the man page in.
-mandir = $(prefix)/man/man$(manext)
+mandir = @mandir@/man$(manext)
# Program to install `make'.
INSTALL_PROGRAM = @INSTALL_PROGRAM@
diff --git a/NEWS b/NEWS
index b268de19..52f0fc40 100644
--- a/NEWS
+++ b/NEWS
@@ -16,6 +16,26 @@ Inflict severe pain on the person(s) responsible for removing LAST from POP3.
Release Notes:
+fetchmail-1.7 (Tue Oct 8 01:00:08 EDT 1996):
+
+features --
+
+* Make configure more GNUish; it understands --prefix and other standard
+ autoconf options now (see INSTALL for details)
+
+bugs --
+
+* You may have to rearrange the order of options in your .fetchmailrc.
+ The grammar for the new multiple-user syntax requires that server
+ options (protocol and port) come before any user options.
+
+* Fixed core dump bug that was screwing configurations with no .fetchmailrc.
+
+* Fixed broken 'p' option.
+
+* `norewrite' and `rewrite' in .fetchrc were the inverses of what they
+ should have been.
+
fetchmail-1.6 (Sun Oct 6 20:55:09 EDT 1996):
features --
diff --git a/driver.c b/driver.c
index 17b852d0..d03c4730 100644
--- a/driver.c
+++ b/driver.c
@@ -424,6 +424,10 @@ struct hostrec *queryctl;
headers = NULL;
}
+ /* SMTP byte-stuffing */
+ if (*bufp == '.' && queryctl->mda[0] == 0)
+ write(mboxfd, ".", 1);
+
/* write this line to the file */
if (write(mboxfd,bufp,strlen(bufp)) < 0)
{
diff --git a/fetchmail.c b/fetchmail.c
index cb9a1e89..3062d3ea 100644
--- a/fetchmail.c
+++ b/fetchmail.c
@@ -165,7 +165,7 @@ char **argv;
}
/* if there's a defaults record, merge it and lose it */
- if (strcmp(hostlist->servername, "defaults") == 0)
+ if (hostlist && strcmp(hostlist->servername, "defaults") == 0)
{
for (hostp = hostlist; hostp; hostp = hostp->next)
optmerge(hostp, hostlist);
diff --git a/fetchmail.man b/fetchmail.man
index 1679b670..20836444 100644
--- a/fetchmail.man
+++ b/fetchmail.man
@@ -330,7 +330,7 @@ permissions;
will complain and exit otherwise.
.PP
Comments begin with a '#' and extend through the end of the line.
-Otherwise the file consists of a series of server entries.
+Otherwise the file consists of a series of free-format server entries.
Any amount of whitespace separates keywords, tokens, or strings
in server entries but is otherwise ignored (but whitespace enclosed
in double quotes is treated as part of the string).
@@ -338,10 +338,18 @@ Keywords and identifiers are case sensitive.
When there is a conflict between the command-line arguments and the
arguments in this file, the command-line arguments take precedence.
.PP
-Legal keywords are:
+Each server entry consists of the keyword \fBserver\fR, followed by a
+server name, followed by server options, followed by any number of
+user descriptions.
+.PP
+Legal server options are:
server
protocol (or proto)
+ port
+
+Legal user options are
+
username (or user)
is
password (or pass)
@@ -358,13 +366,12 @@ Legal keywords are:
nofetchall
norewrite
noskip
- port
.PP
-All these correspond to the obvious command-line arguments except
+All options correspond to the obvious command-line arguments except
three: \fBis\fR, \fBpassword\fR and \fBskip\fR.
.PP
The \fBis\fR keyword associates a following local username with the
-mailserver usename in the entry. It is intended to be used in
+mailserver user name in the entry. It is intended to be used in
configurations where \fIfetchmail\fR runs as root and retrieves
mail for multiple local users. If no \fBis\fR clause is present,
the default local username is the same as the argument of the
@@ -420,11 +427,8 @@ If you need to include whitespace in a parameter string, enclose the
string in double quotes. Thus:
.nf
- server mail.provider.net
- proto pop3
- user jsmith
- pass "u can't krak this"
- mda "/bin/mail %s"
+ server mail.provider.net proto pop3
+ user jsmith pass "u can't krak this" mda "/bin/mail %s"
.fi
You may have an initial server description headed by the keyword
@@ -433,8 +437,7 @@ is interpreted as defaults for all queries to use. It may be overwritten
by individual server descriptions. So, you could write:
.nf
- defaults
- proto pop3
+ defaults proto pop3
user jsmith
server pop.provider.net
pass secret1
@@ -557,7 +560,10 @@ because it supports IMAP now and may well support more remote-fetch
protocols such as DMSP in the future). If called through a link named
popclient, it will look in ~/.poprc for its run control file. As
long as the file does not use the removed \fBlimit\fR or \fBlocalfolder\fR
-options, this should actually work.
+options, this will often work. (The new run control file syntax also has
+to be a bit stricter about the order of options than the old,
+in order to support multiple user desriptions per server; you may have
+to rearrange things a bit.)
.PP
The --stdout, --local, and --limit arguments of previous
versions have been removed. Those features did jobs that belonged to
diff --git a/options.c b/options.c
index 0704a359..ab73d98e 100644
--- a/options.c
+++ b/options.c
@@ -40,7 +40,7 @@
#define LA_HELP 20
#define LA_YYDEBUG 21
-static char *shortoptions = "PVaKkvS:m:sFd:f:u:r:L:qN?";
+static char *shortoptions = "PpVaKkvS:m:sFd:f:u:r:L:qN?";
static struct option longoptions[] = {
{"version", no_argument, (int *) 0, LA_VERSION },
{"all", no_argument, (int *) 0, LA_ALL },
diff --git a/rcfile_l.l b/rcfile_l.l
index 3a6af9d3..92d81087 100644
--- a/rcfile_l.l
+++ b/rcfile_l.l
@@ -35,12 +35,12 @@ mda { return KW_MDA; }
keep { yylval.flag = FLAG_TRUE; return KW_KEEP; }
flush { yylval.flag = FLAG_TRUE; return KW_FLUSH; }
fetchall { yylval.flag = FLAG_TRUE; return KW_FETCHALL; }
-rewrite { yylval.flag = FLAG_TRUE; return KW_REWRITE; }
+rewrite { yylval.flag = FLAG_FALSE; return KW_REWRITE; }
skip { yylval.flag = FLAG_TRUE; return KW_SKIP; }
nokeep { yylval.flag = FLAG_FALSE; return KW_KEEP; }
noflush { yylval.flag = FLAG_FALSE; return KW_FLUSH; }
nofetchall { yylval.flag = FLAG_FALSE; return KW_FETCHALL; }
-norewrite { yylval.flag = FLAG_FALSE; return KW_REWRITE; }
+norewrite { yylval.flag = FLAG_TRUE; return KW_REWRITE; }
noskip { yylval.flag = FLAG_FALSE; return KW_SKIP; }
port { return KW_PORT; }