Server IP : 172.67.158.161 / Your IP : 3.145.91.196 Web Server : LiteSpeed System : Linux business53.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64 User : giankuin ( 1871) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/giankuin/dietcontrungnhanh.com/wp-content/plugins/ithemes-security-pro/core/modules/firewall/ |
Upload File : |
<?php namespace iThemesSecurity\Modules\Firewall; use iThemesSecurity\Modules\Firewall\Rules\Loader; use iThemesSecurity\Strauss\Patchstack\Extensions\ExtensionInterface; use iThemesSecurity\Strauss\Patchstack\Processor; class Processor_Factory { /** @var ExtensionInterface */ private $extension; /** @var Loader */ private $rules; public function __construct( ExtensionInterface $extension, Loader $rules ) { $this->extension = $extension; $this->rules = $rules; } /** * Makes a new Firewall Processor. * * @param bool $loading_early True if this Processor will be used to process rules early, * before other plugins have run. * * @return Processor */ public function make( bool $loading_early ): Processor { $blockRules = $allowRules = []; foreach ( $this->rules->load_rules() as $rule ) { if ( $rule['type'] === 'WHITELIST' ) { $allowRules[] = $rule; } else { $blockRules[] = $rule; } } return new Processor( $this->extension, $blockRules, $allowRules, [ 'mustUsePluginCall' => $loading_early, 'autoblockTime' => \ITSEC_Modules::get_setting( 'global', 'lockout_period' ), 'autoblockMinutes' => \ITSEC_Modules::get_setting( 'firewall', 'check_period' ), 'autoblockAttempts' => \ITSEC_Modules::get_setting( 'firewall', 'max_attempts_host' ), ] ); } }