aboutsummaryrefslogtreecommitdiffstats
path: root/config/filer
diff options
context:
space:
mode:
authordoktornotor <notordoktor@gmail.com>2015-11-06 09:19:40 +0100
committerdoktornotor <notordoktor@gmail.com>2015-11-06 09:19:40 +0100
commit8149fea217bbb498bd9a3b945ca6e9d269eb17cf (patch)
treebd9338526c5383d789e39d9febcfdcefa7da356e /config/filer
parenteaa16591e9f3e8b69b28a1850bc364b98257a829 (diff)
downloadpfsense-packages-8149fea217bbb498bd9a3b945ca6e9d269eb17cf.tar.gz
pfsense-packages-8149fea217bbb498bd9a3b945ca6e9d269eb17cf.tar.bz2
pfsense-packages-8149fea217bbb498bd9a3b945ca6e9d269eb17cf.zip
XMLRPC sync fixes and improvements
- Add CARP/HA sync option - Add enable/disable checkbox per replication target - Add protocol/port selection - Add timeout setting - Fix literal IPv6 handling for sync targets - Do settings validation and only try to sync when configuration is valid
Diffstat (limited to 'config/filer')
-rw-r--r--config/filer/filer_sync.xml112
1 files changed, 79 insertions, 33 deletions
diff --git a/config/filer/filer_sync.xml b/config/filer/filer_sync.xml
index 0b4124ce..1e3614d0 100644
--- a/config/filer/filer_sync.xml
+++ b/config/filer/filer_sync.xml
@@ -44,7 +44,7 @@
]]>
</copyright>
<name>filersync</name>
- <version>1.2</version>
+ <version>0.60.6</version>
<title>Filer: Sync</title>
<include_file>/usr/local/pkg/filer.inc</include_file>
<tabs>
@@ -61,50 +61,96 @@
<fields>
<field>
<type>listtopic</type>
- <fieldname>temp</fieldname>
- <name>Enable Filer configuration sync</name>
+ <name>XMLRPC Sync</name>
</field>
<field>
- <fielddescr>Automatically sync Filer configuration changes.</fielddescr>
+ <fielddescr>Enable Sync</fielddescr>
<fieldname>synconchanges</fieldname>
- <description>pfSense will automatically sync changes to the hosts defined below. (Leave blank to use 'admin'.)</description>
- <type>checkbox</type>
+ <description>
+ <![CDATA[
+ Select a sync method for Filer.<br/><br/>
+ <strong>Important:</strong> While using "Sync to host(s) defined below", only sync from host A to B, A to C but <strong>do not</strong> enable XMLRPC sync <b>to</b> A.
+ This will result in a loop!
+ ]]>
+ </description>
+ <type>select</type>
+ <required/>
+ <default_value>disabled</default_value>
+ <options>
+ <option><name>Sync to configured system backup server</name><value>auto</value></option>
+ <option><name>Sync to host(s) defined below</name><value>manual</value></option>
+ <option><name>Do not sync this package configuration</name><value>disabled</value></option>
+ </options>
</field>
<field>
- <fielddescr>Remote Servers</fielddescr>
+ <fielddescr>Sync Timeout</fielddescr>
+ <fieldname>synctimeout</fieldname>
+ <description>XMLRPC timeout in seconds.</description>
+ <type>select</type>
+ <required/>
+ <default_value>250</default_value>
+ <options>
+ <option><name>250 seconds (Default)</name><value>250</value></option>
+ <option><name>120 seconds</name><value>120</value></option>
+ <option><name>90 seconds</name><value>90</value></option>
+ <option><name>60 seconds</name><value>60</value></option>
+ <option><name>30 seconds</name><value>30</value></option>
+ </options>
+ </field>
+ <field>
+ <fielddescr>Replication Targets</fielddescr>
<fieldname>none</fieldname>
<type>rowhelper</type>
<rowhelper>
- <rowhelperfield>
- <fielddescr>IP Address</fielddescr>
- <fieldname>ipaddress</fieldname>
- <description>IP Address of remote server.</description>
- <type>input</type>
- <size>20</size>
- <required/>
- </rowhelperfield>
- <rowhelperfield>
- <fielddescr>User Name</fielddescr>
- <fieldname>username</fieldname>
- <description>user name of remote server.</description>
- <type>input</type>
- <size>20</size>
- </rowhelperfield>
- <rowhelperfield>
- <fielddescr>Password</fielddescr>
- <fieldname>password</fieldname>
- <description>Password for remote server.</description>
- <type>password</type>
- <size>20</size>
- <required/>
- </rowhelperfield>
+ <rowhelperfield>
+ <fielddescr>Enable</fielddescr>
+ <fieldname>syncdestinenable</fieldname>
+ <description><![CDATA[Enable this host as a replication target]]></description>
+ <type>checkbox</type>
+ </rowhelperfield>
+ <rowhelperfield>
+ <fielddescr>Protocol</fielddescr>
+ <fieldname>syncprotocol</fieldname>
+ <description><![CDATA[Choose the protocol used to sync with the destination host (HTTP or HTTPS).]]></description>
+ <type>select</type>
+ <default_value>HTTP</default_value>
+ <options>
+ <option><name>HTTP</name><value>http</value></option>
+ <option><name>HTTPS</name><value>https</value></option>
+ </options>
+ </rowhelperfield>
+ <rowhelperfield>
+ <fielddescr>IP Address/Hostname</fielddescr>
+ <fieldname>ipaddress</fieldname>
+ <description><![CDATA[IP address or hostname of the destination host.]]></description>
+ <type>input</type>
+ <size>40</size>
+ </rowhelperfield>
+ <rowhelperfield>
+ <fielddescr>Port</fielddescr>
+ <fieldname>syncport</fieldname>
+ <description><![CDATA[Choose the sync port of the destination host.]]></description>
+ <type>input</type>
+ <size>3</size>
+ </rowhelperfield>
+ <rowhelperfield>
+ <fielddescr>Username (admin)</fielddescr>
+ <fieldname>username</fieldname>
+ <description><![CDATA[Enter the username account for administration.]]></description>
+ <type>input</type>
+ <size>20</size>
+ </rowhelperfield>
+ <rowhelperfield>
+ <fielddescr>Admin Password</fielddescr>
+ <fieldname>password</fieldname>
+ <description><![CDATA[Password of the user "admin" on the destination host.]]></description>
+ <type>password</type>
+ <size>20</size>
+ </rowhelperfield>
</rowhelper>
</field>
</fields>
<custom_php_resync_config_command>
filer_sync_on_changes();
</custom_php_resync_config_command>
- <custom_php_command_before_form>
- unset($_POST['temp']);
- </custom_php_command_before_form>
</packagegui>