On Sun, Dec 13, 2020 at 08:27:24PM +0100, Harald Dunkel wrote:
At least OpenBSD is not alone with this problem. On Debian there is a tool "/bin/pidof", trying to guess the pid of a daemon to kill by looking at the process list as well.
Some dude from Google came up with a good solution (for Linux of course). If you open a /proc/[pid] directory this PID cannot be recycled unless you close the fd. Hence you can do this: 1. Read /var/run/foobard.lock and get PID 2. Open /proc/[pid] 3. Check that PID is in fact belongs to an instance of foobard 4. kill() it Easy.