From 0cd87e682012f224e2b74531190bb983fdcbb430 Mon Sep 17 00:00:00 2001
From: Florian Schaal <florian@schaal-24.de>
Date: Sun, 10 Jan 2016 03:31:27 -0500
Subject: [PATCH] Revert "allow 0 for ISINT"
---
server/mods-available/remoteaction_core_module.inc.php | 91 +++++++++++++++++++++++++++++++++------------
1 files changed, 67 insertions(+), 24 deletions(-)
diff --git a/server/mods-available/remoteaction_core_module.inc.php b/server/mods-available/remoteaction_core_module.inc.php
index f24fadd..807de50 100644
--- a/server/mods-available/remoteaction_core_module.inc.php
+++ b/server/mods-available/remoteaction_core_module.inc.php
@@ -1,6 +1,6 @@
<?php
/*
-Copyright (c) 2007-2010, Till Brehm, projektfarm Gmbh and Oliver Vogel www.muv.com
+Copyright (c) 2007-2010, Till Brehm, projektfarm Gmbh, Oliver Vogel www.muv.com
All rights reserved.
Redistribution and use in source and binary forms, with or without modification,
@@ -35,7 +35,7 @@
//* This function is called during ispconfig installation to determine
// if a symlink shall be created for this plugin.
function onInstall() {
- return true;
+ return false;
}
/*
@@ -45,7 +45,8 @@
/*
* Check for actions to execute
*/
- $this->_execActions();
+ //* This module has been replaced by the new action framework.
+ // $this->_execActions();
}
/*
@@ -61,10 +62,8 @@
* First set the state
*/
global $app;
- $sql = "UPDATE sys_remoteaction " .
- "SET action_state = '" . $app->dbmaster->quote($state) . "' " .
- "WHERE action_id = " . intval($id);
- $app->dbmaster->query($sql);
+ $sql = "UPDATE sys_remoteaction SET action_state = ? WHERE action_id = ?";
+ $app->dbmaster->query($sql, $state, $id);
/*
* Then save the maxid for the next time...
@@ -79,6 +78,8 @@
/**
* This method searches for scheduled actions and exec then
*/
+
+
private function _execActions() {
global $app;
global $conf;
@@ -95,17 +96,13 @@
* stop a service, a admin stopped some days before! To avoid this, we ignore
* the status (it is only for the interface to show) and use our own maxid
*/
- include_once (dirname(__FILE__) . "/../lib/remote_action.inc.php");
+ include_once SCRIPT_PATH."/lib/remote_action.inc.php";
/*
* Get all actions this server should execute
*/
- $sql = "SELECT action_id, action_type, action_param " .
- "FROM sys_remoteaction " .
- "WHERE server_id = " . $server_id . " ".
- " AND action_id > " . intval($maxid_remote_action) . " ".
- "ORDER BY action_id";
- $actions = $app->dbmaster->queryAllRecords($sql);
+ $sql = "SELECT action_id, action_type, action_param FROM sys_remoteaction WHERE server_id = ? AND action_id > ? ORDER BY action_id";
+ $actions = $app->dbmaster->queryAllRecords($sql, $server_id, $maxid_remote_action);
/*
* process all actions
@@ -119,13 +116,54 @@
* we stop executing the actions not to waste more time */
return;
}
+
if ($action['action_type'] == 'ispc_update') {
/* do the update */
- $this->_doIspCUpdate($action);
+ // Update function has been removed
+ // $this->_doIspCUpdate($action);
+ /* this action takes so much time,
+ * we stop executing the actions not to waste more time */
+ $this->_actionDone($action['action_id'], 'ok');
+ }
+ if ($action['action_type'] == 'openvz_start_vm') {
+ $veid = intval($action['action_param']);
+ if($veid > 0) {
+ exec("vzctl start $veid");
+ }
+ $this->_actionDone($action['action_id'], 'ok');
+ }
+ if ($action['action_type'] == 'openvz_stop_vm') {
+ $veid = intval($action['action_param']);
+ if($veid > 0) {
+ exec("vzctl stop $veid");
+ }
+ $this->_actionDone($action['action_id'], 'ok');
+ }
+ if ($action['action_type'] == 'openvz_restart_vm') {
+ $veid = intval($action['action_param']);
+ if($veid > 0) {
+ exec("vzctl restart $veid");
+ }
+ $this->_actionDone($action['action_id'], 'ok');
+ }
+ if ($action['action_type'] == 'openvz_create_ostpl') {
+ $parts = explode(':', $action['action_param']);
+ $veid = intval($parts[0]);
+ $template_cache_dir = '/vz/template/cache/';
+ $template_name = escapeshellcmd($parts[1]);
+ if($veid > 0 && $template_name != '' && is_dir($template_cache_dir)) {
+ $command = "vzdump --suspend --compress --stdexcludes --dumpdir $template_cache_dir $veid";
+ exec($command);
+ exec("mv ".$template_cache_dir."vzdump-openvz-".$veid."*.tgz ".$template_cache_dir.$template_name.".tar.gz");
+ exec("rm -f ".$template_cache_dir."vzdump-openvz-".$veid."*.log");
+ }
+ $this->_actionDone($action['action_id'], 'ok');
/* this action takes so much time,
* we stop executing the actions not to waste more time */
return;
}
+
+
}
}
}
@@ -134,15 +172,18 @@
/*
* Do the update
*/
+ exec("aptitude update");
+ exec("aptitude safe-upgrade -y");
+
//TODO : change this when distribution information has been integrated into server record
if(file_exists('/etc/gentoo-release')) {
exec("glsa-check -f --nocolor affected");
}
else {
exec("aptitude update");
- exec("aptitude upgrade -y");
+ exec("aptitude safe-upgrade -y");
}
-
+
/*
* All well done!
*/
@@ -150,12 +191,12 @@
}
private function _doIspCUpdate($action) {
-
+
// Ensure that this code is not executed twice as this would cause a loop in case of a failure
$this->_actionDone($action['action_id'], 'ok');
-
+
/*
- * Get the version-number of the newest version
+ * Get the version-number of the newest version
*/
$new_version = @file_get_contents('http://www.ispconfig.org/downloads/ispconfig3_version.txt');
$new_version = trim($new_version);
@@ -171,10 +212,10 @@
/* delete the old files (if there are any...) */
exec("rm /tmp/ISPConfig-" . $new_version . ".tar.gz");
exec("rm /tmp/ispconfig3_install -R");
-
+
/* get the newest version */
exec("wget http://www.ispconfig.org/downloads/ISPConfig-" . $new_version . ".tar.gz");
-
+
/* extract the files */
exec("tar xvfz ISPConfig-" . $new_version . ".tar.gz");
@@ -184,7 +225,7 @@
*/
chdir("/tmp/ispconfig3_install/install");
exec("touch autoupdate");
-
+
/*
* do some clean-up
*/
@@ -200,5 +241,7 @@
*/
//$this->_actionDone($action['action_id'], 'ok');
}
+
}
-?>
\ No newline at end of file
+
+?>
--
Gitblit v1.9.1