Bug 657009

Summary: nscd rpm installation doesn't check dependencies
Product: Red Hat Enterprise Linux 4 Reporter: Peter Gervase <pgervase>
Component: glibcAssignee: Jeff Law <law>
Status: CLOSED ERRATA QA Contact: qe-baseos-tools-bugs
Severity: medium Docs Contact:
Priority: low    
Version: 4.8CC: ebachalo, fweimer, jbastian, mfranc, pmuller
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: glibc-2.3.4-2.55 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-02-13 20:35:38 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Peter Gervase 2010-11-24 17:01:12 UTC
Description of problem:
When installing a version of nscd that is newer than the installed version of glibc, no error is given that glibc should match the version of nscd.

Version-Release number of selected component (if applicable):


How reproducible:
Every time

Steps to Reproduce:
1.Make sure you're not at the latest version of glibc
2.Install a newer version either by the rpm command or up2date

  
Actual results:
nscd installs without saying that glibc should also be updated.

Expected results:
It should error saying that the versions of glibc and nscd should match

Additional info:

Comment 1 Jeff Bastian 2011-02-08 20:56:11 UTC
The problem is easy to reproduce:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[root@localhost ~]# rpm -q glibc nscd | sort
glibc-2.3.4-2.43.i686
glibc-2.3.4-2.43.x86_64
nscd-2.3.4-2.43.x86_64

[root@localhost ~]# service nscd stop
Stopping nscd:                                             [  OK  ]

[root@localhost ~]# rpm -Uvh nscd-2.3.4-2.43.el4_8.6.x86_64.rpm
Preparing...                ########################################### [100%]
   1:nscd                   ########################################### [100%]
   
[root@localhost ~]# service nscd start
Starting nscd: /usr/sbin/nscd: relocation error: /usr/sbin/nscd: symbol __nss_next2, version GLIBC_PRIVATE not defined in file libc.so.6 with link time reference
                                                           [FAILED]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

It seems like a Requires line could be added for nscd in the glibc.spec to match the version numbers and this would prevent situations like the above.  I'll try that.

Comment 2 Jeff Bastian 2011-02-08 21:15:42 UTC
Yes, in fact, I see the glibc-utils packages has a Requires line in glibc.spec:

%package utils
Summary: Development utilities from GNU C library
Group: Development/Tools
Requires: glibc = %{version}-%{release}

I'll just copy the Requires line for %package nscd and test it.


I also see that RHEL 5 already has this in glibc-2.5-58:
%package -n nscd
...
Requires: libselinux >= 1.17.10-1, audit-libs >= 1.1.3, glibc = %{version}-%{release}

Comment 3 Jeff Bastian 2011-02-08 23:35:54 UTC
It worked:

[root@localhost ~]# rpm -q glibc nscd | sort
glibc-2.3.4-2.43.i686
glibc-2.3.4-2.43.x86_64
nscd-2.3.4-2.43.x86_64

[root@localhost ~]# rpm -Uvh nscd-2.3.4-2.43.el4_8.6.bz657009.x86_64.rpm 
error: Failed dependencies:
        glibc = 2.3.4-2.43.el4_8.6.bz657009 is needed by nscd-2.3.4-2.43.el4_8.6.bz657009.x86_64


Can we add the 'Requires: glibc = %{version}-%{release}' line to the RHEL 4 nscd rpm?

Comment 6 errata-xmlrpc 2012-02-13 20:35:38 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.

http://rhn.redhat.com/errata/RHSA-2012-0125.html