diff --git a/net/quagga/src/opnsense/scripts/quagga/setup.sh b/net/quagga/src/opnsense/scripts/quagga/setup.sh new file mode 100755 index 000000000..4499cd3cc --- /dev/null +++ b/net/quagga/src/opnsense/scripts/quagga/setup.sh @@ -0,0 +1,13 @@ +#!/bin/sh + +user=quagga +group=quagga + +mkdir -p /var/run/quagga +chown $user:$group /var/run/quagga +chmod 750 /var/run/quagga + +mkdir -p /usr/local/etc/quagga +chown $user:$group /usr/local/etc/quagga +chmod 750 /usr/local/etc/quagga + diff --git a/net/quagga/src/opnsense/service/conf/actions.d/actions_quagga.conf b/net/quagga/src/opnsense/service/conf/actions.d/actions_quagga.conf index 3e0d2503e..28a91fb78 100644 --- a/net/quagga/src/opnsense/service/conf/actions.d/actions_quagga.conf +++ b/net/quagga/src/opnsense/service/conf/actions.d/actions_quagga.conf @@ -1,5 +1,5 @@ [start] -command:/usr/local/etc/rc.d/quagga start +command:/usr/local/opnsense/scripts/quagga/setup.sh;/usr/local/etc/rc.d/quagga start parameters: type:script message:starting quagga diff --git a/net/quagga/src/opnsense/service/templates/OPNsense/Quagga/quagga b/net/quagga/src/opnsense/service/templates/OPNsense/Quagga/quagga index 78f123e82..82b50dfb0 100644 --- a/net/quagga/src/opnsense/service/templates/OPNsense/Quagga/quagga +++ b/net/quagga/src/opnsense/service/templates/OPNsense/Quagga/quagga @@ -1,6 +1,10 @@ defaultrouter="NO" quagga_enable="{% if helpers.exists('OPNsense.quagga.general.enabled') and OPNsense.quagga.general.enabled == '1' %}YES{% else %}NO{% endif %}" +{% if helpers.exists('OPNsense.quagga.general.enabled') and OPNsense.quagga.general.enabled == '1' %} +quagga_opnsense_bootup_run="/usr/local/opnsense/scripts/quagga/setup.sh" +{% endif %} + quagga_daemons="zebra{% if helpers.exists('OPNsense.quagga.ospf.enabled') and OPNsense.quagga.ospf.enabled == '1' %} ospfd{% endif %}{% if helpers.exists('OPNsense.quagga.rip.enabled') and OPNsense.quagga.ripd.enabled == '1' %} ripd{% endif %}{%