]> Pileus Git - ~andy/fetchmail/commitdiff
Attempt merging from 6.3.24.
authorMatthias Andree <matthias.andree@gmx.de>
Wed, 2 Jan 2013 23:11:10 +0000 (00:11 +0100)
committerMatthias Andree <matthias.andree@gmx.de>
Wed, 2 Jan 2013 23:11:10 +0000 (00:11 +0100)
12 files changed:
Makefile.am
NEWS
RELEASE-INSTRUCTIONS
configure.ac
dist-tools/makerelease.pl
fetchmail.c
fetchmail.man
genlsm.sh.in [deleted file]
pop3.c
socket.c
specgen.sh
website/index.html

index 5e72668a7a801fd25878679d573934dac5576619..34fe6caf66b2bfda63584ea5e571d9a800034f43 100644 (file)
@@ -206,10 +206,6 @@ dist-hook:
        cd $(distdir) && find $(distdirs) po -name .git -type d -prune -exec rm -rf '{}' ';'
        cd $(distdir) && find $(distdirs) po -name '*~' -exec rm -f '{}' ';'
 
-.PHONY: lsm
-lsm: genlsm.sh dist
-       $(SHELL) genlsm.sh >$(PACKAGE)-$(VERSION).lsm
-
 # this target expects a .rsyncs file with lines of this format:
 # host:directory/
 # it will call rsync from its source directory to the destination for
diff --git a/NEWS b/NEWS
index 6c05420cc2a8b05fdcfe5af2e9ea318deaeaf60f..0d801d15f98988b5c3da147aa21fb0e7f0507405 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -37,7 +37,6 @@ removed from a 7.0.0 or newer release.)
 * The --bsmtp - mode of operation may be removed in a future release.
 * Given that OpenSSL is severely underdocumented, and needs license exceptions,
   fetchmail may switch to a different SSL library.
-
 --------------------------------------------------------------------------------
 
 fetchmail-7.0.0 (not yet released):
@@ -144,12 +143,53 @@ NOTE THIS IS AN ALPHA RELEASE THAT HAS NOT BEEN THOROUGHLY TESTED!
 
 --------------------------------------------------------------------------------
 
-fetchmail-6.3.23 (not yet released)
+fetchmail-6.3.24 (released 2012-12-23, 26108 LoC):
 
 # NOTE THAT THE RELEASE OF FUTURE FETCHMAIL 6.3.X VERSIONS IS UNCLEAR.
 Should a 7.0 release be made earlier, chances are that the 6.3.X branch
 is abandoned and its changes be folded into the 7.0 release, with changes
-after 6.3.22 not available on their own in a newer 6.3.X release.
+after 6.3.24 not available on their own in a newer 6.3.X release.
+
+# NOTE THAT FETCHMAIL IS NO LONGER PUBLISHED THROUGH IBIBLIO.
+  They have stopped accepting submissions and consider themselves an archive.
+
+# CRITICAL AND REGRESSION FIXES
+* Plug a memory leak in OpenSSL's certificate verification callback.
+  This would affect fetchmail configurations running with SSL in daemon mode
+  more than one-shot runs.
+  Reported by Erik Thiele, and pinned by Dominik Heeg,
+  fixes Debian Bug #688015.
+  This bug was introduced into fetchmail 6.3.0 (committed 2005-10-29)
+  when support for subjectAltName was added through a patch by Roland
+  Stigge, submitted as Debian Bug#201113.
+
+* The --logfile option now works again outside daemon mode, reported by Heinz
+  Diehl. The documentation that I had been reading was inconsistent with the
+  code, and only parts of the manual page claimed that --logfile was only
+  effective in daemon mode.
+
+# KNOWN BUGS AND WORKAROUNDS
+  (This section floats upwards through the NEWS file so it stays with the
+  current release information)
+* Fetchmail does not handle messages without Message-ID header well
+  (See sourceforge.net bug #780933)
+* BSMTP is mostly untested and errors can cause corrupt output.
+* Sun Workshop 6 (SPARC) is known to miscompile the configuration file lexer in
+  64-bit mode.  Either compile 32-bit code or use GCC to compile 64-bit
+  fetchmail.  Note that fetchmail doesn't take advantage of 64-bit code,
+  so compiling 32-bit SPARC code should not cause any difficulties.
+* Fetchmail does not track pending deletes across crashes.
+* The command line interface is sometimes a bit stubborn, for instance,
+  fetchmail -s doesn't work with a daemon running.
+* Linux systems may return duplicates of an IP address in some circumstances if
+  no or no global IPv6 addresses are configured.
+  (No workaround. Ubuntu Bug#582585, Novell Bug#606980.)
+* Kerberos 5 may be broken, particularly on Heimdal, and provide bogus error
+  messages. This will not be fixed, because the maintainer has no Kerberos 5
+  server to test against. Use GSSAPI.
+
+
+fetchmail-6.3.23 (released 2012-12-10, 26106 LoC):
 
 # REGRESSION FIXES
 * Fix compilation with OpenSSL implementations before 0.9.8m that lack
@@ -163,6 +203,25 @@ after 6.3.22 not available on their own in a newer 6.3.X release.
 * Clean up logfile vs. syslog handling, and in case logfile overrides
   syslog, send a message to the latter stating where logging goes.
 
+# CHANGES
+* The build process can now be made a bit more silent and concise through
+  ./configure --enable-silent-rules, or by adding "V=0" to the make command.
+
+# WORKAROUNDS
+* Make Maillennium POP3 workarounds less specific, to encompass
+  Maillennium POP3/UNIBOX (Maillennium V05.00c++). Reported by Eddie
+  via fetchmail-users mailing list, 2012-10-13.
+
+# TRANSLATION UPDATES
+[cs] Czech, by Petr Pisar
+[da] Danish, by Joe Hansen
+[de] German
+[fr] French, Frédéric Marchal
+[ja] Japanese, Takeshi Hamasaki
+[pl] Polish, by Jakub Bogusz
+[sv] Swedish, by Göran Uddeborg
+[vi] Vietnamese, Trần Ngọc Quân
+
 
 fetchmail-6.3.22 (released 2012-08-29, 26077 LoC):
 
@@ -244,6 +303,7 @@ fetchmail-6.3.22 (released 2012-08-29, 26077 LoC):
 * [vi]    Vietnamese, by Trần Ngọc Quân
 
 
+
 fetchmail-6.3.21 (released 2011-08-21, 26011 LoC):
 
 # CRITICAL BUG FIX
@@ -260,6 +320,7 @@ fetchmail-6.3.21 (released 2011-08-21, 26011 LoC):
   log (and hexdump non-printing characters) raw socket data to a file. It proved
   useful to debug Antoine's bug described above.
 
+
 fetchmail-6.3.20 (released 2011-06-06, 26005 LoC):
 
 # SECURITY BUG FIXES
index f9708f6c74c2a1bb6b2be083e1c13d87b7cc3ffd..e5d83be7ccadd62b52ed74a966f0b1ce77af10ad 100644 (file)
@@ -14,7 +14,6 @@ To do a release:
 - These would be done automatically by makerelease.pl:
   - Upload sig and tarball to ~/public_html/fetchmail/
   - Upload sig and tarball to ftp.berlios.de:/incoming/ and release
-  - Upload lsm, sig and tarball to ibiblio.org:/incoming/linux/
 
 - Update the fetchmail website for version, link to release nodes
   (update release_id) and last update, commit, and upload.
index 6780831d14eaf87d814f12fcbd9ea3c4902493bf..89396c316b387450017b5e37f88c94e938a968c6 100644 (file)
@@ -22,7 +22,8 @@ AC_USE_SYSTEM_EXTENSIONS
 dnl automake options are in Makefile.am
 AC_PREREQ(2.64)
 dnl 2.60 required for AC_USE_SYSTEM_EXTENSIONS
-AM_INIT_AUTOMAKE(silent-rules)
+AM_INIT_AUTOMAKE([silent-rules -Wall])
+AM_SILENT_RULES
 
 dnl python is optional
 #
@@ -694,7 +695,7 @@ then
     ])
 fi])
 
-AC_CONFIG_FILES([Makefile po/Makefile.in genlsm.sh])
+AC_CONFIG_FILES([Makefile po/Makefile.in])
 AC_OUTPUT
 
 dnl Local Variables:
index 86e9ad71168f060888c32e076e36f407d9c91fbe..f07af0941b8d5fee50d2aa94b7f7376687d5ab75 100755 (executable)
@@ -8,7 +8,8 @@
 my $project = "fetchmail";
 my $website = "http://developer.berlios.de/projects/$project";
 my $mailfrom = "<$project-devel\@lists.berlios.de> (Fetchmail Development Team)";
-my $distsufx = '.tar.bz2';
+my $distsufx = '.tar.bz2';
+my $xzsufx =   '.tar.xz';
 
 # ---------------------------------------------------------------------
 
@@ -35,6 +36,19 @@ sub usage($$) {
     exit($_[1]);
 }
 
+sub makerelnotes($$) {
+    my ($infile, $outfile) = @_;
+    open(F, "<$infile") or die "cannot read $infile: $!";
+    open(G, ">$outfile") or die "cannot write to $outfile: $!";
+    my $ctr = 0;
+    while(<F>) {
+       $ctr++ if /^fetchmail-/;
+       print G if $ctr == 1;
+    }
+    close F or die "cannot read $infile: $!";
+    close G or die "cannot write to $outfile: $!";
+}
+
 GetOptions("diffs|d" => \$diffs, "verbose|v" => \$verbose, "help|h|?" => \$help)
     or usage($0, 1);
 
@@ -100,7 +114,7 @@ if (system("mkdir -p autobuild && cd autobuild "
 
 print "### Test-building the software...\n";
 if (system("cd autobuild && make -s clean"
-       . " && make " . ($verbose ? '' : '-s') . " check distcheck lsm")) {
+       . " && make " . ($verbose ? '' : '-s') . " check distcheck")) {
        die("Compilation failure\n");
 }
 
@@ -171,21 +185,25 @@ unlink("$tmp/$project.DIFFS.$$");
 
 print "### Signing tarballs...\n";
 system("cd autobuild && gpg -ba --sign $project-$version$distsufx");
+system("cd autobuild && gpg -ba --sign $project-$version$xzsufx");
+
+print "### Extracting release notes...\n";
+makerelnotes('NEWS', 'autobuild/README');
 
 print "### Uploading\n";
 print "=== local\n";
 
-system("cp", "autobuild/$project-$version$distsufx", "autobuild/$project-$version$distsufx.asc", "$ENV{HOME}/public_html/fetchmail/") and die "Cannot upload to \$HOME/public_html/fetchmail/: $!";
-
-print "=== ibiblio\n";
-
-system("lftp -e \"lcd autobuild ; mput $project-$version$distsufx $project-$version$distsufx.asc $project-$version.lsm ; quit\" ibiblio.org:/incoming/linux/") and warn "Upload to ibiblio failed: $!";
+system("cp", "autobuild/$project-$version$xzsufx", "autobuild/$project-$version$xzsufx.asc", "$ENV{HOME}/public_html/fetchmail/") and die "Cannot upload to \$HOME/public_html/fetchmail/: $!";
 
 print "=== berlios\n";
 
 system("lftp -e \"lcd autobuild ; mput $project-$version$distsufx $project-$version$distsufx.asc ; quit\" ftp.berlios.de:/incoming/") and warn "Upload to berlios failed: $!";
 
-print "Done - please review final tasks\n";
+print "=== sourceforge \n";
+system("rsync -acvHP autobuild/$project-$version$xzsufx autobuild/$project-$version$xzsufx.asc autobuild/README m-a\@frs.sourceforge.net:/home/frs/project/fetchmail/branch_6.3/");
+unlink 'autobuild/README' or die "cannot unlink autobuild/README: $!";
+
+print "=== Done - please review final tasks\n";
 
 system("cat RELEASE-INSTRUCTIONS");
 
index 2498e471e1b40f7ae9bce91ff7c05d2307d0b46a..b33cf5858840a4f1ce039b8bb31355075100e177 100644 (file)
@@ -421,7 +421,6 @@ static int get_pwmd_details(const char *pwmd_account, int protocol,
     return 0;
 }
 #endif
-
 int main(int argc, char **argv)
 {
     int bkgd = FALSE;
@@ -471,7 +470,6 @@ int main(int argc, char **argv)
 
 #define IDFILE_NAME    ".fetchids"
     run.idfile = prependdir (IDFILE_NAME, fmhome);
-
     outlevel = O_NORMAL;
 
     /*
@@ -577,25 +575,27 @@ int main(int argc, char **argv)
     if (run.logfile) {
        /* nodetach -> turn off logfile option */
        if (nodetach) {
-           if (outlevel >= O_DEBUG) { fprintf(stderr, GT_("The nodetach option is in effect, ignoring logfile option.\n")); }
+           if (outlevel >= O_NORMAL) { fprintf(stderr, GT_("The nodetach option is in effect, ignoring logfile option.\n")); }
            xfree(run.logfile);
        }
 
+#if 0
        /* not in daemon mode -> turn off logfile option */
        if (0 == run.poll_interval) {
-           if (outlevel >= O_DEBUG) { fprintf(stderr, GT_("Not running in daemon mode, ignoring logfile option.\n")); }
+           if (outlevel >= O_NORMAL) { fprintf(stderr, GT_("Not running in daemon mode, ignoring logfile option.\n")); }
            xfree(run.logfile);
        }
+#endif
 
        /* log file not writable -> turn off logfile option */
        if (run.logfile && 0 != access(run.logfile, F_OK)) {
-           if (outlevel >= O_DEBUG) { fprintf(stderr, GT_("Logfile \"%s\" does not exist, ignoring logfile option.\n"), run.logfile); }
+           if (outlevel >= O_NORMAL) { fprintf(stderr, GT_("Logfile \"%s\" does not exist, ignoring logfile option.\n"), run.logfile); }
            xfree(run.logfile);
        }
 
        /* log file not writable -> turn off logfile option */
        if (run.logfile && 0 != access(run.logfile, W_OK)) {
-           if (outlevel >= O_DEBUG) { fprintf(stderr, GT_("Logfile \"%s\" is not writable, aborting.\n"), run.logfile); }
+           fprintf(stderr, GT_("Logfile \"%s\" is not writable, aborting.\n"), run.logfile);
            xfree(run.logfile);
            exit(PS_UNDEFINED);
        }
@@ -1136,7 +1136,6 @@ int main(int argc, char **argv)
            pwm = NULL;
        }
 #endif
-
        /* close connections cleanly */
        terminate_poll(0);
 
@@ -1432,7 +1431,6 @@ static int load_params(int argc, char **argv, int optind)
                        fprintf(stderr,GT_("Warning: multiple mentions of host %s in config file\n"),argv[optind]);
                    ctl->active = TRUE;
                    predeclared = TRUE;
-
 #ifdef HAVE_LIBPWMD
                    if (ctl->pwmd_file) {
                        /*
@@ -1463,7 +1461,6 @@ static int load_params(int argc, char **argv, int optind)
                 * call later on.
                 */
                ctl = hostalloc((struct query *)NULL);
-
 #ifdef HAVE_LIBPWMD
                if (cmd_opts.pwmd_file) {
                    /*
@@ -1671,6 +1668,7 @@ static int load_params(int argc, char **argv, int optind)
            if (!ctl->localnames)       /* for local delivery via SMTP */
                save_str_pair(&ctl->localnames, user, NULL);
 
+
            /*
             * can't handle multidrop mailboxes without "envelope"
             * option, this causes truckloads full of support complaints
@@ -1788,6 +1786,7 @@ static void terminate_run(int sig)
        if (ctl->password)
          memset(ctl->password, '\0', strlen(ctl->password));
 
+
     if (activecount == 0)
        exit(PS_NOMAIL);
     else
@@ -1904,7 +1903,6 @@ static int print_id_of(struct uid_db_record *rec, void *unused)
     printf("\t%s\n", rec->id);
     return 0;
 }
-
 static void dump_params (struct runctl *runp,
                         struct query *querylist, flag implicit)
 /* display query parameters in English */
@@ -2302,6 +2300,7 @@ static void dump_params (struct runctl *runp,
                printf(GT_("  No UIDs saved from this host.\n"));
            else
            {
+
                printf(GT_("  %d UIDs saved.\n"), count);
                traverse_uid_db(&ctl->oldsaved, print_id_of, NULL);
            }
index 8f80db38f45c5bb897db1811a295cadc61733f67..aa8836f55f9caf87fcd6c9ecc4706fd069028500 100644 (file)
@@ -2167,11 +2167,9 @@ Legal protocol identifiers for use with the 'protocol' keyword are:
 .sp
 .nf
     auto (or AUTO) (legacy, to be removed from future release)
-
     pop3 (or POP3)
       sdps (or SDPS) (a POP3 variant specific to Demon)
       kpop (or KPOP) (a Kerberos-based variant)
-
     imap (or IMAP)
 .fi
 .sp
diff --git a/genlsm.sh.in b/genlsm.sh.in
deleted file mode 100644 (file)
index a72d110..0000000
+++ /dev/null
@@ -1,32 +0,0 @@
-#! /bin/sh
-# @configure_input@
-
-# WARNING:
-# WARNING: If you change the description, also change specgen.sh!
-# WARNING:
-
-cat <<EOF
-Begin4
-Title:         @PACKAGE@
-Version:       @VERSION@
-Entered-date:  `date -u +%Y-%m-%d`
-Description:   Fetchmail is a free, full-featured, robust, and well-documented
-               remote mail retrieval and forwarding utility intended to be used
-               over on-demand TCP/IP links (such as SLIP or PPP connections).
-               It retrieves mail from remote mail servers and forwards it
-               to your local (client) machine's delivery system, so it can
-               then be be read by normal mail user agents such as mutt, elm,
-               pine, (x)emacs/gnus, or mailx.  Comes with an interactive GUI
-               configurator (in Python/Tk) suitable for end-users.
-Keywords:      mail, client, POP3, APOP, KPOP, IMAP, ETRN, ODMR, SMTP, ESMTP, GSSAPI, RPA, NTLM, CRAM-MD5, SASL
-Author:                matthias.andree@gmx.de (Matthias Andree)
-               shetye@bombay.retortsoft.com (Sunil Shetye)
-Maintained-by: fetchmail-devel@lists.berlios.de
-Primary-site:  http://developer.berlios.de/projects/fetchmail
-               `ls -sk @PACKAGE@-@VERSION@.tar.bz2 | \
-                @AWK@ '{ printf "%4dkB", $1 }'` @PACKAGE@-@VERSION@.tar.bz2
-                  1kB @PACKAGE@-@VERSION@.tar.bz2.asc
-Platforms:     All
-Copying-policy: GPL
-End
-EOF
diff --git a/pop3.c b/pop3.c
index 47d121470c7a9ce1bceb67f1391dfc296227abb5..f8796731286fa36daa3d476f8a2752fed17c77ec 100644 (file)
--- a/pop3.c
+++ b/pop3.c
@@ -362,9 +362,9 @@ static int pop3_getauth(int sock, struct query *ctl, char *greeting)
      *
      * Matthias Andree
      */
-    if (peek_capable && strstr(greeting, "Maillennium POP3/PROXY server")) {
+    if (peek_capable && strstr(greeting, "Maillennium POP3")) {
        if ((ctl->server.workarounds & WKA_TOP) == 0) {
-           report(stdout, GT_("Warning: \"Maillennium POP3/PROXY server\" found, using RETR command instead of TOP.\n"));
+           report(stdout, GT_("Warning: \"Maillennium POP3\" found, using RETR command instead of TOP.\n"));
            ctl->server.workarounds |= WKA_TOP;
        }
        peek_capable = 0;
index e8ed58402f80d3113ba8754c9b0007eb56d46bd3..1f90efe8d89dbece28b43a14e540a019cfeba249 100644 (file)
--- a/socket.c
+++ b/socket.c
@@ -624,7 +624,7 @@ static int SSL_verify_callback( int ok_return, X509_STORE_CTX *ctx, int strict )
                                                        }
                                                }
                                        }
-                                       sk_GENERAL_NAME_free(gens);
+                                       GENERAL_NAMES_free(gens);
                                }
                                if (name_match(p1, p2)) {
                                        matched = 1;
index 85a5fd2f623fd317236ab281d38bc4afee971205..16bdb0881be85b7174dc6ccea5540c1ddae02525 100755 (executable)
@@ -1,8 +1,5 @@
 #!/bin/sh
 
-# WARNING:
-# WARNING: If you change the description, also change genlsm.sh.in!
-# WARNING:
 version="$1"
 
 set -e
index 1641d60687c1e84fc78ccd99677c07b072690891..226e49ede0c8036eda3da47f27c24f66f7cee452 100644 (file)
@@ -15,7 +15,7 @@
 <table width="100%" cellpadding="0" summary="Canned page header">
 <tr>
 <td>Fetchmail</td>
-<td align="right"><!-- update date -->2012-08-29</td>
+<td align="right"><!-- update date -->2012-12-23</td>
 </tr>
 </table>
 </div>
 <h1>Fetchmail</h1>
 
 <div style="background-color:#c0ffc0;color:#000000;">
-    <h1>NEWS: FETCHMAIL 6.3.22 RELEASE</h1>
-    <p>On 2012-08-29, <a
-       href="http://developer.berlios.de/project/showfiles.php?group_id=1824&amp;release_id=19117">fetchmail-6.3.22
+    <h1>NEWS: FETCHMAIL 6.3.24 RELEASE</h1>
+    <p>On 2012-12-23, <a
+       href="http://developer.berlios.de/project/showfiles.php?group_id=1824&amp;release_id=19227">fetchmail-6.3.24
        has been released (this is the download link),</a> fixing a
-    denial-of service in STARTTLS and makes --keep configurations log
-    less verbosely.
-    <br>It is a recommended <strong>security update</strong> for all users and
-    distributors. <a
-       href="http://developer.berlios.de/project/shownotes.php?group_id=1824&amp;release_id=19117">Click
-       here to see the change details.</a>
+    minor regression and a memory leak.
+    <br>It is a recommended update for all users and distributors. <a
+       href="http://developer.berlios.de/project/shownotes.php?group_id=1824&amp;release_id=19227">Click
+       here to see the change details.</a> Note that 6.3.22 fixed
+    security bugs, and is the oldest version that should be used.
     </p>
 
     <h1>SSL issues after upgrade to OpenSSL 1.0.0?</h1>