Bug 1663331 - cyrus-imapd-utils needs to be re-compiled against new clamav-lib
Summary: cyrus-imapd-utils needs to be re-compiled against new clamav-lib
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: cyrus-imapd
Version: 28
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Pavel Zhukov
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On: 1663011
Blocks: 1665739
TreeView+ depends on / blocked
 
Reported: 2019-01-03 20:46 UTC by Christian Krause
Modified: 2019-01-24 04:30 UTC (History)
10 users (show)

Fixed In Version: cyrus-imapd-3.0.5-9.fc28 cyrus-imapd-3.0.8-3.fc29
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-01-24 03:31:53 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Christian Krause 2019-01-03 20:46:48 UTC
Description of problem:

Due to an soname change in the latest clamav-lib package libclamav.so.7 -> libclamav.so.9, cyrus-imapd (concrete: cyrus-imapd-utils) need to be re-compiled in Fedora 28. Otherwise, the new clamav-lib package can't be installed:

Version-Release number of selected component (if applicable):
cyrus-imapd-utils-3.0.5-7.fc28.x86_64

How reproducible:
100%

Steps to Reproduce:
1. having both, cyrus-imapd-utils and clamav-lib installed
2. dnf update

Actual results:
 Problem: problem with installed package cyrus-imapd-utils-3.0.5-7.fc28.x86_64
  - package cyrus-imapd-utils-3.0.5-7.fc28.x86_64 requires libclamav.so.7()(64bit), but none of the providers can be installed
  - cannot install both clamav-lib-0.101.0-1.fc28.x86_64 and clamav-lib-0.99.4-3.fc28.x86_64
  - cannot install both clamav-lib-0.99.4-3.fc28.x86_64 and clamav-lib-0.101.0-1.fc28.x86_64
  - cannot install the best update candidate for package clamav-lib-0.99.4-3.fc28.x86_64


Expected results:
- no error ;-)

Comment 1 Jason Tibbitts 2019-01-03 21:23:35 UTC
Well that's terrible; we aren't supposed to be bumping library versions in stable releases.  I'll see what I can do.

Comment 2 Jason Tibbitts 2019-01-03 21:52:32 UTC
And it turns out that it's impossible to build anything against the new libclamav because of https://bugzilla.redhat.com/show_bug.cgi?id=1663011.  So there's not much we can do at the moment.  I can give you a scratch build without clamav support if that would help you out.

This does affect F29 as well, though the portion which needs clamav is split out into a subpackage cyrus-imapd-virusscan so it's not quite as bad there.

Comment 3 Christian Krause 2019-01-07 21:38:54 UTC
Although the mentioned bug report (https://bugzilla.redhat.com/show_bug.cgi?id=1663011) is now closed, it is not possible to compile cyrus-imapd against the new clamav:

I tried a scratch-build: https://koji.fedoraproject.org/koji/taskinfo?taskID=31880622 which failed with the following error:

[...]
make[2]: Entering directory '/builddir/build/BUILD/cyrus-imapd-3.0.8'
gcc -DHAVE_CONFIG_H -I.   -I. -I./lib -I. -I./lib -DLIBEXEC_DIR=\"/usr/libexec/cyrus-imapd\" -DSBIN_DIR=\"/usr/sbin\" -DSYSCONF_DIR=\"/etc\" -DHAVE_CONFIG_H     -I/usr/include -I/usr/include/libxml2        -I/usr/include/mysql -I/usr/include/mysql/mysql  -I/usr/include -fPIC  -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -c -o imap/cyr_virusscan.o imap/cyr_virusscan.c
BUILDSTDERR: imap/cyr_virusscan.c: In function 'clamav_scanfile':
BUILDSTDERR: imap/cyr_virusscan.c:197:21: error: 'CL_SCAN_STDOPT' undeclared (first use in this function); did you mean 'CL_DB_STDOPT'?
BUILDSTDERR:                      CL_SCAN_STDOPT);
BUILDSTDERR:                      ^~~~~~~~~~~~~~
BUILDSTDERR:                      CL_DB_STDOPT
BUILDSTDERR: imap/cyr_virusscan.c:197:21: note: each undeclared identifier is reported only once for each function it appears in
BUILDSTDERR: make[2]: *** [Makefile:4816: imap/cyr_virusscan.o] Error 1
[...]

Comment 4 Jason Tibbitts 2019-01-07 21:41:37 UTC
This is because the clamav API has been changed with 0.101, and cyrus-imapd needs changes to adapt.  The upstream report is https://github.com/cyrusimap/cyrus-imapd/issues/2621

I have made progress on a fix but have not yet done sufficient testing to push anything.

Comment 5 Derek Atkins 2019-01-11 03:02:42 UTC
This is particularly annoying when upgrading systems from e.g. F27 -> F28 -> F29 --- I realize F27 is EOLed, but I still need to erase the imapd-utils, upgrade to F29, and then re-install.

Comment 6 Fedora Update System 2019-01-15 18:32:00 UTC
cyrus-imapd-3.0.5-9.fc28 has been submitted as an update to Fedora 28. https://bodhi.fedoraproject.org/updates/FEDORA-2019-f6ed2d12f8

Comment 7 Fedora Update System 2019-01-15 18:33:28 UTC
cyrus-imapd-3.0.8-3.fc29 has been submitted as an update to Fedora 29. https://bodhi.fedoraproject.org/updates/FEDORA-2019-3e519f8d1d

Comment 8 Fedora Update System 2019-01-16 03:31:28 UTC
cyrus-imapd-3.0.8-3.fc29 has been pushed to the Fedora 29 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-3e519f8d1d

Comment 9 Fedora Update System 2019-01-16 03:38:52 UTC
cyrus-imapd-3.0.5-9.fc28 has been pushed to the Fedora 28 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-f6ed2d12f8

Comment 10 Jason Tibbitts 2019-01-18 16:42:27 UTC
It would be nice to have some independent confirmation that these fix the problem.  Please test these updates and give karma.

Comment 11 Christian Krause 2019-01-21 13:55:18 UTC
I just tested the installation of the latest cyrus-imapd + clamav-lib:

clamav-lib-0.101.1-1.fc28.x86_64
cyrus-imapd-3.0.5-9.fc28.x86_64

Both packages could be correctly installed. That should fix the reported issue.

Unfortunately I don't have access to the system with the installed imap server so a real functionality test of the update has to wait until the end of the week.

Comment 12 Fedora Update System 2019-01-24 03:31:53 UTC
cyrus-imapd-3.0.5-9.fc28 has been pushed to the Fedora 28 stable repository. If problems still persist, please make note of it in this bug report.

Comment 13 Fedora Update System 2019-01-24 04:30:52 UTC
cyrus-imapd-3.0.8-3.fc29 has been pushed to the Fedora 29 stable repository. If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.