diff --git a/plist b/plist index 3ffd4bac6..0d40b64f6 100644 --- a/plist +++ b/plist @@ -127,6 +127,7 @@ /usr/local/etc/rc.reload_interfaces /usr/local/etc/rc.resolv_conf_generate /usr/local/etc/rc.restart_webgui +/usr/local/etc/rc.routing_configure /usr/local/etc/rc.shutdown /usr/local/etc/rc.sshd /usr/local/etc/rc.subr.d/crashdump diff --git a/src/etc/rc.routing_configure b/src/etc/rc.routing_configure new file mode 100755 index 000000000..b7612dc12 --- /dev/null +++ b/src/etc/rc.routing_configure @@ -0,0 +1,39 @@ +#!/usr/local/bin/php + + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions are met: + * + * 1. Redistributions of source code must retain the above copyright notice, + * this list of conditions and the following disclaimer. + * + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, + * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + * AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE + * AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, + * OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ + +require_once 'config.inc'; +require_once 'util.inc'; +require_once 'system.inc'; +require_once 'interfaces.inc'; +require_once 'filter.inc'; +require_once 'rrd.inc'; + +system_routing_configure('', true); +filter_configure_sync(true); +setup_gateways_monitor(true); diff --git a/src/opnsense/service/conf/actions.d/actions_interface.conf b/src/opnsense/service/conf/actions.d/actions_interface.conf index 7968f5d71..47ab9326b 100644 --- a/src/opnsense/service/conf/actions.d/actions_interface.conf +++ b/src/opnsense/service/conf/actions.d/actions_interface.conf @@ -90,6 +90,11 @@ parameters:%s %s type:script_output message:delete static route %s on %s +[routes.configure] +command: /usr/local/etc/rc.routing_configure +message: Reconfiguring routing +type: script + [gateways.list] command:/usr/local/opnsense/scripts/routes/routes_wrapper list type:script_output