index.php 804 B

1234567891011121314151617181920212223242526272829303132333435363738
  1. <?php
  2. use function Hestiacp\quoteshellarg\quoteshellarg;
  3. ob_start();
  4. // Main include
  5. include($_SERVER['DOCUMENT_ROOT']."/inc/main.php");
  6. // Check token
  7. verify_csrf($_POST);
  8. // Check user
  9. if ($_SESSION['userContext'] != 'admin') {
  10. header("Location: /list/user");
  11. exit;
  12. }
  13. $rule = $_POST['rule'];
  14. $action = $_POST['action'];
  15. switch ($action) {
  16. case 'delete': $cmd='v-delete-firewall-rule';
  17. break;
  18. case 'suspend': $cmd='v-suspend-firewall-rule';
  19. break;
  20. case 'unsuspend': $cmd='v-unsuspend-firewall-rule';
  21. break;
  22. default: header("Location: /list/firewall/"); exit;
  23. }
  24. foreach ($rule as $value) {
  25. $value = quoteshellarg($value);
  26. exec(HESTIA_CMD.$cmd." ".$value, $output, $return_var);
  27. $restart = 'yes';
  28. }
  29. header("Location: /list/firewall/");