function net_match($network, $ip) {
// determines if a network in the form of 192.168.17.1/16 or
// 127.0.0.1/255.255.255.255 or 10.0.0.1 matches a given ip
$ip_arr = explode('/', $network);
$network_long = ip2long($ip_arr[0]);
$x = ip2long($ip_arr[1]);
$mask = long2ip($x) == $ip_arr[1] ? $x : 0xffffffff << (32 - $ip_arr[1]);
$ip_long = ip2long($ip);
// echo ">".$ip_arr[1]."> ".decbin($mask)."\n";
return ($ip_long & $mask) == ($network_long & $mask);
}
function is_trusted_ip() {
$networks = file('mods/mod_trusted/networks.txt');
foreach ($networks as $net)
{
if ( net_match($net, $_SERVER['REMOTE_ADDR'] ) )
return true;
}
return false;
}
function get_restricted_words()
{
return file('mods/mod_trusted/words.txt');
}
$r_topics = file('mods/mod_trusted/topics.txt');
$r_words = file('mods/mod_trusted/words.txt');
if( !is_trusted_ip() )
{
file_put_contents('mods/mod_trusted/untrusted.log', date('Y-m-d H:i:s') . ' ' . $_SERVER['REMOTE_ADDR'] . "\n", FILE_APPEND);
// if ( in_array ((int)$_GET['t'], $r_topics) )
// bb_die('Данная раздача закрыта по просьбе правообладателя.');
foreach($r_words as $stop_word)
{
if( strstr($t_data['topic_title'], $stop_word) !== false)
bb_die('Тема, которую вы запросили, была удалена.');
}
}
?>
DonTracker.ru
Информация |
Вы не можете просматривать или скачивать файлы |
|