Bug 522947

Summary: Initscript of nss-ldapd (nslcd) is not LSB compliant
Product: [Fedora] Fedora Reporter: Miroslav Vadkerti <mvadkert>
Component: nss-ldapdAssignee: Nalin Dahyabhai <nalin>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: low Docs Contact:
Priority: low    
Version: 12CC: mitchb, nalin, vedran
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 537082 (view as bug list) Environment:
Last Closed: 2009-12-04 18:31:12 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:
Bug Depends On:    
Bug Blocks: 521669, 537082    
Attachments:
Description Flags
Patch to improve nslcd.init and scriptlet compliance with packaging guidelines none

Description Miroslav Vadkerti 2009-09-12 15:10:07 UTC
Description of problem:
The nslcd initscript doesn't implement mandatory option force-reload.
See https://fedoraproject.org/wiki/FCNewInit/Initscripts.

Version-Release number of selected component (if applicable):
nss-ldapd-0.6.11-1.fc12

How reproducible:
always

Steps to Reproduce:
1. service nslcd force-reload
 
Actual results:
Option not implmented

Expected results:
Option implemented according to https://fedoraproject.org/wiki/FCNewInit/Initscripts

Comment 1 Jesse Keating 2009-09-14 17:08:21 UTC
Not sure why this is assigned to me.

Comment 2 Mitchell Berger 2009-09-16 09:44:42 UTC
The page that you cite:
  https://fedoraproject.org/wiki/FCNewInit/Initscripts
is not part of the Fedora packaging guidelines, and in fact has
a small handful of inconsistencies with them.  It appears to
be part of this project:
  https://fedoraproject.org/wiki/FCNewInit
which in turn refers to this release feature:
  https://fedoraproject.org/wiki/Releases/FeatureNewInit
As you'll see if you look at that feature page, the feature
was obsoleted over a year ago by a decision to move towards
upstart instead of carrying out the changes on the FCNewInit pages.

Fedora's guidelines on init scripts can be found here:
  http://fedoraproject.org/wiki/Packaging:SysVInitScript
(There's even a comment to this effect early in the tracker bug
that you've marked this one as blocking.)  The Fedora guidelines
don't require strict LSB compliance, though there are many similarities.

The specific item you raise (the missing force-reload action) is
indeed a problem according to the Fedora init script guidelines.  A
careful reading of them actually shows that the nss-ldapd init script
has a more sizable list of issues where it violates the guidelines.

I'll be creating an attachment to address all of these momentarily.

Comment 3 Mitchell Berger 2009-09-16 09:56:18 UTC
Created attachment 361224 [details]
Patch to improve nslcd.init and scriptlet compliance with packaging guidelines

o Make the spec file use the %{_initddir} macro instead of the deprecated
    %{_initrddir} macro
o Only infer that the nslcd service should be enabled if USELDAP=yes on
    the first package installation; do not alter runlevel settings that
    the user has selected when upgrading or reinstalling
o Fix spacing inconsistency in chkconfig '# description:' entry
o Remove LSB '# Default-Stop:' entry; it is only supposed to be present
    if there is a '# Default-Start:' entry
o Correct LSB '# Description:' entry; it is required to be identical to
    the chkconfig '# description:' entry
o Use the preferred /etc/rc.d/init.d directory instead of /etc/init.d
o Make the 'start' action do nothing if nslcd is already running;
    previously we would start a second daemon
o Make the 'stop' action do nothing if nslcd is already shut down
o Implement the required 'try-restart' action as a synonym of 'condrestart'
o Make the 'reload' action return 3 to indicate that it is unimplemented
o Implement the required 'force-reload' action as a synonym of 'restart'
o Update usage line to include the new actions

Comment 4 Nalin Dahyabhai 2009-09-16 17:31:45 UTC
Mitch, that looks great to me.  Adding a -p to the status function call to catch dead-but-pid-file-exists errors and committing to CVS.

Comment 5 Miroslav Vadkerti 2009-09-20 11:31:25 UTC
when will the new build be ready for testing?

Comment 6 Nalin Dahyabhai 2009-09-24 18:55:24 UTC
(In reply to comment #5)
> when will the new build be ready for testing?  

I was half-expecting other packages to trigger a rebuild soon enough, but I've just kicked one off anyway.  It should make the next compose, so... tomorrow?

Comment 7 Miroslav Vadkerti 2009-09-25 04:31:31 UTC
VERIFIED as fixed in nss-ldapd-0.6.11-2.fc12.i686.

Comment 8 Bug Zapper 2009-11-16 12:18:34 UTC
This bug appears to have been reported against 'rawhide' during the Fedora 12 development cycle.
Changing version to '12'.

More information and reason for this action is here:
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 9 Vedran Miletić 2009-12-04 18:31:12 UTC
The VERIFIED, FAILS_QA and RELEASE_PENDING bug states are not used by Fedora (they are used in the RHEL process).

---

Fedora Bugzappers volunteer triage team
https://fedoraproject.org/wiki/BugZappers