0f9cf8
%define scmt(l:) %(c=%1; echo ${c:0:%{-l:%{-l*}}%{!-l:7}})
0f9cf8
0f9cf8
# Cassandane commit hash.  Cassandane doesn't have releases often, but it
0f9cf8
# receives constant development.  This was fetched on 20180518.
0f9cf8
%global cocas 00bfe0109f80437ed09154aca9fbd53eef8f1b09
0f9cf8
0f9cf8
# Cassandane run by default.  '--without cassandane' disables.
0f9cf8
%bcond_without cassandane
0f9cf8
0f9cf8
Name: cyrus-imapd
0f9cf8
Version: 3.0.7
751b43
Release: 24%{?dist}
0f9cf8
0f9cf8
%define ssl_pem_file_prefix /etc/pki/%name/%name
0f9cf8
0f9cf8
# UID/GID 76 have long been reserved for Cyrus
0f9cf8
%define uid 76
0f9cf8
%define gid 76
0f9cf8
0f9cf8
%define cyrususer cyrus
0f9cf8
%define cyrusgroup mail
0f9cf8
%define cyrexecdir %_libexecdir/%name
0f9cf8
0f9cf8
Summary: A high-performance email, contacts and calendar server
0f9cf8
License: BSD
0f9cf8
URL: http://www.cyrusimap.org/
0f9cf8
Source0: http://www.cyrusimap.org/releases/%name-%version.tar.gz
0f9cf8
Source1: CHANGES.rpm
0f9cf8
0f9cf8
# Adapt a timeout to handle our slower builders
0f9cf8
Patch0: patch-cyrus-testsuite-timeout
0f9cf8
0f9cf8
# Upstream https://github.com/cyrusimap/cyrus-imapd/issues/2026
0f9cf8
Patch1: patch-cyrus-managesieve-linking
0f9cf8
0f9cf8
# Fedora-specific patch for the default configuration file
0f9cf8
Patch2: patch-cyrus-default-configs
0f9cf8
0f9cf8
# vzic uses an old makefile that needs hacks to use the proper flags
0f9cf8
Patch3: patch-vzic-proper-cflags
0f9cf8
0f9cf8
Patch4: cyrus-imapd-close_backup_on_failure.patch
0f9cf8
Patch5: cyrus-imapd-memory_leak_on_cleanup.patch
0f9cf8
Patch6: cyrus-imapd-memory_leak_on_cleanup_2.patch
0f9cf8
Patch7: cyrus-imapd-close_backup_fd_on_error.patch
0f9cf8
Patch8: cyrus-imapd-cve_2019_11356.patch
0f9cf8
Patch9: cyrus-imapd-CVE-2019-19783.patch
0f9cf8
Patch10: cyrus-imapd-CVE-2019-18928.patch
3b1dbd
Patch11: cyrus-imapd-use_system_ciphers.patch
0e0432
Patch12: cyrus-imapd-3.0-CVE-2021-33582.patch
751b43
# https://github.com/cyrusimap/cyrus-imapd/pull/3892
751b43
Patch13: cyrus-squatter-assert-crash.patch
751b43
# https://github.com/cyrusimap/cyrus-imapd/commit/562ac9d7abd3b928315c7f0672d0f1a8995ca625
751b43
Patch14: cyrus-imapd-load-tombstones-for-cleanup.patch
0f9cf8
0f9cf8
Source10: cyrus-imapd.logrotate
0f9cf8
Source11: cyrus-imapd.pam-config
0f9cf8
Source12: cyrus-imapd.sysconfig
0f9cf8
Source13: cyrus-imapd.cvt_cyrusdb_all
0f9cf8
Source14: cyrus-imapd.magic
0f9cf8
# XXX A systemd timer would probably be better
0f9cf8
Source15: cyrus-imapd.cron-daily
0f9cf8
Source16: README.rpm
0f9cf8
Source17: cyrus-imapd.service
0f9cf8
Source18: cyrus-imapd-init.service
0f9cf8
Source19: cyrus-imapd.tmpfiles.conf
0f9cf8
0f9cf8
0f9cf8
0f9cf8
# Source files for running the Cassandane test suite at build time.
0f9cf8
Source80: https://github.com/cyrusimap/cassandane/archive/%cocas.tar.gz#/cassandane-%{scmt %cocas}.tar.gz
0f9cf8
0f9cf8
# The CPAN version, and hence the Fedora-packaged version, of Net::CalDAVTalk
0f9cf8
# doesn't include the testdata directory.  Cassandane can use it for testing
0f9cf8
# calendaring, so it's included here.
0f9cf8
# This archive was generated by running:
0f9cf8
#   svn export https://github.com/brong/Net-CalDAVTalk/trunk/testdata
0f9cf8
#   tar cfz cassandane-testdata-20170523.tar.gz testdata
0f9cf8
# Note that this changes very rarely.  See
0f9cf8
#   https://github.com/brong/Net-CalDAVTalk/tree/master/testdata
0f9cf8
Source81: cassandane-testdata-20170523.tar.gz
0f9cf8
0f9cf8
# A template config file for cassandane; we will substitute in varions values.
0f9cf8
Source82: cassandane.ini
0f9cf8
0f9cf8
# These are source files and not patches because you can't use autosetup to
0f9cf8
# apply patches to secondary unpacked source files.
0f9cf8
0f9cf8
# Prevent cassandane from trying to syslog things
0f9cf8
Source91: patch-cassandane-no-syslog
0f9cf8
0f9cf8
# Tell the annotator script to run as the current user/group
0f9cf8
# Upstream ticket https://github.com/cyrusimap/cyrus-imapd/issues/1995
0f9cf8
Source92: patch-cassandane-fix-annotator
0f9cf8
0f9cf8
Source93: cyrus-imapd-master_rename.patch
0f9cf8
0f9cf8
BuildRequires: autoconf automake bison flex gcc gcc-c++ git groff libtool
0f9cf8
BuildRequires: pkgconfig systemd transfig
0f9cf8
0f9cf8
BuildRequires: perl-devel perl-generators perl(ExtUtils::MakeMaker)
0f9cf8
BuildRequires: perl(Pod::Html)
0f9cf8
0f9cf8
BuildRequires: CUnit-devel cyrus-sasl-devel glib2-devel
0f9cf8
BuildRequires: jansson-devel krb5-devel libical-devel libicu-devel
0f9cf8
BuildRequires: libnghttp2-devel libxml2-devel mariadb-devel net-snmp-devel
0f9cf8
BuildRequires: openldap-devel openssl-devel postgresql-devel
0f9cf8
BuildRequires: sqlite-devel
1d8685
BuildRequires: xapian-core-devel
0f9cf8
0f9cf8
# Miscellaneous modules needed for 'make check' to function:
0f9cf8
BuildRequires: cyrus-sasl-plain cyrus-sasl-md5
0f9cf8
0f9cf8
%if %{with cassandane}
0f9cf8
# Additional packages required for cassandane to function
0f9cf8
BuildRequires: imaptest net-tools words
0f9cf8
BuildRequires: perl(AnyEvent) perl(BSD::Resource) perl(Clone)
0f9cf8
BuildRequires: perl(experimental) perl(File::chdir) perl(File::Slurp)
0f9cf8
BuildRequires: perl(IO::Socket::INET6) perl(Mail::IMAPTalk)
0f9cf8
BuildRequires: perl(Config::IniFiles) perl(Mail::JMAPTalk) perl(Math::Int64)
0f9cf8
BuildRequires: perl(Net::CalDAVTalk) perl(Net::CardDAVTalk)
0f9cf8
BuildRequires: perl(Net::Server) perl(News::NNTPClient) perl(Path::Tiny)
0f9cf8
BuildRequires: perl(String::CRC32) perl(Sys::Syslog)
0f9cf8
BuildRequires: perl(Test::Unit::TestRunner) perl(Time::HiRes)
0f9cf8
BuildRequires: perl(Unix::Syslog) perl(XML::DOM) perl(XML::Generator)
0f9cf8
0f9cf8
# For tls tests
0f9cf8
BuildRequires: sscg
0f9cf8
0f9cf8
# These were only for JMAP-Tester
0f9cf8
# perl(Moo), perl(Moose), perl(MooseX::Role::Parameterized) perl(Throwable), perl(Safe::Isa)
0f9cf8
%endif
0f9cf8
0f9cf8
Requires(pre): shadow-utils
0f9cf8
Requires(post): /sbin/ldconfig
0f9cf8
Requires(postun): /sbin/ldconfig
0f9cf8
%{?systemd_requires}
0f9cf8
0f9cf8
Requires: %name-utils = %version-%release
0f9cf8
Recommends: %name-vzic = %version-%release
0f9cf8
Requires: file libdb-utils sscg
0f9cf8
Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version))
0f9cf8
Requires: cyrus-imapd = %{version}-%{release}
0f9cf8
0f9cf8
%{?perl_default_filter}
0f9cf8
0f9cf8
%description
0f9cf8
The Cyrus IMAP (Internet Message Access Protocol) server provides access to
0f9cf8
personal mail, system-wide bulletin boards, news-feeds, calendar and contacts
0f9cf8
through the IMAP, JMAP, NNTP, CalDAV and CardDAV protocols. The Cyrus IMAP
0f9cf8
server is a scalable enterprise groupware system designed for use from small to
0f9cf8
large enterprise environments using technologies based on well-established Open
0f9cf8
Standards.
0f9cf8
0f9cf8
A full Cyrus IMAP implementation allows a seamless mail and bulletin board
0f9cf8
environment to be set up across one or more nodes. It differs from other IMAP
0f9cf8
server implementations in that it is run on sealed nodes, where users are not
0f9cf8
normally permitted to log in. The mailbox database is stored in parts of the
0f9cf8
filesystem that are private to the Cyrus IMAP system. All user access to mail
0f9cf8
is through software using the IMAP, IMAPS, JMAP, POP3, POP3S, KPOP, CalDAV
0f9cf8
and/or CardDAV protocols.
0f9cf8
0f9cf8
The private mailbox database design gives the Cyrus IMAP server large
0f9cf8
advantages in efficiency, scalability, and administratability. Multiple
0f9cf8
concurrent read/write connections to the same mailbox are permitted. The server
0f9cf8
supports access control lists on mailboxes and storage quotas on mailbox
0f9cf8
hierarchies.
0f9cf8
0f9cf8
0f9cf8
%package devel
0f9cf8
Summary: Cyrus IMAP server development files
0f9cf8
Requires: %name%{?_isa} = %version-%release
0f9cf8
Requires: pkgconfig
0f9cf8
0f9cf8
%description devel
0f9cf8
The %name-devel package contains header files and libraries
0f9cf8
necessary for developing applications which use the imclient library.
0f9cf8
0f9cf8
0f9cf8
%package doc-extra
0f9cf8
Summary: Extra documentation for the Cyrus IMAP server
0f9cf8
BuildArch: noarch
0f9cf8
0f9cf8
%description doc-extra
0f9cf8
This package contains the HTML documentation for the Cyrus IMAP server, as well
0f9cf8
as some legacy and internal documentation not useful for normal operation of
0f9cf8
the server.
0f9cf8
0f9cf8
0f9cf8
%package utils
0f9cf8
Summary: Cyrus IMAP server administration utilities
0f9cf8
0f9cf8
%description utils
0f9cf8
The cyrus-imapd-utils package contains administrative tools for the
0f9cf8
Cyrus IMAP server. It can be installed on systems other than the
0f9cf8
one running the server.
0f9cf8
0f9cf8
0f9cf8
%package vzic
0f9cf8
Summary: Utilities to convert timezone database files
0f9cf8
License: GPLv2+
0f9cf8
Requires: %name = %version-%release
0f9cf8
# Contains a lightly forked version of vzic.  This seems to have been bundled
0f9cf8
# into various other things and it's old, so I'm not sure where the upstream
0f9cf8
# is.  Here are a couple of possible upstreams:
0f9cf8
# https://github.com/libical/vzic
0f9cf8
# https://sourceforge.net/projects/vzic/
0f9cf8
# It is probably a good idea to split it out and package it separately, but the
0f9cf8
# code here definitely differs from that at the second link above.
0f9cf8
Provides: bundled(vzic) = 1.3
0f9cf8
0f9cf8
%description vzic
0f9cf8
vzic is a program to convert the Olson timezone database files into VTIMEZONE
0f9cf8
files compatible with the iCalendar specification (RFC2445).
0f9cf8
0f9cf8
This package contains a forked version of vzic for internal use by the Cyrus
0f9cf8
IMAP server.
0f9cf8
0f9cf8
# Build dir is either $PWD, $(pwd) or %
0f9cf8
0f9cf8
%prep
0f9cf8
%autosetup -p1 -S git
0f9cf8
echo %version > VERSION
0f9cf8
0f9cf8
# Install the Fedora-specific documentation file
0f9cf8
install -m 644 %SOURCE1 doc/
0f9cf8
install -m 644 %SOURCE16 doc/
0f9cf8
0f9cf8
# Unpack and prepare cassandane
0f9cf8
tar xf %SOURCE80
0f9cf8
ln -s cassandane-%cocas cassandane
0f9cf8
pushd cassandane
0f9cf8
mkdir work
0f9cf8
tar xf %SOURCE81
0f9cf8
0f9cf8
patch -p1 < %SOURCE91
0f9cf8
patch -p1 < %SOURCE92
0f9cf8
patch -p1 < %SOURCE93
0f9cf8
0f9cf8
cp %SOURCE82 cassandane.ini
0f9cf8
# RF rpm-buildroot-usage
0f9cf8
sed -i \
0f9cf8
    -e "s!CASSDIR!$(pwd)!" \
0f9cf8
    -e "s!BUILDROOT!%buildroot!" \
0f9cf8
    cassandane.ini
0f9cf8
0f9cf8
popd
0f9cf8
0f9cf8
# Drop expired certificates and generate new ones
0f9cf8
pushd cunit
0f9cf8
rm -rf *pem
3b1dbd
%{_bindir}/sscg --package %{name} --cert-file cert.pem --cert-key-file key.pem --ca-file cacert.pem
0f9cf8
popd
0f9cf8
0f9cf8
## Modify docs master --> cyrus-master
0f9cf8
#%{__perl} -pi -e "s@master\(8\)@cyrus-master(8)@" man/*5 man/*8 lib/imapoptions
0f9cf8
#sed -i -e 's|\([^-]\)master|\1cyrus-master|g;s|^master|cyrus-master|g;s|Master|Cyrus-master|g;s|MASTER|CYRUS-MASTER|g' \
0f9cf8
#        man/master.8 doc/man.html
0f9cf8
0f9cf8
0f9cf8
%build
0f9cf8
# This is the test suite, which doesn't build much but does verify its dependencies.
0f9cf8
# If this is done after the configure call, the one thing it does build fails
0f9cf8
# because the configure macro puts some hardening flags into the environment.
0f9cf8
%if %{with cassandane}
0f9cf8
pushd cassandane
0f9cf8
make
0f9cf8
popd
0f9cf8
%endif
0f9cf8
0f9cf8
# Notes about configure options:
0f9cf8
# --enable-objectstore
0f9cf8
#   It's experimental, and it doesn't appear that either openio or caringo are
0f9cf8
#   in Fedora.
0f9cf8
# --with-cyrus-prefix and --with-service-path went away; use --with-libexecdir=
0f9cf8
# instead.
0f9cf8
0f9cf8
# Needed because of Patch4.
0f9cf8
autoreconf -vi
0f9cf8
0f9cf8
%configure \
0f9cf8
    --disable-silent-rules \
0f9cf8
    \
0f9cf8
    --libexecdir=%cyrexecdir \
0f9cf8
    --with-extraident="%release Fedora" \
0f9cf8
    --with-krbimpl=mit \
0f9cf8
    --with-ldap=/usr \
0f9cf8
    --with-libwrap=no \
0f9cf8
    --with-mysql \
0f9cf8
    --with-pgsql \
0f9cf8
    --with-perl=%__perl \
0f9cf8
    --with-snmp \
0f9cf8
    --with-syslogfacility=MAIL \
0f9cf8
    \
0f9cf8
    --enable-autocreate \
0f9cf8
    --enable-backup \
0f9cf8
    --enable-calalarmd \
0f9cf8
    --enable-http \
0f9cf8
    --enable-idled \
0f9cf8
    --enable-jmap \
0f9cf8
    --enable-murder \
0f9cf8
    --enable-nntp \
0f9cf8
    --enable-replication \
0f9cf8
    --enable-unit-tests \
0f9cf8
    --enable-xapian \
1d8685
%if 0%{?fedora} && 0%{?fedora}  >= 0
0f9cf8
    --with-clamav \
0f9cf8
%endif
0f9cf8
#
0f9cf8
0f9cf8
# The configure script will set up the Perl makefiles, but not in the way
0f9cf8
# Fedora needs them.  So regenerate them manually.
0f9cf8
for i in perl/annotator perl/imap perl/sieve/managesieve; do
0f9cf8
    pushd $i
0f9cf8
    rm -f Makefile
0f9cf8
    perl Makefile.PL INSTALLDIRS=vendor # NO_PERLOCAL=1 NO_PACKLIST=1
0f9cf8
    popd
0f9cf8
done
0f9cf8
0f9cf8
%make_build
0f9cf8
0f9cf8
# This isn't built by default, but this package has always installed it.
0f9cf8
make notifyd/notifytest
0f9cf8
0f9cf8
# Also not built by default, but the tools are needed for serving timezone info
0f9cf8
make -C tools/vzic
0f9cf8
0f9cf8
# Modify docs master --> cyrus-master
0f9cf8
%{__perl} -pi -e "s@master\(8\)@cyrus-master(8)@" man/*5 man/*8 lib/imapoptions
0f9cf8
sed -i -e 's|\([^-]\)master|\1cyrus-master|g;s|^master|cyrus-master|g;s|Master|Cyrus-master|g;s|MASTER|CYRUS-MASTER|g' \
3b1dbd
	man/master.8 doc/legacy/man.html
0f9cf8
0f9cf8
%install
0f9cf8
make install DESTDIR=%buildroot
0f9cf8
0f9cf8
# Create directories
0f9cf8
install -d \
0f9cf8
    %buildroot/etc/{rc.d/init.d,logrotate.d,pam.d,sysconfig,cron.daily} \
0f9cf8
    %buildroot/%_libdir/sasl \
0f9cf8
    %buildroot/var/spool/imap \
0f9cf8
    %buildroot/var/lib/imap/{user,quota,proc,log,msg,socket,db,sieve,sync,md5,rpm,backup,meta} \
0f9cf8
    %buildroot/var/lib/imap/ptclient \
0f9cf8
    %buildroot/%_datadir/%name/rpm \
0f9cf8
    %buildroot/%cyrexecdir \
0f9cf8
    %buildroot/etc/pki/%name
0f9cf8
0f9cf8
install -d -m 0750 \
0f9cf8
    %buildroot/run/cyrus \
0f9cf8
    %buildroot/run/cyrus/socket
0f9cf8
0f9cf8
install -d -m 0700 \
0f9cf8
    %buildroot/run/cyrus/db \
0f9cf8
    %buildroot/run/cyrus/lock \
0f9cf8
    %buildroot/run/cyrus/proc
0f9cf8
0f9cf8
# Some tools which aren't installed by the makefile which we have always installed
0f9cf8
install -m 755 notifyd/notifytest  %buildroot%_bindir/
0f9cf8
install -m 755 perl/imap/cyradm    %buildroot%_bindir/
0f9cf8
for i in arbitronsort.pl masssievec mkimap mknewsgroups rehash translatesieve; do
0f9cf8
    install -m 755 tools/$i %buildroot/%cyrexecdir/
0f9cf8
done
0f9cf8
0f9cf8
for i in vzic vzic-test.pl vzic-merge.pl vzic-dump.pl; do
0f9cf8
    install -m 755 tools/vzic/$i %buildroot/%cyrexecdir/
0f9cf8
done
0f9cf8
0f9cf8
# Install additional files
0f9cf8
install -p -m 644 %SOURCE10 %buildroot/etc/logrotate.d/%name
0f9cf8
install -p -m 644 %SOURCE11 %buildroot/etc/pam.d/pop
0f9cf8
install -p -m 644 %SOURCE11 %buildroot/etc/pam.d/imap
0f9cf8
install -p -m 644 %SOURCE11 %buildroot/etc/pam.d/sieve
0f9cf8
install -p -m 644 %SOURCE11 %buildroot/etc/pam.d/mupdate
0f9cf8
install -p -m 644 %SOURCE11 %buildroot/etc/pam.d/lmtp
0f9cf8
install -p -m 644 %SOURCE11 %buildroot/etc/pam.d/nntp
0f9cf8
install -p -m 644 %SOURCE11 %buildroot/etc/pam.d/csync
0f9cf8
install -p -m 644 %SOURCE12 %buildroot/etc/sysconfig/%name
0f9cf8
install -p -m 755 %SOURCE13   %buildroot/%cyrexecdir/cvt_cyrusdb_all
0f9cf8
install -p -m 644 %SOURCE14   %buildroot/%_datadir/%name/rpm/magic
0f9cf8
install -p -m 755 %SOURCE15 %buildroot/etc/cron.daily/%name
0f9cf8
install -p -m 644 doc/examples/cyrus_conf/prefork.conf %buildroot/etc/cyrus.conf
0f9cf8
install -p -m 644 doc/examples/imapd_conf/normal.conf %buildroot/etc/imapd.conf
0f9cf8
install -p -D -m 644 %SOURCE17 %buildroot/%_unitdir/cyrus-imapd.service
0f9cf8
install -p -D -m 644 %SOURCE18 %buildroot/%_unitdir/cyrus-imapd-init.service
0f9cf8
install -p -D -m 644 %SOURCE19 %buildroot/%_tmpfilesdir/cyrus-imapd.conf
0f9cf8
0f9cf8
# Rename 'master' binary and manpage to avoid clash with postfix
0f9cf8
mv -f %{buildroot}%{cyrexecdir}/master         %{buildroot}%{cyrexecdir}/cyrus-master
0f9cf8
0f9cf8
# mv -f %{buildroot}%{_mandir}/man8/master.8      %{buildroot}%{_mandir}/man8/cyrus-master.8
0f9cf8
0f9cf8
# Rename 'fetchnews' binary and manpage to avoid clash with leafnode
0f9cf8
#mv -f %{buildroot}%{cyrexecdir}/fetchnews      %{buildroot}%{cyrexecdir}/cyrfetchnews
0f9cf8
#mv -f %{buildroot}%{_mandir}/man8/fetchnews.8   %{buildroot}%{_mandir}/man8/cyrfetchnews.8
0f9cf8
#%{__perl} -pi -e 's|fetchnews|cyrfetchnews|g;s|Fetchnews|Cyrfetchnews|g;s/FETCHNEWS/CYRFETCHNEWS/g' \
0f9cf8
#          %{buildroot}%{_mandir}/man8/cyrfetchnews.8
0f9cf8
0f9cf8
#remove executable bit from docs
0f9cf8
for ddir in doc perl/imap/examples
0f9cf8
do
0f9cf8
  find $ddir -type f -exec chmod -x {} \;
0f9cf8
done
0f9cf8
0f9cf8
0f9cf8
# Cleanup of doc dir
0f9cf8
find doc perl -name CVS -type d -prune -exec rm -rf {} \;
0f9cf8
find doc perl -name .cvsignore -type f -exec rm -f {} \;
0f9cf8
rm -f doc/Makefile.dist*
0f9cf8
rm -f doc/text/htmlstrip.c
0f9cf8
rm -f doc/text/Makefile
0f9cf8
rm -rf doc/man
0f9cf8
0f9cf8
# fix permissions on perl .so files
0f9cf8
find %buildroot/%_libdir/perl5/ -type f -name "*.so" -exec chmod 755 {} \;
0f9cf8
0f9cf8
# Generate db config file
0f9cf8
# XXX Is this still necessary?
0f9cf8
( grep '^{' lib/imapoptions | grep _db | cut -d'"' -f 2,4 | \
0f9cf8
  sed -e 's/^ *//' -e 's/-nosync//' -e 's/ *$//' -e 's/"/=/'
0f9cf8
  echo sieve_version=2.2.3 ) | sort > %buildroot/%_datadir/%name/rpm/db.cfg
0f9cf8
0f9cf8
# Cyrus has various files with extremely conflicting names.  Some of these are
0f9cf8
# not unexpected ("imapd" itself) but some like "httpd" are rather surprising.
0f9cf8
0f9cf8
# Where there are only conflicting manpages, they have been moved to a "8cyrus"
0f9cf8
# section.  If the binary was renamed, then the manpages are renamed to match
0f9cf8
# but a internal replacement has not been done.  This may lead to more
0f9cf8
# confusion but involves modifying fewer upstream files.
0f9cf8
0f9cf8
# Actual binary conflicts
0f9cf8
# Rename 'fetchnews' binary and manpage to avoid clash with leafnode
0f9cf8
mv %buildroot/%_sbindir/fetchnews %buildroot/%_sbindir/cyr_fetchnews
0f9cf8
mv %buildroot/%_mandir/man8/fetchnews.8 %buildroot/%_mandir/man8/cyr_fetchnews.8
0f9cf8
0f9cf8
# Fix conflict with dump
0f9cf8
mv %buildroot/%_sbindir/restore %buildroot/%_sbindir/cyr_restore
0f9cf8
mv %buildroot/%_mandir/man8/restore.8 %buildroot/%_mandir/man8/cyr_restore.8
0f9cf8
0f9cf8
# Fix conceptual conflict with quota
0f9cf8
mv %buildroot/%_sbindir/quota %buildroot/%_sbindir/cyr_quota
0f9cf8
mv %buildroot/%_mandir/man8/quota.8 %buildroot/%_mandir/man8/cyr_quota.8
0f9cf8
0f9cf8
# fix conflicts with uw-imap
0f9cf8
mv %buildroot/%_mandir/man8/imapd.8 %buildroot/%_mandir/man8/imapd.8cyrus
0f9cf8
mv %buildroot/%_mandir/man8/pop3d.8 %buildroot/%_mandir/man8/pop3d.8cyrus
0f9cf8
0f9cf8
# Rename 'master' manpage
0f9cf8
mv %buildroot/%_mandir/man8/master.8 %buildroot/%_mandir/man8/master.8cyrus
0f9cf8
0f9cf8
# Rename 'httpd' manpage to avoid clash with Apache
0f9cf8
mv %buildroot/%_mandir/man8/httpd.8 %buildroot/%_mandir/man8/httpd.8cyrus
0f9cf8
0f9cf8
# Old cyrus packages used to keep some executables in /usr/lib/cyrus-imapd
0f9cf8
# RF hardcoded-library-path in %%buildroot/usr/lib/cyrus-imapd
0f9cf8
mkdir %buildroot/usr/lib/cyrus-imapd
0f9cf8
pushd %buildroot/usr/lib/cyrus-imapd
0f9cf8
ln -s ../../sbin/deliver
0f9cf8
popd
0f9cf8
0f9cf8
#remove executable bit from docs
0f9cf8
for ddir in doc perl/imap/examples
0f9cf8
do
0f9cf8
  find $ddir -type f -exec chmod -x {} \;
0f9cf8
done
0f9cf8
0f9cf8
# Remove pointless libtool archives
0f9cf8
rm %buildroot/%_libdir/*.la
0f9cf8
0f9cf8
# Remove installed but not packaged files
0f9cf8
rm %buildroot/%cyrexecdir/pop3proxyd
0f9cf8
find %buildroot -name "perllocal.pod" -exec rm {} \;
0f9cf8
find %buildroot -name ".packlist" -exec rm {} \;
0f9cf8
0f9cf8
0f9cf8
%check
3b1dbd
## First of all check if imaptest is functional at all
3b1dbd
imaptest  -h 2>&1 > /dev/null || (echo "Imaptest is not functional" && exit 1)
0f9cf8
make %{?_smp_mflags} check || exit 1
0f9cf8
0e0432
%ifarch ppc64le %ix86
0e0432
exit 0
0e0432
%endif
0e0432
0f9cf8
%if %{without cassandane}
0f9cf8
exit 0
0f9cf8
%endif
0f9cf8
0f9cf8
# Run the Cassandane test suite.  This will exhaustively test the various
0f9cf8
# server components, but running it in a mock chroot is rather an exercise.
0f9cf8
pushd cassandane
0f9cf8
0f9cf8
mkdir -p imaptest/src
0f9cf8
ln -s /usr/bin/imaptest imaptest/src
0f9cf8
ln -s /usr/share/imaptest/tests imaptest/src
0f9cf8
0f9cf8
export LD_LIBRARY_PATH=%buildroot/%_libdir
0f9cf8
export CYRUS_USER=$USER
0f9cf8
0f9cf8
# Construct the set of excluded tests to pass to Cassandane
0f9cf8
# ---------------------------------------------------------
0f9cf8
exclude+=("!Master.maxforkrate") # Some builders are too slow to complete this test properly
0f9cf8
tests=(
0f9cf8
    # This is more a test of system performance and according to upstream won't
0f9cf8
    # be reliable on shared hardware like our builders.
0f9cf8
    Metronome
0f9cf8
0f9cf8
    # This tests coredumping and won't work on a machine where systemd
0f9cf8
    # intercepts coredumps, which includes our builders.
0f9cf8
    Cassandane::Test::Core
0f9cf8
0f9cf8
    # Upstream recommends disabling this because it has an internal race and
0f9cf8
    # will fail randomly.  https://github.com/cyrusimap/cassandane/issues/17
0f9cf8
    Master.sighup_recycling
0f9cf8
0f9cf8
    # Fails because our Xapian is too old for proper CJK support.  1.5 will be
0f9cf8
    # OK, but it is not yet released.  The alternative is to bundle.
0f9cf8
    SearchFuzzy.cjk_words
0f9cf8
0f9cf8
    # These additionaly fail because Cyrus 3.0.7 no longer enables
0f9cf8
    # SNIPPET_EMPTY_WITHOUT_MATCH when the Cyrus-patched Xapian is not in use.
0f9cf8
    # https://github.com/cyrusimap/cyrus-imapd/commit/f008060cb53b3286fcedf7b8b4dd12c1980d665f
0f9cf8
    SearchFuzzy.normalize_snippets
0f9cf8
    SearchFuzzy.snippet_wildcard
0f9cf8
    SearchFuzzy.snippets_termcover
0f9cf8
    SearchFuzzy.snippets_escapehtml
0f9cf8
    SearchFuzzy.stem_verbs
0f9cf8
0f9cf8
    # As of yet unexplained
0f9cf8
    # https://github.com/cyrusimap/cyrus-imapd/issues/2047
0f9cf8
    Admin.imap_admins
0f9cf8
0f9cf8
    # Upstream on IRC indicates that these two are expected to fail on 3.0.
0f9cf8
    Carddav.sharing_contactpaths
0f9cf8
    Metadata.set_specialuse_twice
0f9cf8
0f9cf8
    # This one needs a patch to xapian.
0f9cf8
    # https://github.com/cyrusimap/cyrus-imapd/issues/2348
0f9cf8
    SearchFuzzy.search_subjectsnippet
0e0432
0e0432
    # this one is not working on builder machines
0e0432
    Conversations.xconvfetch
0f9cf8
)
0f9cf8
for i in ${tests[@]}; do exclude+=("!$i"); done
0f9cf8
0f9cf8
%if 0%{?fedora} <= 28
0f9cf8
# imaptest on F28 has bugs which make some additional tests fail
0f9cf8
tests=(
0f9cf8
    # Three new failures with imaptest 20170719
0f9cf8
    # https://github.com/cyrusimap/cyrus-imapd/issues/2087
0f9cf8
    ImapTest.append-binary
0f9cf8
    ImapTest.fetch-binary-mime
0f9cf8
    ImapTest.urlauth-binary
0f9cf8
0f9cf8
    # This one seems to fail randomly.
0f9cf8
    ImapTest.urlauth2
0f9cf8
)
0f9cf8
for i in ${tests[@]}; do exclude+=("!$i"); done
0f9cf8
%endif
0f9cf8
0f9cf8
%if 0%{?fedora} <= 26
0f9cf8
# Some F26-specific test exclusions
0f9cf8
tests=(
0f9cf8
    # These all fail because F26 perl doesn't support quad types in unpack.
0f9cf8
    Metadata.expunge_messages
0f9cf8
    Metadata.msg_replication_new_mas_partial_wwd
0f9cf8
    Metadata.msg_replication_new_rep
0f9cf8
    Metadata.msg_replication_new_mas
0f9cf8
    Metadata.msg_replication_exp_bot
0f9cf8
    Metadata.msg_replication_new_mas_partial_wwsw
0f9cf8
    Metadata.msg_replication_exp_mas
0f9cf8
    Metadata.msg_replication_mod_mas
0f9cf8
    Metadata.msg_replication_exp_rep
0f9cf8
    Metadata.msg_replication_mod_bot_msl
0f9cf8
    Metadata.msg_replication_new_bot_mse_gul
0f9cf8
    Metadata.msg_replication_mod_bot_msh
0f9cf8
    Metadata.msg_replication_new_bot_mse_guh
0f9cf8
    Metadata.msg_replication_mod_rep
0f9cf8
)
0f9cf8
for i in ${tests[@]}; do exclude+=("!$i"); done
0f9cf8
%endif
0f9cf8
0f9cf8
# Add -vvv for too much output
0f9cf8
./testrunner.pl %{?_smp_mflags} -v -f pretty ${exclude[@]} 2>&1
0f9cf8
0f9cf8
0f9cf8
%pre
0f9cf8
# Create 'cyrus' user on target host
0f9cf8
getent group saslauth >/dev/null || /usr/sbin/groupadd -g %gid -r saslauth
0f9cf8
getent passwd cyrus >/dev/null || /usr/sbin/useradd -c "Cyrus IMAP Server" -d /var/lib/imap -g %cyrusgroup \
0f9cf8
  -G saslauth -s /sbin/nologin -u %uid -r %cyrususer
0f9cf8
0f9cf8
%post
0f9cf8
/sbin/ldconfig
0f9cf8
%systemd_post cyrus-imapd.service
0f9cf8
0f9cf8
%preun
0f9cf8
%systemd_preun cyrus-imapd.service
0f9cf8
0f9cf8
%postun
0f9cf8
/sbin/ldconfig
0f9cf8
%systemd_postun_with_restart cyrus-imapd.service
0f9cf8
0f9cf8
0f9cf8
%files
0f9cf8
%license COPYING
0f9cf8
%doc README.md doc/README.* doc/examples doc/text doc/CHANGES.rpm
0f9cf8
0f9cf8
%_datadir/cyrus-imapd
0f9cf8
%_libdir/libcyrus*.so.*
0f9cf8
%_mandir/man5/*
0f9cf8
%_mandir/man8/*
0f9cf8
0f9cf8
%dir /etc/pki/cyrus-imapd
0f9cf8
%attr(0644,root,%cyrusgroup) %ghost %config(missingok,noreplace) %verify(not md5 size mtime) %ssl_pem_file_prefix-ca.pem
0f9cf8
%attr(0644,root,%cyrusgroup) %ghost %config(missingok,noreplace) %verify(not md5 size mtime) %ssl_pem_file_prefix.pem
0f9cf8
%attr(0640,root,%cyrusgroup) %ghost %config(missingok,noreplace) %verify(not md5 size mtime) %ssl_pem_file_prefix-key.pem
0f9cf8
0f9cf8
%config(noreplace) /etc/cyrus.conf
0f9cf8
%config(noreplace) /etc/imapd.conf
0f9cf8
%config(noreplace) /etc/logrotate.d/cyrus-imapd
0f9cf8
%config(noreplace) /etc/sysconfig/cyrus-imapd
0f9cf8
%config(noreplace) /etc/pam.d/*
0f9cf8
0f9cf8
/etc/cron.daily/cyrus-imapd
0f9cf8
%_unitdir/cyrus-imapd.service
0f9cf8
%_unitdir/cyrus-imapd-init.service
0f9cf8
%_tmpfilesdir/cyrus-imapd.conf
0f9cf8
0f9cf8
%dir %cyrexecdir/
0f9cf8
%cyrexecdir/[a-uw-z]*
0f9cf8
0f9cf8
# This creates some directories which in the default configuration cyrus will
0f9cf8
# never use because they are placed under /run instead.  However, old
0f9cf8
# configurations or setup advice from the 'net might reference them, and so
0f9cf8
# it's simpler to just leave them in the package.
0f9cf8
%attr(0750,%cyrususer,%cyrusgroup) %dir /var/lib/imap/
0f9cf8
%attr(0700,%cyrususer,%cyrusgroup) /var/lib/imap/backup/
0f9cf8
%attr(0700,%cyrususer,%cyrusgroup) /var/lib/imap/db/
0f9cf8
%attr(0700,%cyrususer,%cyrusgroup) /var/lib/imap/log/
0f9cf8
%attr(0700,%cyrususer,%cyrusgroup) /var/lib/imap/meta/
0f9cf8
%attr(0700,%cyrususer,%cyrusgroup) /var/lib/imap/md5/
0f9cf8
%attr(0700,%cyrususer,%cyrusgroup) /var/lib/imap/msg/
0f9cf8
%attr(0700,%cyrususer,%cyrusgroup) /var/lib/imap/proc/
0f9cf8
%attr(0700,%cyrususer,%cyrusgroup) /var/lib/imap/ptclient/
0f9cf8
%attr(0700,%cyrususer,%cyrusgroup) /var/lib/imap/quota/
0f9cf8
%attr(0700,%cyrususer,%cyrusgroup) /var/lib/imap/rpm/
0f9cf8
%attr(0700,%cyrususer,%cyrusgroup) /var/lib/imap/sieve/
0f9cf8
%attr(0750,%cyrususer,%cyrusgroup) /var/lib/imap/socket
0f9cf8
%attr(0700,%cyrususer,%cyrusgroup) /var/lib/imap/sync/
0f9cf8
%attr(0700,%cyrususer,%cyrusgroup) /var/lib/imap/user/
0f9cf8
%attr(0700,%cyrususer,%cyrusgroup) /var/spool/imap/
0f9cf8
0f9cf8
# The new locations
0f9cf8
%attr(0750,%cyrususer,%cyrusgroup) %dir /run/cyrus/
0f9cf8
%attr(0700,%cyrususer,%cyrusgroup) /run/cyrus/db/
0f9cf8
%attr(0700,%cyrususer,%cyrusgroup) /run/cyrus/lock/
0f9cf8
%attr(0700,%cyrususer,%cyrusgroup) /run/cyrus/proc/
0f9cf8
%attr(0750,%cyrususer,%cyrusgroup) /run/cyrus/socket/
0f9cf8
0f9cf8
0f9cf8
%files devel
0f9cf8
%_includedir/cyrus/
0f9cf8
%_libdir/libcyrus*.so
0f9cf8
%_libdir/pkgconfig/*.pc
0f9cf8
%_mandir/man3/imclient.3*
0f9cf8
0f9cf8
0f9cf8
%files doc-extra
0f9cf8
%doc doc/html doc/internal doc/legacy
0f9cf8
0f9cf8
0f9cf8
%files utils
0f9cf8
%license COPYING
0f9cf8
%doc perl/imap/README
0f9cf8
%doc perl/imap/Changes
0f9cf8
%doc perl/imap/examples
0f9cf8
%{_bindir}/*
0f9cf8
%{_sbindir}/*
0f9cf8
%{perl_vendorarch}/auto/Cyrus
0f9cf8
%{perl_vendorarch}/Cyrus
0f9cf8
%{perl_vendorlib}/Cyrus
0f9cf8
%{_mandir}/man3/*.3pm*
0f9cf8
%{_mandir}/man1/*
0f9cf8
# RF hardcoded-library-path in /usr/lib/cyrus-imapd
0f9cf8
/usr/lib/cyrus-imapd
0f9cf8
0f9cf8
0f9cf8
%files vzic
0f9cf8
%cyrexecdir/vzic*
0f9cf8
0f9cf8
0f9cf8
%changelog
751b43
* Mon Jun 13 2022 Martin Osvald <mosvald@redhat.com> - 3.0.7-24
751b43
- Resolves: #1911689 - Fatal error when running "squatter -r user"
751b43
- Resolves: #1941255 - Wait for network-online target
751b43
- Resolves: #1918780 - "(null)" partitions in ctl_mboxlist
751b43
0e0432
* Wed Sep 01 2021 Tomas Korbar <tkorbar@redhat.com> - 3.0.7-23
0e0432
- Fix CVE-2021-33582
0e0432
- Also disable unstable test
0e0432
- Resolves: CVE-2021-33582
0e0432
1d8685
* Thu May 27 2021 Pavel Zhukov <pzhukov@redhat.com> - 3.0.7-22
1d8685
- rebuild with xapian support
1d8685
3b1dbd
* Fri Nov  6 2020 Pavel Zhukov <pzhukov@redhat.com> - 3.0.7-20
3b1dbd
- Use PROFILE=SYSTEM as default configuration for tls_ciphers
3b1dbd
0f9cf8
* Thu Apr 23 2020 Pavel Zhukov <pzhukov@redhat.com> - 3.0.7-19
0f9cf8
- change ownership of pki files (#1710722)
0f9cf8
0f9cf8
* Thu Apr 23 2020 Pavel Zhukov <pzhukov@redhat.com> - 3.0.7-18
0f9cf8
- Move old changelog into separate file (#1671239)
0f9cf8
0f9cf8
* Tue Apr 21 2020 Pavel Zhukov <pavel@desktop.zhukoff.net> - 3.0.7-17
0f9cf8
- Add fix for CVE-2019-19783
0f9cf8
- Add fix for CVE-2019-18928
0f9cf8
0f9cf8
* Fri Jun  7 2019 Pavel Zhukov <pzhukov@redhat.com> - 3.0.7-16
0f9cf8
- Resolves: #1718195 - don't overrun buffer when parsing strings with sscanf()
0f9cf8
0f9cf8
* Mon Oct  8 2018 Pavel Zhukov <pzhukov@redhat.com> - 3.0.7-15
0f9cf8
- Related: #1602472 - Fix rpmdiff warnings
0f9cf8
0f9cf8
* Mon Oct  8 2018 Pavel Zhukov <pzhukov@redhat.com> - 3.0.7-14
0f9cf8
- Related: #1602472 - Fix misused syntax warning
0f9cf8
0f9cf8
* Tue Oct  2 2018 Pavel Zhukov <pzhukov@redhat.com> - 3.0.7-13
0f9cf8
- Related: #1602472 - Fix few covscan warnings
0f9cf8
0f9cf8
* Sun Aug 12 2018 Pavel Zhukov <pzhukov@redhat.com> - 3.0.7-12
0f9cf8
- Rename master -> cyrus-master in documentation
0f9cf8
0f9cf8
* Thu Aug  9 2018 Josef Ridky <jridky@redhat.com> - 3.0.7-11
0f9cf8
- Rebuild for Net-SNMP
0f9cf8
0f9cf8
* Wed Aug  8 2018 Pavel Zhukov <pzhukov@redhat.com> - 3.0.7-10
0f9cf8
- Rename master -> cyrus-master
0f9cf8
0f9cf8
* Wed Aug  8 2018 Pavel Zhukov <pzhukov@redhat.com> - 3.0.7-9
0f9cf8
- Load supported modules only
0f9cf8
0f9cf8
* Mon Aug  6 2018 Pavel Zhukov <pzhukov@redhat.com> - 3.0.7-7
0f9cf8
- Resolves: №1611713 -  Generate SSl cerificates for starttls test
0f9cf8
0f9cf8
* Mon Jun 25 2018 Pavel Zhukov <pzhukov@redhat.com> - 3.0.7-6
0f9cf8
- Drop shapelib in RHEL
0f9cf8
0f9cf8
* Fri Jun 22 2018 Pavel Zhukov <pzhukov@redhat.com> - 3.0.7-5
0f9cf8
- Drop xapian support
0f9cf8
0f9cf8
* Tue May 22 2018 Pavel Zhukov <pzhukov@redhat.com> - 3.0.7-4
0f9cf8
- Disable clamav support for non Fedora's
0f9cf8
- Disable forktest due to builders slowness
0f9cf8
0f9cf8
* Fri May 18 2018 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.7-2
0f9cf8
- Really enable mysql and clamav support.
0f9cf8
0f9cf8
* Fri May 18 2018 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.7-1
0f9cf8
- Update to 3.0.7.
0f9cf8
- Update Cassandane checkout.
0f9cf8
- Update excluded Cassandane test list.
0f9cf8
0f9cf8
* Tue May 01 2018 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.6-1
0f9cf8
- Update to 3.0.6.
0f9cf8
- Remove upstreamed patches and renumber the rest.
0f9cf8
- Disable one new failing test:
0f9cf8
  https://github.com/cyrusimap/cyrus-imapd/issues/2332
0f9cf8
0f9cf8
* Mon Apr 30 2018 Pete Walter <pwalter@fedoraproject.org> - 3.0.5-15
0f9cf8
- Rebuild for ICU 61.1
0f9cf8
0f9cf8
* Tue Apr 17 2018 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.5-14
0f9cf8
- Update Cassandane again, fixing a broken test.
0f9cf8
0f9cf8
* Fri Apr 13 2018 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.5-13
0f9cf8
- Update Cassandane, fixing a few tests and a class of weird random build
0f9cf8
  failures.
0f9cf8
0f9cf8
* Fri Apr 06 2018 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.5-12
0f9cf8
- Update list of excluded tests.
0f9cf8
- Update Cassandane snapshot; use new base_port config setting.  No need to
0f9cf8
  patch that in now.
0f9cf8
- Add four new expected-to-fail tests from new Cassandane snapshot.
0f9cf8
- Add patch to collect extra Cassandane logging in case we hit some of those
0f9cf8
  sporadic failures again.
0f9cf8
0f9cf8
* Tue Apr 03 2018 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.5-11
0f9cf8
- Re-enable imaptest on >= F29.
0f9cf8
- F29's imaptest fixes several bugs, allowing all tests to be run there.
0f9cf8
- Relocate cassandane base port to hopefully work better in koji.
0f9cf8
0f9cf8
* Mon Apr 02 2018 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.5-10
0f9cf8
- Update cassandane checkout to fix a test that was broken by DST.
0f9cf8
- Add patch to fix sieve scripts for usernames containing a dot.
0f9cf8
- Disable imaptest in cassandane until
0f9cf8
  https://bugzilla.redhat.com/show_bug.cgi?id=1562970 is fixed.
0f9cf8
- Re-enable tests on s390; it seems to be better now.
0f9cf8
0f9cf8
* Thu Mar 15 2018 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.5-9
0f9cf8
- Re-enable clamav on ppc64.
0f9cf8
0f9cf8
* Thu Mar 01 2018 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.5-8
0f9cf8
- Bump client_timeout value in test suite.
0f9cf8
0f9cf8
* Thu Mar 01 2018 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.5-7
0f9cf8
- Add patch to fix imtest (rhbz#1543481).
0f9cf8
- Fix vzic makefile to use proper cflags (rhbz#1550543).
0f9cf8
0f9cf8
* Mon Feb 26 2018 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.5-6
0f9cf8
- Update cassandane checkout.
0f9cf8
- Add two new build dependencies.
0f9cf8
- Remove all JMAP-related tests from the exclusion lists, since cassandane no
0f9cf8
  longer runs any JMAP tests on cyrus 3.0.
0f9cf8
- Collapse unused test skip lists.
0f9cf8
- Add ten additional skipped tests, after consultation with upstream.
0f9cf8
0f9cf8
* Mon Feb 26 2018 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.5-5
0f9cf8
- Add patch to fix segfaults in squatter.
0f9cf8
- Exclude one test on all releases instead of just F28+.
0f9cf8
- Remove --cleanup from cassandane invocation.
0f9cf8
0f9cf8
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.5-4
0f9cf8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
0f9cf8
0f9cf8
* Tue Jan 09 2018 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.5-3
0f9cf8
- Re-enable clamav and mariadb support as those are now built with openssl 1.1.
0f9cf8
- But no clamav on ppc64 because of
0f9cf8
  https://bugzilla.redhat.com/show_bug.cgi?id=1534071
0f9cf8
0f9cf8
* Thu Jan 04 2018 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.5-2
0f9cf8
- Reorganize some test exclusions so things build on all releases.
0f9cf8
0f9cf8
* Thu Jan 04 2018 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.5-1
0f9cf8
- Update to 3.0.5.
0f9cf8
- Add one new failing test.
0f9cf8
- Remove one now-passing test on rawhide.
0f9cf8
0f9cf8
* Mon Dec 18 2017 Pavel Zhukov <pzhukov@redhat.com> - 3.0.4-6
0f9cf8
- Rebuild with new net-snmp
0f9cf8
0f9cf8
* Thu Nov 30 2017 Pete Walter <pwalter@fedoraproject.org> - 3.0.4-5
0f9cf8
- Rebuild for ICU 60.1
0f9cf8
0f9cf8
* Wed Nov 29 2017 Pavel Zhukov <pzhukov@redhat.com> - 3.0.4-4
0f9cf8
- Do not require tcp_wrappers (#1518759)
0f9cf8
0f9cf8
* Tue Nov 14 2017 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.4-3
0f9cf8
- Rebuild for new libical.
0f9cf8
- Add patch to fix compilation error with new libical.
0f9cf8
- Disable two tests which fail due to the new libical.
0f9cf8
0f9cf8
* Tue Oct 24 2017 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.4-2
0f9cf8
- Fix typo in default config;
0f9cf8
  https://bugzilla.redhat.com/show_bug.cgi?id=1506000
0f9cf8
0f9cf8
* Tue Sep 05 2017 Pavel Zhukov <landgraf@fedoraproject.org> - 3.0.4-1
0f9cf8
- Update to 3.0.4
0f9cf8
- Patched cassandane for new behaviour. It should be updated idealy.
0f9cf8
- Disable ImapTest.urlauth2 test; it seems to fail randomly regardless of
0f9cf8
  architecture.
0f9cf8
0f9cf8
* Fri Aug 11 2017 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.3-1
0f9cf8
- Update to 3.0.3, which contains an important security fix.  The fix is not
0f9cf8
  embargoed but no CVE has been assigned yet.
0f9cf8
- Drop patches merged upstream.
0f9cf8
- An update of imaptest has resulted in three additional cassandane failures,
0f9cf8
  reported upstream as https://github.com/cyrusimap/cyrus-imapd/issues/2087.
0f9cf8
  In order to get the security fix out without delay, those three tests have been
0f9cf8
  disabled.
0f9cf8
0f9cf8
* Fri Aug 11 2017 Igor Gnatenko <ignatenko@redhat.com> - 3.0.2-9
0f9cf8
- Rebuilt after RPM update (№ 3)
0f9cf8
0f9cf8
* Thu Aug 10 2017 Igor Gnatenko <ignatenko@redhat.com> - 3.0.2-8
0f9cf8
- Rebuilt for RPM soname bump
0f9cf8
0f9cf8
* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.2-7
0f9cf8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
0f9cf8
0f9cf8
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.0.2-6
0f9cf8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
0f9cf8
0f9cf8
* Fri Jun 30 2017 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.2-5
0f9cf8
- Add two patches from upstream which fix JMAPCalendars issues on 32-bit and
0f9cf8
  big-endian architectures.
0f9cf8
- Clean up test invocation and exclusion list.  More tests pass now.
0f9cf8
0f9cf8
* Wed Jun 28 2017 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.2-4
0f9cf8
- Explicitly set specialusealways: 1 in the default config.
0f9cf8
0f9cf8
* Tue Jun 27 2017 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.2-3
0f9cf8
- Patch the provided imapd.conf and cyrus.conf to more closely match previous
0f9cf8
  Fedora defaults and directories included in this package and to enable
0f9cf8
  features which are supported by the Fedora build.
0f9cf8
- Add tmpfiles.d configuration file for directories in /run.
0f9cf8
0f9cf8
* Tue Jun 27 2017 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.2-2
0f9cf8
- Exclude one more test from 32-bit arches.  Looks like this failure crept in
0f9cf8
  with the Cassandane update.
0f9cf8
0f9cf8
* Thu Jun 22 2017 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.2-1
0f9cf8
- Update to 3.0.2.
0f9cf8
- New Cassandane snapshot, with more tests (all of which are passing).
0f9cf8
0f9cf8
* Tue Jun 20 2017 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.1-7
0f9cf8
- Add old /usr/lib/cyrus-imapd directory to the utils package and add a symlink
0f9cf8
  there to the deliver binary.  This should help a bit with migrations.
0f9cf8
- Add upstream patch to fix reconstruct failures on 32-bit architectures.
0f9cf8
  Re-enable those five Cassandane tests.
0f9cf8
0f9cf8
* Thu Jun 15 2017 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.1-6
0f9cf8
- Rename two commands: quota -> cyr_quota, restore -> cyr_restore.
0f9cf8
- Fix Cassandane to handle those renames.
0f9cf8
- Fix location of cyr_fetchnews.
0f9cf8
- Fix Perl 5.26-related module linking issue which caused a test failure.
0f9cf8
  Fixes https://bugzilla.redhat.com/show_bug.cgi?id=1461669
0f9cf8
0f9cf8
* Tue Jun 06 2017 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.1-5
0f9cf8
- Use proper path to ctl_mboxlist in cron file.
0f9cf8
- Add patch to increase individual test timeout.  Sometimes armv7hl can't
0f9cf8
  complete a single test in 20 seconds.
0f9cf8
- Disable the Metronome tests; upstream says that they just won't reliably on
0f9cf8
  shared hardware.
0f9cf8
- Don't bother running Cassandane on s390x for now.  The machines are simply
0f9cf8
  too slow.
0f9cf8
0f9cf8
* Tue Jun 06 2017 Jitka Plesnikova <jplesnik@redhat.com> - 3.0.1-4
0f9cf8
- Perl 5.26 rebuild
0f9cf8
0f9cf8
* Fri Jun 02 2017 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.1-3
0f9cf8
- Remove clamav from build requirements.
0f9cf8
- Add --cleanup to Cassandane call to hopefully reduce build disk usage.
0f9cf8
- Disable maxforkrate test on s390x; our builders are too slow to run it.
0f9cf8
0f9cf8
* Fri Jun 02 2017 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.1-2
0f9cf8
- Add patch to fix up some endianness issues.
0f9cf8
- Enable both test suites on all architectures.
0f9cf8
- Add arch-specific excludes for a few Cassandane tests.
0f9cf8
0f9cf8
* Thu Apr 20 2017 Jason L Tibbitts III <tibbs@math.uh.edu> - 3.0.1-1
0f9cf8
- Initial attempt at importing 3.0.  Many new dependencies.
0f9cf8
- Use a stock sample imapd.conf file instead of a Fedora-provided one.
0f9cf8
0f9cf8
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.5.10-3
0f9cf8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
0f9cf8
0f9cf8
* Mon Jan 09 2017 Jason L Tibbitts III <tibbs@math.uh.edu> - 2.5.10-2
0f9cf8
- Rename httpd manpage to "cyrhttpd" to avoid conflict with the httpd package.
0f9cf8
0f9cf8
* Wed Nov 23 2016 Jason L Tibbitts III <tibbs@math.uh.edu> - 2.5.10-1
0f9cf8
- Initial update to the 2.5 series.
0f9cf8
- Significant spec cleanups.
0f9cf8
- Add sscg dep and follow
0f9cf8
  https://fedoraproject.org/wiki/Packaging:Initial_Service_Setup for initial
0f9cf8
  cert generation.
0f9cf8
- Change default conf to use the system crypto policy.
0f9cf8
0f9cf8
* Sat Jan 01 2000 Pavel Zhukov <pzhukov@redhat.com> - 0.0.1-1
0f9cf8
- See /usr/share/doc/cyrus-imapd/CHANGELOG.rpm for more history