unique IP filter list

This commit is contained in:
Stefan Kalscheuer 2021-05-25 12:08:00 +02:00
parent da6cde00cf
commit 633da4086d
Signed by: stefan
GPG Key ID: 3887EC2A53B55430
2 changed files with 25 additions and 20 deletions

View File

@ -657,7 +657,9 @@ class StatifyBlacklist_Settings extends StatifyBlacklist {
* @since 1.7.0 moved from StatifyBlacklist_Admin to StatifyBlacklist_Settings.
*/
private static function sanitize_ips( $ips ) {
return array_filter(
return array_values(
array_unique(
array_filter(
array_map( 'strtolower', $ips ),
function ( $ip ) {
return preg_match(
@ -675,6 +677,8 @@ class StatifyBlacklist_Settings extends StatifyBlacklist {
$ip
);
}
)
)
);
}

View File

@ -151,7 +151,7 @@ class StatifyBlacklist_Settings_Test extends PHPUnit\Framework\TestCase {
),
'ip' => array(
'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(
'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::/64',
'fe80::7645:6de2:ff:1',
'2001:db8:a0b:12f0::',
'::ffff:192.0.2.123',
);
$invalid = array(
@ -266,7 +267,7 @@ class StatifyBlacklist_Settings_Test extends PHPUnit\Framework\TestCase {
'fe80::7645:6de2:ff:1',
'::ffff:192.0.2.123',
),
array_values( $result )
$result
);
}