pkgsrc-Changes archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
CVS commit: pkgsrc/net/frr
Module Name: pkgsrc
Committed By: kardel
Date: Mon May 16 11:54:20 UTC 2022
Modified Files:
pkgsrc/net/frr: Makefile PLIST distinfo
pkgsrc/net/frr/patches: patch-zebra_kernel__socket.c
Added Files:
pkgsrc/net/frr/patches: patch-lib_frr__pthread.c
patch-pimd_pim__mroute.c patch-pimd_pim__sock.c
Log Message:
net/frr: Update to 8.2.2
Features 8.2.2 Release
BGP Long-lived graceful restart capability
(http://docs.frrouting.org/en/stable-8.2/bgp.html#long-lived-graceful-restart)
BGP Extended Optional Parameters Length for BGP OPEN Message
(http://docs.frrouting.org/en/stable-8.2/bgp.html#clicmd-neighbor-PEER-extended-optional-parameters)
BGP Extended BGP Administrative Shutdown Communication
IS-IS Link State Traffic Engineering support
(http://docs.frrouting.org/en/stable-8.2/isisd.html#traffic-engineering)
OSPFv3 Support for NSSA Type-7 address ranges
(http://docs.frrouting.org/en/stable-8.2/ospf6d.html#ospf6-area)
PBR VLAN actions support
(http://docs.frrouting.org/en/stable-8.2/pbr.html#pbr-maps)
Features 8.1 Release
Lua hooks are now feature complete, with one hook available for use
(http://docs.frrouting.org/en/latest/scripting.html)
Improvements to SRv6 (Segment Routing over IPv6)
(http://docs.frrouting.org/en/latest/zebra.html#segment-routing-ipv6)
Improvements to Prefix-SID (Type 5)
EVPN route type-5 gateway IP overlay Index
(http://docs.frrouting.org/en/latest/bgp.html#evpn-overlay-index-gateway-ip)
OSPFv3 NSSA and NSSA totally stub areas
(http://docs.frrouting.org/en/latest/ospf6d.html#ospf6-area)
OSPFv3 ASBR summarization
(http://docs.frrouting.org/en/latest/ospf6d.html#asbr-summarisation-support-in-ospfv3)
OSPFv3 Graceful Restart
(http://docs.frrouting.org/en/latest/ospf6d.html#graceful-restart)
OSPFv2 Graceful Restart (restarting mode added, helper was already implemented)
(http://docs.frrouting.org/en/latest/ospfd.html#graceful-restart)
Further release information: https://github.com/FRRouting/frr/releases/
To generate a diff of this commit:
cvs rdiff -u -r1.9 -r1.10 pkgsrc/net/frr/Makefile
cvs rdiff -u -r1.4 -r1.5 pkgsrc/net/frr/PLIST
cvs rdiff -u -r1.7 -r1.8 pkgsrc/net/frr/distinfo
cvs rdiff -u -r0 -r1.1 pkgsrc/net/frr/patches/patch-lib_frr__pthread.c \
pkgsrc/net/frr/patches/patch-pimd_pim__mroute.c \
pkgsrc/net/frr/patches/patch-pimd_pim__sock.c
cvs rdiff -u -r1.3 -r1.4 pkgsrc/net/frr/patches/patch-zebra_kernel__socket.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: pkgsrc/net/frr/Makefile
diff -u pkgsrc/net/frr/Makefile:1.9 pkgsrc/net/frr/Makefile:1.10
--- pkgsrc/net/frr/Makefile:1.9 Wed Sep 8 11:12:37 2021
+++ pkgsrc/net/frr/Makefile Mon May 16 11:54:19 2022
@@ -1,7 +1,7 @@
-# $NetBSD: Makefile,v 1.9 2021/09/08 11:12:37 kardel Exp $
+# $NetBSD: Makefile,v 1.10 2022/05/16 11:54:19 kardel Exp $
GITHUB_PROJECT= frr
-VERSION= 8.0.1
+VERSION= 8.2.2
GITHUB_TAG= frr-${VERSION}
DISTNAME= frr-${VERSION}
CATEGORIES= net
@@ -53,7 +53,7 @@ RCD_SCRIPT_SRC.${f}= ${WRKSRC}/pkgsrc/${
USE_TOOLS+= bash:run
REPLACE_BASH= tools/frr.in tools/*.sh.in
-REPLACE_PYTHON= tools/generate_support_bundle.py tools/frr-reload.py
+REPLACE_PYTHON= tools/generate_support_bundle.py tools/frr-reload.py tools/frr_babeltrace.py
MESSAGE_SUBST+= FRR_USER=${FRR_USER}
MESSAGE_SUBST+= FRR_VTY_GROUP=${FRR_VTY_GROUP}
@@ -90,7 +90,7 @@ CONFIGURE_ARGS+= --enable-fpm
CONFIGURE_ARGS+= --with-pkg-git-version
CONFIGURE_ARGS+= --with-pkg-extra-version=/${DISTNAME}
# CONFIGURE_ARGS+= --enable-address-sanitizer
-
+CONFIGURE_ARGS+= --enable-dev-build
pre-configure:
cd ${WRKSRC} && ${SH} bootstrap.sh
Index: pkgsrc/net/frr/PLIST
diff -u pkgsrc/net/frr/PLIST:1.4 pkgsrc/net/frr/PLIST:1.5
--- pkgsrc/net/frr/PLIST:1.4 Sun Aug 15 14:54:31 2021
+++ pkgsrc/net/frr/PLIST Mon May 16 11:54:19 2022
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.4 2021/08/15 14:54:31 kardel Exp $
+@comment $NetBSD: PLIST,v 1.5 2022/05/16 11:54:19 kardel Exp $
bin/mtracebis
bin/vtysh
include/frr/agg_table.h
@@ -92,6 +92,7 @@ include/frr/qobj.h
include/frr/queue.h
include/frr/resolver.h
include/frr/ringbuf.h
+include/frr/route_opaque.h
include/frr/route_types.h
include/frr/routemap.h
include/frr/routing_nb.h
@@ -134,6 +135,7 @@ include/frr/zlog.h
include/frr/zlog_targets.h
${PLIST.doc}info/frr.info
lib/frr/modules/bgpd_bmp.la
+lib/frr/modules/dplane_sample_plugin.la
lib/frr/modules/pathd_pcep.la
lib/frr/modules/zebra_fpm.la
lib/libfrr.la
@@ -164,6 +166,7 @@ sbin/fabricd
sbin/frr
sbin/frr-reload
sbin/frr-reload.py
+sbin/frr_babeltrace.py
sbin/frrcommon.sh
sbin/frrinit.sh
sbin/generate_support_bundle.py
@@ -192,6 +195,9 @@ ${PLIST.doc}share/doc/frr/html/_images/f
${PLIST.doc}share/doc/frr/html/_images/fig_dmvpn_topologies.png
${PLIST.doc}share/doc/frr/html/_images/fig_topologies_full.png
${PLIST.doc}share/doc/frr/html/_images/fig_topologies_rs.png
+${PLIST.doc}share/doc/frr/html/_images/pathd_config.png
+${PLIST.doc}share/doc/frr/html/_images/pathd_general.png
+${PLIST.doc}share/doc/frr/html/_images/pathd_initiated_multi.png
${PLIST.doc}share/doc/frr/html/_sources/babeld.rst.txt
${PLIST.doc}share/doc/frr/html/_sources/basic.rst.txt
${PLIST.doc}share/doc/frr/html/_sources/bfd.rst.txt
@@ -307,13 +313,14 @@ share/yang/frr-bgp.yang
share/yang/frr-deviations-bgp-datacenter.yang
share/yang/frr-eigrpd.yang
share/yang/frr-filter.yang
-share/yang/frr-igmp.yang
+share/yang/frr-gmp.yang
share/yang/frr-interface.yang
share/yang/frr-isisd.yang
share/yang/frr-module-translator.yang
share/yang/frr-nexthop.yang
share/yang/frr-ospf-route-map.yang
share/yang/frr-ospf6-route-map.yang
+share/yang/frr-ospfd.yang
share/yang/frr-pathd.yang
share/yang/frr-pim-rp.yang
share/yang/frr-pim.yang
Index: pkgsrc/net/frr/distinfo
diff -u pkgsrc/net/frr/distinfo:1.7 pkgsrc/net/frr/distinfo:1.8
--- pkgsrc/net/frr/distinfo:1.7 Tue Oct 26 11:05:37 2021
+++ pkgsrc/net/frr/distinfo Mon May 16 11:54:19 2022
@@ -1,8 +1,10 @@
-$NetBSD: distinfo,v 1.7 2021/10/26 11:05:37 nia Exp $
+$NetBSD: distinfo,v 1.8 2022/05/16 11:54:19 kardel Exp $
-BLAKE2s (frr-8.0.1.tar.gz) = d698d9521fc3051c48afb110f1c78cf74c94d5c625cf7a4d5ab7778421085920
-SHA512 (frr-8.0.1.tar.gz) = d9a9ee3b40bf0271779765447c67da817551b5bf2d5d1e9f8073fb4596c622e013fbf7316ca39087db7b7f478b18d07f1fd06f1778abde2734c83112573d5f8f
-Size (frr-8.0.1.tar.gz) = 8206852 bytes
-SHA1 (patch-lib_elf__py.c) = a766923c906f1b0f9fa80a9e16e5275bae165187
+BLAKE2s (frr-8.2.2.tar.gz) = e815bbd44cc9bf04031ed2aae259d863c11e8573bcfd6bb97b0b720f13a0f49e
+SHA512 (frr-8.2.2.tar.gz) = 52d8e82979823f61ec6f117db1eb41b23fd8ad3197ae3f9d2cfa3ad9d96636a3d2f0b36720b2041a9261c8b639ddd48e46a2351ce41cb596f7dc432cddf29256
+Size (frr-8.2.2.tar.gz) = 9439460 bytes
+SHA1 (patch-lib_frr__pthread.c) = 24d695d906e2d4461080d6cdcd82f473e6eee6d8
+SHA1 (patch-pimd_pim__mroute.c) = d0c306ba3fa400532978d18a220c283aae34c7f4
+SHA1 (patch-pimd_pim__sock.c) = 5c99f7671d35813eb1b2e76ef23fa049053b1141
SHA1 (patch-pkgsrc_zebra.sh.in) = d458e74a1f3319f6e075d3d3a81414bc7d7022f2
-SHA1 (patch-zebra_kernel__socket.c) = 845c3132d21aefcff5c41fa9aa9a31f2bf2ac5af
+SHA1 (patch-zebra_kernel__socket.c) = 74ef772fa70b69a1767ad11ce89d907504c7528e
Index: pkgsrc/net/frr/patches/patch-zebra_kernel__socket.c
diff -u pkgsrc/net/frr/patches/patch-zebra_kernel__socket.c:1.3 pkgsrc/net/frr/patches/patch-zebra_kernel__socket.c:1.4
--- pkgsrc/net/frr/patches/patch-zebra_kernel__socket.c:1.3 Sun Aug 15 14:54:31 2021
+++ pkgsrc/net/frr/patches/patch-zebra_kernel__socket.c Mon May 16 11:54:20 2022
@@ -1,4 +1,4 @@
-$NetBSD: patch-zebra_kernel__socket.c,v 1.3 2021/08/15 14:54:31 kardel Exp $
+$NetBSD: patch-zebra_kernel__socket.c,v 1.4 2022/05/16 11:54:20 kardel Exp $
Pass IFP interface index if known (normal case) to make
interface specific routes work such as in
@@ -10,7 +10,7 @@ $NetBSD: patch-zebra_kernel__socket.c,v
routing socket returns ENOBUFS. ensure at least a bit more
socket buffer space by increasing SO_RCVBUF.
---- zebra/kernel_socket.c.orig 2021-07-21 13:06:19.000000000 +0000
+--- zebra/kernel_socket.c.orig 2022-03-13 15:59:48.000000000 +0000
+++ zebra/kernel_socket.c
@@ -39,6 +39,7 @@
#include "privs.h"
@@ -20,7 +20,7 @@ $NetBSD: patch-zebra_kernel__socket.c,v
#include "zebra/rt.h"
#include "zebra/interface.h"
-@@ -1243,6 +1244,20 @@ int rtm_write(int message, union sockuni
+@@ -1249,6 +1250,20 @@ int rtm_write(int message, union sockuni
#ifdef __OpenBSD__
SOCKADDRSET(mpls, RTA_SRC);
#endif
@@ -41,7 +41,7 @@ $NetBSD: patch-zebra_kernel__socket.c,v
msg.rtm.rtm_msglen = pnt - (caddr_t)&msg;
-@@ -1425,6 +1440,9 @@ static void routing_socket(struct zebra_
+@@ -1434,6 +1449,9 @@ static void routing_socket(struct zebra_
return;
}
Added files:
Index: pkgsrc/net/frr/patches/patch-lib_frr__pthread.c
diff -u /dev/null pkgsrc/net/frr/patches/patch-lib_frr__pthread.c:1.1
--- /dev/null Mon May 16 11:54:20 2022
+++ pkgsrc/net/frr/patches/patch-lib_frr__pthread.c Mon May 16 11:54:20 2022
@@ -0,0 +1,15 @@
+$NetBSD: patch-lib_frr__pthread.c,v 1.1 2022/05/16 11:54:20 kardel Exp $
+
+ avoid tripping over NULL pointer
+
+--- lib/frr_pthread.c.orig 2022-03-13 15:59:48.000000000 +0000
++++ lib/frr_pthread.c
+@@ -141,7 +141,7 @@ int frr_pthread_set_name(struct frr_pthr
+ # ifdef GNU_LINUX
+ ret = pthread_setname_np(fpt->thread, fpt->os_name);
+ # elif defined(__NetBSD__)
+- ret = pthread_setname_np(fpt->thread, fpt->os_name, NULL);
++ ret = pthread_setname_np(fpt->thread, fpt->os_name ? fpt->os_name : "-n/a-", NULL);
+ # endif
+ #elif defined(HAVE_PTHREAD_SET_NAME_NP)
+ pthread_set_name_np(fpt->thread, fpt->os_name);
Index: pkgsrc/net/frr/patches/patch-pimd_pim__mroute.c
diff -u /dev/null pkgsrc/net/frr/patches/patch-pimd_pim__mroute.c:1.1
--- /dev/null Mon May 16 11:54:20 2022
+++ pkgsrc/net/frr/patches/patch-pimd_pim__mroute.c Mon May 16 11:54:20 2022
@@ -0,0 +1,33 @@
+$NetBSD: patch-pimd_pim__mroute.c,v 1.1 2022/05/16 11:54:20 kardel Exp $
+
+ Support HAVE_IP_RECVDSTADDR and HAVE_IP_RECVIF
+
+--- pimd/pim_mroute.c.orig 2021-03-04 02:14:50.000000000 +0000
++++ pimd/pim_mroute.c
+@@ -106,6 +106,26 @@ static int pim_mroute_set(struct pim_ins
+ }
+ }
+ #endif
++#if defined(HAVE_IP_RECVDSTADDR)
++ /* BSD IP_RECVDSTADDR */
++ data = 1;
++ if (setsockopt(pim->mroute_socket, IPPROTO_IP, IP_RECVDSTADDR, &data,
++ data_len)) {
++ zlog_warn(
++ "Could not set IP_RECVDSTADDR on socket fd=%d: errno=%d: %s",
++ pim->mroute_socket, errno, safe_strerror(errno));
++ }
++#endif
++#if defined(HAVE_IP_RECVIF)
++ /* BSD IP_RECVIF */
++ data = 1;
++ if (setsockopt(pim->mroute_socket, IPPROTO_IP, IP_RECVIF, &data,
++ data_len)) {
++ zlog_warn(
++ "Could not set IP_RECVIF on socket fd=%d: errno=%d: %s",
++ pim->mroute_socket, errno, safe_strerror(errno));
++ }
++#endif
+
+ setsockopt_so_recvbuf(pim->mroute_socket, 1024 * 1024 * 8);
+
Index: pkgsrc/net/frr/patches/patch-pimd_pim__sock.c
diff -u /dev/null pkgsrc/net/frr/patches/patch-pimd_pim__sock.c:1.1
--- /dev/null Mon May 16 11:54:20 2022
+++ pkgsrc/net/frr/patches/patch-pimd_pim__sock.c Mon May 16 11:54:20 2022
@@ -0,0 +1,120 @@
+$NetBSD: patch-pimd_pim__sock.c,v 1.1 2022/05/16 11:54:20 kardel Exp $
+
+ Support HAVE_STRUCT_IP_MREQN_IMR_IFINDEX and HAVE_IP_RECVIF
+
+--- pimd/pim_sock.c.orig 2022-03-13 15:59:48.000000000 +0000
++++ pimd/pim_sock.c
+@@ -27,7 +27,9 @@
+ #include <unistd.h>
+ #include <netdb.h>
+ #include <errno.h>
+-
++#ifdef __NetBSD__
++#include <net/if.h>
++#endif
+ #include "log.h"
+ #include "privs.h"
+ #include "if.h"
+@@ -97,11 +99,6 @@ int pim_socket_mcast(int protocol, struc
+ uint8_t loop)
+ {
+ int rcvbuf = 1024 * 1024 * 8;
+-#ifdef HAVE_STRUCT_IP_MREQN_IMR_IFINDEX
+- struct ip_mreqn mreq;
+-#else
+- struct ip_mreq mreq;
+-#endif
+ int fd;
+
+ fd = pim_socket_raw(protocol);
+@@ -146,6 +143,15 @@ int pim_socket_mcast(int protocol, struc
+ "Could not set IP_RECVDSTADDR on socket fd=%d: errno=%d: %s",
+ fd, errno, safe_strerror(errno));
+ }
++#elif defined(HAVE_IP_RECVIF)
++ /* BSD IP_RECVIF */
++ int opt = 1;
++ if (setsockopt(fd, IPPROTO_IP, IP_RECVIF, &opt,
++ sizeof(opt))) {
++ zlog_warn(
++ "Could not set IP_RECVDSTADDR on socket fd=%d: errno=%d: %s",
++ fd, errno, safe_strerror(errno));
++ }
+ #else
+ flog_err(
+ EC_LIB_DEVELOPMENT,
+@@ -208,23 +214,26 @@ int pim_socket_mcast(int protocol, struc
+ return PIM_SOCK_ERR_LOOP;
+ }
+
+- memset(&mreq, 0, sizeof(mreq));
++ {
+ #ifdef HAVE_STRUCT_IP_MREQN_IMR_IFINDEX
+- mreq.imr_ifindex = ifp->ifindex;
++ struct ip_mreqn mreq;
++
++ memset(&mreq, 0, sizeof(mreq));
++ mreq.imr_ifindex = ifp->ifindex;
++ if (setsockopt(fd, IPPROTO_IP, IP_MULTICAST_IF, (void *)&mreq,
++ sizeof(mreq)))
+ #else
+-/*
+- * I am not sure what to do here yet for *BSD
+- */
+-// mreq.imr_interface = ifindex;
++ uint32_t idx = htonl(ifp->ifindex);
++ if (setsockopt(fd, IPPROTO_IP, IP_MULTICAST_IF, &idx, sizeof(idx)))
+ #endif
+
+- if (setsockopt(fd, IPPROTO_IP, IP_MULTICAST_IF, (void *)&mreq,
+- sizeof(mreq))) {
+- zlog_warn(
+- "Could not set Outgoing Interface Option on socket fd=%d: errno=%d: %s",
+- fd, errno, safe_strerror(errno));
+- close(fd);
+- return PIM_SOCK_ERR_IFACE;
++ {
++ zlog_warn(
++ "Could not set Outgoing Interface Option on socket fd=%d: errno=%d: %s",
++ fd, errno, safe_strerror(errno));
++ close(fd);
++ return PIM_SOCK_ERR_IFACE;
++ }
+ }
+
+ if (setsockopt(fd, SOL_SOCKET, SO_RCVBUF, &rcvbuf, sizeof(rcvbuf)))
+@@ -379,7 +388,7 @@ int pim_socket_recvfromto(int fd, uint8_
+ if (ifindex)
+ *ifindex = i->ipi_ifindex;
+
+- break;
++ continue;
+ }
+ #endif
+
+@@ -392,14 +401,20 @@ int pim_socket_recvfromto(int fd, uint8_
+ if (tolen)
+ *tolen = sizeof(struct sockaddr_in);
+
+- break;
++ continue;
+ }
+ #endif
+
+-#if defined(HAVE_IP_RECVIF) && defined(CMSG_IFINDEX)
+- if (cmsg->cmsg_type == IP_RECVIF)
+- if (ifindex)
+- *ifindex = CMSG_IFINDEX(cmsg);
++#if defined(HAVE_IP_RECVIF)
++ if (cmsg->cmsg_type == IP_RECVIF && ifindex) {
++#ifdef __NetBSD__
++ struct sockaddr_dl *dl = (struct sockaddr_dl *)CMSG_DATA(cmsg);
++ *ifindex = dl->sdl_index;
++#elif defined(CMSG_IFINDEX)
++ *ifindex = CMSG_IFINDEX(cmsg);
++#endif
++ continue;
++ }
+ #endif
+
+ } /* for (cmsg) */
Home |
Main Index |
Thread Index |
Old Index