[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#647250: add check for init.d status option



Package: lintian
Version: 2.5.3
Severity: wishlist
Tags: patch

I'm trying to move the issue of the init.d status option forward (see
ancient policy bug #291148).  During squeeze I supplied patches to a
bunch of the most popular packages, and most packages were so patched.
Now I'm in a second round of patching the most popular and highest
priority remaining packages, and it looks like we could have very high
support for this in wheezy soon.

So, at this point I figured it would be a good time to get a wishlist
check for this into lintian, to get the word out to the most eager
maintainers, and to allow easier progress tracking on
lintian.debian.org.  At some later point, I will try to move the
policy bug forward, and then this check could simply be upgraded to a
warning.

The way I've worded this check leaves it open for adding other
optional init.d options, so that in another 5 years we can try adding
the try-restart option using the same route. ;-)

Anyway, attached is the patch; let me know what you think.
diff --git i/checks/init.d w/checks/init.d
index 7fd52b4..f182bbe 100644
--- i/checks/init.d
+++ w/checks/init.d
@@ -282,7 +282,7 @@ sub check_init {
         $needs_fs{'remote'} = 1 if ($l =~ m,^[^\#]*/usr/,);
         $needs_fs{'local'}  = 1 if ($l =~ m,^[^\#]*/var/,);
 
-        while ($l =~ s/^[^\#]*?(start|stop|restart|force-reload)//o) {
+        while ($l =~ s/^[^\#]*?(start|stop|restart|force-reload|status)//o) {
             $tag{$1} = 1;
         }
     }
@@ -433,6 +433,11 @@ sub check_init {
         $tag{$option}
             or tag 'init.d-script-does-not-implement-required-option', "etc/init.d/$_ $option";
     }
+
+    for my $option qw(status) {
+        $tag{$option}
+            or tag 'init.d-script-does-not-implement-optional-option', "etc/init.d/$_ $option";
+    }
 }
 
 1;
diff --git i/checks/init.d.desc w/checks/init.d.desc
index 6870d3c..ab78829 100644
--- i/checks/init.d.desc
+++ w/checks/init.d.desc
@@ -75,6 +75,14 @@ Ref: policy 9.3.2
 Info: The <tt>/etc/init.d</tt> scripts have to support the following
  command line arguments: start, stop, restart, force-reload.
 
+Tag: init.d-script-does-not-implement-optional-option
+Severity: wishlist
+Certainty: certain
+Ref: http://wiki.debian.org/LSBInitScripts
+Info: The <tt>/etc/init.d</tt> script does not implement the status
+ option.  This is not required by the Policy, but often requested by
+ users.
+
 Tag: init.d-script-not-included-in-package
 Severity: important
 Certainty: certain

Reply to: