From 25b07f8913c04febbe0232ab14c07aa5f4474767 Mon Sep 17 00:00:00 2001
From: Monviech <79600909+Monviech@users.noreply.github.com>
Date: Fri, 21 Mar 2025 08:19:13 +0100
Subject: [PATCH] net/frr: Add BGP allowas-in (#4610)
---
net/frr/pkg-descr | 1 +
.../Quagga/forms/dialogEditBGPNeighbor.xml | 9 +++++++++
.../mvc/app/models/OPNsense/Quagga/BGP.xml | 15 +++++++++++++++
.../service/templates/OPNsense/Quagga/bgpd.conf | 3 +++
4 files changed, 28 insertions(+)
diff --git a/net/frr/pkg-descr b/net/frr/pkg-descr
index aa57d45c4..1ade2ccc6 100644
--- a/net/frr/pkg-descr
+++ b/net/frr/pkg-descr
@@ -14,6 +14,7 @@ Plugin Changelog
1.44
+* Add BGP allowas-in (opnsense/plugins/issues/4586)
* Add route-map functionality to route redistribution in bgp (opnsense/plugins/issues/4570)
* Add route-map functionality to route redistribution in ospf/ospf6 (opnsense/plugins/issues/4580)
* Add BGP remote-as internal and external (opnsense/plugins/issues/4609)
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 d2a91df99..501c6d878 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
@@ -217,6 +217,15 @@
false
+
+ neighbor.allowas_in
+
+ dropdown
+ Accept incoming routes with AS path containing AS number with the same value as the current system AS.
+
+ false
+
+
neighbor.disable_connected_check
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 108c85714..2d9095972 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
@@ -143,6 +143,21 @@
0
N
+
+
+ 1
+ 2
+ 3
+ 4
+ 5
+ 6
+ 7
+ 8
+ 9
+ 10
+ origin
+
+
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 97657e2d8..ba1faa37c 100644
--- a/net/frr/src/opnsense/service/templates/OPNsense/Quagga/bgpd.conf
+++ b/net/frr/src/opnsense/service/templates/OPNsense/Quagga/bgpd.conf
@@ -176,6 +176,9 @@ router bgp {{ OPNsense.quagga.bgp.asnumber }}
{% if 'asoverride' in neighbor and neighbor.asoverride == '1' %}
neighbor {{ neighbor.address }} as-override
{% endif %}
+{% if 'allowas_in' in neighbor and neighbor.allowas_in %}
+ neighbor {{ neighbor.address }} allowas-in {{ neighbor.allowas_in }}
+{% endif %}
{% if neighbor.linkedPrefixlistIn|default("") != "" %}
{% for prefixlist in neighbor.linkedPrefixlistIn.split(",") %}
{% set prefixlist2_data = helpers.getUUID(prefixlist) %}