Paul's Blog Entries for June 2021

Thursday 3rd June 2021

Local Packages

Friday 4th June 2021

Fedora Project

Local Packages

  • Updated Judy as per the Fedora version

Monday 7th June 2021

Fedora Project

  • Orphaned python-invoke, which uses pytest-relaxed in its test suite, which in turn requires pytest < 5 and fails to build with Python 3.10

Tuesday 8th June 2021

Local Packages

  • Updated python-passlib (1.7.4) to add extras metapackages for argon2, bcrypt, totp

  • Updated python2-xapian to sync with xapian-bindings-1.4.18-2 in Rawhide

  • Updated schily to 2021.06.07

  • Rebuilt bluefish (2.2.12), libxml2 (2.9.12) for Python 3.10 in rawhide

Friday 11th June 2021

Fedora Project

  • Imported and built perl-Statistics-ChiSquare (1.0000) for F-33, F-34, Rawhide, EPEL-7 and EPEL-8 after it passed review

  • Updated perl-Crypt-Random to 1.54 in Rawhide:

    • Removed a superfluous call to makerandom_itv()

    • Improved makerandom_itv test to ensure generated numbers are in the interval

    • Actually include t/chisquare.t

Monday 14th June 2021

Fedora Project

  • Updated proftpd to 1.3.7b in F-33, F-34, Rawhide and EPEL-8 Playground:

    • Fixed occasional segfaults with FTPS data transfers using TLSv1.3, when session tickets could not be decrypted (GH#1063)

    • Passive transfers failed unexpectedly due to use of SO_REUSEPORT socket option (GH#1171)

    • Implemented support for Redis 6.x AUTH semantics (GH#1070)

    • Fixed memory use-after-free issue in mod_sftp, which could cause unexpected login/authentication issues

    • Fixed SQL syntax regression for some generated SQL statements (GH#1149)

    • Fixed "Corrupted MAC on input" errors when SFTP uses the digest (GH#1111)

Local Packages

  • Updated proftpd to 1.3.7b as per the Fedora version

Tuesday 15th June 2021

Local Packages

  • Updated perl-Search-Elasticsearch to 7.713:

    • Stable release for Elasticsearch 7.13
  • Updated unrar to 6.02

Wednesday 16th June 2021

Fedora Project

  • Branched and built perl-Math-Round (0.07) for EPEL-8

Friday 18th June 2021

Local Packages

  • Added packages for proftpd 1.3.8rc1; release candidates are available for download until the full 1.3.8 release is available, but are not included in the repositories visible by yum/dnf so as to prevent existing proftpd users getting unwanted updates to a not-yet-ready release

Sunday 20th June 2021

Fedora Project

  • Updated gtkwave to 3.3.110 in Rawhide:

    • gtk_ctree_node_moveto bugfix in SST

    • MSVC compiler fix for fstapi`

    • Update xml2stems and rtlbrowse to support generate

    • Removed ghwdump from the distribution (now provided with GHDL)

    • Fix for when WAVE_GTK3_GESTURE_ZOOM_USES_GTK_PHASE_CAPTURE is disabled

    • Integrated blank window fixes from Fedora
    • Minor scan-build fixes

Local Packages

  • Updated gtkwave to 3.3.110 as per the Fedora version

Monday 21st June 2021

Fedora Project

  • Updated perl-Mixin-Linewise to 0.109 in Rawhide:

    • Use "-r" test instead of "-f" test, to allow use on (say) named pipes

    • Update author information
    • Add perl support section to docs
  • Updated perl-Sub-Exporter to 0.988 in Rawhide:

    • Update author contact info
    • Add perl support section to docs
  • Cleaned up and rebuilt perl-File-MMagic (1.30) and perl-XML-RSS-LibXML (0.3105) in Rawhide, adding glibc-gconv-extra as a test requirement due to Changes/Gconv_package_split_in_glibc

Local Packages

  • Cleaned up and rebuilt perl-File-MMagic (1.30) as per the Fedora version

  • Updated perl-Mixin-Linewise to 0.109 as per the Fedora version; the new version uses syntax like this:

  • package Mixin::Linewise 0.109;
  • instead of the older syntax:
  • package Mixin::Linewise;
    $Mixin::Linewise::VERSION = '0.108';
  • The RPM dependency generators prior to Fedora 21 and RHEL 8 do not understand this new syntax so I had to add manual provides for builds on older distributions
  • Updated perl-Module-CoreList to 5.20210620:

    • Updated for v5.35.1
  • Updated perl-Net-Telnet to 3.05:

    • Fixed some documentation and pod command typos
    • Stopped using the deprecated variable $[ in the autoflush idiom select((select($fh), $|=1)[$[])

    • Added a workaround for the "require FileHandle" bug in perl 5.10.1

    • Fixed a bug in new() that caused the instantiation to fail when setting one of the *_log input args to an empty string

    • Improved the speed of waitfor() to search for the "match", especially when reading a large amount of data, by using the dynamic arrays @- and @+ instead of $` and $&

    • Changed the logging subroutines to also accept a tied filehandle
    • Fixed new perl warning about argument isn't numeric in numeric ge (>=)

  • Updated perl-Sub-Exporter to 0.988 as per the Fedora version

Tuesday 22nd June 2021

Fedora Project

Local Packages

  • Updated dovecot (2.3):

    • Updated dovecot to 2.3.15:

      • CVE-2021-29157: Dovecot does not correctly escape kid and azp fields in JWT tokens, which may be used to supply attacker controlled keys to validate tokens, if attacker has local access

      • CVE-2021-33515: On-path attacker could have injected plaintext commands before STARTTLS negotiation that would be executed after STARTTLS finished with the client

      • Disconnection log messages are now more standardized across services; they also always now start with "Disconnected" prefix
      • Dovecot now depends on libsystemd for systemd integration

      • Removed support for Lua 5.2; use version 5.1 or 5.3 instead
      • config: Some settings are now marked as "hidden" and it's discouraged to change these settings; they will no longer be visible in doveconf output, except if they have been changed or if the doveconf -s parameter is used (see for details)

      • imap-compress: Compression level is now algorithm specific (see

      • indexer-worker: Convert "Indexed" info logs to an event named "indexer_worker_indexing_finished" (see

      • Add TSLv1.3 support to min_protocols

      • Allow configuring ssl_cipher_suites (for TLSv1.3+)

      • acl: Add acl_ignore_namespace setting, which allows to entirely ignore ACLs for the listed namespaces

      • imap: Support official RFC8970 preview/snippet syntax; old methods of retrieving preview information via IMAP commands ("SNIPPET and PREVIEW with explicit algorithm selection") have been deprecated

      • imapc: Support INDEXPVT for imapc storage to enable private message flags for cluster wide shared mailboxes

      • lib-storage: Add new events: mail_opened, mail_expunge_requested, mail_expunged, mail_cache_lookup_finished (see

      • zlib, imap-compression, fs-compress: Support compression levels that the algorithm supports

        • Before, we would allow hardcoded value between 1 and 9 and would default to 6
        • Now, we allow using per-algorithm value range and default to whatever default the algorithm specifies
      • *-login: Commands pipelined together with and just after the authenticate command cause these commands to be executed twice; this applies to all protocols that involve user login, which currently comprises of imap, pop3, submission and managesieve

      • *-login: Processes are supposed to disconnect the oldest non-logged in connection when process_limit was reached; this didn't actually happen with the default "high-security mode" (with service_count=1) where each connection is handled by a separate process

      • *-login: When login process reaches client/process limits, oldest client connections are disconnected; if one of these was still doing anvil lookup, this caused a crash, though it could happen only if the login process limits were very low or if the server was overloaded

      • Fixed building with link time optimizations (-flto)

      • auth: Userdb iteration with passwd driver does not always return all users with some nss drivers

      • dsync: Shared INBOX not synced when "mail_shared_explicit_inbox" was disabled; if a user has a shared mailbox which is another user's INBOX, dsync didn't include the mailbox in syncing unless explicit naming was enabled with "mail_shared_explicit_inbox" set to "yes"

      • dsync: Shared namespaces were not synced with "-n" flag

      • dsync: Syncing shared INBOX failed if mail_attribute_dict was not set; if a user has a shared mailbox that is another user's INBOX, dsync failed to export the mailbox if mail attributes are disabled

      • fts-solr, fts-tika: Using both Solr FTS and Tika may have caused HTTP requests to assert-crash: Panic: file http-client-request.c: line 1232 (http_client_request_send_more): assertion failed: (req->payload_input != NULL)

      • fts-tika: 5xx errors returned by Tika server as indexing failures; however, Tika can return 5xx for some attachments every time, so the 5xx error should be retried once, but treated as success if it happens on the retry as well (v2.3 regression)

      • fts-tika: v2.3.11 regression: Indexing messages with fts-tika may have resulted in Panic: file message-parser.c: line 802 (message_parser_deinit_from_parts): assertion failed: (ctx->nested_parts_count == 0 || i_stream_have_bytes_left(ctx->input))

      • imap: SETMETADATA could not be used to unset metadata values; instead, NIL was handled as a "NIL" string (v2.3.14 regression)

      • imap: IMAP BINARY FETCH crashes at least on empty base64 body: Panic: file index-mail-binary.c: line 358 (blocks_count_lines): assertion failed: (block_count == 0 || block_idx+1 == block_count)

      • imap: If IMAP client using the NOTIFY command was disconnected while sending FETCH notifications to the client, imap could crash with Panic: Trying to close mailbox INBOX with open transactions

      • imap: Using IMAP COMPRESS extension can cause IMAP connection to hang when IMAP commands are >8 kB long

      • imapc: If remote server sent BYE but didn't immediately disconnect, it could cause infinite busy-loop

      • lib-index: Corrupted cache record size in dovecot.index.cache file could have caused a crash (segfault) when accessing it

      • lib-oauth2: JWT token time validation now works correctly with 32-bit systems

      • lib-ssl-iostream: Checking hostnames against an SSL certificate was case-sensitive

      • lib-storage: Corrupted in dovecot.index.cache may have resulted in Panic: file imap-bodystructure.c: line 206 (part_write_body): assertion failed: (text == ((part->flags & MESSAGE_PART_FLAG_TEXT) != 0))

      • lib-storage: Index rebuilding (e.g. via doveadm force-resync) didn't preserve the "hdr-pop3-uidl" header; because of this, the next pop3 session could have accessed all of the emails' metadata to read their POP3 UIDL (opening dbox files)

      • listescape: When using the listescape plugin and a shared namespace, the plugin didn't work properly anymore, resulting in errors like: "Invalid mailbox name: Name must not have '/' character"

      • lmtp: Connection crashes if connection gets disconnected due to multiple bad commands and the last bad command is BDAT

      • lmtp: The Dovecot-specific LMTP parameter XRCPTFORWARD was blindly forwarded by LMTP proxy without checking that the backend has support; this caused a command parameter error from the backend if it was running an older Dovecot release (this could only occur in more complex setups where the message was proxied twice; when the proxy generated the XRCPTFORWARD parameter itself the problem did not occur, so this only happened when it was forwarded)

      • lmtp: The LMTP proxy crashes with a panic when the remote server replies with an error while the mail is still being forwarded through a DATA/BDAT command

      • lmtp: Username may have been missing from lmtp log line prefixes when it was performing autoexpunging

      • master: Dovecot would incorrectly fail with haproxy 2.0.14 service checks

      • master: systemd service: Dovecot announces readiness for accepting connections earlier than it should; the following environment variables are now imported automatically and can be omitted from import_environment setting: NOTIFY_SOCKET LISTEN_FDS LISTEN_PID

      • master: service { process_min_avail } was launching processes too slowly when master was forking a lot of processes

      • util: Make the example script POSIX shell compatible

    • Updated pigeonhole to 0.5.15:

      • CVE-2020-28200: Sieve interpreter is not protected against abusive scripts that claim excessive resource usage: fixed by limiting the user CPU time per single script execution and cumulatively over several script runs within a configurable timeout period; sufficiently large CPU time usage is summed in the Sieve script binary and execution is blocked when the sum exceeds the limit within that time, and the block is lifted when the script is updated after the resource usage times out

      • Disconnection log messages are now more standardized across services; they also always now start with "Disconnected" prefix
      • managesieve: Commands pipelined together with and just after the authenticate command cause these commands to be executed twice

  • Updated proftpd (1.3.7b) as per the Fedora version

Wednesday 23rd June 2021

Fedora Project

  • Updated perl-Mixin-Linewise to 0.110 in Rawhide:

    • Tweak the file test again to exclude directories
  • Updated perl-Path-Tiny (0.118) in Rawhide to remove explicit runtime dependency for Digest::MD5 (PR#1)

  • Updated perltidy to 20210625 in Rawhide (see for details)

Local Packages

  • Updated perl-Mixin-Linewise to 0.110 as per the Fedora version

  • Updated perl-Path-Tiny (0.118) as per the Fedora version

  • Updated perl-Perl-Tidy to 20210625 as per the Fedora perltidy package

Saturday 26th June 2021

Fedora Project

  • Updated perl-Data-Dump to 1.25 in Rawhide:

    • Strings like "NaN" are still strings
    • Update maintainer and repository information
    • New option $Data::Dump::LINEWIDTH controls when to perform a line break (default is 60)

Local Packages

  • Updated perl-Data-Dump to 1.25 as per the Fedora version

Sunday 27th June 2021

Fedora Project

  • Updated golang-github-gofrs-flock to 0.8.1 in Rawhide:

    • Fix issue caused by calling F_SETLKW instead of F_SETLK (GH#52)

Monday 28th June 2021

Fedora Project

  • Submitted a review request for a perl-Date-Range range package, which is a new dependency for perl-Finance-Quote version 1.50

  • Updated perl-Convert-PEM (0.08) in EPEL-7 to disable tests relying on probabilistic output (CPAN RT#27574)

  • Updated perl-Data-OptList to 0.112 in Rawhide:

    • Update author contact info
    • Add perl version support to docs
    • Replace a "goto" deep in the guts with a sub call, for speed

Local Packages

  • Updated perl-Data-OptList to 0.112 as per the Fedora version

  • New package perl-Date-Range (1.41)

  • Updated python2-xapian (1.4.18) for Rawhide to rebuild with C++ 11.1

Tuesday 29th June 2021

Local Packages

  • Updated perl-Pod-Simple to 3.43:

    • Remove pod markup from README

    • Update homepage to metacpan
    • "use" not "require" Pod::Simple::TiedOutFH (GH#131)

Previous Month: May 2021
Next Month: July 2021