]> git.p6c8.net - jirafeau.git/commitdiff
[FEATURE] Add check ip_nopassword in challenge_upload function
authorMatthieu Schneider <matthieu.schneider@gulfsat.mg>
Tue, 31 Oct 2017 13:43:37 +0000 (16:43 +0300)
committerJérôme Jutteau <jerome.jutteau@outscale.com>
Thu, 5 Sep 2019 21:35:39 +0000 (23:35 +0200)
lib/functions.php

index cf6b913c53e5ec1fd50049210de158f45aa0e17e..2817aa1e241b543ab782dc20ed7669e3172182c5 100644 (file)
@@ -1108,6 +1108,21 @@ function jirafeau_challenge_upload ($cfg, $ip, $password)
         return true;
     }
 
         return true;
     }
 
+    // Allow if ip is in array (no password)
+    foreach ($cfg['upload_ip_nopassword'] as $i) {
+        if ($i == $ip) {
+            return true;
+        }
+        // CIDR test for IPv4 only.
+        if (strpos ($i, '/') !== false)
+        {
+            list ($subnet, $mask) = explode('/', $i);
+            if ((ip2long ($ip) & ~((1 << (32 - $mask)) - 1) ) == ip2long ($subnet)) {
+                return true;
+            }
+        }
+    }
+
     // Allow if ip is in array
     foreach ($cfg['upload_ip'] as $i) {
         if ($i == $ip) {
     // Allow if ip is in array
     foreach ($cfg['upload_ip'] as $i) {
         if ($i == $ip) {

patrick-canterino.de