MDL-29396 core: ip blocking will be bypassed for cli scripts - Thanks Petr
authorRajesh Taneja <rajesh@moodle.org>
Mon, 14 Nov 2011 02:09:10 +0000 (10:09 +0800)
committerRajesh Taneja <rajesh@moodle.org>
Tue, 22 Nov 2011 08:02:02 +0000 (16:02 +0800)
lib/setup.php

index 8f8a255..2b51b1b 100644 (file)
@@ -816,12 +816,14 @@ if (!empty($CFG->customscripts)) {
     }
 }
 
-// in the first case, ip in allowed list will be performed first
-// for example, client IP is 192.168.1.1
-// 192.168 subnet is an entry in allowed list
-// 192.168.1.1 is banned in blocked list
-// This ip will be banned finally
-if (!empty($CFG->allowbeforeblock)) { // allowed list processed before blocked list?
+if (CLI_SCRIPT and !defined('WEB_CRON_EMULATED_CLI') and !PHPUNIT_SCRIPT) {
+    // no ip blocking
+} else if (!empty($CFG->allowbeforeblock)) { // allowed list processed before blocked list?
+    // in this case, ip in allowed list will be performed first
+    // for example, client IP is 192.168.1.1
+    // 192.168 subnet is an entry in allowed list
+    // 192.168.1.1 is banned in blocked list
+    // This ip will be banned finally
     if (!empty($CFG->allowedip)) {
         if (!remoteip_in_list($CFG->allowedip)) {
             die(get_string('ipblocked', 'admin'));