New upstream release:
authorgregor herrmann <gregoa@debian.org>
Fri, 8 Aug 2008 18:29:49 +0000 (18:29 -0000)
committergregor herrmann <gregoa@debian.org>
Fri, 8 Aug 2008 18:29:49 +0000 (18:29 -0000)
26 files changed:
debian/README.Debian [new file with mode: 0644]
debian/README.source [new file with mode: 0644]
debian/changelog [new file with mode: 0644]
debian/compat [new file with mode: 0644]
debian/config [new file with mode: 0644]
debian/control [new file with mode: 0644]
debian/copyright [new file with mode: 0644]
debian/iodine-jigger [new file with mode: 0644]
debian/iodine.iodined.init [new file with mode: 0644]
debian/patches/01_mandir.patch [new file with mode: 0644]
debian/patches/02_make.patch [new file with mode: 0644]
debian/patches/03_cflags.patch [new file with mode: 0644]
debian/patches/04_base64.patch [new file with mode: 0644]
debian/patches/series [new file with mode: 0644]
debian/po/POTFILES.in [new file with mode: 0644]
debian/po/cs.po [new file with mode: 0644]
debian/po/de.po [new file with mode: 0644]
debian/po/fr.po [new file with mode: 0644]
debian/po/nl.po [new file with mode: 0644]
debian/po/pt.po [new file with mode: 0644]
debian/po/templates.pot [new file with mode: 0644]
debian/postinst [new file with mode: 0644]
debian/postrm [new file with mode: 0644]
debian/rules [new file with mode: 0755]
debian/templates [new file with mode: 0644]
debian/watch [new file with mode: 0644]

diff --git a/debian/README.Debian b/debian/README.Debian
new file mode 100644 (file)
index 0000000..e299ada
--- /dev/null
@@ -0,0 +1,8 @@
+iodine for Debian
+-----------------
+
+* Please note that iodine(d) needs the tun kernel module.
+* Instruction for setting up the infrastructure (including delegating a new
+  subdomain) are included in /usr/share/doc/iodine/README and in iodined(8).
+* /usr/share/doc/iodine/examples contains an example script for setting up a
+  tunnel and routing through it from the client side.
diff --git a/debian/README.source b/debian/README.source
new file mode 100644 (file)
index 0000000..7df3fd2
--- /dev/null
@@ -0,0 +1,6 @@
+This package uses quilt to manage all modifications to the upstream
+source.  Changes are stored in the source package as diffs in
+debian/patches and applied during the build.
+
+See /usr/share/doc/quilt/README.source for a detailed explanation.
+
diff --git a/debian/changelog b/debian/changelog
new file mode 100644 (file)
index 0000000..ee71042
--- /dev/null
@@ -0,0 +1,128 @@
+iodine (0.4.2-1) UNRELEASED; urgency=low
+
+  * New upstream release:
+
+ -- gregor herrmann <gregoa@debian.org>  Fri, 08 Aug 2008 15:22:19 -0300
+
+iodine (0.4.1-4) unstable; urgency=low
+
+  * Add Czech debconf translation, thanks to Daniel Kavan
+    (closes: #483299).
+  * Add note for translators to debconf template and change back localized
+    versions of ".example" to the original as mandated by RFC 2606.
+  * Convert de.po from ISO-8859-1 to UTF-8.
+  * debian/control: change my email address.
+  * Switch patch system from dpatch to quilt.
+  * Add example script iodine-jigger (script to set up an iodine tunnel and
+    route traffic through it) by Barak A. Pearlmutter (closes: #491294).
+    Thanks, Barak! Add copyright/license information about the script to
+    debian/copyright. Mention the example script in README.Debian.
+  * debian/copyright: wrap a long line, update years of packing copyright and
+    my email address.
+  * Set Standards-Version to 3.8.0; add debian/README.source to document
+    quilt usage.
+
+ -- gregor herrmann <gregoa@debian.org>  Thu, 24 Jul 2008 18:35:59 +0200
+
+iodine (0.4.1-3) unstable; urgency=low
+
+  * Fix LSB header in init.d script, thanks to Petter Reinholdtsen for the
+    report and the patch (closes: #468653).
+  * Set debhelper compatibility level to 6.
+  * New patch 04_base64: don't build/test {src,tests}/base64* anymore, causes
+    a FBTFS on hppa, and isn't actually used anyway (closes: #468404).
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at>  Sat, 01 Mar 2008 19:01:22 +0100
+
+iodine (0.4.1-2) unstable; urgency=low
+
+  * Set Standards-Version to 3.7.3 (no changes required).
+  * Create install-stamp target in debian/rules and adjust target
+    dependencies.
+  * Change debian/copyright to the new machine-readable format.
+  * Add patch 03_cflags.dpatch: use CFLAGS from debian/rules in upstream
+    Makefiles.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at>  Tue, 05 Feb 2008 17:31:25 +0100
+
+iodine (0.4.1-1) unstable; urgency=low
+
+  * New upstream release:
+    - hides password from ps and stdin (closes: #432719).
+    - uses /etc/resolv.conf (closes: #432867).
+    - incorporates patch to daemonize before chrooting and dropping
+      privileges, therefore dropping 02_detach.dpatch.
+    - uses $(MAKE) in Makefile, except in one case, therefore adding patch
+      02_make.dpatch.
+    - fixes the install dir for the manpage, therefore adapting patch
+      01_mandir.dpatch.
+  * debian/copyright: update years of copyright.
+  * debian/rules: use $(DPATCH_STAMPFN) and $@.
+  * Mention (improved) manpage in README.Debian.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at>  Sat, 01 Dec 2007 02:30:51 +0100
+
+iodine (0.4.0-5) unstable; urgency=low
+
+  * Apply patch for "init script fails to restart", thanks to Horst
+    Schirmeier (closes: #453001).
+  * debian/rules: make configure-stamp depend on patch.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at>  Mon, 26 Nov 2007 20:36:41 +0100
+
+iodine (0.4.0-4) unstable; urgency=low
+
+  * Add French debconf translation, thanks to Christian Perrier
+    (closes: #434323).
+  * Add Dutch debconf translation, thanks to Bart Cornelis
+    (closes: #451396).
+  * Clean up debian/rules.
+  * Don't install TODO anymore, and remove debian/docs.
+  * Move upstream URL from the description to the new Homepage field.
+  * Change XS-Vcs-* fields to Vcs-*.
+  * Add patch to daemonize before chrooting and dropping privileges, thanks
+    to Matthew William Solloway Bell (closes: #450759).
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at>  Fri, 16 Nov 2007 12:48:50 +0100
+
+iodine (0.4.0-3) unstable; urgency=low
+
+  * Add Portuguese translation for debconf messages, thanks to Américo
+    Monteiro and Miguel Figueiredo (closes: #433041).
+  * Add German debconf translation, thanks to Helge Kreutzmann
+    (closes: #433296).
+  * Fix typo in debconf template, thanks to Helge Kreutzmann
+    (closes: #433297).
+  * Add debconf-updatepo to debian/rule's clean target.
+  * Convert debian/changelog to UTF-8.
+  * Fix usage of MAKEDEV, thanks to Marco d'Itri (closes: #434160).
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at>  Sun, 22 Jul 2007 16:27:51 +0200
+
+iodine (0.4.0-2) unstable; urgency=low
+
+  * Change mode of /etc/default/iodine to 600, thanks to Lennart Poettering
+    (cf. #432719).
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at>  Wed, 11 Jul 2007 18:10:12 +0200
+
+iodine (0.4.0-1) unstable; urgency=low
+
+  * Initial upload to the Debian archive (closes: #430206).
+  * New upstream release.
+  * Fix debian/watch.
+  * Don't create manpages anymore, now included in upstream tarball.
+  * Change debian/rules; upstream Makefile now includes install and test targets.
+  * Move makedev from Build-Depends to Depends.
+  * Add password option to debconf questions and /etc/default/iodine.
+  * Change order in postinst.
+  * Add user iodine and run iodined in a chroot as this user.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at>  Sat, 23 Jun 2007 14:49:46 +0200
+
+iodine (0.3.4-1) unstable; urgency=low
+
+  * Initial release.
+
+ -- gregor herrmann <gregor+debian@comodo.priv.at>  Fri, 26 Jan 2007 14:03:30 +0100
+
diff --git a/debian/compat b/debian/compat
new file mode 100644 (file)
index 0000000..1e8b314
--- /dev/null
@@ -0,0 +1 @@
+6
diff --git a/debian/config b/debian/config
new file mode 100644 (file)
index 0000000..36e4345
--- /dev/null
@@ -0,0 +1,30 @@
+#!/bin/sh
+
+set -e
+
+. /usr/share/debconf/confmodule
+
+if [ -s /etc/default/iodine ] ; then
+       . /etc/default/iodine
+       if [ -n "$START_IODINED" ] ; then
+               db_set iodine/start_daemon "$START_IODINED"
+       fi
+       if [ -n "$IODINED_ARGS" ] ; then
+               db_set iodine/daemon_options "$IODINED_ARGS"
+       fi
+       if [ -n "$IODINED_PASSWORD" ] ; then
+               db_set iodine/daemon_password "$IODINED_PASSWORD"
+       fi
+fi
+
+db_input medium iodine/start_daemon || true
+db_go
+
+db_get iodine/start_daemon
+START_DAEMON=$RET
+
+if [ "x$START_DAEMON" = "xtrue" ] ; then
+       db_input medium iodine/daemon_options || true
+       db_input medium iodine/daemon_password || true
+       db_go
+fi
diff --git a/debian/control b/debian/control
new file mode 100644 (file)
index 0000000..19035ee
--- /dev/null
@@ -0,0 +1,22 @@
+Source: iodine
+Section: net
+Priority: extra
+Maintainer: gregor herrmann <gregoa@debian.org>
+Uploaders: tony mancill <tmancill@debian.org>
+Build-Depends: debhelper (>= 6), po-debconf, zlib1g-dev, quilt (>= 0.40), check
+Standards-Version: 3.8.0
+Homepage: http://code.kryo.se/iodine
+Vcs-Svn: http://svn.toastfreeware.priv.at/debian/iodine/trunk/
+Vcs-Browser: http://svn.toastfreeware.priv.at/wsvn/ToastfreewareDebian/iodine/trunk/
+
+Package: iodine
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}, udev | makedev, adduser
+Description: tool for tunneling IPv4 data through a DNS server
+ This is a piece of software that 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.
+ .
+ iodine is similar to nstx but has password authentication, brings up the
+ tun interface automatically and lets the user specify the IP address as a
+ command line option.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644 (file)
index 0000000..c7db69f
--- /dev/null
@@ -0,0 +1,64 @@
+Upstream source location: http://code.kryo.se/iodine
+
+Files: *
+Copyright: © 2006-2007 Bjorn Andersson <flex@kryo.se>,
+ Erik Ekman <yarrick@kryo.se>
+License: MIT
+ Permission to use, copy, modify, and distribute this software for any
+ purpose with or without fee is hereby granted, provided that the above
+ copyright notice and this permission notice appear in all copies.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
+ SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
+ OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
+ CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+Files: src/md5.*
+Copyright: © 1999, [2000, ]2002 Aladdin Enterprises.  All rights reserved.
+License: other
+ This software is provided 'as-is', without any express or implied
+ warranty.  In no event will the authors be held liable for any damages
+ arising from the use of this software.
+ .
+ Permission is granted to anyone to use this software for any purpose,
+ including commercial applications, and to alter it and redistribute it
+ freely, subject to the following restrictions:
+ .
+ 1. The origin of this software must not be misrepresented; you must not
+    claim that you wrote the original software. If you use this software
+    in a product, an acknowledgment in the product documentation would be
+    appreciated but is not required.
+ 2. Altered source versions must be plainly marked as such, and must not be
+    misrepresented as being the original software.
+ 3. This notice may not be removed or altered from any source distribution.
+ .
+ L. Peter Deutsch
+ ghost@aladdin.com
+
+Files: debian/*
+Copyright:
+ © 2007-2008, gregor herrmann <gregoa@debian.org>
+ © 2007-2008, tony mancill <tmancill@debian.org>
+License: GPL-1+
+
+See `/usr/share/common-licenses/GPL'.
+
+Files: debian/iodine-jigger
+Copyright: © 2008 Barak A. Pearlmutter <bap@debian.org>
+License: MIT
+ Permission to use, copy, modify, and distribute this software for
+ any purpose with or without fee is hereby granted, provided that
+ the above copyright notice and this permission notice appear in
+ all copies.
+ .
+ THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
+ WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
+ WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
+ AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR
+ CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
+ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
+ NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
+ CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
diff --git a/debian/iodine-jigger b/debian/iodine-jigger
new file mode 100644 (file)
index 0000000..0bb32ae
--- /dev/null
@@ -0,0 +1,248 @@
+#! /bin/bash
+
+### Script to set up an iodine tunnel route traffic through it
+###
+### Copyright 2008 Barak A. Pearlmutter <bap@debian.org>
+###
+### License: MIT
+###
+### Permission to use, copy, modify, and distribute this software for
+### any purpose with or without fee is hereby granted, provided that
+### the above copyright notice and this permission notice appear in
+### all copies.
+###
+### THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL
+### WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED
+### WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE
+### AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR
+### CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
+### LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
+### NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
+### CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+## Cause script to bail immediately on failed command
+set -e
+
+## Options for user to set.
+
+## Minimal customization: put the two lines
+##  subdomain=your.tunnel.sub.domain
+##  passed=password_for_that_tunnel
+## in the file /etc/default/iodine-client.
+
+echo "${iodine_client_rc:=/etc/default/iodine-client}" > /dev/null
+
+if [ -r ${iodine_client_rc} ]; then
+    . ${iodine_client_rc}
+else
+    echo WARNING: Cannot read ${iodine_client_rc}
+fi
+
+if [ -z ${subdomain} ]; then
+    read -p "DNS tunnel DNS subdomain: " subdomain
+fi
+
+if [ -z ${subdomain} ]; then
+    echo ERROR: Must set subdomain.
+    exit 1
+fi
+
+if [ -z ${passwd} ]; then
+    read -p "Password for DNS tunnel over ${subdomain}: " passwd
+fi
+
+## This is a host name used for testing DNS and for pinging
+echo "${testhost:=slashdot.org}"               > /dev/null
+
+## Set if local network should be taken down and then up
+echo "${bounce_localnet:=true}"                        > /dev/null
+
+## Set for testing network availability via ping at various points
+echo "${test_ping_localnet:=true}"             > /dev/null
+echo "${test_ping_tunnel:=true}"               > /dev/null
+echo "${test_ping_final:=true}"                        > /dev/null
+
+## Set if the script cannot find and then incorrectly guesses the
+## local network router
+echo "${default_router}"                       > /dev/null
+
+## Set if script uses the wrong hardware interface
+echo "{interface}"                             > /dev/null
+
+## Set if the script should continue even if a command fails.
+## Used to test script when running as non-root.
+if [ $(whoami) = root ]; then
+    echo "${continue_on_error:=false}"         > /dev/null
+else
+    echo "${continue_on_error:=true}"          > /dev/null
+fi
+
+## DEBIAN PACKAGES TO INSTALL: these are needed to run this script
+##  iodine (for /usr/sbin/iodine)
+##  iproute (for /bin/ip)
+##  ipcalc (for /usr/bin/ipcalc)
+##  dnsutils (for /usr/bin/dig)
+##  fping (for /usr/bin/fping)
+
+## The default tunnel MTU is 1024.
+## If local DNS server restricts to 512 byte packets then do this:
+# ifconfig ${d} mtu 220
+
+## TO DO
+## - avoid double ping when DNS server and local router are the same
+## - option to not kill existing iodine DNS tunnels, in case there
+##   are meant to be more than one
+## - sanify check whether default_router is on local network
+
+echo ==== Creating IP-over-DNS tunnel over local network connection...
+
+
+## Find a network interface
+
+if [ -z ${interface} ]; then
+    interface=$(tail --lines=+3 /proc/net/wireless \
+       | head -1 | tr -d : | awk '{print $1}')
+fi
+
+if [ -z ${interface} ]; then
+    interface=$(ifconfig -a | egrep '^[^ ].*encap:Ethernet' \
+       | head -1 | awk '{print $1}')
+fi
+
+if [ -z ${interface} ]; then
+    echo ERROR: No network interface found.
+    exit 1
+fi
+
+echo ==== Local network interface: ${interface}
+
+## Down any existing DNS tunnel (wish there were "approved" way to do this)
+
+echo ==== Killing existing DNS tunnels...
+if killall --quiet --wait --verbose --signal HUP iodine; then
+    sleep 2
+fi
+
+## Stabilize local network
+
+if ${bounce_localnet}; then
+    echo ==== Bouncing local network connection...
+    ifdown --force ${interface} || true
+    ifup ${interface} || ${continue_on_error}
+fi
+
+## Fetch some information about the local network
+
+addr=$(ip -4 addr show dev ${interface} scope global \
+    | tail -1 | awk '{print $2}')
+prefix_len=$(echo ${addr} | sed 'sX^.*/XX')
+local_net=$(ipcalc --nobinary ${addr} | awk '$1=="Network:" {print $2}')
+
+echo ==== Local address: ${addr}
+echo ==== Local network: ${local_net}
+
+router=$(ip -4 route list dev ${interface} \
+    | awk '$1=="default" {print $3}' | head -1)
+if [ -z ${router} ]; then
+    ## This can happen when the default local route is already deleted
+    if [ -z ${default_router} ]; then
+       echo WARNING: no default route, guessing local router IP address.
+       ## Minimum address on local net is usually right
+       router=$(ipcalc --nobinary ${addr} | awk '$1=="HostMin:" {print $2}')
+    else
+       echo WARNING: no default route, using configured default router.
+       ## But sometimes need to hardwire...
+       router=${default_router}
+    fi
+fi
+
+echo ==== Local network router: ${router}
+
+## Test DNS service
+
+testhost_ip=$(dig +short -t A -q ${testhost})
+if [ -z ${testhost_ip} ]; then
+    echo WARNING: Failure on DNS lookup of ${testhost}.
+fi
+
+## fetch DNS servers
+
+nameservers=$(awk '$1=="nameserver" {print $2}' /etc/resolv.conf)
+if [ -n "${nameservers}" ]; then
+    echo ==== DNS servers: ${nameservers}
+else
+    echo ERROR: No DNS servers found.
+    exit 1
+fi
+
+## Test if local network is up
+
+if ${test_ping_localnet}; then
+    echo ==== Ping test of  local network router and DNS servers...
+    fping -C1 ${router} ${nameservers} \
+       || echo WARNING: Ping test failed.
+fi
+
+## Add point-to-point routes for any non-local DNS servers
+
+for n in ${nameservers}; do
+    n_net=$(ipcalc --nobinary ${n}/${prefix_len} | awk '$1=="Network:" {print $2}')
+    if [ "${n_net}" != "${local_net}" ]; then
+       echo ==== Adding point-to-point route for DNS server ${n}
+       ip -4 route add ${n}/32 via ${router} || ${continue_on_error}
+    fi
+done
+
+## Bring up DNS tunnel
+
+echo ==== Creating IP-over-DNS tunnel...
+iodine -P ${passwd} ${subdomain} || ${continue_on_error}
+
+## Find DNS tunnel interface
+
+tunnel_interface=$(ifconfig -a | egrep '^dns' | awk '{print $1}' | head -1)
+if [ -z "${tunnel_interface}" ]; then
+    echo WARNING: Cannot find DNS tunnel interface, using default.
+    tunnel_interface=dns0
+fi
+echo ==== DNS tunnel interface: ${tunnel_interface}
+
+## Figure out router at other end of tunnel, assuming router uses final octet .1
+## (There should be some way to get this information out of iodine, since
+## it *prints* it as it sets up the tunnel, so it does know it.)
+
+tunnel_remote=$(ip -4 address show dev ${tunnel_interface} \
+    | awk '$1=="inet" {print gensub("[.][0-9]*/.*", ".1", 1, $2)}' | head -1)
+
+if [ -z ${tunnel_remote} ]; then
+    echo ERROR: Cannot find DNS tunnel remote endpoint.
+    ${continue_on_error}
+    ## set something random if debugging
+    echo WARNING: Confabulating DNS tunnel remote endpoint.
+    tunnel_remote=192.168.253.1
+fi
+
+echo ==== DNS tunnel remote endpoint: ${tunnel_remote}
+
+if ${test_ping_tunnel}; then
+    echo ==== Ping test of local router, nameserver, and DNS tunnel...
+    fping -C1 ${router} ${nameservers} ${tunnel_remote} \
+       || echo WARNING: Ping test failed.
+fi
+
+## Modify routing table to send trafic via DNS tunnel
+
+echo ==== Setting default route through DNS tunnel...
+
+## Remove default route via local router
+ip -4 route del default via ${router} || ${continue_on_error}
+## Add default via tunnel
+ip -4 route add default via ${tunnel_remote} || ${continue_on_error}
+
+## Test if all is well
+
+if ${test_ping_final}; then
+    echo ==== Ping test of local router, nameserver, DNS tunnel, external test host...
+    fping -C1 ${router} ${nameservers} ${tunnel_remote} ${testhost_ip:-${testhost}} \
+       || echo WARNING: Ping test failed.
+fi
diff --git a/debian/iodine.iodined.init b/debian/iodine.iodined.init
new file mode 100644 (file)
index 0000000..a7227ec
--- /dev/null
@@ -0,0 +1,143 @@
+#! /bin/sh
+### BEGIN INIT INFO
+# Provides:          iodined
+# Required-Start:    $remote_fs $network
+# Required-Stop:     $remote_fs $network
+# Default-Start:     2 3 4 5
+# Default-Stop:      0 1 6
+# Short-Description: initscript for iodined
+# Description:       initscript for iodined
+### END INIT INFO
+
+# Author: gregor herrmann <gregor+debian@comodo.priv.at>
+
+# Do NOT "set -e"
+
+# PATH should only include /usr/* if it runs after the mountnfs.sh script
+PATH=/sbin:/usr/sbin:/bin:/usr/bin
+DESC="IP over DNS tunneling server"
+NAME=iodined
+DAEMON=/usr/sbin/$NAME
+DEFAULT=iodine
+DAEMON_ARGS=""
+PIDFILE=/var/run/$NAME.pid
+SCRIPTNAME=/etc/init.d/$NAME
+
+# Exit if the package is not installed
+[ -x "$DAEMON" ] || exit 0
+
+# Read configuration variable file or exit
+[ -r /etc/default/$DEFAULT ] || exit 0
+. /etc/default/$DEFAULT
+
+# Load the VERBOSE setting and other rcS variables
+. /lib/init/vars.sh
+
+# Define LSB log_* functions.
+# Depend on lsb-base (>= 3.0-6) to ensure that this file is present.
+. /lib/lsb/init-functions
+
+# Get config
+get_config() {
+       if [ "$START_IODINED" != "true" ] ; then
+               log_warning_msg "$NAME is not configured to start automatically. Change this in /etc/default/$DEFAULT or run dpkg-reconfigure $DEFAULT."
+               exit 0
+       else
+               if [ -n "$IODINED_ARGS" ] && [ -n "$IODINED_PASSWORD" ] ; then
+                       DAEMON_ARGS="-u iodine -t /var/run/iodine -P $IODINED_PASSWORD $IODINED_ARGS"
+               else
+                       log_warning_msg "$NAME is not fully configured. Change this in /etc/default/$DEFAULT or run dpkg-reconfigure $DEFAULT."
+                       exit 0
+               fi
+       fi
+}
+
+#
+# Function that starts the daemon/service
+#
+do_start()
+{
+       # populate $DAEMON_ARGS
+       get_config
+       # Return
+       #   0 if daemon has been started
+       #   1 if daemon was already running
+       #   2 if daemon could not be started
+       start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON --test > /dev/null \
+               || return 1
+       start-stop-daemon --start --quiet --pidfile $PIDFILE --exec $DAEMON -- \
+               $DAEMON_ARGS \
+               || return 2
+       # Add code here, if necessary, that waits for the process to be ready
+       # to handle requests from services started subsequently which depend
+       # on this one.  As a last resort, sleep for some time.
+}
+
+#
+# Function that stops the daemon/service
+#
+do_stop()
+{
+       # Return
+       #   0 if daemon has been stopped
+       #   1 if daemon was already stopped
+       #   2 if daemon could not be stopped
+       #   other if a failure occurred
+       start-stop-daemon --stop --quiet --retry=TERM/5/KILL/5 --pidfile $PIDFILE --name $NAME
+       RETVAL="$?"
+       [ "$RETVAL" = 2 ] && return 2
+       # Wait for children to finish too if this is a daemon that forks
+       # and if the daemon is only ever run from this initscript.
+       # If the above conditions are not satisfied then add some other code
+       # that waits for the process to drop all resources that could be
+       # needed by services started subsequently.  A last resort is to
+       # sleep for some time.
+       start-stop-daemon --stop --quiet --oknodo --retry=0/5/KILL/5 --exec $DAEMON
+       [ "$?" = 2 ] && return 2
+       # Many daemons don't delete their pidfiles when they exit.
+       rm -f $PIDFILE
+       return "$RETVAL"
+}
+
+case "$1" in
+  start)
+       [ "$VERBOSE" != no ] && log_daemon_msg "Starting $DESC" "$NAME"
+       do_start
+       case "$?" in
+               0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
+               2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
+       esac
+       ;;
+  stop)
+       [ "$VERBOSE" != no ] && log_daemon_msg "Stopping $DESC" "$NAME"
+       do_stop
+       case "$?" in
+               0|1) [ "$VERBOSE" != no ] && log_end_msg 0 ;;
+               2) [ "$VERBOSE" != no ] && log_end_msg 1 ;;
+       esac
+       ;;
+  restart|force-reload)
+       log_daemon_msg "Restarting $DESC" "$NAME"
+       do_stop
+       case "$?" in
+         0|1)
+               do_start
+               case "$?" in
+                       0) log_end_msg 0 ;;
+                       1) log_end_msg 1 ;; # Old process is still running
+                       *) log_end_msg 1 ;; # Failed to start
+               esac
+               ;;
+         *)
+               # Failed to stop
+               log_end_msg 1
+               ;;
+       esac
+       ;;
+  *)
+       echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload}" >&2
+       exit 3
+       ;;
+esac
+
+:
diff --git a/debian/patches/01_mandir.patch b/debian/patches/01_mandir.patch
new file mode 100644 (file)
index 0000000..2626fb8
--- /dev/null
@@ -0,0 +1,33 @@
+Author: <gregor+debian@comodo.priv.at>
+Description: escape - in manpage
+--- iodine.orig/man/iodine.8
++++ iodine/man/iodine.8
+@@ -124,13 +124,13 @@
+ .TP
+ Try it out within your own LAN! Follow these simple steps:
+ .TP
+-- On your server, run: ./iodined -f 10.0.0.1 test.asdf
++- On your server, run: ./iodined \-f 10.0.0.1 test.asdf
+ (If you already use the 10.0.0.0 network, use another internal net like 
+ 172.16.0.0)
+ .TP
+ - Enter a password
+ .TP
+-- On the client, run: ./iodine -f 192.168.0.1 test.asdf
++- On the client, run: ./iodine \-f 192.168.0.1 test.asdf
+ (Replace 192.168.0.1 with the server's ip address)
+ .TP
+ - Enter the same password
+@@ -160,10 +160,10 @@
+ Now any DNS querys for domains ending with tunnel1.mytunnnel.com will be sent
+ to your server. Start iodined on the server. The first argument is the tunnel
+ IP address (like 192.168.99.1) and the second is the assigned domain (in this
+-case tunnel1.mytunnel.com). The -f argument will keep iodined running in the
++case tunnel1.mytunnel.com). The \-f argument will keep iodined running in the
+ foreground, which helps when testing. iodined will start a virtual interface,
+ and also start listening for DNS queries on UDP port 53. Either enter a
+-password on the commandline (-P pass) or after the server has started. Now 
++password on the commandline (\-P pass) or after the server has started. Now
+ everything is ready for the client.
+ .TP
+ .B Client side: 
diff --git a/debian/patches/02_make.patch b/debian/patches/02_make.patch
new file mode 100644 (file)
index 0000000..93e26fa
--- /dev/null
@@ -0,0 +1,13 @@
+Author: <gregor+debian@comodo.priv.at>
+Description: Always use $(MAKE)
+--- iodine.orig/Makefile
++++ iodine/Makefile
+@@ -35,7 +35,7 @@
+ test: all
+       @echo "!! The check library is required for compiling and running the tests"
+       @echo "!! Get it at http://check.sf.net"
+-      @(cd tests; make all)
++      @(cd tests; $(MAKE) all)
+ clean:
+       @echo "Cleaning..."
diff --git a/debian/patches/03_cflags.patch b/debian/patches/03_cflags.patch
new file mode 100644 (file)
index 0000000..285601d
--- /dev/null
@@ -0,0 +1,24 @@
+Author: <gregor+debian@comodo.priv.at>
+Description: Combine upstream CFLAGS with CFLAGS from debian/rules.
+--- iodine.orig/src/Makefile
++++ iodine/src/Makefile
+@@ -9,7 +9,7 @@
+ ARCH = `uname -m`
+ LDFLAGS =  -lz
+-CFLAGS = -c -g -Wall -D$(OS) -pedantic
++CFLAGS += -c -D$(OS) -pedantic
+ all: stateos $(CLIENT) $(SERVER) $(TESTSUITE) 
+--- iodine.orig/tests/Makefile
++++ iodine/tests/Makefile
+@@ -6,7 +6,7 @@
+ OS = `uname | tr "a-z" "A-Z"`
+ LDFLAGS =  -L/usr/local/lib -lcheck
+-CFLAGS = -g -Wall -D$(OS) -I../src -I/usr/local/include -pedantic
++CFLAGS += -D$(OS) -I../src -I/usr/local/include -pedantic
+ all: $(TEST)
+       @./$(TEST)
diff --git a/debian/patches/04_base64.patch b/debian/patches/04_base64.patch
new file mode 100644 (file)
index 0000000..8c5264a
--- /dev/null
@@ -0,0 +1,36 @@
+Author: <gregor+debian@comodo.priv.at>
+Description: Don't build/test base64.*; causes a build failure on hppa,
+and isn't used anyway.
+--- iodine.orig/src/Makefile
++++ iodine/src/Makefile
+@@ -1,5 +1,5 @@
+ CC = gcc
+-COMMONOBJS = tun.o dns.o read.o encoding.o login.o base32.o base64.o md5.o common.o
++COMMONOBJS = tun.o dns.o read.o encoding.o login.o base32.o md5.o common.o
+ CLIENTOBJS = iodine.o
+ CLIENT = ../bin/iodine
+ SERVEROBJS = iodined.o user.o
+--- iodine.orig/tests/Makefile
++++ iodine/tests/Makefile
+@@ -1,7 +1,7 @@
+ CC = gcc
+ TEST = test
+-OBJS = test.o base32.o base64.o read.o dns.o encoding.o login.o user.o 
+-SRCOBJS = ../src/base32.o  ../src/base64.o ../src/read.o ../src/dns.o ../src/encoding.o ../src/login.o ../src/md5.o ../src/user.o
++OBJS = test.o base32.o read.o dns.o encoding.o login.o user.o
++SRCOBJS = ../src/base32.o ../src/read.o ../src/dns.o ../src/encoding.o ../src/login.o ../src/md5.o ../src/user.o
+ OS = `uname | tr "a-z" "A-Z"`
+--- iodine.orig/tests/test.c
++++ iodine/tests/test.c
+@@ -49,9 +49,6 @@
+       test = test_base32_create_tests();
+       suite_add_tcase(iodine, test);
+-      test = test_base64_create_tests();
+-      suite_add_tcase(iodine, test);
+-
+       test = test_dns_create_tests();
+       suite_add_tcase(iodine, test);
diff --git a/debian/patches/series b/debian/patches/series
new file mode 100644 (file)
index 0000000..4774ab7
--- /dev/null
@@ -0,0 +1,4 @@
+01_mandir.patch
+02_make.patch
+03_cflags.patch
+04_base64.patch
diff --git a/debian/po/POTFILES.in b/debian/po/POTFILES.in
new file mode 100644 (file)
index 0000000..cef83a3
--- /dev/null
@@ -0,0 +1 @@
+[type: gettext/rfc822deb] templates
diff --git a/debian/po/cs.po b/debian/po/cs.po
new file mode 100644 (file)
index 0000000..3a8ed3e
--- /dev/null
@@ -0,0 +1,64 @@
+# Czech translation of iodine debconf messages.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: iodine 0.4.1-3\n"
+"Report-Msgid-Bugs-To: iodine@packages.debian.org\n"
+"POT-Creation-Date: 2008-05-28 19:30+0200\n"
+"PO-Revision-Date: 2008-05-27 17:54+0200\n"
+"Last-Translator: Daniel Kavan <kuan@maradan.org>\n"
+"Language-Team: Czech <debian-l10n-czech@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: boolean
+#. Description
+#: ../templates:1001
+msgid "Should iodined (server) start on boot?"
+msgstr "Má se iodined (server) spouštět při startu systému?"
+
+#. Type: boolean
+#. Description
+#: ../templates:1001
+msgid ""
+"If you want iodined to be started at boot time you can set this behaviour "
+"here."
+msgstr ""
+"Pokud chcete, aby se iodined spouštěl při startu systému, můžete to nastavit "
+"zde."
+
+#. Type: string
+#. Description
+#: ../templates:2001
+msgid "Options to iodined (server):"
+msgstr "Možnosti iodined (serveru):"
+
+#. Type: string
+#. Description
+#. TRANSLATORS: please don't translate/change ".example" (RFC 2606)
+#: ../templates:2001
+msgid ""
+"You need to give the necessary arguments to iodined; see iodined(8) for "
+"help. Example: 10.0.0.1 tunnel.mydomain.example"
+msgstr ""
+"Je třeba předat potřebné argumenty pro iodined; nápovědu naleznete v "
+"manuálové stránce iodined(8). Příklad: 10.0.0.1 tunel.mojedomena.example"
+
+#. Type: password
+#. Description
+#: ../templates:3001
+msgid "Password for iodined (server):"
+msgstr "Heslo k iodined (serveru):"
+
+#. Type: password
+#. Description
+#: ../templates:3001
+msgid ""
+"Enter the password iodined uses at startup. It has to be used by clients "
+"when connecting. This password will be stored in plain text in /etc/default/"
+"iodine."
+msgstr ""
+"Vložte heslo, které iodined používá při startu. Toto heslo pak musí klienti "
+"používat při připojování. Heslo bude uloženo jako prostý text v /etc/default/"
+"iodine."
diff --git a/debian/po/de.po b/debian/po/de.po
new file mode 100644 (file)
index 0000000..52f5de0
--- /dev/null
@@ -0,0 +1,66 @@
+# German translation of iodine templates
+# Helge Kreutzmann <debian@helgefjell.de>, 2007
+# This file is distributed under the same license as the iodine package.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: iodine 0.4.0-1\n"
+"Report-Msgid-Bugs-To: iodine@packages.debian.org\n"
+"POT-Creation-Date: 2008-05-28 19:30+0200\n"
+"PO-Revision-Date: 2007-07-16 09:23+0200\n"
+"Last-Translator: Helge Kreutzmann <debian@helgefjell.de>\n"
+"Language-Team: German <debian-l10n-german@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=ISO-8859-15\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: boolean
+#. Description
+#: ../templates:1001
+msgid "Should iodined (server) start on boot?"
+msgstr "Soll der Iodined (Server) beim Systemstart auch gestartet werden?"
+
+#. Type: boolean
+#. Description
+#: ../templates:1001
+msgid ""
+"If you want iodined to be started at boot time you can set this behaviour "
+"here."
+msgstr ""
+"Falls Sie möchten, dass zum Systemstartzeitpunkt auch Iodined gestartet "
+"wird, stellen Sie dies hier ein."
+
+#. Type: string
+#. Description
+#: ../templates:2001
+msgid "Options to iodined (server):"
+msgstr "Optionen für Iodined (Server):"
+
+#. Type: string
+#. Description
+#. TRANSLATORS: please don't translate/change ".example" (RFC 2606)
+#: ../templates:2001
+msgid ""
+"You need to give the necessary arguments to iodined; see iodined(8) for "
+"help. Example: 10.0.0.1 tunnel.mydomain.example"
+msgstr ""
+"Sie müssen die notwendigen Argumente an Iodined übergeben; lesen Sie iodined"
+"(8) für Hilfe. Beispiel: 10.0.0.1 tunnel.mydomain.example"
+
+#. Type: password
+#. Description
+#: ../templates:3001
+msgid "Password for iodined (server):"
+msgstr "Passwort für Iodined (Server):"
+
+#. Type: password
+#. Description
+#: ../templates:3001
+msgid ""
+"Enter the password iodined uses at startup. It has to be used by clients "
+"when connecting. This password will be stored in plain text in /etc/default/"
+"iodine."
+msgstr ""
+"Geben Sie das Passwort ein, das Iodined beim Starten verwendet. Es muss von "
+"Clients beim Verbindungsaufbau verwendet werden. Dieses Passwort wird im "
+"Klartext in /etc/default/iodine gespeichert."
diff --git a/debian/po/fr.po b/debian/po/fr.po
new file mode 100644 (file)
index 0000000..2e29ea8
--- /dev/null
@@ -0,0 +1,69 @@
+# Translation of iodine debconf templates to French
+# Copyright (C) 2007 Christian Perrier <bubulle@debian.org>
+# This file is distributed under the same license as the iodine package.
+#
+# Christian Perrier <bubulle@debian.org>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: \n"
+"Report-Msgid-Bugs-To: iodine@packages.debian.org\n"
+"POT-Creation-Date: 2008-05-28 19:30+0200\n"
+"PO-Revision-Date: 2007-07-18 19:36+0200\n"
+"Last-Translator: Christian Perrier <bubulle@debian.org>\n"
+"Language-Team: French <debian-l10n-french@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+
+#. Type: boolean
+#. Description
+#: ../templates:1001
+msgid "Should iodined (server) start on boot?"
+msgstr "Faut-il lancer le démon du serveur Iodine au démarrage ?"
+
+#. Type: boolean
+#. Description
+#: ../templates:1001
+msgid ""
+"If you want iodined to be started at boot time you can set this behaviour "
+"here."
+msgstr ""
+"Veuillez choisir si vous souhaitez lancer le démon du serveur Iodine au "
+"démarrage de la machine."
+
+#. Type: string
+#. Description
+#: ../templates:2001
+msgid "Options to iodined (server):"
+msgstr "Options du démon du serveur Iodine :"
+
+#. Type: string
+#. Description
+#. TRANSLATORS: please don't translate/change ".example" (RFC 2606)
+#: ../templates:2001
+msgid ""
+"You need to give the necessary arguments to iodined; see iodined(8) for "
+"help. Example: 10.0.0.1 tunnel.mydomain.example"
+msgstr ""
+"Veuillez indiquer les paramètres à passer au server Iodine (voir la page de "
+"manuel iodined(8) pour plus de détails). Par exemple : « 10.0.0.1 tunnel."
+"mydomain.example »."
+
+#. Type: password
+#. Description
+#: ../templates:3001
+msgid "Password for iodined (server):"
+msgstr "Mot de passe pour le serveur Iodine :"
+
+#. Type: password
+#. Description
+#: ../templates:3001
+msgid ""
+"Enter the password iodined uses at startup. It has to be used by clients "
+"when connecting. This password will be stored in plain text in /etc/default/"
+"iodine."
+msgstr ""
+"Veuillez indiquer le mot de passe qu'utilisera le serveur au démarrage. Il "
+"sera utilisé par les clients lorsque ceux-ci se connecteront. Ce mot de "
+"passe sera conservé en clair dans /etc/default/iodine."
diff --git a/debian/po/nl.po b/debian/po/nl.po
new file mode 100644 (file)
index 0000000..f622885
--- /dev/null
@@ -0,0 +1,71 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE 'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the  package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: iodine\n"
+"Report-Msgid-Bugs-To: iodine@packages.debian.org\n"
+"POT-Creation-Date: 2008-05-28 19:30+0200\n"
+"PO-Revision-Date: 2007-11-02 15:44+0100\n"
+"Last-Translator: Bart Cornelis <cobaco@skolelinux.no>\n"
+"Language-Team: debian-l10n-dutch <debian-l10n-dutch@lists.debian.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=utf-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Poedit-Language: Dutch\n"
+
+#. Type: boolean
+#. Description
+#: ../templates:1001
+msgid "Should iodined (server) start on boot?"
+msgstr ""
+"Wilt u dat de achtergronddienst 'iodined' gestart wordt tijdens het "
+"opstarten van deze machine?"
+
+#. Type: boolean
+#. Description
+#: ../templates:1001
+msgid ""
+"If you want iodined to be started at boot time you can set this behaviour "
+"here."
+msgstr ""
+"Hier geeft u aan of u wilt dat iodined gestart wordt tijdens het opstarten."
+
+#. Type: string
+#. Description
+#: ../templates:2001
+msgid "Options to iodined (server):"
+msgstr "Opties voor iodined:"
+
+#. Type: string
+#. Description
+#. TRANSLATORS: please don't translate/change ".example" (RFC 2606)
+#: ../templates:2001
+msgid ""
+"You need to give the necessary arguments to iodined; see iodined(8) for "
+"help. Example: 10.0.0.1 tunnel.mydomain.example"
+msgstr ""
+"Hier geeft u de argumenten waarmee iodined aangeroepen dient te worden; meer "
+"informatie vindt u in de man-pagina iodined(8). Voorbeeld: 10.0.0.1 tunnel."
+"mijndomein.example"
+
+#. Type: password
+#. Description
+#: ../templates:3001
+msgid "Password for iodined (server):"
+msgstr "Wachtwoord voor iodined:"
+
+#. Type: password
+#. Description
+#: ../templates:3001
+msgid ""
+"Enter the password iodined uses at startup. It has to be used by clients "
+"when connecting. This password will be stored in plain text in /etc/default/"
+"iodine."
+msgstr ""
+"Wat is het door iodined bij het opstarten te gebruiken wachtwoord? Dit "
+"wachtwoord dient door clients opgegeven te worden wanneer ze verbinding "
+"maken. Dit wachtwoord wordt als onversleutelde tekst opgeslagen in /etc/"
+"default/iodine."
diff --git a/debian/po/pt.po b/debian/po/pt.po
new file mode 100644 (file)
index 0000000..0b86026
--- /dev/null
@@ -0,0 +1,68 @@
+# translation of iodine to Portuguese
+# Copyright (C) 207 Américo Monteiro
+# This file is distributed under the same license as the iodine package.
+#
+# Américo Monteiro <a_monteiro@netcabo.pt>, 2007.
+msgid ""
+msgstr ""
+"Project-Id-Version: iodine_0.4.0-2_templates\n"
+"Report-Msgid-Bugs-To: iodine@packages.debian.org\n"
+"POT-Creation-Date: 2008-05-28 19:30+0200\n"
+"PO-Revision-Date: 2007-07-13 20:16+0100\n"
+"Last-Translator: Américo Monteiro <a_monteiro@netcabo.pt>\n"
+"Language-Team: Portuguese <traduz@debianpt.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Generator: KBabel 1.11.4\n"
+
+#. Type: boolean
+#. Description
+#: ../templates:1001
+msgid "Should iodined (server) start on boot?"
+msgstr "Deverá o iodined (servidor) arrancar no arranque da máquina?"
+
+#. Type: boolean
+#. Description
+#: ../templates:1001
+msgid ""
+"If you want iodined to be started at boot time you can set this behaviour "
+"here."
+msgstr ""
+"Se você quer o iodined seja iniciado com o arranque da máquina, você pode "
+"configurar esse comportamento aqui."
+
+#. Type: string
+#. Description
+#: ../templates:2001
+msgid "Options to iodined (server):"
+msgstr "Opções para iodined (servidor):"
+
+#. Type: string
+#. Description
+#. TRANSLATORS: please don't translate/change ".example" (RFC 2606)
+#: ../templates:2001
+msgid ""
+"You need to give the necessary arguments to iodined; see iodined(8) for "
+"help. Example: 10.0.0.1 tunnel.mydomain.example"
+msgstr ""
+"Você precisa indicar os argumentos necessários ao iodined; veja iodined(8) "
+"para ajuda. Exemplo: 10.0.0.1 tunnel.meudominio.example"
+
+#. Type: password
+#. Description
+#: ../templates:3001
+msgid "Password for iodined (server):"
+msgstr "Password para o iodined (servidor):"
+
+#. Type: password
+#. Description
+#: ../templates:3001
+msgid ""
+"Enter the password iodined uses at startup. It has to be used by clients "
+"when connecting. This password will be stored in plain text in /etc/default/"
+"iodine."
+msgstr ""
+"Insira a password que o iodined usa no arranque. Ela terá que ser usada "
+"pelos clientes ao estabelecerem ligação. Esta password será guardada em "
+"texto simples em /etc/default/iodine."
diff --git a/debian/po/templates.pot b/debian/po/templates.pot
new file mode 100644 (file)
index 0000000..6389ab2
--- /dev/null
@@ -0,0 +1,60 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: iodine@packages.debian.org\n"
+"POT-Creation-Date: 2008-05-28 19:30+0200\n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=CHARSET\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Type: boolean
+#. Description
+#: ../templates:1001
+msgid "Should iodined (server) start on boot?"
+msgstr ""
+
+#. Type: boolean
+#. Description
+#: ../templates:1001
+msgid ""
+"If you want iodined to be started at boot time you can set this behaviour "
+"here."
+msgstr ""
+
+#. Type: string
+#. Description
+#: ../templates:2001
+msgid "Options to iodined (server):"
+msgstr ""
+
+#. Type: string
+#. Description
+#. TRANSLATORS: please don't translate/change ".example" (RFC 2606)
+#: ../templates:2001
+msgid ""
+"You need to give the necessary arguments to iodined; see iodined(8) for "
+"help. Example: 10.0.0.1 tunnel.mydomain.example"
+msgstr ""
+
+#. Type: password
+#. Description
+#: ../templates:3001
+msgid "Password for iodined (server):"
+msgstr ""
+
+#. Type: password
+#. Description
+#: ../templates:3001
+msgid ""
+"Enter the password iodined uses at startup. It has to be used by clients "
+"when connecting. This password will be stored in plain text in /etc/default/"
+"iodine."
+msgstr ""
diff --git a/debian/postinst b/debian/postinst
new file mode 100644 (file)
index 0000000..7ea4779
--- /dev/null
@@ -0,0 +1,64 @@
+#!/bin/sh
+# postinst script for iodine
+#
+# see: dh_installdeb(1)
+
+set -e
+
+. /usr/share/debconf/confmodule
+
+# summary of how this script can be called:
+#        * <postinst> `configure' <most-recently-configured-version>
+#        * <old-postinst> `abort-upgrade' <new version>
+#        * <conflictor's-postinst> `abort-remove' `in-favour' <package>
+#          <new-version>
+#        * <postinst> `abort-remove'
+#        * <deconfigured's-postinst> `abort-deconfigure' `in-favour'
+#          <failed-install-package> <version> `removing'
+#          <conflicting-package> <version>
+# for details, see http://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
+
+
+case "$1" in
+    configure)
+        # we need a tun device
+        echo "Creating device /dev/net/tun ..."
+        cd /dev && ./MAKEDEV tun
+        # and we want a special user
+        adduser --quiet --system --home /var/run/iodine iodine
+        # generate /etc/default/iodine
+        db_get iodine/start_daemon
+        START_IODINED=$RET
+        db_get iodine/daemon_options
+        IODINED_ARGS=$RET
+        db_get iodine/daemon_password
+        IODINED_PASSWORD=$RET
+        cat <<EOF > /etc/default/iodine
+# Default settings for iodine. This file is sourced from
+# /etc/init.d/iodined
+START_IODINED="$START_IODINED"
+IODINED_ARGS="$IODINED_ARGS"
+IODINED_PASSWORD="$IODINED_PASSWORD"
+EOF
+        [ -e /etc/default/iodine ] && chmod 600 /etc/default/iodine
+    ;;
+
+    abort-upgrade|abort-remove|abort-deconfigure)
+    ;;
+
+    *)
+        echo "postinst called with unknown argument \`$1'" >&2
+        exit 1
+    ;;
+esac
+
+# tell debconf we are done. otherwise, it hangs waiting for the daemon.
+db_stop;
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0
diff --git a/debian/postrm b/debian/postrm
new file mode 100644 (file)
index 0000000..b33bb2a
--- /dev/null
@@ -0,0 +1,41 @@
+#!/bin/sh
+# postrm script for #PACKAGE#
+#
+# see: dh_installdeb(1)
+
+set -e
+
+# summary of how this script can be called:
+#        * <postrm> `remove'
+#        * <postrm> `purge'
+#        * <old-postrm> `upgrade' <new-version>
+#        * <new-postrm> `failed-upgrade' <old-version>
+#        * <new-postrm> `abort-install'
+#        * <new-postrm> `abort-install' <old-version>
+#        * <new-postrm> `abort-upgrade' <old-version>
+#        * <disappearer's-postrm> `disappear' <overwriter>
+#          <overwriter-version>
+# for details, see http://www.debian.org/doc/debian-policy/ or
+# the debian-policy package
+
+
+case "$1" in
+    remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear)
+    ;;
+    purge)
+      [ -f /etc/default/iodine ] && rm /etc/default/iodine
+    ;;
+    *)
+        echo "postrm called with unknown argument \`$1'" >&2
+        exit 1
+    ;;
+esac
+
+# dh_installdeb will replace this with shell code automatically
+# generated by other debhelper scripts.
+
+#DEBHELPER#
+
+exit 0
+
+
diff --git a/debian/rules b/debian/rules
new file mode 100755 (executable)
index 0000000..1191b90
--- /dev/null
@@ -0,0 +1,74 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+# Sample debian/rules that uses debhelper.
+# This file was originally written by Joey Hess and Craig Small.
+# As a special exception, when this file is copied by dh-make into a
+# dh-make output file, you may use that output file without restriction.
+# This special exception was added by Craig Small in version 0.37 of dh-make.
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+include /usr/share/quilt/quilt.make
+
+CFLAGS = -Wall -g
+
+ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
+       CFLAGS += -O0
+else
+       CFLAGS += -O2
+endif
+
+configure: configure-stamp
+configure-stamp: $(QUILT_STAMPFN)
+       dh_testdir
+       touch $@
+
+build: build-stamp
+build-stamp: configure-stamp
+       dh_testdir
+       CFLAGS="$(CFLAGS)" $(MAKE)
+       CFLAGS="$(CFLAGS)" $(MAKE) test
+       touch $@
+
+clean: unpatch
+       dh_testdir
+       dh_testroot
+       rm -f build-stamp configure-stamp install-stamp
+       $(MAKE) clean
+       debconf-updatepo
+       dh_clean
+
+install: install-stamp
+install-stamp: build-stamp
+       dh_testdir
+       dh_testroot
+       $(MAKE) install prefix=debian/iodine/usr
+       touch $@
+
+
+# Build architecture-independent files here.
+binary-indep: build install
+# We have nothing to do by default.
+
+# Build architecture-dependent files here.
+binary-arch: build install
+       dh_testdir
+       dh_testroot
+       dh_installchangelogs CHANGELOG
+       dh_installdocs README
+       dh_installexamples debian/iodine-jigger
+       dh_installdebconf
+       dh_installinit --name=iodined
+       dh_link usr/share/man/man8/iodine.8 usr/share/man/man8/iodined.8
+       dh_strip
+       dh_compress
+       dh_fixperms
+       dh_installdeb
+       dh_shlibdeps
+       dh_gencontrol
+       dh_md5sums
+       dh_builddeb
+
+binary: binary-indep binary-arch
+.PHONY: build clean binary-indep binary-arch binary install configure
diff --git a/debian/templates b/debian/templates
new file mode 100644 (file)
index 0000000..c61c332
--- /dev/null
@@ -0,0 +1,20 @@
+Template: iodine/start_daemon
+Type: boolean
+Default: false
+_Description: Should iodined (server) start on boot?
+ If you want iodined to be started at boot time you can set this behaviour here.
+
+Template: iodine/daemon_options
+Type: string
+#flag:comment:2
+# TRANSLATORS: please don't translate/change ".example" (RFC 2606)
+_Description: Options to iodined (server):
+ You need to give the necessary arguments to iodined; see iodined(8) for help.
+ Example: 10.0.0.1 tunnel.mydomain.example
+
+Template: iodine/daemon_password
+Type: password
+_Description: Password for iodined (server):
+ Enter the password iodined uses at startup. It has to be used by clients
+ when connecting.
+ This password will be stored in plain text in /etc/default/iodine.
diff --git a/debian/watch b/debian/watch
new file mode 100644 (file)
index 0000000..4306a55
--- /dev/null
@@ -0,0 +1,4 @@
+# Compulsory line, this is a version 3 file
+version=3
+
+http://code.kryo.se/iodine/iodine-([\d\.]+)\.tar\.gz