summaryrefslogtreecommitdiff
path: root/recipes/tinc
diff options
context:
space:
mode:
Diffstat (limited to 'recipes/tinc')
-rw-r--r--recipes/tinc/files/init77
-rw-r--r--recipes/tinc/files/mtu-vlan.diff12
-rw-r--r--recipes/tinc/files/public-key-fix.diff21
-rw-r--r--recipes/tinc/tinc_1.0.2.bb31
4 files changed, 141 insertions, 0 deletions
diff --git a/recipes/tinc/files/init b/recipes/tinc/files/init
new file mode 100644
index 0000000000..eb8b35bd12
--- /dev/null
+++ b/recipes/tinc/files/init
@@ -0,0 +1,77 @@
+#! /bin/sh
+#
+# System startup script for tinc
+# $Id: tinc,v 1.1 2004/02/19 12:40:16 br1 Exp $
+#
+# Based on Lubomir Bulej's Redhat init script.
+#
+# Create a file $NETSFILE (/etc/tinc/nets.boot), and put all the names of
+# the networks in there. These names must be valid directory names under
+# $TCONF (/etc/tinc). Lines starting with a # will be ignored in this
+# file.
+#
+
+DAEMON="/usr/sbin/tincd"
+NAME="tinc"
+DESC="tinc daemons"
+TCONF="/etc/tinc"
+EXTRA=""
+NETSFILE="$TCONF/nets.boot"
+NETS=""
+
+test -f $DAEMON || exit 0
+
+find_nets () {
+ if [ ! -f $NETSFILE ] ; then
+ echo "Please create $NETSFILE."
+ exit 0
+ fi
+ NETS="`egrep '^[ ]*[a-zA-Z0-9_]+[ ]*$' $NETSFILE`"
+}
+
+case "$1" in
+ start)
+ find_nets
+ echo -n "Starting $DESC:"
+ for n in $NETS ; do
+ echo -n " $n"
+ $DAEMON -n $n $EXTRA
+ done
+ echo "."
+ ;;
+ stop)
+ find_nets
+ echo -n "Stopping $DESC:"
+ for n in $NETS ; do
+ echo -n " $n"
+ $DAEMON -n $n $EXTRA -k
+ done
+ echo "."
+ ;;
+ reload)
+ find_nets
+ echo -n "Reloading $DESC configuration:"
+ for n in $NETS ; do
+ echo -n " $n"
+ $DAEMON -n $n $EXTRA -k1
+ done
+ echo "."
+ ;;
+ restart|force-reload)
+ find_nets
+ echo -n "Restarting $DESC:"
+ for n in $NETS ; do
+ echo -n " $n"
+ $DAEMON -n $n $EXTRA -k
+ sleep 1
+ $DAEMON -n $n $EXTRA
+ done
+ echo "."
+ ;;
+ *)
+ echo "Usage: /etc/init.d/$NAME {start|stop|reload|restart|force-reload}"
+ exit 1
+ ;;
+esac
+
+exit 0
diff --git a/recipes/tinc/files/mtu-vlan.diff b/recipes/tinc/files/mtu-vlan.diff
new file mode 100644
index 0000000000..f244537662
--- /dev/null
+++ b/recipes/tinc/files/mtu-vlan.diff
@@ -0,0 +1,12 @@
+diff -u -r1.1 -r1.2
+--- tinc/src/net.h 2004/02/19 11:55:20 1.1
++++ tinc/src/net.h 2004/03/25 11:14:45 1.2
+@@ -30,7 +30,7 @@
+ #ifdef ENABLE_JUMBOGRAMS
+ #define MTU 9014 /* 9000 bytes payload + 14 bytes ethernet header */
+ #else
+-#define MTU 1514 /* 1500 bytes payload + 14 bytes ethernet header */
++#define MTU 1518 /* 1500 bytes payload + 14 bytes ethernet header + 4 bytes VLAN header */
+ #endif
+
+ #define MAXSIZE (MTU + 4 + EVP_MAX_BLOCK_LENGTH + EVP_MAX_MD_SIZE + MTU/64 + 20) /* MTU + seqno + padding + HMAC + compressor overhead */ \ No newline at end of file
diff --git a/recipes/tinc/files/public-key-fix.diff b/recipes/tinc/files/public-key-fix.diff
new file mode 100644
index 0000000000..550cd67283
--- /dev/null
+++ b/recipes/tinc/files/public-key-fix.diff
@@ -0,0 +1,21 @@
+don't load public key for "myself" because this creates problems with
+keys saved in the subjectPublicKeyInfo format (as keys extracted from a
+certificate) and is not necessary anyways because the private key already
+contains the public key.
+
+diff -u -r1.1 -r1.2
+--- tinc/src/net_setup.c 2004/02/19 11:55:20 1.1
++++ tinc/src/net_setup.c 2004/02/19 13:00:43 1.2
+@@ -250,8 +250,10 @@
+ return false;
+ }
+
+- if(!read_rsa_public_key(myself->connection))
+- return false;
++ //br1: not needed because private key already contains the public key
++ //br1: removed because it creates problems with subjectPublicKeyInfo format keys
++ //if(!read_rsa_public_key(myself->connection))
++ // return false;
+
+ if(!get_config_string
+ (lookup_config(myself->connection->config_tree, "Port"), &myport)) \ No newline at end of file
diff --git a/recipes/tinc/tinc_1.0.2.bb b/recipes/tinc/tinc_1.0.2.bb
new file mode 100644
index 0000000000..26a97ed38a
--- /dev/null
+++ b/recipes/tinc/tinc_1.0.2.bb
@@ -0,0 +1,31 @@
+SECTION = "console/network"
+DESCRIPTION ="tinc is a Virtual Private Network (VPN) daemon"
+HOMEPAGE = "http://www.tinc-vpn.org/"
+LICENSE = "GPLv2"
+PR = "r1"
+
+SRC_URI="http://www.tinc-vpn.org/packages/tinc-1.0.2.tar.gz \
+ file://mtu-vlan.diff;patch=1 \
+ file://public-key-fix.diff;patch=1 \
+ file://init"
+
+DEPENDS = "openssl lzo zlib"
+RRECOMMENDS = "kernel-module-tun"
+
+inherit autotools
+
+EXTRA_OECONF = "--disable-maintainer-mode --disable-tracing"
+
+do_configure() {
+ oe_runconf
+}
+
+do_compile() {
+ oe_runmake
+}
+
+do_install() {
+ oe_runmake install DESTDIR=${D}
+ install -d ${D}${sysconfdir}/init.d
+ install -m 0755 ${WORKDIR}/init ${D}${sysconfdir}/init.d/tinc
+}