Bug 522947 - Initscript of nss-ldapd (nslcd) is not LSB compliant
Summary: Initscript of nss-ldapd (nslcd) is not LSB compliant
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: nss-ldapd
Version: 12
Hardware: All
OS: Linux
low
low
Target Milestone: ---
Assignee: Nalin Dahyabhai
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: InitScriptsProject 537082
TreeView+ depends on / blocked
 
Reported: 2009-09-12 15:10 UTC by Miroslav Vadkerti
Modified: 2009-12-04 18:31 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
: 537082 (view as bug list)
Environment:
Last Closed: 2009-12-04 18:31:12 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
Patch to improve nslcd.init and scriptlet compliance with packaging guidelines (3.48 KB, patch)
2009-09-16 09:56 UTC, Mitchell Berger
no flags Details | Diff

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


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