public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: net-vpn/iodine/files/, net-vpn/iodine/
@ 2022-12-03  1:37 Sam James
  0 siblings, 0 replies; only message in thread
From: Sam James @ 2022-12-03  1:37 UTC (permalink / raw
  To: gentoo-commits

commit:     c24f1f933c3c5264da5ab53d4f74afc0fa037965
Author:     Hank Leininger <hlein <AT> korelogic <DOT> com>
AuthorDate: Tue Nov 15 04:12:39 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Dec  3 01:35:27 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c24f1f93

net-vpn/iodine: Add support for arbitrary args in conf.d/iodined

Signed-off-by: Hank Leininger <hlein <AT> korelogic.com>
Closes: https://bugs.gentoo.org/881355
Closes: https://github.com/gentoo/gentoo/pull/28276
Signed-off-by: Sam James <sam <AT> gentoo.org>

 net-vpn/iodine/files/iodined-1.init-r1 | 64 ++++++++++++++++++++++++++++++++++
 net-vpn/iodine/files/iodined.conf-r1   | 46 ++++++++++++++++++++++++
 net-vpn/iodine/iodine-0.7.0-r4.ebuild  | 50 ++++++++++++++++++++++++++
 3 files changed, 160 insertions(+)

diff --git a/net-vpn/iodine/files/iodined-1.init-r1 b/net-vpn/iodine/files/iodined-1.init-r1
new file mode 100644
index 000000000000..d436acc2896a
--- /dev/null
+++ b/net-vpn/iodine/files/iodined-1.init-r1
@@ -0,0 +1,64 @@
+#!/sbin/openrc-run
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+PID_FILE="/run/iodined.pid"
+
+depend() {
+	need net
+}
+
+start() {
+	ebegin "Starting iodined"
+	ARGS=""
+	if [ "$IODINED_ARGS" ]; then
+		ARGS="$ARGS $IODINED_ARGS"
+	fi
+	if [ "$IODINED_USER" ]; then
+		ARGS="$ARGS -u $IODINED_USER"
+	fi
+	if [ "$IODINED_CHROOT" ]; then
+		ARGS="$ARGS -t $IODINED_CHROOT"
+	fi
+	if [ "$IODINED_MTU" ]; then
+		ARGS="$ARGS -m $IODINED_MTU"
+	fi
+	if [ "$IODINED_LISTENPORT" ]; then
+		ARGS="$ARGS -p $IODINED_LISTENPORT"
+	fi
+	if [ "$IODINED_EXTERN_IP" ]; then
+		ARGS="$ARGS -n $IODINED_EXTERN_IP"
+	fi
+	if [ "$IODINED_LOCAL_DNS_PORT" ]; then
+		ARGS="$ARGS -b $IODINED_LOCAL_DNS_PORT"
+	fi
+	if [ "$IODINED_LISTENIP" ]; then
+		ARGS="$ARGS -l $IODINED_LISTENIP"
+	fi
+	if [ "$IODINED_PASSWD" ]; then
+		ARGS="$ARGS -P $IODINED_PASSWD"
+	else
+		eerror "Please set a password (IODINED_PASSWD) in /etc/conf.d/iodined!"
+		return 1
+	fi
+	if [ "$IODINED_IP" ]; then
+		ARGS="$ARGS $IODINED_IP"
+	else
+		eerror "Please set an IP (IODINED_IP) in /etc/conf.d/iodined!"
+		return 1
+	fi
+	if [ "$IODINED_DOMAIN" ]; then
+		ARGS="$ARGS $IODINED_DOMAIN"
+	else
+		eerror "Please set a domain (IODINED_DOMAIN) in /etc/conf.d/iodined!"
+		return 1
+	fi
+	start-stop-daemon --start --exec /usr/sbin/iodined --pidfile $PID_FILE -- -F $PID_FILE $ARGS
+	eend $?
+}
+
+stop() {
+	ebegin "Stopping iodined"
+	start-stop-daemon --stop --exec /usr/sbin/iodined --pidfile $PID_FILE
+	eend $?
+}

diff --git a/net-vpn/iodine/files/iodined.conf-r1 b/net-vpn/iodine/files/iodined.conf-r1
new file mode 100644
index 000000000000..e9a93d12320b
--- /dev/null
+++ b/net-vpn/iodine/files/iodined.conf-r1
@@ -0,0 +1,46 @@
+# /etc/conf.d/iodined: config file for /etc/init.d/iodined
+
+# Drop privileges to this user after startup
+# This is used by the -u argument. Comment out to keep running as root.
+IODINED_USER="nobody"
+
+# Chroot to this directory after startup
+# This is used by the -t argument. Comment out to avoid chroot.
+IODINED_CHROOT="/var/empty"
+
+# This password needs to be used in all clients when they connect
+# This is used by the -P argument
+IODINED_PASSWD=""
+
+# This is the MTU (Max Transmit Unit) used in the tunnel.
+# You probably dont need this field at all, downstream data will
+# now be fragmented. This is used by the -m argument
+#IODINED_MTU=1020
+
+# The server port to listen on. You should normally not change this.
+# See man page. This is used by the -p argument
+#IODINED_LISTENPORT=53
+
+# The IP address to return as reply to NS queries. If not set, it will
+# be the destination address of the query. Used by the -n argument
+#IODINED_EXTERN_IP=1.1.1.1
+
+# The port used by a "real" DNS server on localhost. Queries for
+# domains not handled by iodined will be forwarded to this port,
+# and answers will be routed back. Used by the -b argument
+#IODINED_LOCAL_DNS_PORT=5353
+
+# The IP number to listen on.
+# This is used by the -l argument
+#IODINED_LISTENIP=127.0.0.1
+
+# This IP number will be used by the local tun device.
+IODINED_IP="172.28.0.1"
+
+# Use subdomains to this domain for network tunneling
+# If a real domain is used, it should be delegated to this server with 
+# a NS entry in the domain zone (see man page)
+IODINED_DOMAIN="blah.abc"
+
+# Any extra args not covered above.
+#IODINED_ARGS=""

diff --git a/net-vpn/iodine/iodine-0.7.0-r4.ebuild b/net-vpn/iodine/iodine-0.7.0-r4.ebuild
new file mode 100644
index 000000000000..acd02810647f
--- /dev/null
+++ b/net-vpn/iodine/iodine-0.7.0-r4.ebuild
@@ -0,0 +1,50 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit linux-info toolchain-funcs
+
+DESCRIPTION="IP over DNS tunnel"
+HOMEPAGE="https://code.kryo.se/iodine/"
+SRC_URI="https://code.kryo.se/${PN}/${P}.tar.gz"
+
+CONFIG_CHECK="~TUN"
+
+LICENSE="ISC GPL-2" #GPL-2 for init script bug #426060
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+RDEPEND="sys-libs/zlib"
+DEPEND="${RDEPEND}
+	test? ( dev-libs/check )"
+
+PATCHES=(
+	"${FILESDIR}"/${P}-TestMessage.patch
+	"${FILESDIR}"/${P}-new-systemd.patch
+)
+
+src_prepare() {
+	default
+
+	sed -e '/^\s@echo \(CC\|LD\)/d' \
+		-e 's:^\(\s\)@:\1:' \
+		-i {,src/}Makefile || die
+
+	tc-export CC
+}
+
+src_install() {
+	# Don't re-run submake
+	sed -e '/^install:/s: all: :' \
+		-i Makefile || die
+	emake prefix="${EPREFIX}"/usr DESTDIR="${D}" install
+	einstalldocs
+
+	newinitd "${FILESDIR}"/iodined-1.init-r1 iodined
+	newconfd "${FILESDIR}"/iodined.conf-r1 iodined
+	keepdir /var/empty
+	fperms 600 /etc/conf.d/iodined
+}


^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2022-12-03  1:37 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-12-03  1:37 [gentoo-commits] repo/gentoo:master commit in: net-vpn/iodine/files/, net-vpn/iodine/ Sam James

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox