Bug 1548020

Summary: Broken dependencies for libsemanage
Product: Red Hat Enterprise Linux 7 Reporter: Marko Myllynen <myllynen>
Component: libsemanageAssignee: Vit Mojzis <vmojzis>
Status: CLOSED ERRATA QA Contact: Milos Malik <mmalik>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 7.4CC: dwalsh, lmiksik, lslebodn, lvrabec, mgrepl, mmalik, mthacker, plautrba, sgoveas, ssekidde, vmojzis
Target Milestone: rc   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: libsemanage-2.5-11.el7 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-04-10 16:31:59 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
Fix none

Description Marko Myllynen 2018-02-22 14:34:44 UTC
Description of problem:
[root@infra02 selinux]# rpm -Fvh *rpm
Preparing...                          ################################# [100%]
Updating / installing...
   1:libsemanage-2.5-10.el7           ################################# [ 25%]
   2:libsemanage-python-2.5-10.el7    ################################# [ 50%]
Cleaning up / removing...
   3:libsemanage-python-2.5-8.el7     ################################# [ 75%]
   4:libsemanage-2.5-8.el7            ################################# [100%]
[root@infra02 selinux]# rpm -qa | grep libsepol
libsepol-2.5-6.el7.x86_64
[root@infra02 selinux]# semodule -X 400 -i /var/lib/pcp/selinux/pcpupstream.pp
semodule: relocation error: /lib64/libsemanage.so.1: symbol sepol_ibendport_modify, version LIBSEPOL_1.0 not defined in file libsepol.so.1 with link time reference
<downloaded latest libsepol.rpm>
[root@infra02 selinux]# rpm -Fvh *rpm
Preparing...                          ################################# [100%]
Updating / installing...
   1:libsepol-2.5-8.1.el7             ################################# [ 50%]
Cleaning up / removing...
   2:libsepol-2.5-6.el7               ################################# [100%]
[root@infra02 selinux]# semodule -X 400 -i /var/lib/pcp/selinux/pcpupstream.pp
[root@infra02 selinux]#

Comment 2 Vit Mojzis 2018-02-22 16:57:58 UTC
Created attachment 1399486 [details]
Fix

Comment 3 Vit Mojzis 2018-02-22 16:59:51 UTC
Thank you for reporting the issue.
libsemanage is indeed missing dependencies on libsepol and libselinux. 
Patch included.

Comment 5 Lukas Slebodnik 2018-02-27 09:44:01 UTC
(In reply to Vit  Mojzis from comment #2)
> Created attachment 1399486 [details]
> Fix

Just FYI. It is just a workaround for wrong usage of version script (libsepol.map) in upstream.

New symbols (functions) should not be added to already released version e.g. LIBSEPOL_1.1 and LIBSEPOL_1.0. Otherwise rpm/dpkg cannot notice difference between compatible changes (just adding functions to library).

More info in:
https://ftp.gnu.org/old-gnu/Manuals/ld-2.9.1/html_node/ld_25.html
or longer version in https://www.akkadia.org/drepper/dsohowto.pdf

Comment 6 Milos Malik 2018-02-28 05:58:00 UTC
I cannot add the bug into erratum, if it's ASSIGNED. Please switch it to MODIFIED.

Comment 10 Vit Mojzis 2018-03-27 08:40:10 UTC
*** Bug 1548509 has been marked as a duplicate of this bug. ***

Comment 12 errata-xmlrpc 2018-04-10 16:31:59 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2018:0905