mirror of
https://github.com/gentoo-mirror/guru.git
synced 2026-07-22 13:33:32 -04:00
net-misc/openbgpd: New ebuild
Package-Manager: Portage-2.3.89, Repoman-2.3.20 Signed-off-by: Alarig Le Lay <alarig@swordarmor.fr>
This commit is contained in:
2
net-misc/openbgpd/Manifest
Normal file
2
net-misc/openbgpd/Manifest
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
DIST openbgpd-6.6p0.tar.gz 676732 BLAKE2B 80b391ead81d8d3bd20fe9b3eb3f8976485d29241f30c7395c678ff3f0fd87b2f3036b2ebb502ff0ca27d79f4fbbe6ba93576069edb32f004705d71d92e2b3a2 SHA512 07a7599b3ab14181575dc38647b307a4efa7d5dfa8a7aefe70483eb6773cb792eac788a10ea865d78daa59f197fc2d9cd2ce96d0c0251564507963716057fee0
|
||||||
|
DIST openbgpd-portable-master.zip 79593 BLAKE2B 7a19522d015076491e698d5dd4434dfaab88ae2dde00b5cbc16122fb3be8a3bbe6906a89ed50d173806298e0e86737f93d7c6be57461ada6c7bb50699a19cbdd SHA512 6d55527c3955457f40c95ff1164f4f6f8c0a8b326c8a632014f83150ffb238eb393053a54b608d650b3756255588b155d537e1a0d228e2961d8f9890e3da641d
|
||||||
12
net-misc/openbgpd/files/openbgpd-6.6_p0-config.c.patch
Normal file
12
net-misc/openbgpd/files/openbgpd-6.6_p0-config.c.patch
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
--- src/bgpd/config.c 2020-03-20 17:55:04.089577745 +0100
|
||||||
|
+++ src/bgpd/config.c 2020-03-20 17:56:01.480205070 +0100
|
||||||
|
@@ -343,7 +343,8 @@
|
||||||
|
fatal("getifaddrs");
|
||||||
|
|
||||||
|
for (ifa = ifap; ifa; ifa = ifa->ifa_next) {
|
||||||
|
- if (ifa->ifa_addr->sa_family != AF_INET)
|
||||||
|
+ if (ifa->ifa_addr == NULL ||
|
||||||
|
+ ifa->ifa_addr->sa_family != AF_INET)
|
||||||
|
continue;
|
||||||
|
cur = ((struct sockaddr_in *)ifa->ifa_addr)->sin_addr.s_addr;
|
||||||
|
if ((cur & localnet) == localnet) /* skip 127/8 */
|
||||||
12
net-misc/openbgpd/files/openbgpd-9999-config.c.patch
Normal file
12
net-misc/openbgpd/files/openbgpd-9999-config.c.patch
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
--- openbsd/src/usr.sbin/bgpd/config.c 2020-03-20 17:55:04.089577745 +0100
|
||||||
|
+++ openbsd/src/usr.sbin/bgpd/config.c 2020-03-20 17:56:01.480205070 +0100
|
||||||
|
@@ -343,7 +343,8 @@
|
||||||
|
fatal("getifaddrs");
|
||||||
|
|
||||||
|
for (ifa = ifap; ifa; ifa = ifa->ifa_next) {
|
||||||
|
- if (ifa->ifa_addr->sa_family != AF_INET)
|
||||||
|
+ if (ifa->ifa_addr == NULL ||
|
||||||
|
+ ifa->ifa_addr->sa_family != AF_INET)
|
||||||
|
continue;
|
||||||
|
cur = ((struct sockaddr_in *)ifa->ifa_addr)->sin_addr.s_addr;
|
||||||
|
if ((cur & localnet) == localnet) /* skip 127/8 */
|
||||||
13
net-misc/openbgpd/files/openbgpd-9999-update.patch
Normal file
13
net-misc/openbgpd/files/openbgpd-9999-update.patch
Normal file
@@ -0,0 +1,13 @@
|
|||||||
|
--- update.sh 2020-03-20 15:14:46.462983445 +0100
|
||||||
|
+++ update.sh 2020-03-20 15:14:56.473090379 +0100
|
||||||
|
@@ -13,10 +13,6 @@
|
||||||
|
git clone "${OPENBGPD_GIT}/openbsd"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
-(cd openbsd
|
||||||
|
- git fetch
|
||||||
|
- git checkout "${openbsd_branch}"
|
||||||
|
- git pull --rebase)
|
||||||
|
|
||||||
|
# setup source paths
|
||||||
|
dir=`pwd`
|
||||||
7
net-misc/openbgpd/files/openbgpd-conf.d
Normal file
7
net-misc/openbgpd/files/openbgpd-conf.d
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
# /etc/conf.d/bgpd: config file for openbsd's bgpd
|
||||||
|
|
||||||
|
# See bgpd(8) man page ... some popular options:
|
||||||
|
# -f file Use file as the configuration file, instead of the default
|
||||||
|
# /etc/bgpd.conf.
|
||||||
|
#
|
||||||
|
BGPD_OPTS=""
|
||||||
22
net-misc/openbgpd/files/openbgpd-init.d
Executable file
22
net-misc/openbgpd/files/openbgpd-init.d
Executable file
@@ -0,0 +1,22 @@
|
|||||||
|
#!/sbin/openrc-run
|
||||||
|
# Copyright 2020 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
name="bgpd daemon"
|
||||||
|
description="OpenBGPD is a free implementation of BGPv4"
|
||||||
|
command=/usr/sbin/bgpd
|
||||||
|
command_args="${BGPD_OPTS}"
|
||||||
|
|
||||||
|
extra_started_commands="reload"
|
||||||
|
|
||||||
|
depend() {
|
||||||
|
use net
|
||||||
|
use logger
|
||||||
|
}
|
||||||
|
|
||||||
|
reload() {
|
||||||
|
${command} -n || return 1
|
||||||
|
ebegin "Reloading bgpd"
|
||||||
|
/usr/sbin/bgpctl reload
|
||||||
|
eend $?
|
||||||
|
}
|
||||||
12
net-misc/openbgpd/files/openbgpd.service
Normal file
12
net-misc/openbgpd/files/openbgpd.service
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
[Unit]
|
||||||
|
Description=OpenBGPD Routing Daemon
|
||||||
|
Documentation=man:bgpd.conf(5) man:bgpctl(8) man:bgpd(8)
|
||||||
|
After=syslog.target network.target
|
||||||
|
|
||||||
|
[Service]
|
||||||
|
Type=forking
|
||||||
|
ExecStart=/usr/sbin/bgpd -f /etc/bgpd.conf
|
||||||
|
|
||||||
|
[Install]
|
||||||
|
WantedBy=multi-user.target
|
||||||
|
|
||||||
8
net-misc/openbgpd/metadata.xml
Normal file
8
net-misc/openbgpd/metadata.xml
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||||
|
<pkgmetadata>
|
||||||
|
<maintainer type="person">
|
||||||
|
<name>Alarig Le Lay</name>
|
||||||
|
<email>alarig@swordarmor.fr</email>
|
||||||
|
</maintainer>
|
||||||
|
</pkgmetadata>
|
||||||
54
net-misc/openbgpd/openbgpd-6.6_p0.ebuild
Normal file
54
net-misc/openbgpd/openbgpd-6.6_p0.ebuild
Normal file
@@ -0,0 +1,54 @@
|
|||||||
|
# Copyright 2020 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=7
|
||||||
|
|
||||||
|
inherit systemd
|
||||||
|
|
||||||
|
MY_PV="${PV/_p/p}"
|
||||||
|
#MY_PN="openbgpd-portable"
|
||||||
|
MY_P="${PN}-${MY_PV}"
|
||||||
|
|
||||||
|
DESCRIPTION="OpenBGPD is a free implementation of BGPv4"
|
||||||
|
HOMEPAGE="http://www.openbgpd.org/index.html"
|
||||||
|
SRC_URI="mirror://openbsd/OpenBGPD/${PN}-${MY_PV}.tar.gz"
|
||||||
|
|
||||||
|
LICENSE="ISC"
|
||||||
|
SLOT="0"
|
||||||
|
KEYWORDS="~amd64 ~x86"
|
||||||
|
IUSE=""
|
||||||
|
|
||||||
|
DEPEND=""
|
||||||
|
RDEPEND="
|
||||||
|
${DEPEND}
|
||||||
|
acct-group/_bgpd
|
||||||
|
acct-user/_bgpd
|
||||||
|
"
|
||||||
|
BDEPEND="
|
||||||
|
sys-devel/libtool
|
||||||
|
"
|
||||||
|
|
||||||
|
src_unpack() {
|
||||||
|
default
|
||||||
|
mv "${WORKDIR}/${MY_P}" "${S}"
|
||||||
|
}
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
eapply -p0 "${FILESDIR}/${P}-config.c.patch"
|
||||||
|
default
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
default
|
||||||
|
|
||||||
|
newinitd "${FILESDIR}/${PN}-init.d" bgpd
|
||||||
|
newconfd "${FILESDIR}/${PN}-conf.d" bgpd
|
||||||
|
systemd_newunit "${FILESDIR}/${PN}.service" bgpd.service
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst() {
|
||||||
|
ewarn ""
|
||||||
|
ewarn "OpenBGPD portable (not running on OpenBSD) can’t export its RIB to"
|
||||||
|
ewarn "the FIB. It’s only suitable for route-reflectors or route-servers."
|
||||||
|
ewarn ""
|
||||||
|
}
|
||||||
73
net-misc/openbgpd/openbgpd-9999.ebuild
Normal file
73
net-misc/openbgpd/openbgpd-9999.ebuild
Normal file
@@ -0,0 +1,73 @@
|
|||||||
|
# Copyright 2020 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=7
|
||||||
|
|
||||||
|
inherit autotools git-r3 systemd
|
||||||
|
|
||||||
|
MY_PV="master"
|
||||||
|
MY_PN="openbgpd-portable"
|
||||||
|
MY_P="${MY_PN}-${MY_PV}"
|
||||||
|
|
||||||
|
DESCRIPTION="OpenBGPD is a free implementation of BGPv4"
|
||||||
|
HOMEPAGE="http://www.openbgpd.org/index.html"
|
||||||
|
SRC_URI="https://github.com/${MY_PN}/${MY_PN}/archive/master.zip -> ${MY_P}.zip"
|
||||||
|
|
||||||
|
EGIT_REPO_URI="https://github.com/openbgpd-portable/openbgpd-openbsd.git"
|
||||||
|
EGIT3_STORE_DIR="${S}/git"
|
||||||
|
EGIT_CHECKOUT_DIR="${S}/openbsd"
|
||||||
|
|
||||||
|
LICENSE="ISC"
|
||||||
|
SLOT="0"
|
||||||
|
KEYWORDS=""
|
||||||
|
IUSE=""
|
||||||
|
|
||||||
|
DEPEND=""
|
||||||
|
RDEPEND="
|
||||||
|
${DEPEND}
|
||||||
|
acct-group/_bgpd
|
||||||
|
acct-user/_bgpd
|
||||||
|
"
|
||||||
|
BDEPEND="
|
||||||
|
dev-util/byacc
|
||||||
|
sys-devel/autoconf
|
||||||
|
sys-devel/automake
|
||||||
|
sys-devel/libtool
|
||||||
|
"
|
||||||
|
|
||||||
|
src_unpack() {
|
||||||
|
unpack ${A}
|
||||||
|
mv "${WORKDIR}/${MY_P}" "${S}"
|
||||||
|
|
||||||
|
EGIT_BRANCH=$(cat "${S}"/OPENBSD_BRANCH)
|
||||||
|
git-r3_fetch
|
||||||
|
git-r3_checkout
|
||||||
|
}
|
||||||
|
|
||||||
|
src_prepare() {
|
||||||
|
eapply -p0 "${FILESDIR}/${P}-update.patch"
|
||||||
|
eapply -p0 "${FILESDIR}/${P}-config.c.patch"
|
||||||
|
default
|
||||||
|
./autogen.sh
|
||||||
|
eautoreconf
|
||||||
|
}
|
||||||
|
|
||||||
|
src_configure() {
|
||||||
|
export YACC=byacc
|
||||||
|
default
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
default
|
||||||
|
|
||||||
|
newinitd "${FILESDIR}/${PN}-init.d" bgpd
|
||||||
|
newconfd "${FILESDIR}/${PN}-conf.d" bgpd
|
||||||
|
systemd_newunit "${FILESDIR}/${PN}.service" bgpd.service
|
||||||
|
}
|
||||||
|
|
||||||
|
pkg_postinst() {
|
||||||
|
ewarn ""
|
||||||
|
ewarn "OpenBGPD portable (not running on OpenBSD) can’t export its RIB to"
|
||||||
|
ewarn "the FIB. It’s only suitable for route-reflectors or route-servers."
|
||||||
|
ewarn ""
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user