X-Git-Url: https://git.p6c8.net/jirafeau.git/blobdiff_plain/3d9792a36b5bb18d24216eea4b0ad402358db997..6b52bb03e76ab87c5dac34d986d1c5515cdba26d:/script.php?ds=sidebyside

diff --git a/script.php b/script.php
index 1d420b6..19f14a8 100755
--- a/script.php
+++ b/script.php
@@ -36,7 +36,9 @@ require (JIRAFEAU_ROOT . 'lib/lang.php');
 /* Operations may take a long time.
  * Be sure PHP's safe mode is off.
  */
- set_time_limit(0);
+@set_time_limit(0);
+/* Remove errors. */
+@error_reporting(0);
 
 if ($_SERVER['REQUEST_METHOD'] == "GET" && count ($_GET) == 0)
 {
@@ -261,6 +263,12 @@ if (has_error ())
 if (isset ($_FILES['file']) && is_writable (VAR_FILES)
     && is_writable (VAR_LINKS))
 {
+    if (strlen ($cfg['upload_password']) > 0 && (!isset ($_POST['upload_password']) || $_POST['upload_password'] != $cfg['upload_password']))
+    {
+        echo "Error";
+        exit;
+    }
+
     $key = '';
     if (isset ($_POST['key']))
         $key = $_POST['key'];
@@ -521,6 +529,12 @@ fi
 /* Initialize an asynchronous upload. */
 elseif (isset ($_GET['init_async']))
 {
+    if (strlen ($cfg['upload_password']) > 0 && (!isset ($_POST['upload_password']) || $_POST['upload_password'] != $cfg['upload_password']))
+    {
+        echo "Error";
+        exit;
+    }
+
     if (!isset ($_POST['filename']))
     {
         echo "Error";
@@ -589,6 +603,12 @@ elseif (isset ($_GET['end_async']))
 /* Initialize block. */
 elseif (isset ($_GET['init_block']) && $cfg['enable_blocks'])
 {
+    if (strlen ($cfg['upload_password']) > 0 && (!isset ($_POST['upload_password']) || $_POST['upload_password'] != $cfg['upload_password']))
+    {
+        echo "Error";
+        exit;
+    }
+
     if (!isset ($_POST['size']))
         echo "Error";
     else