From 5e22ef57600057615f14ac73c897008bfa6a3603 Mon Sep 17 00:00:00 2001 From: marcelloc Date: Thu, 27 Oct 2011 09:53:08 -0200 Subject: countryblock-dev moved to pf-blocker-dev --- config/pf-blocker/countryblock.php | 196 +++++++++++++++++++++++++++++++++++++ 1 file changed, 196 insertions(+) create mode 100644 config/pf-blocker/countryblock.php (limited to 'config/pf-blocker/countryblock.php') diff --git a/config/pf-blocker/countryblock.php b/config/pf-blocker/countryblock.php new file mode 100644 index 00000000..5d0f825a --- /dev/null +++ b/config/pf-blocker/countryblock.php @@ -0,0 +1,196 @@ +"; + print $return; +} + +if ($_REQUEST['cb']== 1){# and $_SERVER['REMOTE_ADDR']== '127.0.0.1'){ + get_networks(1); +} +if ($_REQUEST['cbw']== 1){# and $_SERVER['REMOTE_ADDR']== '127.0.0.1'){ + get_networks(2); +} + +function countryblock_get_countries(){ +$files= array ( "Africa" => "/usr/local/pkg/Africa_cidr.txt", + "Antartica" => "/usr/local/pkg/Antartica_cidr.txt", + "Asia" => "/usr/local/pkg/Asia_cidr.txt", + "Europe" => "/usr/local/pkg/Europe_cidr.txt", + "North America" => "/usr/local/pkg/North_America_cidr.txt", + "Oceania" => "/usr/local/pkg/Oceania_cidr.txt", + "South America"=>"/usr/local/pkg/South_America_cidr.txt"); +$cdir='/usr/local/pkg/countryblock'; +if (! is_dir($cdir)) + mkdir ($cdir,0755); +foreach ($files as $cont => $file){ + $ips=file_get_contents($file); + $convert = explode("\n", $ips); + print $cont."\n"; + $active= array("$cont" => ''); + $options=""; + $total=1; + foreach ($convert as $line){ + if (preg_match('/#(.*):\s+(.*)$/',$line,$matches)){ + if ($ISOCode <> "" && $ISOCode <> $matches[2] && preg_match("/ISO Code/",$line)){ + file_put_contents($cdir.'/'.$ISOCode.'.txt',${$ISOCode},LOCK_EX); + $total++; + } + ${preg_replace("/\s/","",$matches[1])}=$matches[2]; + } + else{ + if (${$ISOCode}==0){ + ${$ISOCode}++; + $options.= ''."\n"; + } + ${$ISOCode}.=$line."\n"; + } + } +#save last country networks +file_put_contents($cdir.'/'.$ISOCode.'.txt',${$ISOCode},LOCK_EX); +$cont_name= preg_replace("/ /","",$cont); +$cont_name_lower= strtolower($cont_name); +#file_put_contents($cdir.'/'.$cont_name.'.txt',$ips,LOCK_EX); +$xml= << + + + + + + + Describe your package here + Describe your package requirements here + Currently there are no FAQ items provided. + countryblock{$cont_name_lower} + 1.0.1 + Firewall: Countryblock + /usr/local/pkg/countryblock.inc + + Countryblock + Configure Countryblock +
Firewall
+ pkg_edit.php?xml=countryblock.xml&id=0 +
+ + countryblock + + + + General + /pkg_edit.php?xml=countryblock.xml&id=0 + + + Africa + /pkg_edit.php?xml=countryblock_Africa.xml&id=0 + {$active['Africa']} + + + Antartica + /pkg_edit.php?xml=countryblock_Antartica.xml&id=0 + {$active['Antartica']} + + + Asia + /pkg_edit.php?xml=countryblock_Asia.xml&id=0 + {$active['Asia']} + + + Europe + /pkg_edit.php?xml=countryblock_Europe.xml&id=0 + {$active['Europe']} + + + North America + /pkg_edit.php?xml=countryblock_NorthAmerica.xml&id=0 + {$active['North America']} + + + Oceania + /pkg_edit.php?xml=countryblock_Oceania.xml&id=0 + {$active['Oceania']} + + + South America + /pkg_edit.php?xml=countryblock_SouthAmerica.xml&id=0 + {$active['South America']} + + + XMLRPC Sync + /pkg_edit.php?xml=countryblock_sync.xml&id=0 + + + + + Continent {$cont} + listtopic + + + Countries + countries + + + + select + + {$options} + + {$total} + + + + countryblock_php_install_command(); + + + countryblock_php_deinstall_command(); + + + countryblock_validate_input(\$_POST, &\$input_errors); + + + sync_package_countryblock(); + +
+EOF; + file_put_contents('/usr/local/pkg/countryblock_'.$cont_name.'.xml',$xml,LOCK_EX); + +} + +} +?> \ No newline at end of file -- cgit v1.2.3