Source: kylin-nm
Version: 3.0.3.1-2
Usertags: pidof-without-procps
Dear maintainer(s) of kylin-nm,
it appears that kylin-nm 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 kylin-nm
that use `pidof` at runtime;
* via the `Build-Depends:` field of kylin-nm, 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 kylin-nm, 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 kylin-nm uses `pidof` due to the following
code snippets:
```
path: kylin-nm_3.0.3.1-2/src/onelancform.cpp
void OneLancForm::on_btnCancel_clicked()
{
QString cmd = "kill -9 $(pidof nmcli)"; //ææå½åæ£å¨è¿è¡çæå
³nmcliå½ä»¤çè¿ç¨
int status = system(cmd.toUtf8().data());
if (status != 0) {
path: kylin-nm_3.0.3.1-2/src/onelancform.cpp
this->countCurrentTime += FRAME_SPEED;
if (this->countCurrentTime >= LIMIT_TIME) {
QString cmd = "kill -9 $(pidof nmcli)";
//ææå½åæ£å¨è¿è¡çæå
³nmcliå½ä»¤çè¿ç¨
int status = system(cmd.toUtf8().data());
if (status != 0) {
path: kylin-nm_3.0.3.1-2/src/onelancform.cpp
int status = system(cmd.toUtf8().data());
if (status != 0) {
qDebug()<<"execute 'kill -9 $(pidof nmcli)' in function
'on_btnCancel_clicked' failed";
}
path: kylin-nm_3.0.3.1-2/src/onelancform.cpp
int status = system(cmd.toUtf8().data());
if (status != 0) {
qDebug()<<"execute 'kill -9 $(pidof nmcli)' in function
'waitAnimStep' failed";
}
path: kylin-nm_3.0.3.1-2/src/oneconnform.cpp
this->countCurrentTime += FRAME_SPEED;
if (this->countCurrentTime >= LIMIT_TIME) {
QString cmd = "kill -9 $(pidof nmcli)";
//ææå½åæ£å¨è¿è¡çæå
³nmcliå½ä»¤çè¿ç¨
int status = system(cmd.toUtf8().data());
if (status != 0) {
path: kylin-nm_3.0.3.1-2/src/oneconnform.cpp
int status = system(cmd.toUtf8().data());
if (status != 0) {
qDebug()<<"execute 'kill -9 $(pidof nmcli)' in function
'waitAnimStep' failed";
}
path: kylin-nm_3.0.3.1-2/src/mainwindow.cpp
if (status != 0) {
qDebug()<<"execute 'kill -9 $(pidof nmcli)' in function
'on_checkOverTime' failed";
//syslog(LOG_ERR, "execute 'kill -9 $(pidof nmcli)' in function
'on_checkOverTime' failed");
}
this->stopLoading(); //è¶
æ¶åæ¢çå¾
å¨ç»
path: kylin-nm_3.0.3.1-2/src/mainwindow.cpp
void MainWindow::on_checkOverTime()
{
QString cmd = "kill -9 $(pidof nmcli)"; //ææå½åæ£å¨è¿è¡çæå
³nmcliå½ä»¤çè¿ç¨
int status = system(cmd.toUtf8().data());
if (status != 0) {
path: kylin-nm_3.0.3.1-2/src/mainwindow.cpp
int status = system(cmd.toUtf8().data());
if (status != 0) {
qDebug()<<"execute 'kill -9 $(pidof nmcli)' in function
'on_checkOverTime' failed";
//syslog(LOG_ERR, "execute 'kill -9 $(pidof nmcli)' in function
'on_checkOverTime' failed");
}
```
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