diff --git a/net/frr/Makefile b/net/frr/Makefile
index 7f76d6b8a..2503cfe0a 100644
--- a/net/frr/Makefile
+++ b/net/frr/Makefile
@@ -1,6 +1,6 @@
PLUGIN_NAME= frr
PLUGIN_VERSION= 1.37
-PLUGIN_REVISION= 1
+PLUGIN_REVISION= 2
PLUGIN_COMMENT= The FRRouting Protocol Suite
PLUGIN_DEPENDS= frr8
PLUGIN_MAINTAINER= franz.fabian.94@gmail.com
diff --git a/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/forms/dialogEditBGPNeighbor.xml b/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/forms/dialogEditBGPNeighbor.xml
index b00c50480..4a30acbe7 100644
--- a/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/forms/dialogEditBGPNeighbor.xml
+++ b/net/frr/src/opnsense/mvc/app/controllers/OPNsense/Quagga/forms/dialogEditBGPNeighbor.xml
@@ -88,6 +88,12 @@
checkbox
+
+ neighbor.soft_reconfiguration_inbound
+
+ checkbox
+ This option allows changing policies without clearing the BGP session.
+
neighbor.bfd
diff --git a/net/frr/src/opnsense/mvc/app/models/OPNsense/Quagga/BGP.xml b/net/frr/src/opnsense/mvc/app/models/OPNsense/Quagga/BGP.xml
index c84a70943..63f305963 100644
--- a/net/frr/src/opnsense/mvc/app/models/OPNsense/Quagga/BGP.xml
+++ b/net/frr/src/opnsense/mvc/app/models/OPNsense/Quagga/BGP.xml
@@ -1,7 +1,7 @@
//OPNsense/quagga/bgp
BGP Routing configuration
- 1.0.7
+ 1.0.8
0
@@ -115,6 +115,10 @@
0
N
+
+ 0
+ N
+
0
N
diff --git a/net/frr/src/opnsense/service/templates/OPNsense/Quagga/bgpd.conf b/net/frr/src/opnsense/service/templates/OPNsense/Quagga/bgpd.conf
index 45ad88f64..0592986bc 100644
--- a/net/frr/src/opnsense/service/templates/OPNsense/Quagga/bgpd.conf
+++ b/net/frr/src/opnsense/service/templates/OPNsense/Quagga/bgpd.conf
@@ -110,7 +110,7 @@ router bgp {{ OPNsense.quagga.bgp.asnumber }}
network {{ network }}
{% endfor %}
{% for neighbor in neighbors[addressFamily] %}
- neighbor {{ neighbor.address }} activate
+ neighbor {{ neighbor.address }} activate
{% if 'nexthopself' in neighbor and neighbor.nexthopself == '1' %}
neighbor {{ neighbor.address }} next-hop-self {% if 'nexthopselfall' in neighbor and neighbor.nexthopselfall == '1' %}all{% endif %}
@@ -118,6 +118,9 @@ router bgp {{ OPNsense.quagga.bgp.asnumber }}
{% if 'rrclient' in neighbor and neighbor.rrclient == '1' %}
neighbor {{ neighbor.address }} route-reflector-client
{% endif %}
+{% if neighbor.soft_reconfiguration_inbound|default('0') == '1' %}
+ neighbor {{ neighbor.address }} soft-reconfiguration inbound
+{% endif %}
{% if 'defaultoriginate' in neighbor and neighbor.defaultoriginate == '1' %}
neighbor {{ neighbor.address }} default-originate
{% endif %}