summaryrefslogtreecommitdiffstats
path: root/etc
diff options
context:
space:
mode:
authorTimo Boettcher <spida@pfsense.org>2007-06-21 13:01:01 +0000
committerTimo Boettcher <spida@pfsense.org>2007-06-21 13:01:01 +0000
commitcd72ded3864c0d72c45f6512d0352f26dd3843bc (patch)
tree59c54704b7f90f2c72706a3e4d3091e75240fdcd /etc
parent9feb1986efe16befd8f57675ac055fb59606c509 (diff)
downloadpfsense-cd72ded3864c0d72c45f6512d0352f26dd3843bc.zip
pfsense-cd72ded3864c0d72c45f6512d0352f26dd3843bc.tar.gz
Make OpenVPN usable in status_service.php
Diffstat (limited to 'etc')
-rw-r--r--etc/inc/service-utils.inc95
1 files changed, 52 insertions, 43 deletions
diff --git a/etc/inc/service-utils.inc b/etc/inc/service-utils.inc
index 01d2714..3780e64 100644
--- a/etc/inc/service-utils.inc
+++ b/etc/inc/service-utils.inc
@@ -94,47 +94,47 @@ function start_service($name) {
}
function stop_service($name) {
- global $config;
- if($config['installedpackages']['service']) {
- foreach($config['installedpackages']['service'] as $service) {
- if(strtolower($service['name']) == strtolower($name)) {
- if($service['rcfile']) {
- if($service['prefix']) {
- $prefix =& $service['prefix'];
- } else {
- $prefix = "/usr/local/etc/rc.d/";
- }
- mwexec_bg($prefix . $service['rcfile'] . " stop");
- }
- if($service['stopcmd']) {
- eval($service['stopcmd']);
- }
- if(!($service['rcfile'] or $service['stopcmd'])) {
- mwexec_bg("/usr/bin/killall {$service['executable']}");
- return;
- }
- break;
- }
- }
- }
- /* finally if we get here lets simply kill the service name */
- mwexec_bg("/usr/bin/killall {$name}");
+ global $config;
+ if($config['installedpackages']['service']) {
+ foreach($config['installedpackages']['service'] as $service) {
+ if(strtolower($service['name']) == strtolower($name)) {
+ if($service['rcfile']) {
+ if($service['prefix']) {
+ $prefix =& $service['prefix'];
+ } else {
+ $prefix = "/usr/local/etc/rc.d/";
+ }
+ mwexec_bg($prefix . $service['rcfile'] . " stop");
+ }
+ if($service['stopcmd']) {
+ eval($service['stopcmd']);
+ }
+ if(!($service['rcfile'] or $service['stopcmd'])) {
+ mwexec_bg("/usr/bin/killall {$service['executable']}");
+ return;
+ }
+ break;
+ }
+ }
+ }
+ /* finally if we get here lets simply kill the service name */
+ mwexec_bg("/usr/bin/killall {$name}");
}
function restart_service($name) {
- global $config;
+ global $config;
stop_service($name);
start_service($name);
- if($config['installedpackages']['service']) {
- foreach($config['installedpackages']['service'] as $service) {
- if(strtolower($service['name']) == strtolower($name)) {
- if($service['restartcmd']) {
- eval($service['restartcmd']);
- }
- break;
- }
- }
- }
+ if($config['installedpackages']['service']) {
+ foreach($config['installedpackages']['service'] as $service) {
+ if(strtolower($service['name']) == strtolower($name)) {
+ if($service['restartcmd']) {
+ eval($service['restartcmd']);
+ }
+ break;
+ }
+ }
+ }
}
function is_process_running($process) {
@@ -142,6 +142,12 @@ function is_process_running($process) {
return $running;
}
+function is_pid_running($pidfile) {
+ $pid = trim(file_get_contents($pidfile));
+ $running = (trim(shell_exec("ps axwu | grep '\b{$pid}\b' | grep -v 'grep'")) != '');
+ return $running;
+}
+
function is_dhcp_running($interface) {
$interface = convert_friendly_interface_to_real_interface_name($interface);
$status = find_dhclient_process($interface);
@@ -165,8 +171,8 @@ function is_service_running($service, $ps = "") {
}
*/
if(is_array($config['installedpackages']['service'])) {
- foreach($config['installedpackages']['service'] as $aservice) {
- if(strtolower($service) == strtolower($aservice['name'])) {
+ foreach($config['installedpackages']['service'] as $aservice) {
+ if(strtolower($service) == strtolower($aservice['name'])) {
if(!$aservice['executable']) return false;
/*
if(count(preg_grep("/{$aservice['executable']}/i", $ps))) {
@@ -175,10 +181,13 @@ function is_service_running($service, $ps = "") {
return false;
}
*/
- return is_process_running($aservice['executable']) ? true : false;
- }
- }
- }
+ if ($service == "openvpn") {
+ } else {
+ return is_process_running($aservice['executable']) ? true : false;
+ }
+ }
+ }
+ }
}
-?> \ No newline at end of file
+?>
OpenPOWER on IntegriCloud