Project

General

Profile

Bug #3377

rudder-inventory-ldap package provides openldap libraries

Added by Michael Gliwinski over 5 years ago. Updated 7 months ago.

Status:
Released
Priority:
1
Category:
Packaging
Target version:
Target version (plugin):
Severity:
Minor - inconvenience | misleading | easy workaround
User visibility:
Getting started - demo | first install | level 1 Techniques
Effort required:
Priority:
50

Description

Just noticed that rudder-inventory-ldap is being installed on some newly deployed CentOS nodes. At first I thought rudder-agent depends on it, but this is not the case AFAICS. As far as I can tell the only reason for it getting installed may be that the package provides openldap libraries:

$ rpm -q rudder-inventory-ldap --provides
...
liblber-2.4.so.2()(64bit)  
libldap-2.4.so.2()(64bit)
...

Packages that depend on those libraries:

$ repoquery --tree-whatrequires rudder-inventory-ldap --installed  # trimmed for brevity
1359727300:rudder-inventory-ldap-2.4.3.-1.EL.6.x86_64 [cmd line]
 \_  1:autofs-5.0.5-74.el6_4.x86_64 [2: liblber-2.4.so.2()(64bit), libldap-2.4.so.2()(64bit)]
 \_  1:cups-1.4.2-50.el6_4.4.x86_64 [1: libldap-2.4.so.2()(64bit)]
 \_  curl-7.19.7-26.el6_2.4.x86_64 [1: libldap-2.4.so.2()(64bit)]
 \_  cyrus-sasl-2.1.23-13.el6_3.1.x86_64 [2: liblber-2.4.so.2()(64bit), libldap-2.4.so.2()(64bit)]
 \_  gnupg2-2.0.14-4.el6.x86_64 [1: libldap-2.4.so.2()(64bit)]
 \_  libcurl-7.19.7-26.el6_2.4.x86_64 [1: libldap-2.4.so.2()(64bit)]
 \_  libldb-0.9.10-23.el6.x86_64 [2: liblber-2.4.so.2()(64bit), libldap-2.4.so.2()(64bit)]
 \_  libsmbclient-3.6.9-151.el6.x86_64 [2: liblber-2.4.so.2()(64bit), libldap-2.4.so.2()(64bit)]
 \_  libuser-0.56.13-5.el6.x86_64 [1: libldap-2.4.so.2()(64bit)]
 \_  lighttpd-1.4.31-1.el6.x86_64 [2: liblber-2.4.so.2()(64bit), libldap-2.4.so.2()(64bit)]
 \_  nfs-utils-lib-1.1.5-4.el6.x86_64 [1: libldap-2.4.so.2()(64bit)]
 \_  openldap-2.4.23-26.el6_3.2.x86_64 [3: liblber-2.4.so.2()(64bit), libldap-2.4.so.2()(64bit), libldap_r-2.4.so.2()(64bit)]
 \_  2:postfix-2.6.6-2.2.el6_1.x86_64 [2: liblber-2.4.so.2()(64bit), libldap-2.4.so.2()(64bit)]
 \_  samba-client-3.6.9-151.el6.x86_64 [2: liblber-2.4.so.2()(64bit), libldap-2.4.so.2()(64bit)]
 \_  samba-common-3.6.9-151.el6.x86_64 [2: liblber-2.4.so.2()(64bit), libldap-2.4.so.2()(64bit)]
 \_  samba-winbind-3.6.9-151.el6.x86_64 [2: liblber-2.4.so.2()(64bit), libldap-2.4.so.2()(64bit)]
 \_  samba-winbind-clients-3.6.9-151.el6.x86_64 [2: liblber-2.4.so.2()(64bit), libldap-2.4.so.2()(64bit)]
 \_  sssd-1.8.0-32.el6.x86_64 [2: liblber-2.4.so.2()(64bit), libldap-2.4.so.2()(64bit)]
 \_  sssd-tools-1.8.0-32.el6.x86_64 [2: liblber-2.4.so.2()(64bit), libldap-2.4.so.2()(64bit)]
 \_  sudo-1.7.4p5-13.el6_3.x86_64 [2: liblber-2.4.so.2()(64bit), libldap-2.4.so.2()(64bit)]

I'm thinking, because we deploy with cobbler and rudder repos are available during initial kickstart, rudder-inventory-ldap may be getting picked up instead of openldap for some of those reverse deps. I'm not entirely sure though, as openldap is also being installed, but that could be because some packages have more specific dependencies.

I know those provides are automatically generated by some RPM "magic", so I'm not sure if anything can be done about this, so this is more of a question. Has anybody any ideas?


Subtasks

Bug #12117: rudder-inventory-ldap can't be installed on centos (7 at least)ReleasedVincent MEMBRÉ
Bug #12132: Missing depedency to use rudder-slapd on rpm systemsReleasedVincent MEMBRÉ

Related issues

Has duplicate Rudder - Bug #7188: php5: /opt/rudder/lib/libdb-5.1.so: no version information available (required by php5)Rejected2015-09-11
Has duplicate Rudder - Bug #6378: postfix is using libdb-5.1.so from rudder used instead of library from system and complaining about thatRejected2015-03-09

Associated revisions

Revision 5ed999db (diff)
Added by Jonathan CLARKE over 5 years ago

Fixes #3377: don't provide any libs from rudder-inventory-ldap package

Revision 36de9529
Added by Jonathan CLARKE over 5 years ago

Merge pull request #57 from jooooooon/bug_3377/dont_provide_random_libs_from_rudder_inventory_ldap_package

Fixes #3377: don't provide any libs from rudder-inventory-ldap package

Revision ea0a625b (diff)
Added by Jonathan CLARKE over 5 years ago

Revert "Fixes #3377: don't provide any libs from rudder-inventory-ldap package"

This reverts commit 5ed999db97341623f1079aa01194a5cfaa5d7323.

Revision e50adde6 (diff)
Added by Benoît PECCATTE 7 months ago

Fixes #3377: rudder-inventory-ldap package provides openldap libraries

History

#1 Updated by Jonathan CLARKE over 5 years ago

  • Project changed from Rudder to packages
  • Status changed from New to 8
  • Assignee set to Nicolas PERRON
  • Target version set to 2.3.11

I have noticed this a couple of times on CentOS, when using Cobbler too.

The best solution would be to not "announce" these libraries as being provided, since they are not really for general system use. Any ideas? Nicolas probably know how to do this, assigning to him.

#2 Updated by Matthieu CERDA over 5 years ago

  • Target version changed from 2.3.11 to 2.3.12

#3 Updated by Michael Gliwinski over 5 years ago

I stumbled onto this snippet in sssd spec file today which appears to be a way of doing this (filtering out provides):

%if 0%{?is_rhel5} > 0
# we don't want to provide private python extension libs
%{?filter_setup:
%filter_provides_in %{python_sitearch}/.*\.so$
%filter_setup
}
%else
# Fedora and RHEL 6+
# we don't want to provide private python extension libs
%define __provides_exclude_from %{python_sitearch}/.*\.so$
%endif

And also docs for EPEL and Fedora

Just posting it here in case you find it useful.

#4 Updated by Jonathan CLARKE over 5 years ago

  • Status changed from 8 to Pending release
  • % Done changed from 0 to 100

Applied in changeset commit:5ed999db97341623f1079aa01194a5cfaa5d7323.

#5 Updated by Jonathan CLARKE over 5 years ago

Applied in changeset commit:36de952995d72e4200c85e2e80805c22b5c7a9eb.

#6 Updated by Jonathan CLARKE over 5 years ago

Thanks alot for this information Michael! We actually had to fight with this mechanism in #3546 the other day, to make rudder-agent require dependencies from the same architecture as itself (we were getting rudder-agent 32 bits using tokyocabinet 64 bits which didn't work great as you can imagine...).

So I'm applying a simpler version of that fix here too: just ignore any provides auto-detected by RPM. We're not attempting to provide shared libraries to the system at all, quite the contrary, so disabling them should be fine.

PR available for review in: https://github.com/Normation/rudder-packages/pull/57

#7 Updated by Jonathan CLARKE over 5 years ago

  • Pull Request set to https://github.com/Normation/rudder-packages/pull/57

#8 Updated by Jonathan CLARKE over 5 years ago

  • Assignee changed from Nicolas PERRON to Jonathan CLARKE

#9 Updated by Jonathan CLARKE over 5 years ago

  • Status changed from Pending release to Discussion
  • % Done changed from 100 to 0

Actually, it's not that simple. I introduced this change, but now the rudder-inventory-ldap package provides nothing, but still auto-requires the libs... So the package won't install.

I'm reverting this change now.

#10 Updated by Matthieu CERDA over 5 years ago

  • Target version changed from 2.3.12 to 2.3.13

#11 Updated by Nicolas PERRON over 5 years ago

  • Target version changed from 2.3.13 to 84

#12 Updated by Nicolas PERRON over 5 years ago

  • Target version changed from 84 to 2.4.7

#13 Updated by Nicolas PERRON about 5 years ago

  • Target version changed from 2.4.7 to 2.4.8

#14 Updated by Jonathan CLARKE about 5 years ago

  • Assignee changed from Jonathan CLARKE to Matthieu CERDA
  • Priority changed from N/A to 3

Matthieu, can you take over work on this? I think that what we need to do is just copy the mechanism from the fix for #3546, but instead of applying it to Requires, apply it to Provides, and filter out libldap* and liblber* (the 2 provides mentioned by Michael in this bug's description).

And of course, test :)

#15 Updated by Nicolas PERRON about 5 years ago

  • Target version changed from 2.4.8 to 2.4.9

#16 Updated by Nicolas PERRON almost 5 years ago

  • Status changed from Discussion to New

#17 Updated by Nicolas PERRON almost 5 years ago

  • Target version changed from 2.4.9 to 2.4.10

#18 Updated by Nicolas PERRON almost 5 years ago

  • Target version changed from 2.4.10 to 2.4.11

#19 Updated by Nicolas PERRON almost 5 years ago

  • Target version changed from 2.4.11 to 2.4.12

#20 Updated by Nicolas PERRON almost 5 years ago

  • Target version changed from 2.4.12 to 2.4.13

This is still true

#21 Updated by Vincent MEMBRÉ over 4 years ago

  • Target version changed from 2.4.13 to 2.6.11

Since 2.4 is not maintained anymore, retargeting to branch 2.6

#22 Updated by Jonathan CLARKE over 4 years ago

  • Assignee deleted (Matthieu CERDA)

#23 Updated by Vincent MEMBRÉ over 4 years ago

  • Target version changed from 2.6.11 to 2.6.12

#24 Updated by Vincent MEMBRÉ over 4 years ago

  • Target version changed from 2.6.12 to 2.6.13

#25 Updated by Vincent MEMBRÉ over 4 years ago

  • Target version changed from 2.6.13 to 2.6.14

#26 Updated by Jonathan CLARKE over 4 years ago

  • Target version changed from 2.6.14 to 2.6.16

#27 Updated by Jonathan CLARKE about 4 years ago

  • Target version changed from 2.6.16 to 2.6.17

#28 Updated by Nicolas PERRON about 4 years ago

  • Target version changed from 2.6.17 to 2.6.18

#29 Updated by Matthieu CERDA almost 4 years ago

  • Target version changed from 2.6.18 to 2.6.19

#30 Updated by Vincent MEMBRÉ almost 4 years ago

  • Target version changed from 2.6.19 to 2.6.20

#31 Updated by François ARMAND over 3 years ago

  • Assignee set to Matthieu CERDA
  • Target version changed from 2.6.20 to 2.10.10

Matthieu, could you look at that one and explain the status. Is it "only" (famous last word) replicating # ?

#32 Updated by Vincent MEMBRÉ over 3 years ago

  • Target version changed from 2.10.10 to 2.10.11

#33 Updated by Vincent MEMBRÉ over 3 years ago

  • Target version changed from 2.10.11 to 2.10.12

#34 Updated by Benoît PECCATTE over 3 years ago

  • Project changed from packages to Rudder
  • Category set to Packaging

#35 Updated by Jonathan CLARKE over 3 years ago

  • Status changed from New to Pending release
  • % Done changed from 0 to 100

Applied in changeset rudder-packages|commit:5ed999db97341623f1079aa01194a5cfaa5d7323.

#36 Updated by Jonathan CLARKE over 3 years ago

Applied in changeset rudder-packages|commit:36de952995d72e4200c85e2e80805c22b5c7a9eb.

#37 Updated by Vincent MEMBRÉ over 3 years ago

  • Status changed from Pending release to Released
  • Target version changed from 2.10.12 to 2.3.12
  • Reproduced set to No

From commit date (27/04/2012) and branch (2.3) this was merged and released with versions 2.3.12, 2.4.5 2.5.3 and 2.6.0.

I'll update the different changelogs

#38 Updated by Vincent MEMBRÉ over 3 years ago

  • Status changed from Released to New
  • Target version changed from 2.3.12 to 2.10.12

The fix was reverted, you can ignore my last comment, I will add the revert commit to that issue

#39 Updated by Vincent MEMBRÉ over 3 years ago

The revert commit was commit:ea0a625b

#40 Updated by Vincent MEMBRÉ over 3 years ago

  • Target version changed from 2.10.12 to 2.10.13

#41 Updated by Vincent MEMBRÉ over 3 years ago

  • Target version changed from 2.10.13 to 2.10.14

#42 Updated by Vincent MEMBRÉ over 3 years ago

  • Target version changed from 2.10.14 to 2.10.15

#43 Updated by Vincent MEMBRÉ about 3 years ago

  • Target version changed from 2.10.15 to 2.10.16

#44 Updated by Vincent MEMBRÉ about 3 years ago

  • Target version changed from 2.10.16 to 2.10.17

#45 Updated by Vincent MEMBRÉ almost 3 years ago

  • Target version changed from 2.10.17 to 2.10.18

#46 Updated by Vincent MEMBRÉ almost 3 years ago

  • Target version changed from 2.10.18 to 2.10.19

#47 Updated by Vincent MEMBRÉ almost 3 years ago

  • Target version changed from 2.10.19 to 2.10.20

#48 Updated by Matthieu CERDA almost 3 years ago

  • Has duplicate Bug #7188: php5: /opt/rudder/lib/libdb-5.1.so: no version information available (required by php5) added

#49 Updated by Matthieu CERDA almost 3 years ago

  • Has duplicate Bug #6378: postfix is using libdb-5.1.so from rudder used instead of library from system and complaining about that added

#50 Updated by Matthieu CERDA almost 3 years ago

  • Assignee changed from Matthieu CERDA to Benoît PECCATTE
  • Priority changed from 3 to 1

This problems impacts quite a lot of users, bumping the priority to 1.

Giving this to BPE for evaluation.

#51 Updated by Vincent MEMBRÉ almost 3 years ago

  • Target version changed from 2.10.20 to 2.11.18

#52 Updated by Vincent MEMBRÉ over 2 years ago

  • Target version changed from 2.11.18 to 2.11.19

#53 Updated by Vincent MEMBRÉ over 2 years ago

  • Target version changed from 2.11.19 to 2.11.20

#54 Updated by Vincent MEMBRÉ over 2 years ago

  • Target version changed from 2.11.20 to 2.11.21

#55 Updated by Vincent MEMBRÉ over 2 years ago

  • Target version changed from 2.11.21 to 2.11.22

#56 Updated by Vincent MEMBRÉ over 2 years ago

  • Target version changed from 2.11.22 to 2.11.23

#57 Updated by Vincent MEMBRÉ about 2 years ago

  • Target version changed from 2.11.23 to 2.11.24

#58 Updated by Vincent MEMBRÉ about 2 years ago

  • Target version changed from 2.11.24 to 308

#59 Updated by Vincent MEMBRÉ about 2 years ago

  • Target version changed from 308 to 3.1.14

#60 Updated by Vincent MEMBRÉ almost 2 years ago

  • Target version changed from 3.1.14 to 3.1.15

#61 Updated by Vincent MEMBRÉ almost 2 years ago

  • Target version changed from 3.1.15 to 3.1.16

#62 Updated by Vincent MEMBRÉ almost 2 years ago

  • Target version changed from 3.1.16 to 3.1.17

#63 Updated by Vincent MEMBRÉ almost 2 years ago

  • Target version changed from 3.1.17 to 3.1.18

#64 Updated by Vincent MEMBRÉ over 1 year ago

  • Target version changed from 3.1.18 to 3.1.19

#65 Updated by François ARMAND over 1 year ago

  • Severity set to Major - prevents use of part of Rudder | no simple workaround
  • User visibility set to Operational - other Techniques | Technique editor | Rudder settings

#66 Updated by Vincent MEMBRÉ over 1 year ago

  • Target version changed from 3.1.19 to 3.1.20
  • Priority set to 0

#67 Updated by Jonathan CLARKE over 1 year ago

  • Assignee deleted (Benoît PECCATTE)

#68 Updated by Jonathan CLARKE over 1 year ago

  • Severity changed from Major - prevents use of part of Rudder | no simple workaround to Minor - inconvenience | misleading | easy workaround
  • User visibility changed from Operational - other Techniques | Technique editor | Rudder settings to Getting started - demo | first install | level 1 Techniques
  • Priority changed from 0 to 32

Updating priority:

  • Impact is minor, since this doesn't break anything. However not trivial because this is highly confusing.
  • Visibility is getting started - the first time you install a Rudder agent and see it pull down a LDAP server is bad.

#69 Updated by Vincent MEMBRÉ over 1 year ago

  • Target version changed from 3.1.20 to 3.1.21

#70 Updated by Vincent MEMBRÉ over 1 year ago

  • Target version changed from 3.1.21 to 3.1.22
  • Priority changed from 32 to 33

#71 Updated by Benoît PECCATTE about 1 year ago

  • Priority changed from 33 to 48

#72 Updated by Vincent MEMBRÉ about 1 year ago

  • Target version changed from 3.1.22 to 3.1.23

#73 Updated by Vincent MEMBRÉ about 1 year ago

  • Target version changed from 3.1.23 to 3.1.24

#74 Updated by Vincent MEMBRÉ 11 months ago

  • Target version changed from 3.1.24 to 3.1.25
  • Priority changed from 48 to 49

#75 Updated by Vincent MEMBRÉ 10 months ago

  • Target version changed from 3.1.25 to 387

#76 Updated by Vincent MEMBRÉ 9 months ago

  • Target version changed from 387 to 4.1.10
  • Priority changed from 49 to 50

#77 Updated by Benoît PECCATTE 7 months ago

  • Status changed from New to In progress
  • Assignee set to Benoît PECCATTE

#78 Updated by Benoît PECCATTE 7 months ago

  • Status changed from In progress to Pending technical review
  • Assignee changed from Benoît PECCATTE to Alexis MOUSSET
  • Pull Request changed from https://github.com/Normation/rudder-packages/pull/57 to https://github.com/Normation/rudder-packages/pull/1502

#79 Updated by Normation Quality Assistant 7 months ago

  • Assignee changed from Alexis MOUSSET to Benoît PECCATTE

#80 Updated by Benoît PECCATTE 7 months ago

  • Status changed from Pending technical review to Pending release

#81 Updated by Vincent MEMBRÉ 7 months ago

This issue and its subtask #12117 lead to a missing dependency ( libltdl.so.7 )

ldd /opt/rudder/libexec/slapd 
    linux-vdso.so.1 =>  (0x00007ffeb5de1000)
    libldap_r-2.4.so.2 => /opt/rudder/lib/ldap/libldap_r-2.4.so.2 (0x00007f9c2bfd8000)
    liblber-2.4.so.2 => /opt/rudder/lib/ldap/liblber-2.4.so.2 (0x00007f9c2bdc8000)
    libltdl.so.7 => not found
    libssl.so.10 => /lib64/libssl.so.10 (0x00007f9c2bb4e000)
    libcrypto.so.10 => /lib64/libcrypto.so.10 (0x00007f9c2b6ec000)
    libresolv.so.2 => /lib64/libresolv.so.2 (0x00007f9c2b4d2000)
    libpthread.so.0 => /lib64/libpthread.so.0 (0x00007f9c2b2b6000)
    libc.so.6 => /lib64/libc.so.6 (0x00007f9c2aef2000)
    libgssapi_krb5.so.2 => /lib64/libgssapi_krb5.so.2 (0x00007f9c2aca5000)
    libkrb5.so.3 => /lib64/libkrb5.so.3 (0x00007f9c2a9bd000)
    libcom_err.so.2 => /lib64/libcom_err.so.2 (0x00007f9c2a7b8000)
    libk5crypto.so.3 => /lib64/libk5crypto.so.3 (0x00007f9c2a585000)
    libdl.so.2 => /lib64/libdl.so.2 (0x00007f9c2a381000)
    libz.so.1 => /lib64/libz.so.1 (0x00007f9c2a16a000)
    /lib64/ld-linux-x86-64.so.2 (0x00007f9c2c22b000)
    libkrb5support.so.0 => /lib64/libkrb5support.so.0 (0x00007f9c29f5c000)
    libkeyutils.so.1 => /lib64/libkeyutils.so.1 (0x00007f9c29d58000)
    libselinux.so.1 => /lib64/libselinux.so.1 (0x00007f9c29b30000)
    libpcre.so.1 => /lib64/libpcre.so.1 (0x00007f9c298ce000)

installing libtool-ltdl fix the issue

We are wondering about reverting this issue or not ...

#82 Updated by Vincent MEMBRÉ 7 months ago

  • Status changed from Pending release to Released

This bug has been fixed in Rudder 4.1.10 and 4.2.4 which were released today.

Also available in: Atom PDF