git: 33e91dbbe199 - main - sysutils/egress-monitor: Add new port
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 15 Nov 2022 17:58:45 UTC
The branch main has been updated by otis:
URL: https://cgit.FreeBSD.org/ports/commit/?id=33e91dbbe19992d88fa70f0d303112b14882394b
commit 33e91dbbe19992d88fa70f0d303112b14882394b
Author: Goran Mekić <meka@tilda.center>
AuthorDate: 2022-11-12 22:12:55 +0000
Commit: Juraj Lutter <otis@FreeBSD.org>
CommitDate: 2022-11-15 17:57:08 +0000
sysutils/egress-monitor: Add new port
Add sysutils/egress-monitor, a tool that is watching for default routes
changes and sets the interface group. When the default route is added,
egress-monitor sets the group of that interface to appropriate egress.
WWW: https://github.com/mekanix/egress-monitor
PR: 267731
Tested by: dfr
---
sysutils/Makefile | 1 +
sysutils/egress-monitor/Makefile | 22 ++++++++++++++++++++++
sysutils/egress-monitor/distinfo | 3 +++
sysutils/egress-monitor/files/egress-monitor.in | 22 ++++++++++++++++++++++
sysutils/egress-monitor/files/pkg-message.in | 8 ++++++++
sysutils/egress-monitor/pkg-descr | 4 ++++
6 files changed, 60 insertions(+)
diff --git a/sysutils/Makefile b/sysutils/Makefile
index a59b7afef052..689b10b06a34 100644
--- a/sysutils/Makefile
+++ b/sysutils/Makefile
@@ -335,6 +335,7 @@
SUBDIR += eclat
SUBDIR += edid-decode
SUBDIR += edk2
+ SUBDIR += egress-monitor
SUBDIR += eject
SUBDIR += eksctl
SUBDIR += endian
diff --git a/sysutils/egress-monitor/Makefile b/sysutils/egress-monitor/Makefile
new file mode 100644
index 000000000000..c0621f6dff23
--- /dev/null
+++ b/sysutils/egress-monitor/Makefile
@@ -0,0 +1,22 @@
+PORTNAME= egress-monitor
+DISTVERSION= 0.0.3
+CATEGORIES= sysutils
+
+MAINTAINER= meka@tilda.center
+COMMENT= Set network interface groups based on default routes
+WWW= https://github.com/mekanix/egress-monitor
+
+LICENSE= BSD2CLAUSE
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+USES= uidfix
+USE_RC_SUBR= egress-monitor
+SUB_FILES= pkg-message
+
+USE_GITHUB= yes
+GH_ACCOUNT= mekanix
+
+PLIST_FILES= man/man1/egress-monitor.1.gz \
+ sbin/egress-monitor
+
+.include <bsd.port.mk>
diff --git a/sysutils/egress-monitor/distinfo b/sysutils/egress-monitor/distinfo
new file mode 100644
index 000000000000..664dd70da4bf
--- /dev/null
+++ b/sysutils/egress-monitor/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1668281396
+SHA256 (mekanix-egress-monitor-0.0.3_GH0.tar.gz) = 74302e0fea9be384d791d7610c85a783696f71ab2ca005e98e590d14b12e1da5
+SIZE (mekanix-egress-monitor-0.0.3_GH0.tar.gz) = 4937
diff --git a/sysutils/egress-monitor/files/egress-monitor.in b/sysutils/egress-monitor/files/egress-monitor.in
new file mode 100644
index 000000000000..e76cf965f6e4
--- /dev/null
+++ b/sysutils/egress-monitor/files/egress-monitor.in
@@ -0,0 +1,22 @@
+#!/bin/sh
+
+# PROVIDE: egress-monitor
+# KEYWORD: shutdown
+# REQUIRE: NETWORKING
+# BEFORE: pf
+
+. /etc/rc.subr
+
+name=egress_monitor
+desc="default route monitor"
+rcvar=${name}_enable
+load_rc_config $name
+
+: ${egress_monitor_enable:="NO"}
+
+procname="%%PREFIX%%/sbin/egress-monitor"
+command="/usr/sbin/daemon"
+command_args="-S -T ${name} ${procname}"
+
+run_rc_command $*
+
diff --git a/sysutils/egress-monitor/files/pkg-message.in b/sysutils/egress-monitor/files/pkg-message.in
new file mode 100644
index 000000000000..ba4cb9b9c771
--- /dev/null
+++ b/sysutils/egress-monitor/files/pkg-message.in
@@ -0,0 +1,8 @@
+[
+{ type: install
+ message: <<EOM
+Please note that egress-monitor will not pick up changes in net.fibs sysctl, so
+if you change it, you have to "service egress-monitor restart".
+EOM
+}
+]
diff --git a/sysutils/egress-monitor/pkg-descr b/sysutils/egress-monitor/pkg-descr
new file mode 100644
index 000000000000..cd15befd4e37
--- /dev/null
+++ b/sysutils/egress-monitor/pkg-descr
@@ -0,0 +1,4 @@
+Watching for default routes changes and sets the interface group. When the
+default route is added, egress-monitor sets the group of that interface to
+appropriate egress. That means for IPv4 and FIB 0 (default one) the group will
+be v4fib0egress. In general, the group name is v<4|6>fib<number>egress.