aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPhil Davis <phil.davis@world.inf.org>2012-08-22 12:43:30 +0545
committerPhil Davis <phil.davis@world.inf.org>2012-08-22 12:43:30 +0545
commit9c886d11858e0e82e65f4de02662b6e4c076ca51 (patch)
treea1f0c98115b3a069e97d2688b1c9cca2f08a2a31
parent88dc86b81ec08aaca38dd4f8a7c4f46c8ecf5502 (diff)
downloadpfsense-packages-9c886d11858e0e82e65f4de02662b6e4c076ca51.tar.gz
pfsense-packages-9c886d11858e0e82e65f4de02662b6e4c076ca51.tar.bz2
pfsense-packages-9c886d11858e0e82e65f4de02662b6e4c076ca51.zip
Fix Ipguard initial setup PHP warnings
Add some checks that ipguard.sh exists - before anything is setup in the GUI it does not exist. Improve the test for doing the XMLRPC sync - it was trying to do this even if there was nothing setup at all.
-rw-r--r--config/ipguard/ipguard.inc37
1 files changed, 19 insertions, 18 deletions
diff --git a/config/ipguard/ipguard.inc b/config/ipguard/ipguard.inc
index 052f6f31..1891b24b 100644
--- a/config/ipguard/ipguard.inc
+++ b/config/ipguard/ipguard.inc
@@ -44,7 +44,9 @@ function ipguard_custom_php_deinstall_command(){
conf_mount_rw();
stop_service('ipguard');
- chmod("/usr/local/etc/rc.d/ipguard.sh",0444);
+ $ipguard_sh_file = "/usr/local/etc/rc.d/ipguard.sh";
+ if (is_file($ipguard_sh_file))
+ chmod($ipguard_sh_file,0444);
conf_mount_ro();
}
@@ -60,9 +62,6 @@ function ipguard_custom_php_write_config(){
if (is_array($config['installedpackages']['ipguard']['config'])){
- // Mount Read-write
- conf_mount_rw();
-
// Read config
$new_config=array();
foreach ($config['installedpackages']['ipguard']['config'] as $ipguard){
@@ -96,7 +95,9 @@ function ipguard_custom_php_write_config(){
else{
#remove config files
stop_service('ipguard');
- chmod("/usr/local/etc/rc.d/ipguard.sh",0444);
+ $ipguard_sh_file = "/usr/local/etc/rc.d/ipguard.sh";
+ if (is_file($ipguard_sh_file))
+ chmod($ipguard_sh_file,0444);
}
// Mount Read-only
conf_mount_ro();
@@ -109,20 +110,20 @@ function ipguard_custom_php_write_config(){
function ipguard_sync_on_changes() {
global $config, $g;
- if (is_array($config['installedpackages']['ipguardsync']))
- if (!$config['installedpackages']['ipguardsync']['config'][0]['synconchanges'])
- return;
-
- log_error("[ipguard] xmlrpc sync is starting.");
- foreach ($config['installedpackages']['ipguardsync']['config'] as $rs ){
- foreach($rs['row'] as $sh){
- $sync_to_ip = $sh['ipaddress'];
- $password = $sh['password'];
- if($password && $sync_to_ip)
- ipguard_do_xmlrpc_sync($sync_to_ip, $password);
+ if (is_array($config['installedpackages']['ipguardsync'])) {
+ if ($config['installedpackages']['ipguardsync']['config'][0]['synconchanges']) {
+ log_error("[ipguard] xmlrpc sync is starting.");
+ foreach ($config['installedpackages']['ipguardsync']['config'] as $rs ){
+ foreach($rs['row'] as $sh){
+ $sync_to_ip = $sh['ipaddress'];
+ $password = $sh['password'];
+ if($password && $sync_to_ip)
+ ipguard_do_xmlrpc_sync($sync_to_ip, $password);
+ }
}
+ log_error("[ipguard] xmlrpc sync is ending.");
+ }
}
- log_error("[ipguard] xmlrpc sync is ending.");
}
/* Do the actual XMLRPC sync */
@@ -185,7 +186,7 @@ function ipguard_do_xmlrpc_sync($sync_to_ip, $password) {
log_error("ipguard XMLRPC sync successfully completed with {$url}:{$port}.");
}
- /* tell ipguard to reload our settings on the destionation sync host. */
+ /* tell ipguard to reload our settings on the destination sync host. */
$method = 'pfsense.exec_php';
$execcmd = "require_once('/usr/local/pkg/ipguard.inc');\n";
$execcmd .= "ipguard_custom_php_write_config();";