]> Pileus Git - ~andy/fetchmail/commitdiff
Ready to ship, I think.
authorEric S. Raymond <esr@thyrsus.com>
Sat, 22 Nov 1997 07:26:03 +0000 (07:26 -0000)
committerEric S. Raymond <esr@thyrsus.com>
Sat, 22 Nov 1997 07:26:03 +0000 (07:26 -0000)
svn path=/trunk/; revision=1538

NEWS
driver.c
fetchmail-FAQ.html
fetchmail.man
pop3.c
rcfile_l.l

diff --git a/NEWS b/NEWS
index e735ad9ac7987f73b30161f749afcbc5d02ab5ef..58c0a0d2a1732b94b34f4dc0b2691ac761dbccd5 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -3,7 +3,14 @@
 * Generate bounce messages when delivery is refused.  See RFC1891, RFC1892.
 * Use the libmd functions for md5 under Free BSD?  (Low priority.)
 * More log levels?
-* Allow an explicit "append" option to specify what reqwrite appends?
+* Allow an explicit "append" option to specify what reqwrite appends?  (For
+  when user's pop3 host isn't the same as his SMTP host.)
+* Add logic to check whether *all* entries have `no dns' in them and allow
+  fetchmail to proceed in that case even if dns is down.
+* Periodically check for listener-up and croak gracefully if it's not.
+* Rewrite maps "From: John Smith (Systems) <jsmith@domain>" to 
+  "From: John Smith@my.pop.server (Systems) <jsmith@domain>".  Is this
+  just GIGO, or should we try to cope
 
                                Other TO-DO items:
 
@@ -18,8 +25,15 @@ fetchmail-4.3.3 ()
 * Fixed expansion of MDA %-escapes (thanks Wez Furlong <wjf103@york.ac.uk>).
 * Deal with the possibility that IMAP NOOP issued on rescan might not get an
   EXISTS response (thanks to Jonathan T. Agnew <jtagnew@amherst.edu>).
-
-There are 272 people on fetchmail-friends and 73 on fetchmail-announce.
+* contrib/runfetchmail copyright now meets Debian Free Software Guidelines.
+* RPA code is changed to track a change I'm told CompuServe made on the weekend
+  of November 15.
+* Set %p 3000 in the lexer source to fix the Solaris 2.4 build.
+* Changed the summary status message emitted by a foreground run.  The old
+  user@host produced odd results under some virtual-domain setups, so it's
+  "user at host" now.
+
+There are 281 people on fetchmail-friends and 83 on fetchmail-announce.
 
 fetchmail-4.3.2 (Wed Oct 22 20:30:14 EDT 1997)
 * More slow-UIDL patches from Wolfgang Wander.
index f6fd799f320ec0791748f23fc070eabc5f059797..317e75949a5416a25b6f58ccedd08733f518f543 100644 (file)
--- a/driver.c
+++ b/driver.c
@@ -1595,27 +1595,27 @@ const struct method *proto;     /* protocol method table */
 
                /* show user how many messages we downloaded */
                if (idp->id)
-                   (void) sprintf(buf, "%s@%s:%s",
+                   (void) sprintf(buf, "%s at %s (folder %s)",
                                   ctl->remotename, ctl->server.truename, idp->id);
                else
-                   (void) sprintf(buf, "%s@%s", ctl->remotename, ctl->server.truename);
+                   (void) sprintf(buf, "%s at %s", ctl->remotename, ctl->server.truename);
                if (outlevel > O_SILENT)
                    if (count == -1)            /* only used for ETRN */
                        error(0, 0, "Polling %s", ctl->server.truename);
                    else if (count != 0)
                    {
                        if (new != -1 && (count - new) > 0)
-                           error(0, 0, "%d message%s (%d seen) at %s.",
+                           error(0, 0, "%d message%s (%d seen) for %s.",
                                  count, count > 1 ? "s" : "", count-new, buf);
                        else
-                           error(0, 0, "%d message%s at %s.", 
+                           error(0, 0, "%d message%s for %s.", 
                                  count, count > 1 ? "s" : "", buf);
                    }
                    else
                    {
                        /* these are pointless in normal daemon mode */
                        if (pass == 1 && (poll_interval == 0 || outlevel == O_VERBOSE))
-                           error(0, 0, "No mail at %s", buf); 
+                           error(0, 0, "No mail for %s", buf); 
                    }
 
                /* very important, this is where we leave the do loop */ 
index 76010ebd90d30d47557a45e954eee2703eeb9ee2..c8583211abdfd2a67f7273fd166a2a52c89606e2 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: 1997/11/18 18:25:52 $
+<td width="30%" align=right>$Date: 1997/11/22 07:26:00 $
 </table>
 <HR>
 <H1>Frequently Asked Questions About Fetchmail</H1>
@@ -800,14 +800,6 @@ http://www.informatik.uni-kiel.de/%7Eca/email/check.html</a><p>
 This one is by Claus A&szlig;man, who has documented more of sendmail then
 I can digest!
 
-The actual setup I used though was by David Begley, who has put together 
-a WWW page describing how to quickly implement these rules yourself.<p>
-
-<a href="http://www.nepean.uws.edu.au/users/david/pe/blockmail.html">
-http://www.nepean.uws.edu.au/users/david/pe/blockmail.html</a><p>
-
-David's pages could be moving shortly.  I will post an update if it happens.<p>
-
 Remember, when copying these rulesets off the web, that there are tabs 
 embedded in them, that may not be preserved.  You <em>must</em> reintroduce
 these tabs into the rules to make them work properly.  <p>
@@ -1633,7 +1625,7 @@ will look right.<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: 1997/11/18 18:25:52 $
+<td width="30%" align=right>$Date: 1997/11/22 07:26:00 $
 </table>
 
 <P><ADDRESS>Eric S. Raymond <A HREF="mailto:esr@thyrsus.com">&lt;esr@snark.thyrsus.com&gt;</A></ADDRESS>
index e1c5cbe767f34a9d309a0695ee1cf452eaace547..faceea1531a905371188ee69d3b6f78b22f74428 100644 (file)
@@ -130,7 +130,7 @@ mailserver.  This option does not work with ETRN.
 Delete retrieved messages from the remote mailserver.  This
 option forces retrieved mail to be deleted.  It may be useful if
 you have specified a default of \fBkeep\fR in your
-\fI.fetchmailrc\fR.  This option is forced on with ETRN.
+\&\fI.fetchmailrc\fR.  This option is forced on with ETRN.
 .TP
 .B \-F, --flush
 POP3/IMAP only.  Delete old (previously retrieved) messages from the mailserver
@@ -956,7 +956,8 @@ which DNS tells it are aliases of the mailserver.  See the discussion
 of `dns', `localdomains', and `aka' for details on how matching
 addresses are handled.  If \fIfetchmail\fR cannot match any mailserver
 usernames or localdomain addresses, the default recipient is the
-calling user.
+calling user (as set by the USER or LOGNAME variable in the
+environment; you could use this to redirect to an alias like postmaster).
 .PP
 The `dns' option (normally on) controls the way addresses from
 multidrop mailboxes are checked.  On, it enables logic to check each
diff --git a/pop3.c b/pop3.c
index 0cdf31793e8b7323422d160e0ab9b5f425250188..a88088365ea4514d1d29b8e02ec785773394e871 100644 (file)
--- a/pop3.c
+++ b/pop3.c
@@ -104,44 +104,32 @@ int pop3_getauth(int sock, struct query *ctl, char *greeting)
     case P_POP3:
         ok = gen_transact(sock, "USER %s", ctl->remotename);
 
-        if (ok != 0)
 #ifdef RPA_ENABLE
-            /* if CompuServe rejected our userid, try RPA */
-            if (strstr(greeting, "csi.com"))
-            {
-                /* AUTH command should return a list of available mechanisms */
-                if (gen_transact(sock, "AUTH") == 0)
-                {
-                    char buffer[10];
-                    flag has_rpa = FALSE;
-                    flag authenticated = FALSE;
-
-                    while ((ok = gen_recv(sock, buffer, sizeof(buffer))) == 0)
-                    {
-
-                        if (buffer[0] == '.')
-                            break;
-                        if (strncasecmp(buffer, "rpa", 3) == 0)
-                            has_rpa = TRUE;
-                    }
-                    if(has_rpa) {
-                        if (POP3_auth_rpa(ctl->remotename,
-                                          ctl->password, sock) == PS_SUCCESS)
-                        {
-                            authenticated = TRUE;
-                            break;
-                        }
-                    }
-                    if (authenticated) {
-                        /* we could return(PS_SUCCESS) here */
-                        ok = PS_SUCCESS;
-                        break;
-                    }
-                }
-            }
-           else        /* not a CompuServe host, fail in the ordinary way */
+        /*
+         * CompuServe has changed its RPA behavior.  Used to be they didn't
+         * accept USER, but I'm told this changed in mid-November.
+         */
+        if (strstr(greeting, "csi.com"))
+        {
+            /* AUTH command should return a list of available mechanisms */
+            if (gen_transact(sock, "AUTH") == 0)
+            {
+                char buffer[10];
+                flag has_rpa = FALSE;
+
+                while ((ok = gen_recv(sock, buffer, sizeof(buffer))) == 0)
+                {
+                    if (buffer[0] == '.')
+                        break;
+                    if (strncasecmp(buffer, "rpa", 3) == 0)
+                        has_rpa = TRUE;
+                }
+                if (has_rpa && !POP3_auth_rpa(ctl->remotename, 
+                                              ctl->password, sock))
+                    return(PS_SUCCESS);
+            }
+        }
 #endif /* RPA_ENABLE */
-               break;
 
 #if defined(HAVE_LIBOPIE) && defined(OPIE_ENABLE)
        /* see RFC1938: A One-Time Password System */
index 4a612f8781b46ad47358dc4559abe1c86bde5ecd..3184da1b0161611c7e4a59240e2e6305596022d0 100644 (file)
@@ -17,6 +17,7 @@ int prc_lineno = 1;
 /* this doesn't work with Linux lex, see the INSTALL file */
 %o 6000
 %a 4000
+%p 3000
 
 %%