1
0
mirror of https://github.com/billz/raspap-webgui.git synced 2023-10-10 13:37:24 +02:00

Fix checking dnsmasq starting/stopping

This commit is contained in:
Joseph Haig 2016-07-09 03:34:48 +01:00
parent 3b043950de
commit 46894ef91e

View File

@ -36,11 +36,18 @@ function DisplayDHCPConfig() {
$status->addMessage('dnsmasq already running', 'info'); $status->addMessage('dnsmasq already running', 'info');
} else { } else {
$line = system('sudo /etc/init.d/dnsmasq start',$return); $line = system('sudo /etc/init.d/dnsmasq start',$return);
exec( 'pidof dnsmasq | wc -l',$dnsmasq ); $n_tries = 0;
if ($dnsmasq[0] == 0) { while ($n_tries < 5) {
exec( 'pidof dnsmasq | wc -l',$dnsmasq );
if (end($dnsmasq) > 0) break;
sleep(1);
$n_tries += 1;
}
if (end($dnsmasq) == 0) {
$status->addMessage('Failed to start dnsmasq', 'danger'); $status->addMessage('Failed to start dnsmasq', 'danger');
} else { } else {
$status->addMessage('Successfully started dnsmasq', 'success'); $status->addMessage('Successfully started dnsmasq', 'success');
$dnsmasq_state = true;
} }
} }
} else { } else {
@ -50,9 +57,16 @@ function DisplayDHCPConfig() {
if (CSRFValidate()) { if (CSRFValidate()) {
if ($dnsmasq_state) { if ($dnsmasq_state) {
$line = system('sudo /etc/init.d/dnsmasq stop',$return); $line = system('sudo /etc/init.d/dnsmasq stop',$return);
exec( 'pidof dnsmasq | wc -l',$dnsmasq ); $n_tries = 0;
if ($dnsmasq[0] == 0) { while ($n_tries < 5) {
exec( 'pidof dnsmasq | wc -l',$dnsmasq );
if (end($dnsmasq) == 0) break;
sleep(1);
$n_tries += 1;
}
if (end($dnsmasq) == 0) {
$status->addMessage('Successfully stopped dnsmasq', 'success'); $status->addMessage('Successfully stopped dnsmasq', 'success');
$dnsmasq_state = false;
} else { } else {
$status->addMessage('Failed to stop dnsmasq', 'danger'); $status->addMessage('Failed to stop dnsmasq', 'danger');
} }