Source: ifupdown2
Version: 3.0.0-1.3
Usertags: pidof-without-procps
Dear maintainer(s) of ifupdown2,
it appears that ifupdown2 uses `pidof` in its testsuite, or that
at least one of its binary packages uses `pidof` at runtime.
Historically, `pidof` was provided by the Essential package
`sysvinit-tools`, making an explicit dependency unnecessary. However
`pidof` will soon be moved to `procps` and will no longer be part of
the Essential set.
Please add an explicit dependency on `procps`:
* via the `Depends:` field of all binary packages of ifupdown2
that use `pidof` at runtime;
* via the `Build-Depends:` field of ifupdown2, if `pidof` is
used in tests run at build-time;
* via the `Depends:` field of `debian/control/tests`, if `pidof` is
used in autopkgtests.
To prevent any disruption for users of ifupdown2, please add
this dependency now, before `pidof` is moved from `sysvinit-utils` to
`procps`. Alternatively, you could remove all uses of `pidof`.
It is believed that ifupdown2 uses `pidof` due to the following
code snippets:
```
path: ifupdown2_3.0.0-1.3/ifupdown2/ifupdownaddons/modulebase.py
try:
utils.exec_command('%s -x %s' %
(utils.pidof_cmd, procName))
except Exception:
return False
path: ifupdown2_3.0.0-1.3/ifupdown2/ifupdownaddons/mstpctlutil.py
def is_mstpd_running(self):
try:
utils.exec_command('%s mstpd'%utils.pidof_cmd)
except Exception:
return False
path: ifupdown2_3.0.0-1.3/ifupdown2/ifupdown/utils.py
ip_cmd = '/bin/ip'
brctl_cmd = '/sbin/brctl'
pidof_cmd = '/bin/pidof'
service_cmd = '/usr/sbin/service'
sysctl_cmd = '/sbin/sysctl'
path: ifupdown2_3.0.0-1.3/ifupdown2/addons/vrrpd.py
pidstr = ''
try:
cmdl = [utils.pidof_cmd, cmdname]
pidstr = utils.exec_commandl(cmdl, stderr=None).strip('\n')
except Exception:
path: ifupdown2_3.0.0-1.3/ifupdown2/ifupdownaddons/systemutils.py
try:
utils.exec_command('%s %s' %
(utils.pidof_cmd, procname))
except Exception:
return False
path: ifupdown2_3.0.0-1.3/ifupdown2/ifupdownaddons/systemutils.py
try:
utils.exec_command('%s %s' %
(utils.pidof_cmd, processname))
except Exception:
return False
```
Feel free to close this issue if this is a false positive (for example
if this code is in an unreachable code path).
Regards,
--
Gioele Barabucci