aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOlivier Cochard <olivier@FreeBSD.org>2023-01-02 23:16:27 +0000
committerOlivier Cochard <olivier@FreeBSD.org>2023-01-02 23:18:10 +0000
commit0f166ee9896b4f6ab6b311fb716f64819f729745 (patch)
treee3b62969438e6ac05fb897d64f4a4184487588c3
parent17f86657f29bc8c1fd6dec528c437a7de8422c6f (diff)
downloadports-0f166ee9896b4f6ab6b311fb716f64819f729745.tar.gz
ports-0f166ee9896b4f6ab6b311fb716f64819f729745.zip
net/tcplog_dumper: Add a RC script
Obtained from: tuexen Sponsored by: Netflix
-rw-r--r--net/tcplog_dumper/Makefile3
-rw-r--r--net/tcplog_dumper/files/tcplog_dumper.in44
2 files changed, 47 insertions, 0 deletions
diff --git a/net/tcplog_dumper/Makefile b/net/tcplog_dumper/Makefile
index 4a41b420a801..261db29afb77 100644
--- a/net/tcplog_dumper/Makefile
+++ b/net/tcplog_dumper/Makefile
@@ -1,6 +1,7 @@
PORTNAME= tcplog_dumper
PORTVERSION= 0.1.1
DISTVERSIONPREFIX= v
+PORTREVISION= 1
CATEGORIES= net
MAINTAINER= olivier@FreeBSD.org
@@ -16,6 +17,8 @@ ONLY_FOR_ARCHS_REASON= only 64-bit platforms are supported
USE_GITHUB= yes
GH_ACCOUNT= Netflix
+USE_RC_SUBR= tcplog_dumper
+
PLIST_FILES= sbin/tcplog_dumper \
man/man1/tcplog_dumper.1.gz
diff --git a/net/tcplog_dumper/files/tcplog_dumper.in b/net/tcplog_dumper/files/tcplog_dumper.in
new file mode 100644
index 000000000000..ccab36820af8
--- /dev/null
+++ b/net/tcplog_dumper/files/tcplog_dumper.in
@@ -0,0 +1,44 @@
+#!/bin/sh
+
+# PROVIDE: tcplog_dumper
+# REQUIRE: DAEMON
+# KEYWORD: shutdown
+
+# Add the following lines to /etc/rc.conf.local or /etc/rc.conf
+# to enable this service:
+#
+# tcplog_dumper_enable (bool): Set to NO by default.
+# Set it to YES to enable tcplog_dumper.
+# tcplog_dumper_pidfile (file): Set to /var/run/tcplog_dumper.pid by default.
+# tcplog_dumper_basedir (path): Set to /var/log/tcplog_dumps by default.
+# tcplog_dumper_basedir_owner: Set to nobody by default.
+
+. /etc/rc.subr
+
+name=tcplog_dumper
+rcvar=tcplog_dumper_enable
+
+load_rc_config ${name}
+
+: ${tcplog_dumper_enable:=NO}
+: ${tcplog_dumper_pidfile=/var/run/${name}.pid}
+: ${tcplog_dumper_basedir=/var/log/tcplog_dumps}
+: ${tcplog_dumper_basedir_owner=nobody}
+
+command="%%PREFIX%%/sbin/${name}"
+command_args="-d -D ${tcplog_dumper_basedir} -u ${tcplog_dumper_basedir_owner} -p ${tcplog_dumper_pidfile}"
+
+pidfile="${tcplog_dumper_pidfile}"
+start_precmd="${name}_prestart"
+
+tcplog_dumper_prestart()
+{
+ if [ ! -d "${tcplog_dumper_basedir}" ]; then
+ mkdir -p "${tcplog_dumper_basedir}"
+ fi
+ if [ ! "x$(stat -f '%Su' ${tcplog_dumper_basedir})" = "x${tcplog_dumper_basedir_owner}" ] ; then
+ chown "${tcplog_dumper_basedir_owner}" "${tcplog_dumper_basedir}"
+ fi
+}
+
+run_rc_command "$1"