public inbox for development@lists.ipfire.org
 help / color / mirror / Atom feed
From: "Peter Müller" <peter.mueller@ipfire.org>
To: development@lists.ipfire.org
Subject: Re: [PATCH] fetchmail: Update to version 6.4.32
Date: Mon, 12 Sep 2022 09:39:34 +0000	[thread overview]
Message-ID: <5ce022f6-0ddb-9ef3-ee43-69a7485a91f5@ipfire.org> (raw)
In-Reply-To: <20220824075002.2933-1-adolf.belka@ipfire.org>

[-- Attachment #1: Type: text/plain, Size: 15147 bytes --]

Reviewed-by: Peter Müller <peter.mueller(a)ipfire.org>

> - Update from version 6.4.19 to 6.4.32
> - Update of rootfile not required
> - Changelog - range of security and bug fixes
>     fetchmail-6.4.32 (released 2022-07-30, 31696 LoC):
> 	# FIXES:
> 		* Use configure to find rst2html, some systems install it only with .py suffix,
> 		  others only without, and some install both.
> 		* Update README.maintainer
> 	# TRANSLATIONS: language translations were updated by these fine people:
> 		(in alphabetical order of language codes so as not to prefer people):
> 		* cs:    Petr Pisar [Czech]
> 		* es:    Cristian Othón Martínez Vera [Spanish]
> 		* ja:    Takeshi Hamasaki [Japanese]
> 		* pl:    Jakub Bogusz [Polish]
> 		* ro:    Remus-Gabriel Chelu [Romanian]
> 		* sq:    Besnik Bleta [Albanian]
> 		* sv:    Göran Uddeborg [Swedish]
>     fetchmail-6.4.31 (released 2022-07-16, 31694 LoC):
> 	# BUG FIXES:
> 		* Try to fix ./configure --with-ssl=... for systems that have multiple OpenSSL
> 		  versions installed.  Issues reported by Dennis Putnam.
> 		* The netrc parser now reports its errors to syslog or logfile when appropriate,
> 		  previously it would always log to stderr.
> 		* Add error checking to .netrc parser.
> 	# CHANGES:
> 		* manpage: use .UR/.UE macros instead of .URL for URIs.
> 		* manpage: fix contractions. Found with FreeBSD's igor tool.
> 		* manpage: HTML now built with pandoc -> python-docutils
> 		  (manServer.pl was dropped)
>     fetchmail-6.4.30 (released 2022-04-26, 31666 LoC):
> 	# BREAKING CHANGES:
> 		* Bump wolfSSL minimum required version to 5.2.0 to pull in security fix.
> 	# CHANGES:
> 		* Using OpenSSL 1.* before 1.1.1n elicits a compile-time warning.
> 		* Using OpenSSL 3.* before 3.0.2  elicits a compile-time warning.
> 		* configure.ac was tweaked in order to hopefully fix cross-compilation issues
> 		  report, and different patch suggested, by Fabrice Fontaine,
> 		  https://gitlab.com/fetchmail/fetchmail/-/merge_requests/42
> 	# TRANSLATIONS: language translations were updated by this fine person:
> 		* ro:    Remus-Gabriel Chelu [Romanian]
>     fetchmail-6.4.29 (released 2022-03-20, 31661 LoC):
> 	# TRANSLATIONS: language translations were updated by this fine person:
> 		* vi:    Trần Ngọc Quân [Vietnamese]
>     fetchmail-6.4.28 (released 2022-03-05, 31661 LoC):
> 	# DOCUMENTATION:
> 		* Fix a typo in the manual page, courtesy of Jeremy Petch.
> 	# TRANSLATIONS: language translations were updated by this fine person:
> 		* es:    Cristian Othón Martínez Vera [Spanish]
>     fetchmail-6.4.27 (released 2022-01-26, 31661 LoC):
> 	# BREAKING CHANGES:
> 		* Bump wolfSSL minimum required version to 5.1.1 to pull in security fix.
> 	# TRANSLATIONS: language translations were updated by this fine person:
> 		* ro:    Remus-Gabriel Chelu [Romanian]
>     fetchmail-6.4.26 (released 2021-12-26, 31661 LoC):
> 	# FIXES:
> 		* When using wolfSSL 5.0.0, work around a bug that appears to hit wolfSSL when
> 		  receiving handshake records while still in SSL_peek(). Workaround is to read
> 		  1 byte and cache it, then call SSL_peek() again.
> 		  This affects only some servers. https://github.com/wolfSSL/wolfssl/issues/4593
> 	# TRANSLATIONS: language translations were updated by this fine person:
> 		* sr:    Мирослав Николић (Miroslav Nikolić) [Serbian]
>     fetchmail-6.4.25 (released 2021-12-10, 31653 LoC):
> 	# BREAKING CHANGES:
> 		* Since distributions continue patching for LibreSSL use, which cannot be
> 		  linked legally, block out LibreSSL in configure.ac and socket.c, and
> 		  refer to COPYING, unless on OpenBSD (which ships it in the base system).
> 		  OpenSSL and wolfSSL 5 can be used.  SSL-related documentation was updated, do
> 		  re-read COPYING, INSTALL, README, README.packaging, README.SSL.
> 		* Bump OpenSSL version requirement to 1.0.2f in order to safely remove
> 		  the obsolete OpenSSL flag SSL_OP_SINGLE_DH_USE. This blocks out 1.0.2e and
> 		  older 1.0.2 versions. 1.0.2f was a security fix release, and 1.0.2u is
> 		  publicly available from https://www.openssl.org/source/old/1.0.2/
> 		* Some of the configure.ac fiddling MIGHT have broken cross-compilation
> 		  again. The maintainer does not test cross-compiling fetchmail; if you
> 		  have difficulties, try setting PKG_CONFIG_LIBDIR to the pkg-config path
> 		  containing your target/host libraries, or see if --with-ssl-prefix or
> 		  --with-wolfssl-prefix, or overriding LDFLAGS/LIBS/CPPFLAGS, can help.
> 		  Feedback solicited on compliant systems that are before end-of-life.
> 	# BUG FIXES:
> 		* 6.4.24's workaround for OpenSSL 1.0.2's X509_V_FLAG_TRUSTED_FIRST flag
> 		  contained a typo and would not kick in properly.
> 		* Library and/or rpath setting from configure.ac was fixed.
> 	# ADDITIONS:
> 		* Added an example systemd unit file and instructions to contrib/systemd/
> 		  which runs fetchmail as a daemon with 5-minute poll intervals.
> 		  Courteously contributed by Barak A. Pearlmutter, Debian Bug#981464.
> 		* fetchmail can now be used with wolfSSL 5's OpenSSL compatibility layer,
> 		  see INSTALL and README.SSL. This is considered experimental.
> 		  Feedback solicited.
> 	# CHANGES:
> 		* The getstats.py dist-tool now counts lines of .ac and .am files.
> 		* ./configure --with-ssl now supports pkg-config module names, too. See INSTALL.
> 	# TRANSLATIONS: language translations were updated by these fine people:
> 		(in reverse alphabetical order of language codes so as not to prefer people):
> 		* sv:    Göran Uddeborg [Swedish]
> 		* sq:    Besnik Bleta [Albanian]
> 		* pl:    Jakub Bogusz [Polish]
> 		* ja:    Takeshi Hamasaki [Japanese]
> 		* fr:    Frédéric Marchal [French]
> 		* eo:    Keith Bowes [Esperanto]
> 		* cs:    Petr Pisar [Czech]
>     fetchmail-6.4.24 (released 2021-11-20, 30218 LoC):
> 	# OPENSSL AND LICENSING NOTE:
> 		> see fetchmail-6.4.22 below, and the file COPYING.
> 		  Note that distribution of packages linked with LibreSSL is not feasible
> 		  due to a missing GPLv2 clause 2(b) exception.
> 	# COMPATIBILITY:
> 		* Bison 3.8 dropped yytoknum altogether, breaking compilation due to a
> 		  warning workaround. Remove the cast of yytoknum to void.  This may cause
> 		  a compiler warning to reappear with older Bison versions.
> 		* OpenSSL 1.0.2: Workaround for systems that keep the expired DST Root CA X3
> 		  certificate in its trust store because OpenSSL by default prefers the
> 		  untrusted certificate and fails.  Fetchmail now sets the
> 		  X509_V_FLAG_TRUSTED_FIRST flag (on OpenSSL 1.0.2 only).
> 		  This is workaround #2 from the OpenSSL Blog.  For details, see both:
> 		  https://www.openssl.org/blog/blog/2021/09/13/LetsEncryptRootCertExpire/
> 		  https://letsencrypt.org/docs/dst-root-ca-x3-expiration-september-2021/
> 		  NOTE: OpenSSL 1.0.2 is end of life, it is assumed that the OpenSSL library
> 		  is kept up to date by a distributor or via OpenSSL support contract.
> 		  Where this is not the case, please upgrade to a supported OpenSSL version.
> 	# DOCUMENTATION:
> 		* The manual page was revised after re-checking with mandoc -Tlint, aspell,
> 		  igor. Some more revisions were made for clarity.
> 	# TRANSLATIONS: language translations were updated by these fine people:
> 		* sv:    Göran Uddeborg [Swedish]
> 		* pl:    Jakub Bogusz [Polish]
> 		* fr:    Frédéric Marchal [French]
> 		* cs:    Petr Pisar [Czech]
> 		* eo:    Keith Bowes [Esperanto]
> 		* ja:    Takeshi Hamasaki [Japanese]
>     fetchmail-6.4.23 (released 2021-10-31, 30206 LoC):
> 	# USABILITY:
> 		* For common ssh-based IMAP PREAUTH setups (i. e. those that use a plugin
> 		  - no matter its contents - and that set auth ssh), change the STARTTLS
> 		  error message to suggest sslproto '' instead.
> 		  This is a commonly reported issue after the CVE-2021-39272 fix in 6.4.22.
> 		  Fixes Redhat Bugzilla 2008160. Fixes GitLab #39.
> 	# TRANSLATIONS: language translations were updated by these fine people:
> 		* ja:    Takeshi Hamasaki [Japanese]
> 		* sr:	 Мирослав Николић (Miroslav Nikolić) [Serbian]
>     fetchmail-6.4.22 (released 2021-09-13, 30201 LoC):
> 	# OPENSSL AND LICENSING NOTE:
> 		* fetchmail 6.4.22 is compatible with OpenSSL 1.1.1 and 3.0.0.
> 		  OpenSSL's licensing changed between these releases from dual OpenSSL/SSLeay
> 		  license to Apache License v2.0, which is considered incompatible with GPL v2
> 		  by the FSF.  For implications and details, see the file COPYING.
> 	# SECURITY FIXES:
> 		* CVE-2021-39272: fetchmail-SA-2021-02: On IMAP connections, without --ssl and
> 		  with nonempty --sslproto, meaning that fetchmail is to enforce TLS, and when
> 		  the server or an attacker sends a PREAUTH greeting, fetchmail used to continue
> 		  an unencrypted connection.  Now, log the error and abort the connection.
> 		  --Recommendation for servers that support SSL/TLS-wrapped or "implicit" mode on
> 		  a dedicated port (default 993): use --ssl, or the ssl user option in an rcfile.
> 		  --Reported by: Andrew C. Aitchison, based on the USENIX Security 21 paper "Why
> 		  TLS is better without STARTTLS - A Security Analysis of STARTTLS in the Email
> 		  Context" by Damian Poddebniak, Fabian Ising, Hanno Böck, and Sebastian
> 		  Schinzel.  The paper did not mention fetchmail.
> 		* On IMAP and POP3 connections, --auth ssh no longer prevents STARTTLS
> 		  negotiation.
> 		* On IMAP connections, fetchmail does not permit overriding a server-side
> 		  LOGINDISABLED with --auth password any more.
> 		* On POP3 connections, the possibility for RPA authentication (by probing with
> 		  an AUTH command without arguments) no longer prevents STARTTLS negotiation.
> 		* For POP3 connections, only attempt RPA if the authentication type is "any".
> 	# BUG FIXES:
> 		* On IMAP connections, when AUTHENTICATE EXTERNAL fails and we have received the
> 		  tagged (= final) response, do not send "*".
> 		* On IMAP connections, AUTHENTICATE EXTERNAL without username will properly send
> 		  a "=" for protocol compliance.
> 		* On IMAP connections, AUTHENTICATE EXTERNAL will now check if the server
> 		  advertised SASL-IR (RFC-4959) support and otherwise refuse (fetchmail <= 6.4
> 		  has not supported and does not support the separate challenge/response with
> 		  command continuation)
> 		* On IMAP connections, when --auth external is requested but not advertised by
> 		  the server, log a proper error message.
> 		* Fetchmail no longer crashes when attempting a connection with --plugin "" or
> 		  --plugout "".
> 		* Fetchmail no longer leaks memory when processing the arguments of --plugin or
> 		  --plugout on connections.
> 		* On POP3 connections, the CAPAbilities parser is now caseblind.
> 		* Fix segfault on configurations with "defaults ... no envelope". Reported by
> 		  Bjørn Mork. Fixes Debian Bug#992400.  This is a regression in fetchmail 6.4.3
> 		  and happened when plugging memory leaks, which did not account for that the
> 		  envelope parameter is special when set as "no envelope". The segfault happens
> 		  in a constant strlen(-1), triggered by trusted local input => no vulnerability.
> 		* Fix program abort (SIGABRT) with "internal error" when invalid sslproto is
> 		  given with OpenSSL 1.1.0 API compatible SSL implementations.
> 	# CHANGES:
> 		* IMAP: When fetchmail is in not-authenticated state and the server volunteers
> 		  CAPABILITY information, use it and do not re-probe. (After STARTTLS, fetchmail
> 		  must and will re-probe explicitly.)
> 		* For typical POP3/IMAP ports 110, 143, 993, 995, if port and --ssl option
> 		  do not match, emit a warning and continue. Closes Gitlab #31.
> 		  (cherry-picked from 6.5 beta branch "legacy_6x")
> 		* fetchmail.man and README.SSL were updated in line with RFC-8314/8996/8997
> 		  recommendations to prefer Implicit TLS (--ssl/ssl) and TLS v1.2 or newer,
> 		  placing --sslproto tls1.2+ more prominently.
> 		  The defaults shall not change between 6.4.X releases for compatibility.
> 	# TRANSLATIONS: language translations were updated by these fine people:
> 		* sq:    Besnik Bleta [Albanian]
> 		* cs:    Petr Pisar [Czech]
> 		* eo:    Keith Bowes [Esperanto]
> 		* fr:    Frédéric Marchal [French]
> 		* pl:    Jakub Bogusz [Polish]
> 		* sv:    Göran Uddeborg [Swedish]
>     fetchmail-6.4.21 (released 2021-08-09, 30042 LoC):
> 	# REGRESSION FIX:
> 		* The new security fix in 6.4.20 for CVE-2021-36386 caused truncation of
> 		  messages logged to buffered outputs, from --logfile and --syslog.
> 		  This also caused lines in the logfile to run into one another because
> 		  the fragment containing the '\n' line-end character was usually lost.
> 		  Reason is that on all modern systems (with <stdarg.h> header and vsnprintf()
> 		  interface), the length of log message fragments was added up twice, so
> 		  that these ended too deep into a freshly allocated buffer, after the '\0'
> 		  byte.  Unbuffered outputs flushed the fragments right away, which masked the
> 		  bug.
>     fetchmail-6.4.20 (released 2021-07-28, 30042 LoC):
> 	# SECURITY FIX:
> 		* When a log message exceeds c. 2 kByte in size, for instance, with very long
> 		  header contents, and depending on verbosity option, fetchmail can crash or
> 		  misreport each first log message that requires a buffer reallocation.
> 		  fetchmail then reallocates memory and re-runs vsnprintf() without another
> 		  call to va_start(), so it reads garbage. The exact impact depends on
> 		  many factors around the compiler and operating system configurations used and
> 		  the implementation details of the stdarg.h interfaces of the two functions
> 		  mentioned before. To fix CVE-2021-36386.
> 
> Signed-off-by: Adolf Belka <adolf.belka(a)ipfire.org>
> ---
>  lfs/fetchmail | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/lfs/fetchmail b/lfs/fetchmail
> index 00ee6a634..6a4860e32 100644
> --- a/lfs/fetchmail
> +++ b/lfs/fetchmail
> @@ -26,7 +26,7 @@ include Config
>  
>  SUMMARY    = Full-Featured POP and IMAP Mail Retrieval Daemon
>  
> -VER        = 6.4.19
> +VER        = 6.4.32
>  
>  THISAPP    = fetchmail-$(VER)
>  DL_FILE    = $(THISAPP).tar.xz
> @@ -34,7 +34,7 @@ DL_FROM    = $(URL_IPFIRE)
>  DIR_APP    = $(DIR_SRC)/$(THISAPP)
>  TARGET     = $(DIR_INFO)/$(THISAPP)
>  PROG       = fetchmail
> -PAK_VER    = 11
> +PAK_VER    = 12
>  
>  DEPS       =
>  
> @@ -48,7 +48,7 @@ objects = $(DL_FILE)
>  
>  $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
>  
> -$(DL_FILE)_BLAKE2 = 679d2c49698dd368d32439a8276412e3f32c0a0f6f0e7607bc323c0294c987307469451b4b085fe521f2d5dd4869d59b4841762b6a57b3c654b992e9de8ba87c
> +$(DL_FILE)_BLAKE2 = 5d6311c46053abc2e5b040273f04d9df5e737dcd938d1370bcd84415e422ec6a05126ecb59efcad9254e37338671cf7bfa224ea1015b83e8e93483cbeb033b7a
>  
>  install : $(TARGET)
>  

      reply	other threads:[~2022-09-12  9:39 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-24  7:50 Adolf Belka
2022-09-12  9:39 ` Peter Müller [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5ce022f6-0ddb-9ef3-ee43-69a7485a91f5@ipfire.org \
    --to=peter.mueller@ipfire.org \
    --cc=development@lists.ipfire.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox