From a140582300b7b66bee242d7801f4d6767d14909d Mon Sep 17 00:00:00 2001 From: Michael Date: Sun, 1 Dec 2019 09:58:03 +0100 Subject: [PATCH] net/frr: fix route-maps with ipv6 prefix-lists (#1599) * Update pkg-descr * Update Makefile * Update bgpd.conf --- net/frr/Makefile | 2 +- net/frr/pkg-descr | 4 ++++ .../opnsense/service/templates/OPNsense/Quagga/bgpd.conf | 8 +++++--- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/net/frr/Makefile b/net/frr/Makefile index 84b541f4b..782c045e7 100644 --- a/net/frr/Makefile +++ b/net/frr/Makefile @@ -1,5 +1,5 @@ PLUGIN_NAME= frr -PLUGIN_VERSION= 1.12 +PLUGIN_VERSION= 1.13 PLUGIN_COMMENT= The FRRouting Protocol Suite PLUGIN_DEPENDS= frr6 ruby PLUGIN_MAINTAINER= franz.fabian.94@gmail.com diff --git a/net/frr/pkg-descr b/net/frr/pkg-descr index 8779f99c1..8bc4814a6 100644 --- a/net/frr/pkg-descr +++ b/net/frr/pkg-descr @@ -11,6 +11,10 @@ switching and routing, Internet access routers, and Internet peering. Plugin Changelog ================ +1.13 + +* Fix wrong match statement for IPv6 route-maps + 1.12 * Add passive-interface to OSPFv3 (by Michael Muenz) 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 09f722669..da858e7c8 100644 --- a/net/frr/src/opnsense/service/templates/OPNsense/Quagga/bgpd.conf +++ b/net/frr/src/opnsense/service/templates/OPNsense/Quagga/bgpd.conf @@ -191,18 +191,20 @@ route-map {{ routemap.name }} {{ routemap.action }} {{ routemap.id }} {% endif %} {% endfor %} {% endif %} -{% if routemap.set != '' %} +{% if routemap.set|default("") != '' and routemap.match|default("") != '' %} set {{ routemap.set }} {% endif %} {% if routemap.match2|default("") != "" %} {% for prefixlist in routemap.match2.split(",") %} {% set prefixlist_data = helpers.getUUID(prefixlist) %} -{% if 'match2' in routemap and routemap.match2 != '' %} +{% if 'match2' in routemap and routemap.match2 != '' and ':' in prefixlist_data.network %} + match ipv6 address prefix-list {{ prefixlist_data.name }} +{% else %} match ip address prefix-list {{ prefixlist_data.name }} {% endif %} {% endfor %} {% endif %} -{% if routemap.set != '' %} +{% if routemap.set|default("") != '' and routemap.match2|default("") != '' %} set {{ routemap.set }} {% endif %} {% endif %}