summaryrefslogtreecommitdiff
path: root/net-misc/iodine
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /net-misc/iodine
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.xz
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'net-misc/iodine')
-rw-r--r--net-misc/iodine/Manifest1
-rw-r--r--net-misc/iodine/files/iodine-0.7.0-TestMessage.patch12
-rw-r--r--net-misc/iodine/files/iodine-0.7.0-new-systemd.patch33
-rw-r--r--net-misc/iodine/files/iodined-1.init62
-rw-r--r--net-misc/iodine/files/iodined.conf44
-rw-r--r--net-misc/iodine/files/iodined.init62
-rw-r--r--net-misc/iodine/iodine-0.7.0.ebuild51
-rw-r--r--net-misc/iodine/metadata.xml18
8 files changed, 283 insertions, 0 deletions
diff --git a/net-misc/iodine/Manifest b/net-misc/iodine/Manifest
new file mode 100644
index 00000000000..080608ceadf
--- /dev/null
+++ b/net-misc/iodine/Manifest
@@ -0,0 +1 @@
+DIST iodine-0.7.0.tar.gz 96181 SHA256 ad2b40acf1421316ec15800dcde0f587ab31d7d6f891fa8b9967c4ded93c013e SHA512 49fe4f0cf614d3400cbfdade84eb4f50430f8f92004f663a08acc1514e8ff342443a8c3f855828bbca1864a3fafe419b5256f8a80fc4024b364d4c8c953fc0ec WHIRLPOOL ac098f9a409c75768b6b2da0f755560ea932a97855df32aefe860237a28ebf1ef1b576860378575522221214d9dc65c26f0297fafe628ea770e4449217c5d593
diff --git a/net-misc/iodine/files/iodine-0.7.0-TestMessage.patch b/net-misc/iodine/files/iodine-0.7.0-TestMessage.patch
new file mode 100644
index 00000000000..6b814b6f2d7
--- /dev/null
+++ b/net-misc/iodine/files/iodine-0.7.0-TestMessage.patch
@@ -0,0 +1,12 @@
+--- iodine-0.7.0/Makefile
++++ iodine-0.7.0/Makefile
+@@ -35,8 +35,7 @@
+ $(RM) $(RM_FLAGS) $(DESTDIR)$(mandir)/man8/iodine.8
+
+ test: all
+- @echo "!! The check library is required for compiling and running the tests"
+- @echo "!! Get it at http://check.sf.net"
++ @echo "Executing tests target"
+ @(cd tests; $(MAKE) TARGETOS=$(TARGETOS) all)
+
+ clean:
diff --git a/net-misc/iodine/files/iodine-0.7.0-new-systemd.patch b/net-misc/iodine/files/iodine-0.7.0-new-systemd.patch
new file mode 100644
index 00000000000..1f54d38073d
--- /dev/null
+++ b/net-misc/iodine/files/iodine-0.7.0-new-systemd.patch
@@ -0,0 +1,33 @@
+From cc4bc22447d15deacf44bc1d369621a63c934427 Mon Sep 17 00:00:00 2001
+From: "Jason A. Donenfeld" <Jason@zx2c4.com>
+Date: Fri, 25 Jul 2014 02:02:48 +0200
+Subject: [PATCH] osflags: use pkg-config for systemd support
+
+Recent versions of systemd don't ship with libsystemd-daemon.so anymore,
+but instead use libsystemd.so for everything. This is obviously
+problematic for using the same LDFLAGS on old systemd and new systemd.
+So, they also ship compatability pkgconfig files, which use the old
+names but return the new library. So, the most portable way to support
+both old and new systemd is to use pkgconfig. It's not a problem either,
+since systems that use systemd are bound to also have pkgconfig
+installed.
+---
+ src/osflags | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/osflags b/src/osflags
+index 9eda8f0..0f8a26c 100755
+--- a/src/osflags
++++ b/src/osflags
+@@ -19,7 +19,7 @@ link)
+ Linux)
+ FLAGS="";
+ [ -e /usr/include/selinux/selinux.h ] && FLAGS="$FLAGS -lselinux";
+- [ -e /usr/include/systemd/sd-daemon.h ] && FLAGS="$FLAGS -lsystemd-daemon";
++ [ -e /usr/include/systemd/sd-daemon.h ] && FLAGS="$FLAGS $(pkg-config --libs libsystemd-daemon)";
+ echo $FLAGS;
+ ;;
+ esac
+--
+1.9.3
+
diff --git a/net-misc/iodine/files/iodined-1.init b/net-misc/iodine/files/iodined-1.init
new file mode 100644
index 00000000000..2db184a8d09
--- /dev/null
+++ b/net-misc/iodine/files/iodined-1.init
@@ -0,0 +1,62 @@
+#!/sbin/runscript
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+PID_FILE="/run/iodined.pid"
+
+depend() {
+ need net
+}
+
+start() {
+ ebegin "Starting iodined"
+ ARGS=""
+ 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-misc/iodine/files/iodined.conf b/net-misc/iodine/files/iodined.conf
new file mode 100644
index 00000000000..7889b0892ee
--- /dev/null
+++ b/net-misc/iodine/files/iodined.conf
@@ -0,0 +1,44 @@
+# /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"
+
diff --git a/net-misc/iodine/files/iodined.init b/net-misc/iodine/files/iodined.init
new file mode 100644
index 00000000000..bb0915f91ec
--- /dev/null
+++ b/net-misc/iodine/files/iodined.init
@@ -0,0 +1,62 @@
+#!/sbin/runscript
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+PID_FILE="/var/run/iodined.pid"
+
+depend() {
+ need net
+}
+
+start() {
+ ebegin "Starting iodined"
+ ARGS=""
+ 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/bin/iodined --pidfile $PID_FILE -- -F $PID_FILE $ARGS
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping iodined"
+ start-stop-daemon --stop --exec /usr/bin/iodined --pidfile $PID_FILE
+ eend $?
+}
diff --git a/net-misc/iodine/iodine-0.7.0.ebuild b/net-misc/iodine/iodine-0.7.0.ebuild
new file mode 100644
index 00000000000..ec2d1dd880d
--- /dev/null
+++ b/net-misc/iodine/iodine-0.7.0.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit linux-info eutils toolchain-funcs
+
+DESCRIPTION="IP over DNS tunnel"
+HOMEPAGE="http://code.kryo.se/iodine/"
+SRC_URI="http://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"
+
+RDEPEND="sys-libs/zlib"
+DEPEND="${RDEPEND}
+ test? ( dev-libs/check )"
+
+src_prepare(){
+ epatch "${FILESDIR}"/${P}-TestMessage.patch
+ epatch "${FILESDIR}"/${P}-new-systemd.patch
+
+ sed -e '/^\s@echo \(CC\|LD\)/d' \
+ -e 's:^\(\s\)@:\1:' \
+ -i {,src/}Makefile || die
+
+ tc-export CC
+}
+
+src_compile() {
+ #shipped ./Makefiles doesn't pass -j<n> to submake
+ emake -C src TARGETOS=Linux all
+}
+
+src_install() {
+ #don't re-run submake
+ sed -e '/^install:/s: all: :' \
+ -i Makefile || die
+ emake prefix="${EPREFIX}"usr DESTDIR="${D}" install
+
+ dodoc CHANGELOG README TODO
+
+ newinitd "${FILESDIR}"/iodined-1.init iodined
+ newconfd "${FILESDIR}"/iodined.conf iodined
+ keepdir /var/empty
+}
diff --git a/net-misc/iodine/metadata.xml b/net-misc/iodine/metadata.xml
new file mode 100644
index 00000000000..2fe9ba7b2dd
--- /dev/null
+++ b/net-misc/iodine/metadata.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>proxy-maintainers</herd>
+ <maintainer>
+ <email>vostorga@gentoo.org</email>
+ <name>Víctor Ostorga</name>
+ </maintainer>
+ <maintainer>
+ <email>root@kryo.se</email>
+ <name>Erik Ekman</name>
+ </maintainer>
+ <maintainer>
+ <email>zx2c4@gentoo.org</email>
+ <name>Jason A. Donenfeld</name>
+ </maintainer>
+ <longdescription>iodine lets you tunnel IPv4 data through a DNS server. This can be usable in different situations where internet access is firewalled, but DNS queries are allowed</longdescription>
+</pkgmetadata>