Re: gLSB: sysinit: clearify algorithm for determining status of programs

Thorsten Kukuk <[email protected]>
Newsgroups gmane.linux.lsb.discuss
Organization SuSE Linux AG, Nuernberg, Germany
Message-ID <[email protected]>
On Wed, Sep 03, Tobias Burnus wrote:

> Hello again,
> 
> the gLSB 1.3 initfunctions.sgml contains:
> "If an entry is found in /var/run/basename.pid, then that value is
>  returned. Compliant implementations of the LSB may attempt other
>  mechanisms for determining the pid(s), although this is not required
>  (and not recommended, since a user can trick startup scripts by creating
>  processes that appear to be system programs in the process list thus
>  creating a potential security exposure)."
> 
> This explicily allows this: first checking for the pidfile and then,
> if it doesn't exist, checking the /proc system (using e.g. pidof).
> 
> There are two possible reasons for the case that there is no pidfile
> present: (a) the program doesn't use pidfiles (implicitly assumed above)
> or (b) it is not running.
> 
> This makes trouble when a daemon is started twice with different
> pid and coniguration files. My all ready cited example,
>   /usr/sbin/sshd                                 (/var/run/sshd.pid)
>   /usr/sbin/sshd -f /etc/ssh/sshd_config2 -p 123 (/var/run/zedv-sshd.pid),
> shows that   pidof $BIN  ==  pidof /usr/sbin/sshd  has no chance to
> discriminate those two. Considering that one can pass a basename instead of
> a pathname to pidofproc and killproc, things are even worse. 
> 
> I therefore would like to prohibit the checking of other pids but those
> given in the pidfile. My main problem is that at least three distributions
> use the pidof fallback: RedHat, SuSE and Debian. Thus I'm a bit reluctant to
> simply disallow this.
> 
> 
> Therefore I would really appreciate to get some feedback from the
> distributions.

I don't like it at all and I don't see a real reason why we should
change it in this way. Maybe we can say, that, if a pidfile is
given on commandline, only this should be used and no fallback
method?

  Thorsten

-- 
Thorsten Kukuk       http://www.suse.de/~kukuk/        [email protected]
SuSE Linux AG        Deutschherrnstr. 15-19        D-90429 Nuernberg
--------------------------------------------------------------------    
Key fingerprint = A368 676B 5E1B 3E46 CFCE  2D97 F8FD 4E23 56C6 FB4B
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.