diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/etc/inc/xmlrpc_client.inc | 3 | ||||
-rwxr-xr-x | src/etc/rc.filter_synchronize | 7 |
2 files changed, 7 insertions, 3 deletions
diff --git a/src/etc/inc/xmlrpc_client.inc b/src/etc/inc/xmlrpc_client.inc index 26a93be..962265d 100644 --- a/src/etc/inc/xmlrpc_client.inc +++ b/src/etc/inc/xmlrpc_client.inc @@ -111,7 +111,8 @@ class pfsense_xmlrpc_client { if ($previouserror == null) { // CurlException doesnt get filled with PreviousError, // however we dont want to show the stacktrace included in the 'message' to non sysadmin users - $this->error = "CurlException calling XMLRPC method {$method} #" . $e->getMessage(); + preg_match("/HTTP_Request2_ConnectionException: (.*) in \/.*/", $e->getMessage(), $errormsg); + $this->error = "A communications error occurred while attempting to call XMLRPC method {$method}: " . $errormsg[1]; } else { $this->error = "CurlException calling XMLRPC method {$method} #" . $previouserror->getMessage(); } diff --git a/src/etc/rc.filter_synchronize b/src/etc/rc.filter_synchronize index a6f6aa7..2eb9d6c 100755 --- a/src/etc/rc.filter_synchronize +++ b/src/etc/rc.filter_synchronize @@ -96,8 +96,11 @@ function carp_check_version() { $resp = $rpc_client->xmlrpc_method('host_firmware_version'); log_error(sprintf(gettext("XMLRPC versioncheck:").$resp['config_version'] ." -- ". $config['version'])); - if (!isset($resp['config_version']) || - ($resp['config_version'] != $config['version'])) { + if (!isset($resp['config_version'])) { + update_filter_reload_status("The {$g['product_name']} software configuration version of the other member could not be determined. Skipping synchronization to avoid causing a problem!"); + log_error("The {$g['product_name']} software configuration version of the other member could not be determined. Skipping synchronization to avoid causing a problem!"); + return false; + } elseif ($resp['config_version'] != $config['version']) { update_filter_reload_status("The other member is on a different configuration version of {$g['product_name']}. Sync will not be done to prevent problems!"); log_error("The other member is on a different configuration version of {$g['product_name']}. Sync will not be done to prevent problems!"); return false; |