unique IP filter list
This commit is contained in:
parent
da6cde00cf
commit
633da4086d
@ -657,7 +657,9 @@ class StatifyBlacklist_Settings extends StatifyBlacklist {
|
|||||||
* @since 1.7.0 moved from StatifyBlacklist_Admin to StatifyBlacklist_Settings.
|
* @since 1.7.0 moved from StatifyBlacklist_Admin to StatifyBlacklist_Settings.
|
||||||
*/
|
*/
|
||||||
private static function sanitize_ips( $ips ) {
|
private static function sanitize_ips( $ips ) {
|
||||||
return array_filter(
|
return array_values(
|
||||||
|
array_unique(
|
||||||
|
array_filter(
|
||||||
array_map( 'strtolower', $ips ),
|
array_map( 'strtolower', $ips ),
|
||||||
function ( $ip ) {
|
function ( $ip ) {
|
||||||
return preg_match(
|
return preg_match(
|
||||||
@ -675,6 +677,8 @@ class StatifyBlacklist_Settings extends StatifyBlacklist {
|
|||||||
$ip
|
$ip
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
)
|
||||||
|
)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -151,7 +151,7 @@ class StatifyBlacklist_Settings_Test extends PHPUnit\Framework\TestCase {
|
|||||||
),
|
),
|
||||||
'ip' => array(
|
'ip' => array(
|
||||||
'active' => '1',
|
'active' => '1',
|
||||||
'blacklist' => "127.0.0.1/8\r\nthisisnotanip",
|
'blacklist' => "127.0.0.1/8\r\nthisisnotanip\r\n127.0.0.1/8",
|
||||||
),
|
),
|
||||||
'ua' => array(
|
'ua' => array(
|
||||||
'blacklist' => 'MyBot/1.23',
|
'blacklist' => 'MyBot/1.23',
|
||||||
@ -240,6 +240,7 @@ class StatifyBlacklist_Settings_Test extends PHPUnit\Framework\TestCase {
|
|||||||
'2001:db8:a0b:12f0::1/128',
|
'2001:db8:a0b:12f0::1/128',
|
||||||
'2001:DB8:A0B:12F0::/64',
|
'2001:DB8:A0B:12F0::/64',
|
||||||
'fe80::7645:6de2:ff:1',
|
'fe80::7645:6de2:ff:1',
|
||||||
|
'2001:db8:a0b:12f0::',
|
||||||
'::ffff:192.0.2.123',
|
'::ffff:192.0.2.123',
|
||||||
);
|
);
|
||||||
$invalid = array(
|
$invalid = array(
|
||||||
@ -266,7 +267,7 @@ class StatifyBlacklist_Settings_Test extends PHPUnit\Framework\TestCase {
|
|||||||
'fe80::7645:6de2:ff:1',
|
'fe80::7645:6de2:ff:1',
|
||||||
'::ffff:192.0.2.123',
|
'::ffff:192.0.2.123',
|
||||||
),
|
),
|
||||||
array_values( $result )
|
$result
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user