From b3cbd29ed7b6dcaf08e77ba2e42346889ab7a7c2 Mon Sep 17 00:00:00 2001 From: DL6ER Date: Thu, 20 Apr 2017 13:20:36 +0200 Subject: [PATCH] Don't rely on PID file, but try to detect FTL PID ourselves (has shown to be very effective in the update service file) --- scripts/pi-hole/php/FTL.php | 3 ++- scripts/pi-hole/php/header.php | 8 ++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/scripts/pi-hole/php/FTL.php b/scripts/pi-hole/php/FTL.php index c483ecba..c80f20b6 100644 --- a/scripts/pi-hole/php/FTL.php +++ b/scripts/pi-hole/php/FTL.php @@ -8,7 +8,8 @@ function testFTL() { - return (strpos(exec("ps -p `cat /var/run/pihole-FTL.pid` -o comm="), "pihole-FTL") !== false); + $ret = shell_exec("pidof pihole-FTL"); + return intval($ret); } function connectFTL($address, $port=4711, $quiet=true) diff --git a/scripts/pi-hole/php/header.php b/scripts/pi-hole/php/header.php index a858c328..0c49b724 100644 --- a/scripts/pi-hole/php/header.php +++ b/scripts/pi-hole/php/header.php @@ -146,12 +146,12 @@ } } - $FTL = false; - $FTLpid = file_get_contents("/var/run/pihole-FTL.pid"); - if (file_exists( "/proc/".$FTLpid )) + function pidofFTL() { - $FTL = true; + return shell_exec("pidof pihole-FTL"); } + $FTLpid = intval(pidofFTL()); + $FTL = ($FTLpid !== 0 ? true : false); ?>