From nobody Thu Dec 15 18:01:15 2022 X-Original-To: dev-commits-ports-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4NY0R00lJYz4l0Tb; Thu, 15 Dec 2022 18:01:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4NY0R00J20z3wNX; Thu, 15 Dec 2022 18:01:16 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1671127276; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7H8eTaXylNIpKlwl/lXNMMQeET4S9vMFaX1uPjxZcqg=; b=AYvqK0y9qxtf+hyIa8x9SlJny3cwJwEkMgqy8kAM+S4OZYX+7l6BG6x/Fk8aF9/xIG2KOM /sdvTKR94e+i8NXh37M3ihl7QmPeiK5xzQM2wN2h+l55kR9hGwi3YRy7GPFdGXXZx/bpRN A0ZTXyx3piSXfNa5k36gv/AvGxxn2j6hr0GIn1qSRZAUP42mIdGwn8+Qm+kWLqMar3HFUD y9ETdYnF8zZkMuP6GV8kXBspmyPJ17VkQYXu/jG3TR4v35lFwnZ06dgI3iMMGAlUp1Om8v QNJPw2l1iTTcHhYB50RqEQw1WLRei+WYXasQLo/H+UZd8DcET0HmZSsXjRatlA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1671127276; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=7H8eTaXylNIpKlwl/lXNMMQeET4S9vMFaX1uPjxZcqg=; b=l8ZQ8VXrKbfmmv+dCWLR8Ag8xjw6v7Vgg5heW7BXDbJs3TDjRqNlxhgUdA+8xtD5y67leq bvSZ53EcW5LSjnfJ9DZ1dGgH11CFDWUwADF11jOEUyYIZaSVBBJ3HwIIw7+J7P08vMCU7s 5z+xO1FJeCQjQlcZ1lU3sbyLipPwGkMTIIxNtadcR9JjPKoby8jxkjblIoN1YD0awjHUyO BlL/Mc28fMFw4A6+4CBhhRQdLsgmb9gFe53m0Tm9Uary6MI3vlsLjg+UI/FPDvdH82Ikbv LMQ9VHrw+Ylu3mc0PrxbKbPiUgFIY+FIriEY4DkGJ98dckbqVmKYKqNTKUAnzg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1671127276; a=rsa-sha256; cv=none; b=GERqsGIyy73avrvK8hiRZZpVGGKy276B3AmxGj7s7v9ndDrMUt6Cg7mcV9+aGEgddtsg14 ktKfoxw+J5u8K33CawnJ5zkW3nbZnIBPqJ3/aFe8nSimoagiaMqjOHYIuEdaAgdZ2dcCRW lioAXx2RtnVFrbMEqjKk6ncTuBC4FWeoN7Lm8Uf2o3QaxBqTd4W5m0pFfPJP/VlXSIOFEU u6Yh8V4hBwCoV4Yq/MKCVx9xmdkKPnhSH+oX3v/X/SvvhSY/aYQ68JVz1bTmYrfu1nX+D+ AHD9jACYr+c3+g/XyoQSuiPAvcaldhB9zkK8f46qkxdU8GZkvUzOYv9+IKq2OA== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4NY0Qz6SHyzjBb; Thu, 15 Dec 2022 18:01:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 2BFI1FVc054725; Thu, 15 Dec 2022 18:01:15 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 2BFI1FJF054724; Thu, 15 Dec 2022 18:01:15 GMT (envelope-from git) Date: Thu, 15 Dec 2022 18:01:15 GMT Message-Id: <202212151801.2BFI1FJF054724@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Olivier Cochard Subject: git: af9756602988 - main - net/bird2: Update to 2.0.11 and add netlink flavor List-Id: Commits to the main branch of the FreeBSD ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-main@freebsd.org X-BeenThere: dev-commits-ports-main@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: olivier X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: af97566029883a46fc4d58cf5e066f25cd075107 Auto-Submitted: auto-generated X-ThisMailContainsUnwantedMimeParts: N The branch main has been updated by olivier: URL: https://cgit.FreeBSD.org/ports/commit/?id=af97566029883a46fc4d58cf5e066f25cd075107 commit af97566029883a46fc4d58cf5e066f25cd075107 Author: Olivier Cochard AuthorDate: 2022-12-15 17:34:36 +0000 Commit: Olivier Cochard CommitDate: 2022-12-15 17:57:16 +0000 net/bird2: Update to 2.0.11 and add netlink flavor The netlink flavor is experimental and available on current only. ChangeLog: https://bird.network.cz/pipermail/bird-users/2022-December/016431.html Obtained from: melifaro Differential Revision: https://reviews.freebsd.org/D37588 --- net/bird2/Makefile | 15 ++++++++- net/bird2/distinfo | 6 ++-- net/bird2/files/extra-patch-netlink | 31 ++++++++++++++++++ net/bird2/files/patch-sysdep_bsd_sysio.h | 48 ++++++++++++++++++++++++++++ net/bird2/files/patch-sysdep_linux_netlink.c | 22 +++++++++++++ 5 files changed, 118 insertions(+), 4 deletions(-) diff --git a/net/bird2/Makefile b/net/bird2/Makefile index eabdf825eae6..9a23335cc348 100644 --- a/net/bird2/Makefile +++ b/net/bird2/Makefile @@ -1,5 +1,5 @@ PORTNAME= bird -DISTVERSION= 2.0.10 +DISTVERSION= 2.0.11 CATEGORIES= net MASTER_SITES= https://bird.network.cz/download/ PKGNAMESUFFIX= 2 @@ -10,6 +10,9 @@ WWW= https://bird.network.cz/ LICENSE= GPLv2 +FLAVORS= base netlink +netlink_PKGNAMESUFFIX= 2-netlink + USES= bison cpe gmake ncurses readline CONFLICTS= bird @@ -57,4 +60,14 @@ STATIC_VARS= rt_prot+=static CONFIGURE_ARGS+=--with-protocols="${RT_PROT}" RPKI_LIB_DEPENDS= libssh.so:security/libssh +.include + +.if ${FLAVOR:U} == netlink +CONFIGURE_ARGS+=--with-sysconfig=bsd-netlink +EXTRA_PATCHES+= ${PATCHDIR}/extra-patch-netlink +.if ${OSVERSION} < 1400073 +BROKEN=No netlink support +.endif +.endif + .include diff --git a/net/bird2/distinfo b/net/bird2/distinfo index 8e0364275638..3b3692fdba36 100644 --- a/net/bird2/distinfo +++ b/net/bird2/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1656504519 -SHA256 (bird-2.0.10.tar.gz) = 7ed341ddd8dc87fa9736586b3515447a8436fec442d65f4022155ab9de1ffd5a -SIZE (bird-2.0.10.tar.gz) = 1276546 +TIMESTAMP = 1670848920 +SHA256 (bird-2.0.11.tar.gz) = 60a7b83b67b9d089d2a745a11fddd12461f631abc7b645b6c085adf90b3f55d6 +SIZE (bird-2.0.11.tar.gz) = 1301502 diff --git a/net/bird2/files/extra-patch-netlink b/net/bird2/files/extra-patch-netlink new file mode 100644 index 000000000000..fd58ddaed2b3 --- /dev/null +++ b/net/bird2/files/extra-patch-netlink @@ -0,0 +1,31 @@ +From d890c5cca7f6239ddd7ea605e45854658f50d39b Mon Sep 17 00:00:00 2001 +From: Alexander Chernikov +Date: Tue, 13 Sep 2022 12:08:58 +0000 +Subject: [PATCH 1/1] FreeBSD: add netlink support + +Netlink can be enabled by picking new sysconfig target: +./configure --with-sysconfig=bsd-netlink +--- + sysdep/bsd-netlink/Makefile | 9 +++++++++ + sysdep/cf/bsd-netlink.h | 34 ++++++++++++++++++++++++++++++++++ + sysdep/cf/linux.h | 2 ++ + sysdep/linux/netlink.c | 7 ++++++- + 4 files changed, 51 insertions(+), 1 deletion(-) + create mode 100644 sysdep/bsd-netlink/Makefile + create mode 100644 sysdep/cf/bsd-netlink.h + +diff --git sysdep/bsd-netlink/Makefile sysdep/bsd-netlink/Makefile +new file mode 100644 +index 00000000..90b639a4 +--- /dev/null ++++ sysdep/bsd-netlink/Makefile +@@ -0,0 +1,9 @@ ++src := $(s)../linux/netlink.c ++obj := $(objdir)/sysdep/bsd-netlink/netlink.o ++$(obj): $(src) ++ $(E)echo CC -o $@ -c $< ++ $(Q)$(CC) $(CFLAGS) -MMD -MP -o $@ -c $< ++$(all-daemon) ++$(conf-y-targets): $(s)../linux/netlink.Y ++ ++tests_objs := $(tests_objs) $(obj) diff --git a/net/bird2/files/patch-sysdep_bsd_sysio.h b/net/bird2/files/patch-sysdep_bsd_sysio.h new file mode 100644 index 000000000000..2991c873126e --- /dev/null +++ b/net/bird2/files/patch-sysdep_bsd_sysio.h @@ -0,0 +1,48 @@ +diff --git sysdep/bsd/sysio.h sysdep/bsd/sysio.h +index f1887fb4..5167a5dd 100644 +--- sysdep/bsd/sysio.h ++++ sysdep/bsd/sysio.h +@@ -48,11 +48,16 @@ + static inline int + sk_setup_multicast4(sock *s) + { +- struct in_addr ifa = ip4_to_in4(s->iface->sysdep); + u8 ttl = s->ttl; + u8 n = 0; + + /* This defines where should we send _outgoing_ multicasts */ ++#ifdef __FreeBSD__ ++ struct ip_mreqn ifa = { .imr_ifindex = s->iface->index }; ++#else ++ struct in_addr ifa = ip4_to_in4(s->iface->sysdep); ++#endif ++ + if (setsockopt(s->fd, IPPROTO_IP, IP_MULTICAST_IF, &ifa, sizeof(ifa)) < 0) + ERR("IP_MULTICAST_IF"); + +@@ -68,8 +73,11 @@ sk_setup_multicast4(sock *s) + static inline int + sk_join_group4(sock *s, ip_addr maddr) + { ++#ifdef __FreeBSD__ ++ struct ip_mreqn mr = { .imr_multiaddr = ipa_to_in4(maddr), .imr_ifindex = s->iface->index }; ++#else + struct ip_mreq mr = INIT_MREQ4(maddr, s->iface); +- ++#endif + if (setsockopt(s->fd, IPPROTO_IP, IP_ADD_MEMBERSHIP, &mr, sizeof(mr)) < 0) + ERR("IP_ADD_MEMBERSHIP"); + +@@ -79,8 +87,11 @@ sk_join_group4(sock *s, ip_addr maddr) + static inline int + sk_leave_group4(sock *s, ip_addr maddr) + { ++#ifdef __FreeBSD__ ++ struct ip_mreqn mr = { .imr_multiaddr = ipa_to_in4(maddr), .imr_ifindex = s->iface->index }; ++#else + struct ip_mreq mr = INIT_MREQ4(maddr, s->iface); +- ++#endif + if (setsockopt(s->fd, IPPROTO_IP, IP_DROP_MEMBERSHIP, &mr, sizeof(mr)) < 0) + ERR("IP_ADD_MEMBERSHIP"); + diff --git a/net/bird2/files/patch-sysdep_linux_netlink.c b/net/bird2/files/patch-sysdep_linux_netlink.c new file mode 100644 index 000000000000..b84707c46be2 --- /dev/null +++ b/net/bird2/files/patch-sysdep_linux_netlink.c @@ -0,0 +1,22 @@ +--- sysdep/linux/netlink.c.orig 2022-12-15 15:03:21 UTC ++++ sysdep/linux/netlink.c +@@ -27,15 +27,15 @@ + #include "lib/hash.h" + #include "conf/conf.h" + ++#ifdef CONFIG_FREEBSD_NETLINK ++#include ++#include ++#endif + #ifdef CONFIG_LINUX_NETLINK + #include + #include + #include + #include +-#endif +-#ifdef CONFIG_FREEBSD_NETLINK +-#include +-#include + #endif + + #ifdef HAVE_MPLS_KERNEL