From 7cf3e98090a3e9f0a9cc960d07c5f259adab6a19 Mon Sep 17 00:00:00 2001
From: Marius Cramer <m.cramer@pixcept.de>
Date: Thu, 14 Nov 2013 08:39:08 -0500
Subject: [PATCH] Merge remote-tracking branch 'origin/stable-3.0.5'

---
 install/lib/installer_base.lib.php |   20 +++++++++++++++++++-
 1 files changed, 19 insertions(+), 1 deletions(-)

diff --git a/install/lib/installer_base.lib.php b/install/lib/installer_base.lib.php
index d77ab21..e46d977 100644
--- a/install/lib/installer_base.lib.php
+++ b/install/lib/installer_base.lib.php
@@ -1131,7 +1131,8 @@
 
 		if(is_file('/etc/inetd.conf')) {
 			replaceLine('/etc/inetd.conf','/usr/sbin/pure-ftpd-wrapper','#ftp     stream  tcp     nowait  root    /usr/sbin/tcpd /usr/sbin/pure-ftpd-wrapper',0,0);
-			if(is_file($conf['init_scripts'].'/'.'openbsd-inetd')) exec($conf['init_scripts'].'/'.'openbsd-inetd restart');
+			exec($this->getinitcommand('openbsd-inetd', 'restart'));
+			//if(is_file($conf['init_scripts'].'/'.'openbsd-inetd')) exec($conf['init_scripts'].'/'.'openbsd-inetd restart');
 		}
 
 		if(!is_file('/etc/pure-ftpd/conf/DontResolve')) exec('echo "yes" > /etc/pure-ftpd/conf/DontResolve');
@@ -2164,6 +2165,23 @@
 		chmod($conf['ispconfig_log_dir'].'/cron.log', 0660);
 
 	}
+	
+	public function getinitcommand($servicename, $action, $init_script_directory = ''){
+		global $conf;
+		// systemd
+		if(is_executable('/bin/systemd')){
+			return 'systemctl '.$action.' '.$servicename.'.service';
+		}
+		// upstart
+		if(is_executable('/sbin/initctl')){
+			exec('/sbin/initctl version 2>/dev/null | /bin/grep -q upstart', $retval['output'], $retval['retval']);
+			if(intval($retval['retval']) == 0) return 'service '.$servicename.' '.$action;
+		}
+		// sysvinit
+		if($init_script_directory == '') $init_script_directory = $conf['init_scripts'];
+		if(substr($init_script_directory, -1) === '/') $init_script_directory = substr($init_script_directory, 0, -1);
+		return $init_script_directory.'/'.$servicename.' '.$action;
+	}
 
 	/**
 	 * Helper function - get the path to a template file based on

--
Gitblit v1.9.1