From af23dfa5efb82b35eb00b94bda56390c9e2aac6f Mon Sep 17 00:00:00 2001 From: Ivo Timmermans Date: Tue, 9 Apr 2002 15:28:45 +0000 Subject: [PATCH] Updating HEAD branch #5; Last files from CABAL. --- AUTHORS | 6 + Makefile.am | 28 +- NEWS | 150 ++++- README | 102 +++- THANKS | 9 +- TODO | 14 +- autogen.sh | 7 +- configure.in | 106 ++-- lib/Makefile.am | 11 +- po/POTFILES.in | 20 +- po/nl.po | 1477 ++++++++++++++++++++++++++++++----------------- src/Makefile.am | 27 +- 12 files changed, 1320 insertions(+), 637 deletions(-) diff --git a/AUTHORS b/AUTHORS index 532543f4..4721984f 100644 --- a/AUTHORS +++ b/AUTHORS @@ -5,3 +5,9 @@ Ivo Timmermans These files are from other sources: * lib/pidfile.h and lib/pidfile.c are by Martin Schulze, taken from the syslog 1.3 sources. + +Also some of the macro files in the directory m4, and their +accompanying files in lib, were taken from GNU fileutils. + +Please see the file THANKS for more information on contributions from +users. diff --git a/Makefile.am b/Makefile.am index 19ae3014..805c3123 100644 --- a/Makefile.am +++ b/Makefile.am @@ -2,25 +2,23 @@ AUTOMAKE_OPTIONS = gnu -SUBDIRS = m4 intl lib src doc po redhat debian +SUBDIRS = m4 intl lib src doc po ACLOCAL_AMFLAGS = -EXTRA_DIST = system.h ABOUT-NLS +EXTRA_DIST = system.h COPYING.README depcomp -CVS_CREATED = configure aclocal.m4 config.h.in config.guess \ +CVS_CREATED = ABOUT-NLS configure aclocal.m4 config.h.in config.guess \ config.sub install-sh ltconfig ltmain.sh missing mkinstalldirs \ - stamp-h.in m4/Makefile.am ChangeLog + stamp-h.in m4/Makefile.am ChangeLog po/Makefile.in.in \ + po/tinc.pot src/.libs intl depcomp ChangeLog: - rm -f ChangeLog - rcs2log -u "zarq Ivo Timmermans itimmermans@bigfoot.com" \ - -u "guus Guus Sliepen guus@sliepen.warande.net" | \ - sed -e 's,/home/CVS/tinc/,,g' > $@ + cvs2cl -U cvsusers --fsf cvs-clean: maintainer-clean - for f in $(CVS_CREATED) `find -name Makefile.in` ; do\ - rm -f "$$f"; \ + for f in $(CVS_CREATED) `find . -name Makefile.in` tinc-$(VERSION).tar.gz; do\ + rm -Rf "$$f"; \ done deb: @@ -29,5 +27,11 @@ deb: rpm: dist cp $(distdir).tar.gz /usr/src/redhat/SOURCES/ cp redhat/tinc.spec /usr/src/redhat/SOURCES/ - cd /usr/src/redhat/SOURCES/ - rpm -bi tinc.spec + cd /usr/src/redhat/SOURCES/ && rpm -bb tinc.spec + +release: + rm -f ChangeLog + $(MAKE) ChangeLog + echo "Please edit the NEWS file now..." + /usr/bin/editor NEWS + $(MAKE) dist diff --git a/NEWS b/NEWS index ee5c2c18..0317dd5a 100644 --- a/NEWS +++ b/NEWS @@ -1,6 +1,152 @@ +version 1.0pre7 Apr 7 2002 + +* Don't do blocking read()s when getting a signal. + +* Remove RSA key checking code, since it sometimes thinks perfectly good RSA + keys are bad. + +* Fix handling of subnets when prefixlength isn't divisible by 8. + + +version 1.0pre6 Mar 27 2002 + +* Improvement of redundant links: + + * Non-blocking connects. + + * Protocol broadcast messages can no longer go into an infinite loop. + + * Graph algorithm updated to look harder for direct connections. + +* Good support for routing IPv6 packets over the VPN. Works on Linux, + FreeBSD, possibly OpenBSD but not on Solaris. + +* Support for tunnels over IPv6 networks. Works on all supported + operating systems. + +* Optional compression of UDP connections using zlib. + +* Optionally let UDP connections inherit TOS field of tunneled packets. + +* Optionally start scripts when certain hosts become (un)reachable. + + +version 1.0pre5 Feb 9 2002 + +* Security enhancements: + + * Added sequence number and optional message authentication code to + the packets. + + * Configurable encryption cipher and digest algorithms. + +* More robust handling of dis- and reconnects. + +* Added a "switch" and a "hub" mode to allow bridging setups. + +* Preliminary support for routing of IPv6 packets. + +* Supports Linux, FreeBSD, OpenBSD and Solaris. + + +It looks like this might be the last release before 1.0. + + +version 1.0pre4 Jan 17 2001 + +* Updated documentation; the documentation now reflects the + configuration as it is. + +* Some internal changes to make tinc scale better for large + networks, such as using AVL trees instead of linked lists for the + connection list. + +* RSA keys can be stored in separate files if needed. See the + documentation for more information. + +* tinc has now been reported to run on Linux PowerPC and FreeBSD x86. + + + +version 1.0pre3 Oct 31 2000 + +* The protocol has been redesigned, and although some details are + still under discussion, this is secure. Care has been taken to + resist most, if not all, attacks. + +* Unfortunately this protocol is not compatible with earlier versions, + nor are earlier versions compatible with this version. Because the + older protocol has huge security flaws, we feel that not + implementing backwards compatibility is justified. + +* Some data about the protocol: + + * It uses public/private RSA keys for authentication (this is the + actual fix for the security hole). + + * All cryptographic functions have been taken out of tinc, instead + it uses the OpenSSL library functions. + + * Offers support for multiple subnets per tinc daemon. + +* New is also the support for the universal tun/tap device. This + means better portability to FreeBSD and Solaris. + +* tinc is tested to compile on Solaris, Linux x86, Linux alpha. + +* tinc now uses the OpenSSL library for cryptographic operations. + More information on getting and installing OpenSSL is in the manual. + This also means that the GMP library is no longer required. + +* Further, thanks to Enrique Zanardi, we have Spanish messages; Matias + Carrasco provided us with a Spanish translation of the manual. + + +What still needs to be done before 1.0: + +* Documentation. Especially since the protocol has changed, and a lot + of configuration directives have been added. + + + + version 1.0pre2 May 31 2000 - * Internationalized, Dutch translation available - * Many sanity checks on the meta protocol added + +* This version has been internationalized; and a Dutch translation has + been included. + +* Two configuration variables have been added: + * VpnMask - the IP network mask for the entire VPN, not just our + subnet (as given by MyVirtualIP). The Redhat and Debian packages + use this variable in their system startup scripts, but it is + ignored by tinc. + * Hostnames - if set to `yes', look up the names of IP addresses + trying to connect to us. Default set to `no', to prevent lockups + during lookups. + +* The system startup scripts for Debian and Redhat use + /etc/tinc/nets.boot to find out which networks need to be started + during system boot. + +* Fixes to prevent denial of service attacks by sending random data + after connecting (and even when the connection has been established), + either random garbage or just nonsensical protocol fields. + +* tinc will retry to connect upon startup, does not quit if it doesn't + work the first time. + +* Hosts that are disconnected implicitly if we lose a connection get + deleted from the internal list, to prevent hogging eachother with + add and delete requests when the connection is restored. + + +What still needs to be done before 1.0: + +* Documentation. +* Failover ConnectTo lines, try another one if the first doesn't work. + + + version 1.0pre1 May 12 2000 * New meta-protocol diff --git a/README b/README index 7c0fe125..d75d7f65 100644 --- a/README +++ b/README @@ -1,9 +1,13 @@ -This is the README file for tinc version 1.0. -Installation instructions may be found in the INSTALL file. +This is the README file for tinc version 1.0pre7. Installation +instructions may be found in the INSTALL file. -tinc is Copyright (C) 1998,1999,2000 Ivo Timmermans -, Guus Sliepen and -others. For a complete list of authors see the AUTHORS file. +tinc is Copyright (C) 1998-2002 by: + +Ivo Timmermans , +Guus Sliepen , +and others. + +For a complete list of authors see the AUTHORS file. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -11,6 +15,36 @@ the Free Software Foundation; either version 2 of the License, or (at your option) any later version. See the file COPYING for more details. +Security statement +------------------ + +In August 2000, we discovered the existence of a security hole in all versions +of tinc up to and including 1.0pre2. This had to do with the way we exchanged +keys. Since then, we have been working on a new authentication scheme to make +tinc as secure as possible. The current version uses the OpenSSL library and +uses strong authentication with RSA keys. + +On the 29th of December 2001, Jerome Etienne posted a security analysis of tinc +1.0pre4. Due to a lack of sequence numbers and a message authentication code +for each packet, an attacker could possibly disrupt certain network services or +launch a denial of service attack by replaying intercepted packets. The current +version adds sequence numbers and message authentication codes to prevent such +attacks. + +Cryptography is a hard thing to get right. We cannot make any +guarantees. Time, review and feedback are the only things that can +prove the security of any cryptographic product. If you wish to review +tinc or give us feedback, you are stronly encouraged to do so. + + +Changes to configuration file format since 1.0pre5 +-------------------------------------------------- + +Some configuration variables have different names now. Most notably "TapDevice" +should be changed into "Device", and "Device" should be changed into +"BindToDevice". + + Requirements ------------ @@ -21,6 +55,14 @@ this library is not installed on you system, configure will fail. The manual in doc/tinc.texi contains more detailed information on how to install this library. +Since 1.0pre6, the zlib library is used for optional compression. You need this +library whether or not you plan to enable the compression. You can find it at +http://www.gzip.org/zlib/. Because of a possible exploit in earlier versions we +recommand that you download version 1.1.4 or later. + +In order to compile tinc, you will also need autoconf, automake, GNU make, m4 +and gettext. + Features -------- @@ -30,18 +72,46 @@ use this feature, you may supply a netname via the -n or --net options. The standard locations for the config files will then be /etc/tinc//. Because of this feature, tinc will send packets directly to their destinations, instead of to the uplink. If this -behaviour is undesirable (for instance because of firewalls or -other restrictions), please use an older version of tinc (I would -recommend tinc-0.2.19). +behaviour is undesirable (for instance because of firewalls or other +restrictions), please use an older version of tinc (I would recommend +tinc-0.2.19). -In this version, MAC addresses are stripped off before encoding and -sending a packet. When the packet reaches its destination, the MAC -addresses are rebuilt again. They then have the form -FE:FD:aa:bb:cc:dd. aa, bb, cc and dd are taken from the destination -and source IP address. See the manual for more detailed information. +In order to force the kernel to accept received packets, the +destination MAC address will be set to FE:FD:00:00:00:00 upon +reception. The MAC address of the ethertap or tun/tap interface must +also be set to this address. See the manual for more detailed +information. tincd regenerates its encryption key pairs. It does this on the first activity after the keys have expired. This period is adjustable in the -configuration file, and the default time is 3600 seconds (one -hour). If you send a USR2 signal to the daemon, it'll regenerate -immediately. +configuration file, and the default time is 3600 seconds (one hour). + +This version supports multiple subnets at once. They are also sorted +on subnet mask size. This means that it is possible to have +overlapping subnets on the VPN, as long as their subnet mask sizes +differ. + +Since pre5, tinc can operate in several routing modes. The default mode, +"router", works exactly like the older version, and uses Subnet lines to +determine the destination of packets. The other two modes, "switch" and "hub", +allow the tinc daemons to work together like a single network switch or hub. +This is useful for bridging networks. The latter modes only work properly on +Linux and FreeBSD. + +The algorithms used for encryption and generating message authentication codes +can now be changed in the configuration files. All cipher and digest algorithms +supported by OpenSSL can be used. Useful ciphers are "blowfish" (default), +"bf-ofb", "des", "des3", etcetera. Useful digests are "sha1" (default), "md5", +etcetera. + +Support for routing IPv6 packets has been added. Just add Subnet lines with +IPv6 addresses (without using :: abbreviations) and use ifconfig or ip (from +the iproute package) to give the virtual network interface corresponding IPv6 +addresses. Autoconfiguration will not work in router mode. Tunneling IPv6 +packets only works on Linux, FreeBSD and possibly OpenBSD. + +It is also possible to make tunnels to other tinc daemons over IPv6 networks. +In order to enable this feature the option "AddressFamily = any" or +"AddressFamily = ipv6" must be added to the tinc.conf file. The host +configuration files should contain IPv6 addresses for the "Address" variables, +or hostnames which have an AAAA or A6 record. diff --git a/THANKS b/THANKS index 6116810a..e4cfd6d0 100644 --- a/THANKS +++ b/THANKS @@ -1,4 +1,4 @@ -I would like to thank +We would like to thank * Hans Bayle (for making some useful coding suggestions and fixing a bug or two) @@ -14,7 +14,12 @@ I would like to thank * Cris van Pelt (small fixes) * Enrique Zanardi (for the Spanish translation) * Matias Carrasco (for the Spanish translation of the manual) + * Jamie Briggs (for finding a lot of socket leaks) + * Armijn Hemel (for being our very own PR manager) + * Jerome Etienne (for a thorough security analysis of tinc) + * Mark Glines (for his compression patch) for their help, support and ideas. Thank you guys! -And especially Guus Sliepen, for starting this whole project... +Ivo Timmermans +Guus Sliepen diff --git a/TODO b/TODO index 4415e163..c0f2ee3f 100644 --- a/TODO +++ b/TODO @@ -1,9 +1,5 @@ -Things left to do to make cabal superstable: --------------------------------------------- - * Check for connection loops. Inter-daemon - connections should always satisfy the - tree property. - * Redundancy: multiple ConnectTo lines, if - one fails others might be tried. - * Allow connects to hosts that use - nodirectdata. +TODO LIST + +1.0: + +* A nice, secure and stable release diff --git a/autogen.sh b/autogen.sh index 09e5ecdc..21a0f4c1 100644 --- a/autogen.sh +++ b/autogen.sh @@ -4,7 +4,12 @@ DIE=0 -srcdir="`pwd`" +if ${MAKE:-gmake} -q -C . autogen.sh 2> /dev/null +then + alias make=${MAKE:-gmake} +fi + +srcdir="`/bin/pwd`" (autoconf --version) < /dev/null > /dev/null 2>&1 || { echo diff --git a/configure.in b/configure.in index 7f66487e..bb6e573d 100644 --- a/configure.in +++ b/configure.in @@ -1,9 +1,9 @@ dnl Process this file with autoconf to produce a configure script. -dnl $Id: configure.in,v 1.16 2000/10/19 20:39:04 zarq Exp $ +dnl $Id: configure.in,v 1.17 2002/04/09 15:28:45 zarq Exp $ AC_INIT(src/tincd.c) -AM_INIT_AUTOMAKE(tinc, 1.0pre3) +AM_INIT_AUTOMAKE(tinc, 1.0-cvs) AM_CONFIG_HEADER(config.h) dnl Include the macros from the m4/ directory @@ -14,7 +14,7 @@ AM_ACLOCAL_INCLUDE(m4) # in the latter don't make it into the configure-time tests. AC_DEFINE([_GNU_SOURCE], [__USE_BSD]) -ALL_LINGUAS="es nl" +ALL_LINGUAS="nl" dnl Checks for programs. AC_PROG_CC @@ -25,15 +25,45 @@ AC_PROG_INSTALL AC_PROG_LN_S AC_PROG_MAKE_SET jm_PERL -AM_PROG_LIBTOOL + AC_ISC_POSIX +dnl Check and set OS + +AC_CANONICAL_HOST + +case $host_os in + *linux*) + AC_DEFINE(HAVE_LINUX) + [ rm -f src/device.c; ln -sf linux/device.c src/device.c ] + ;; + *freebsd*) + AC_DEFINE(HAVE_FREEBSD) + [ rm -f src/device.c; ln -sf freebsd/device.c src/device.c ] + ;; + *solaris*) + AC_DEFINE(HAVE_SOLARIS) + [ rm -f src/device.c; ln -sf solaris/device.c src/device.c ] + ;; + *openbsd*) + AC_DEFINE(HAVE_OPENBSD) + [ rm -f src/device.c; ln -sf openbsd/device.c src/device.c ] + ;; + *netbsd*) + AC_DEFINE(HAVE_NETBSD) + [ rm -f src/device.c; ln -sf netbsd/device.c src/device.c ] + ;; +esac + +AC_CACHE_SAVE + dnl Checks for libraries. dnl Checks for header files. AC_HEADER_STDC -AC_CHECK_HEADERS(fcntl.h limits.h sys/ioctl.h syslog.h unistd.h sys/time.h linux/if_tun.h) +AC_CHECK_HEADERS([fcntl.h limits.h sys/ioctl.h syslog.h unistd.h \ +sys/time.h malloc.h strings.h sys/file.h]) dnl Checks for typedefs, structures, and compiler characteristics. AC_C_CONST @@ -46,12 +76,14 @@ dnl Checks for library functions. AC_FUNC_MEMCMP AC_FUNC_ALLOCA AC_TYPE_SIGNAL -AC_CHECK_FUNCS(ftime socket select strtol strerror) +AC_CHECK_FUNCS([ftime socket select strtol strerror flock unsetenv \ +asprintf putenv strdup fcloseall daemon strsignal get_current_dir_name]) jm_FUNC_MALLOC jm_FUNC_REALLOC AM_GNU_GETTEXT + dnl Support for SunOS AC_CHECK_FUNC(socket, [], [ @@ -61,39 +93,33 @@ AC_CHECK_FUNC(gethostbyname, [], [ AC_CHECK_LIB(nsl, gethostbyname) ]) +AC_CACHE_SAVE -dnl From the autoconf manual -AC_CHECK_FUNCS(syslog) -if test $ac_cv_func_syslog = no; then - # syslog is not in the default libraries. See if it's in some other. - for lib in bsd socket inet; do - AC_CHECK_LIB($lib, syslog, [AC_DEFINE(HAVE_SYSLOG) - LIBS="$LIBS $lib"; break]) - done -fi - -AC_CHECK_LIB(dl, dlopen, [ - LIBS="$LIBS -ldl" -]) - - -dnl Crypto stuff - -libcrypto=none -AC_CHECK_LIB(crypto, SHA1_version, [ - libcrypto=yes -]) - -if test $libcrypto = none; then - AC_MSG_ERROR(It seems like OpenSSL is not installed on this system.) -else - LIBS="$LIBS -lcrypto" -fi - - -dnl Check for TUN/TAP support in the kernel +dnl These are defined in files in m4/ tinc_TUNTAP - -AC_OUTPUT([Makefile src/Makefile -doc/Makefile doc/es/Makefile intl/Makefile lib/Makefile -m4/Makefile po/Makefile.in redhat/Makefile debian/Makefile]) +tinc_OPENSSL +tinc_ZLIB + +dnl Check if support for jumbograms is requested +AC_ARG_ENABLE(jumbograms, + [ --enable-jumbograms enable support for jumbograms (packets up to 9000 bytes)], + [ AC_DEFINE(ENABLE_JUMBOGRAMS) ] +) + +dnl Check if checkpoint tracing has to be enabled +AC_ARG_ENABLE(tracing, + [ --enable-tracing enable checkpoint tracing (debugging only)], + [ AC_DEFINE(ENABLE_TRACING) ] +) + +AC_SUBST(INCLUDES) + +AC_OUTPUT(Makefile +src/Makefile +doc/Makefile +doc/es/Makefile +intl/Makefile +lib/Makefile +m4/Makefile +po/Makefile.in +) diff --git a/lib/Makefile.am b/lib/Makefile.am index 8e5844a5..6f56abca 100644 --- a/lib/Makefile.am +++ b/lib/Makefile.am @@ -1,16 +1,15 @@ ## Process this file with automake to produce Makefile.in -# $Id: Makefile.am,v 1.4 2000/10/20 16:42:22 zarq Exp $ +# $Id: Makefile.am,v 1.5 2002/04/09 15:28:45 zarq Exp $ noinst_LIBRARIES = libvpn.a -INCLUDES = -I. -I$(top_builddir) -I$(top_srcdir)/intl +INCLUDES = @INCLUDES@ -I. -I$(top_builddir) -I$(top_srcdir)/intl -libvpn_a_SOURCES = xmalloc.c pidfile.c utils.c getopt.c getopt1.c \ - list.c error.c +libvpn_a_SOURCES = xmalloc.c pidfile.c utils.c getopt.c getopt1.c list.c avl_tree.c dropin.c libvpn_a_LIBADD = @LIBOBJS@ @ALLOCA@ libvpn_a_DEPENDENCIES = $(libvpn_a_LIBADD) -noinst_HEADERS = xalloc.h pidfile.h utils.h getopt.h list.h error.h +noinst_HEADERS = xalloc.h pidfile.h utils.h getopt.h list.h avl_tree.h dropin.h -EXTRA_DIST = README \ No newline at end of file +EXTRA_DIST = README diff --git a/po/POTFILES.in b/po/POTFILES.in index df8b507c..4e52a3ae 100644 --- a/po/POTFILES.in +++ b/po/POTFILES.in @@ -6,10 +6,28 @@ lib/pidfile.c lib/utils.c src/conf.c -src/genauth.c +src/connection.c src/meta.c src/net.c +src/net_packet.c +src/net_setup.c +src/net_socket.c src/netutl.c src/protocol.c +src/protocol_auth.c +src/protocol_edge.c +src/protocol_key.c +src/protocol_misc.c +src/protocol_subnet.c src/subnet.c src/tincd.c +src/process.c +src/route.c +src/node.c +src/edge.c +src/graph.c +src/linux/device.c +src/freebsd/device.c +src/solaris/device.c +src/netbsd/device.c +src/openbsd/device.c diff --git a/po/nl.po b/po/nl.po index 44e097f3..0f37900c 100644 --- a/po/nl.po +++ b/po/nl.po @@ -1,708 +1,800 @@ # Dutch messages for tinc -# Copyright (C) 1999, 2000 Ivo Timmermans, Guus Sliepen. -# Ivo Timmermans , 1999, 2000. -# Guus Sliepen , 2000. +# Copyright (C) 1999-2001 Ivo Timmermans, Guus Sliepen. +# Ivo Timmermans , 1999-2002. +# Guus Sliepen , 2000-2002. msgid "" msgstr "" -"Project-Id-Version: tinc 1.0pre3\n" -"POT-Creation-Date: 2000-10-15 02:53+0200\n" -"PO-Revision-Date: 2000-05-31 20:14+02:00\n" +"Project-Id-Version: tinc 1.0-cvs\n" +"POT-Creation-Date: 2002-04-09 13:41+0200\n" +"PO-Revision-Date: 2002-03-27 16:59+0100\n" "Last-Translator: Guus Sliepen \n" "Language-Team: Dutch \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=iso-8859-1\n" "Content-Transfer-Encoding: 8bit\n" -#: src/conf.c:164 +#: src/conf.c:173 #, c-format -msgid "Line %d too long while reading config file %s" -msgstr "Regel %d te lang tijdens het lezen van configuratie bestand %s" +msgid "\"yes\" or \"no\" expected for configuration variable %s in %s line %d" +msgstr "" +"\"ja\" of \"nee\" verwacht voor configuratievariabele %s in %s regel %d" + +#: src/conf.c:188 +#, c-format +msgid "Integer expected for configuration variable %s in %s line %d" +msgstr "Geheel getal verwacht voor configuratievariabele %s in %s regel %d" -#: src/conf.c:180 +#: src/conf.c:218 #, c-format -msgid "Invalid variable name on line %d while reading config file %s" +msgid "" +"Hostname or IP address expected for configuration variable %s in %s line %d" msgstr "" -"Ongeldige naam voor variabele op regel %d tijdens het lezen van configuratie " -"bestand %s" +"Hostnaam of IP adres verwacht voor configuratievariabele %s in %s regel %d" + +#: src/conf.c:235 +#, c-format +msgid "Port number expected for configuration variable %s in %s line %d" +msgstr "Poortnummer verwacht voor configuratievariabele %s in %s regel %d" + +#: src/conf.c:251 +#, c-format +msgid "Subnet expected for configuration variable %s in %s line %d" +msgstr "Subnet verwacht voor configuratievariabele %s in %s regel %d" -#: src/conf.c:187 +#: src/conf.c:261 #, c-format -msgid "No value for variable on line %d while reading config file %s" +msgid "" +"Network address and prefix length do not match for configuration variable %s " +"in %s line %d" msgstr "" -"Geen waarde voor variabele op regel %d tijdens het lezen van configuratie " -"bestand %s" +"Netwerk adres en prefix lengte komen niet overeen bij configuratievariabele %" +"s in %s regel %d" -#: src/conf.c:195 +#: src/conf.c:369 #, c-format -msgid "Invalid value for variable on line %d while reading config file %s" +msgid "Cannot open config file %s: %s" +msgstr "Kan configuratie bestand %s niet openen: %s" + +#: src/conf.c:405 +#, c-format +msgid "No value for variable `%s' on line %d while reading config file %s" msgstr "" -"Ongeldige waarde voor variabele op regel %d tijdens het lezen van " +"Geen waarde voor variabele `%s' op regel %d tijdens het lezen van " "configuratie bestand %s" -#: src/genauth.c:78 +#: src/conf.c:438 #, c-format -msgid "Usage: %s bits\n" -msgstr "Gebruik: %s bits\n" +msgid "Failed to read `%s': %s" +msgstr "Lezen van `%s' mislukte: %s" -#: src/genauth.c:89 +#: src/conf.c:465 #, c-format -msgid "Illegal number: %s\n" -msgstr "Ongeldig nummer: %s\n" +msgid "`%s' is not an absolute path" +msgstr "`%s' is geen absoluut pad" -#. Align to bytes for easy mallocing and reading -#: src/genauth.c:95 +#: src/conf.c:481 src/conf.c:513 #, c-format -msgid "Generating %d bits keys:\n" -msgstr "Bezig met genereren van een %d bits sleutel:\n" +msgid "Couldn't stat `%s': %s" +msgstr "Kon `%s' niet statten: %s" -#: src/genauth.c:99 -msgid "Done.\n" -msgstr "Klaar.\n" +#: src/conf.c:487 src/conf.c:522 +#, c-format +msgid "`%s' is owned by UID %d instead of %d" +msgstr "`%s' is eigendom van UID %d in plaats van %d" + +#: src/conf.c:494 src/conf.c:529 +#, c-format +msgid "Warning: `%s' is a symlink" +msgstr "Waarschuwing: `%s' is een symbolische link" + +#: src/conf.c:499 src/conf.c:534 +#, c-format +msgid "Unable to read symbolic link `%s': %s" +msgstr "Kan symbolische link `%s' niet lezen: %s" + +#. Accessible by others +#: src/conf.c:545 +#, c-format +msgid "`%s' has unsecure permissions" +msgstr "`%s' heeft onveilige permissies" + +#. Ask for a file and/or directory name. +#: src/conf.c:570 +#, c-format +msgid "Please enter a file to save %s to [%s]: " +msgstr "Geef een bestand om de %s naar de schrijven [%s]: " -#: src/genauth.c:101 +#: src/conf.c:576 #, c-format -msgid "Public key: %s\n" -msgstr "Publieke sleutel: %s\n" +msgid "Error while reading stdin: %s\n" +msgstr "Fout tijdens lezen van standaardinvoer: %s\n" -#: src/genauth.c:102 +#: src/conf.c:602 #, c-format -msgid "Private key: %s\n" -msgstr "Privé sleutel: %s\n" +msgid "Error opening file `%s': %s\n" +msgstr "Fout bij het openen van het bestand `%s': %s\n" -#: src/meta.c:42 +#: src/conf.c:612 #, c-format -msgid "Sending %d bytes of metadata to %s (%s): %s" -msgstr "Verzending %d bytes metadata naar %s (%s): %s" +msgid "" +"The file `%s' (or any of the leading directories) has unsafe permissions.\n" +"I will not create or overwrite this file.\n" +msgstr "" +"Het bestand `%s' (of een van de voorgaande mappen) heeft onvoldoende " +"bescherming.\n" +"Ik maak of overschrijf dit bestand niet.\n" + +#: src/connection.c:114 +msgid "Connections:" +msgstr "Verbindingen:" -#: src/meta.c:57 +#: src/connection.c:119 #, c-format -msgid "Sending meta data to %s (%s) failed: %m" -msgstr "Fout tijdens verzenden metadata naar %s (%s): %m" +msgid " %s at %s options %lx socket %d status %04x" +msgstr " %s op %s opties %lx socket %d status %04x" -#: src/meta.c:85 src/net.c:773 +#: src/connection.c:123 +msgid "End of connections." +msgstr "Einde van verbindingen." + +#: src/meta.c:49 #, c-format -msgid "This is a bug: %s:%d: %d:%m %s (%s)" -msgstr "Dit is een programmeerfout: %s:%d: %d:%m %s (%s)" +msgid "Sending %d bytes of metadata to %s (%s)" +msgstr "Verzenden van %d bytes metadata naar %s (%s)" -#: src/meta.c:91 +#: src/meta.c:63 +#, c-format +msgid "Sending meta data to %s (%s) failed: %s" +msgstr "Fout tijdens verzenden metadata naar %s (%s): %s" + +#: src/meta.c:94 +#, c-format +msgid "This is a bug: %s:%d: %d:%s %s (%s)" +msgstr "Dit is een programmeerfout: %s:%d: %d:%s %s (%s)" + +#: src/meta.c:100 #, c-format msgid "Metadata socket error for %s (%s): %s" msgstr "Fout op metadata socket voor %s (%s): %s" -#: src/meta.c:110 +#: src/meta.c:121 #, c-format msgid "Connection closed by %s (%s)" msgstr "Verbinding beëindigd door %s (%s)" -#: src/meta.c:114 +#: src/meta.c:128 #, c-format -msgid "Metadata socket read error for %s (%s): %m" -msgstr "Fout op metadata socket voor %s (%s) tijdens lezen: %m" +msgid "Metadata socket read error for %s (%s): %s" +msgstr "Fout op metadata socket voor %s (%s) tijdens lezen: %s" -#: src/meta.c:144 +#: src/meta.c:202 #, c-format -msgid "Got request from %s (%s): %s" -msgstr "Kreeg verzoek van %s (%s): %s" +msgid "Metadata read buffer overflow for %s (%s)" +msgstr "Metadata leesbuffer overloop voor %s (%s)" + +#: src/net.c:88 +msgid "Purging unreachable nodes" +msgstr "Verwijderen onbereikbare nodes" -#: src/meta.c:162 +#: src/net.c:98 #, c-format -msgid "Metadata read buffer overflow for %s (%s)" -msgstr "Metadata leesbuffer overvol voor %s (%s)" +msgid "Purging node %s (%s)" +msgstr "Verwijdering node %s (%s)" -#: src/net.c:106 +#: src/net.c:188 #, c-format -msgid "Sending packet of %d bytes to %s (%s)" -msgstr "Verzending pakket van %d bytes naar %s (%s)" +msgid "Closing connection with %s (%s)" +msgstr "Beëindigen verbinding met %s (%s)" + +#: src/net.c:253 +#, c-format +msgid "%s (%s) didn't respond to PING" +msgstr "%s (%s) antwoordde niet op ping" -#: src/net.c:115 +#: src/net.c:266 #, c-format -msgid "Error sending packet to %s (%s): %m" -msgstr "Fout tijdens verzenden pakket naar %s (%s): %m" +msgid "Timeout from %s (%s) during authentication" +msgstr "Timeout van %s (%s) tijdens authenticatie" -#: src/net.c:129 +#: src/net.c:311 src/net_socket.c:253 #, c-format -msgid "Receiving packet of %d bytes" -msgstr "Ontvangst pakket van %d bytes" +msgid "Error while connecting to %s (%s): %s" +msgstr "Fout tijdens schrijven naar %s (%s): %s" -#: src/net.c:142 +#: src/net.c:363 #, c-format -msgid "Can't write to tap device: %m" -msgstr "Kan niet naar tap apparaat schrijven: %m" +msgid "Error while waiting for input: %s" +msgstr "Fout tijdens wachten op invoer: %s" -#: src/net.c:242 -msgid "Queue flushed" -msgstr "Wachtrij leeggemaakt" +#: src/net.c:397 +msgid "Regenerating symmetric key" +msgstr "Hergenereren symmetrische sleutel" -#: src/net.c:257 +#: src/net.c:414 +msgid "Flushing event queue" +msgstr "Legen taakrij" + +#: src/net.c:431 +msgid "Rereading configuration file and restarting in 5 seconds..." +msgstr "Herlezen configuratiebestand en herstarten na 5 seconden..." + +#: src/net.c:438 +msgid "Unable to reread configuration file, exitting." +msgstr "Kan configuratiebestand niet herlezen, beëindigen." + +#: src/net_packet.c:107 #, c-format -msgid "Flushing send queue for %s (%s)" -msgstr "Legen van verzend-wachtrij voor %s (%s)" +msgid "Got unauthenticated packet from %s (%s)" +msgstr "Kreeg niet-geauthenticeerd pakket van %s (%s)" -#: src/net.c:265 +#: src/net_packet.c:134 #, c-format -msgid "Flushing receive queue for %s (%s)" -msgstr "Legen van de ontvangst-wachtrij voor %s (%s)" +msgid "Got late or replayed packet from %s (%s), seqno %d" +msgstr "Kreeg laat of gedupliceerd pakket van %s (%s), seqno %d" -#: src/net.c:283 +#: src/net_packet.c:151 #, c-format -msgid "Trying to look up %d.%d.%d.%d in connection list failed!" -msgstr "Poging tot opzoeken %d.%d.%d.%d in verbindingslijst mislukte!" +msgid "Error while uncompressing packet from %s (%s)" +msgstr "Fout tijdens decomprimeren pakket van %s (%s)" -#: src/net.c:297 +#: src/net_packet.c:178 #, c-format -msgid "Could not open UDP connection to %s (%s)" -msgstr "Kon geen UDP verbinding openen naar %s (%s)" +msgid "Received packet of %d bytes from %s (%s)" +msgstr "Ontvangst pakket van %d bytes van %s (%s)" -#: src/net.c:305 +#: src/net_packet.c:204 #, c-format msgid "No valid key known yet for %s (%s), queueing packet" msgstr "" -"Nog geen geldige sleutel bekend voor %s (%s), pakket wordt in de wachtrij " -"gezet" +"Nog geen geldige sleutel bekend voor %s (%s), pakket wordt in wachtrij gezet" -#: src/net.c:316 +#: src/net_packet.c:237 #, c-format -msgid "%s (%s) is not ready, queueing packet" -msgstr "%s (%s) is niet gereed, pakket wordt in de wachtrij gezet" +msgid "Error while compressing packet to %s (%s)" +msgstr "Fout tijdens comprimeren pakket naar %s (%s)" -#: src/net.c:344 +#: src/net_packet.c:288 #, c-format -msgid "Could not open %s: %m" -msgstr "Kon %s niet openen: %m" +msgid "Setting outgoing packet priority to %d" +msgstr "Instellen prioriteit uitgaand pakket op %d" -#: src/net.c:360 +#. SO_PRIORITY doesn't seem to work +#: src/net_packet.c:290 src/net_setup.c:450 src/net_socket.c:98 +#: src/net_socket.c:144 src/net_socket.c:171 src/process.c:273 +#: src/process.c:310 #, c-format -msgid "%s is a new style tun/tap device" -msgstr "%s is een nieuwe stijl tun/tap apparaat" +msgid "System call `%s' failed: %s" +msgstr "Systeemaanroep `%s' mislukte: %s" -#: src/net.c:362 -msgid "tun/tap device will be left unconfigured" -msgstr "tun/tap apparaat wordt ongeconfigureerd gelaten" - -#: src/net.c:384 +#: src/net_packet.c:296 #, c-format -msgid "Creating metasocket failed: %m" -msgstr "Aanmaak van metasocket mislukt: %m" +msgid "Error sending packet to %s (%s): %s" +msgstr "Fout tijdens verzenden pakket naar %s (%s): %s" -#: src/net.c:390 src/net.c:396 src/net.c:458 +#: src/net_packet.c:313 #, c-format -msgid "setsockopt: %m" -msgstr "setsockopt: %m" +msgid "Sending packet of %d bytes to %s (%s)" +msgstr "Verzending pakket van %d bytes naar %s (%s)" + +#: src/net_packet.c:320 +msgid "Packet is looping back to us!" +msgstr "Pakket komt terug naar ons!" -#: src/net.c:403 src/net.c:465 +#: src/net_packet.c:329 #, c-format -msgid "fcntl: %m" -msgstr "fcntl: %m" +msgid "Node %s (%s) is not reachable" +msgstr "Node %s (%s) is niet bereikbaar" -#: src/net.c:411 +#: src/net_packet.c:337 #, c-format -msgid "Unable to bind listen socket to interface %s: %m" -msgstr "Kon luistersocket niet binden aan interface %s: %m" +msgid "Sending packet to %s via %s (%s)" +msgstr "Verzending pakket naar %s via %s (%s)" -#: src/net.c:427 +#: src/net_packet.c:357 #, c-format -msgid "Can't bind to port %hd/tcp: %m" -msgstr "Kan niet aan poort %hd/tcp binden: %m" +msgid "Broadcasting packet of %d bytes from %s (%s)" +msgstr "Verspreiding pakket van %d bytes van %s (%s)" -#: src/net.c:433 +#: src/net_packet.c:374 #, c-format -msgid "listen: %m" -msgstr "listen: %m" +msgid "Flushing queue for %s (%s)" +msgstr "Legen van wachtrij voor %s (%s)" -#: src/net.c:452 +#: src/net_packet.c:396 #, c-format -msgid "Creating socket failed: %m" -msgstr "Aanmaak socket mislukte: %m" +msgid "This is a bug: %s:%d: %d:%s" +msgstr "Dit is een programmeerfout: %s:%d: %d:%s" -#: src/net.c:476 +#: src/net_packet.c:403 #, c-format -msgid "Can't bind to port %hd/udp: %m" -msgstr "Kan niet aan poort %hd/udp binden: %m" +msgid "Incoming data socket error: %s" +msgstr "Fout op socket voor inkomend verkeer: %s" -#: src/net.c:493 +#: src/net_packet.c:409 #, c-format -msgid "Trying to connect to %s" -msgstr "Poging tot verbinding met %s" +msgid "Receiving packet failed: %s" +msgstr "Ontvangst pakket mislukt: %s" -#: src/net.c:503 +#: src/net_packet.c:420 #, c-format -msgid "Creating socket for %s port %d failed: %m" -msgstr "Aanmaken socket voor %s poort %d mislukt: %m" +msgid "Received UDP packet from unknown source %s" +msgstr "Ontvangst UDP pakket van onbekende oorsprong %s" -#: src/net.c:514 +#: src/net_setup.c:102 #, c-format -msgid "%s port %hd: %m" -msgstr "%s poort %hd: %m" +msgid "Error reading RSA public key file `%s': %s" +msgstr "Fout tijdens lezen RSA publieke sleutel bestand `%s': %s" -#: src/net.c:521 +#: src/net_setup.c:112 #, c-format -msgid "fcntl for %s port %d: %m" -msgstr "fcntl voor %s poort %d: %m" +msgid "Reading RSA public key file `%s' failed: %s" +msgstr "Lezen RSA publieke sleutel bestand `%s' mislukt: %s" -#: src/net.c:527 +#: src/net_setup.c:140 #, c-format -msgid "Connected to %s port %hd" -msgstr "Verbonden met %s poort %hd" +msgid "No public key for %s specified!" +msgstr "Geen publieke sleutel bekend voor %s gespecificeerd!" -#: src/net.c:547 +#: src/net_setup.c:166 #, c-format -msgid "Error looking up `%s': %m" -msgstr "Fout bij het opzoeken van `%s': %m" +msgid "Error reading RSA private key file `%s': %s" +msgstr "Fout tijdens lezen RSA privé sleutel bestand `%s': %s" -#: src/net.c:557 +#: src/net_setup.c:176 #, c-format -msgid "Could not set up a meta connection to %s" -msgstr "Kon geen metaverbinding aangaan met %s" +msgid "Reading RSA private key file `%s' failed: %s" +msgstr "Fout tijdens lezen RSA privé sleutel bestand `%s': %s" + +#: src/net_setup.c:202 src/net_setup.c:203 +msgid "MYSELF" +msgstr "MIJZELF" -#: src/net.c:586 +#: src/net_setup.c:210 msgid "Name for tinc daemon required!" msgstr "Naam voor tinc daemon verplicht!" -#: src/net.c:594 +#: src/net_setup.c:216 msgid "Invalid name for myself!" -msgstr "Ongelige naam voor mijzelf!" +msgstr "Ongeldige naam voor mijzelf!" -#: src/net.c:600 +#: src/net_setup.c:230 msgid "Cannot open host configuration file for myself!" msgstr "Kan host configuratie bestand voor mijzelf niet openen!" -#: src/net.c:619 -msgid "Unable to set up a listening socket!" -msgstr "Kon geen luistersocket aanmaken!" +#: src/net_setup.c:287 +msgid "Invalid routing mode!" +msgstr "Ongeldige routing modus!" -#: src/net.c:625 -msgid "Unable to set up an incoming vpn data socket!" -msgstr "Kon geen socket maken voor inkomend vpn verkeer!" +#: src/net_setup.c:298 +msgid "PriorityInheritance not supported on this platform" +msgstr "PriorityInheritance wordt niet ondersteund op dit platform" -#: src/net.c:632 -#, c-format -msgid "Ready: listening on port %hd" -msgstr "Gereed: luisterend op poort %hd" +#: src/net_setup.c:308 +msgid "Bogus maximum timeout!" +msgstr "Onzinnige maximum timeout!" -#: src/net.c:660 -#, c-format -msgid "Still failed to connect to other, will retry in %d seconds" -msgstr "Wederom niet verbonden met de ander, nieuwe poging over %d seconden" +#: src/net_setup.c:325 +msgid "Invalid address family!" +msgstr "Ongeldige adresfamilie!" -#: src/net.c:698 -#, c-format -msgid "Trying to re-establish outgoing connection in %d seconds" -msgstr "Poging tot herstellen van uitgaande verbinding over %d seconden" +#: src/net_setup.c:347 +msgid "Unrecognized cipher type!" +msgstr "Onbekend cipher type!" -#: src/net.c:736 -msgid "Terminating" -msgstr "Beëindigen" +#: src/net_setup.c:382 +msgid "Unrecognized digest type!" +msgstr "Onbekend digest type!" -#: src/net.c:750 -#, c-format -msgid "Opening UDP socket to %s" -msgstr "Bezig met openen UDP socket naar %s" +#: src/net_setup.c:398 +msgid "MAC length exceeds size of digest!" +msgstr "MAC lengte is groter dan dat van digest!" -#: src/net.c:755 -#, c-format -msgid "Creating UDP socket failed: %m" -msgstr "Aanmaak UDP socket mislukte: %m" +#: src/net_setup.c:403 +msgid "Bogus MAC length!" +msgstr "Onzinnige MAC lengte!" -#: src/net.c:765 -#, c-format -msgid "Connecting to %s port %d failed: %m" -msgstr "Verbinding naar %s poort %d mislukt: %m" +#: src/net_setup.c:419 +msgid "Bogus compression level!" +msgstr "Onzinnig compressieniveau!" -#: src/net.c:798 +#: src/net_setup.c:465 #, c-format -msgid "Error: getpeername: %m" -msgstr "Fout: getpeername: %m" +msgid "Listening on %s" +msgstr "Luisterend op %s" -#: src/net.c:813 -#, c-format -msgid "Connection from %s port %d" -msgstr "Verbinding van %s poort %d" +#: src/net_setup.c:476 +msgid "Ready" +msgstr "Gereed" -#: src/net.c:861 +#: src/net_setup.c:479 +msgid "Unable to create any listening socket!" +msgstr "Kon geen enkele luistersocket aanmaken!" + +#: src/net_socket.c:90 #, c-format -msgid "This is a bug: %s:%d: %d:%m" -msgstr "Dit is een programmeerfout: %s:%d: %d:%m" +msgid "Creating metasocket failed: %s" +msgstr "Aanmaak van metasocket mislukt: %s" -#: src/net.c:867 +#: src/net_socket.c:124 src/net_socket.c:186 #, c-format -msgid "Incoming data socket error: %s" -msgstr "Fout op socket voor inkomend verkeer: %s" +msgid "Can't bind to interface %s: %s" +msgstr "Kan niet aan interface %s binden: %s" -#: src/net.c:873 +#: src/net_socket.c:128 +msgid "BindToDevice not supported on this platform" +msgstr "BindToDevice wordt niet ondersteund op dit platform" + +#: src/net_socket.c:136 #, c-format -msgid "Receiving packet failed: %m" -msgstr "Ontvangst pakket mislukt: %m" +msgid "Can't bind to %s/tcp: %s" +msgstr "Kan niet aan %s/tcp binden: %s" -#: src/net.c:894 +#: src/net_socket.c:163 #, c-format -msgid "Closing connection with %s (%s)" -msgstr "Beëindigen verbinding met %s (%s)" +msgid "Creating UDP socket failed: %s" +msgstr "Aanmaak UDP socket mislukte: %s" -#: src/net.c:937 -msgid "Trying to re-establish outgoing connection in 5 seconds" -msgstr "Poging tot herstellen van uitgaande verbinding over 5 seconden" +#: src/net_socket.c:196 +#, c-format +msgid "Can't bind to %s/udp: %s" +msgstr "Kan niet aan %s/udp binden: %s" -#: src/net.c:967 +#: src/net_socket.c:219 #, c-format -msgid "%s (%s) didn't respond to PING" -msgstr "%s (%s) antwoordde niet op ping" +msgid "Trying to re-establish outgoing connection in %d seconds" +msgstr "Poging tot herstellen van uitgaande verbinding over %d seconden" -#: src/net.c:998 +#: src/net_socket.c:228 src/net_socket.c:322 #, c-format -msgid "Accepting a new connection failed: %m" -msgstr "Aanname van nieuwe verbinding is mislukt: %m" +msgid "Trying to connect to %s (%s)" +msgstr "Poging tot verbinden met %s (%s)" -#: src/net.c:1006 -msgid "Closed attempted connection" -msgstr "Aangenomen verbinding verbroken" +#: src/net_socket.c:234 src/net_socket.c:329 +#, c-format +msgid "Creating socket for %s failed: %s" +msgstr "Aanmaken socket voor %s mislukt: %s" -#: src/net.c:1041 +#: src/net_socket.c:258 src/net_socket.c:268 #, c-format -msgid "Outgoing data socket error for %s (%s): %s" -msgstr "Fout op socket voor uitgaand verkeer voor %s (%s): %s" +msgid "Connected to %s (%s)" +msgstr "Verbonden met %s (%s)" -#: src/net.c:1077 +#: src/net_socket.c:287 #, c-format -msgid "Error while reading from tapdevice: %m" -msgstr "Fout tijdens lezen van tap-apparaatbestand tijdens lezen: %m" +msgid "Could not set up a meta connection to %s" +msgstr "Kon geen metaverbinding aangaan met %s" -#: src/net.c:1087 +#: src/net_socket.c:350 #, c-format -msgid "Non-IP ethernet frame %04x from %02x:%02x:%02x:%02x:%02x:%02x" -msgstr "Niet-IP ethernet pakket %04x van %02x:%02x:%02x:%02x:%02x:%02x" +msgid "fcntl for %s: %s" +msgstr "fcntl voor %s: %s" -#: src/net.c:1094 +#: src/net_socket.c:368 #, c-format -msgid "Dropping short packet from %02x:%02x:%02x:%02x:%02x:%02x" -msgstr "Te kort pakket van %02x:%02x:%02x:%02x:%02x:%02x genegeerd" +msgid "%s: %s" +msgstr "%s: %s" -#: src/net.c:1133 +#: src/net_socket.c:389 #, c-format -msgid "Error while waiting for input: %m" -msgstr "Fout tijdens wachten op invoer: %m" +msgid "Already connected to %s" +msgstr "Reeds verbonden met %s" -#: src/netutl.c:115 +#: src/net_socket.c:408 #, c-format -msgid "Error looking up `%s': %s\n" -msgstr "Fout bij het opzoeken van `%s': %s\n" +msgid "No address specified for %s" +msgstr "Geen adres gespecificeerd voor %s" -#: src/protocol.c:80 +#: src/net_socket.c:435 #, c-format -msgid "Output buffer overflow while sending %s to %s (%s)" -msgstr "Uitvoer buffer overvol tijdens zenden %s naar %s (%s)" +msgid "Accepting a new connection failed: %s" +msgstr "Aanname van nieuwe verbinding is mislukt: %s" -#: src/protocol.c:87 +#: src/net_socket.c:453 #, c-format -msgid "Sending %s to %s (%s)" -msgstr "Verzending %s naar %s (%s)" +msgid "Connection from %s" +msgstr "Verbinding van %s" -#: src/protocol.c:101 +#: src/net_socket.c:475 #, c-format -msgid "Unknown request from %s (%s)" -msgstr "Onbekend verzoek van %s (%s)" +msgid "Invalid name for outgoing connection in %s line %d" +msgstr "Ongeldige naam voor uitgaande verbinding in %s regel %d" -#: src/protocol.c:108 +#: src/netutl.c:65 src/netutl.c:88 #, c-format -msgid "Got %s from %s (%s)" -msgstr "Kreeg %s van %s (%s)" +msgid "Error looking up %s port %s: %s\n" +msgstr "Fout bij het opzoeken van %s poort %s: %s\n" -#: src/protocol.c:114 +#: src/netutl.c:109 #, c-format -msgid "Error while processing %s from %s (%s)" -msgstr "Fout tijdens afhandelen %s van %s (%s)" +msgid "Error while translating addresses: %s" +msgstr "Fout tijdens vertalen adressen: %s" -#: src/protocol.c:121 +#: src/netutl.c:134 #, c-format -msgid "Bogus data received from %s (%s)" -msgstr "Onzinnige data ontvangen van %s (%s)" +msgid "Error while looking up hostname: %s" +msgstr "Fout bij het opzoeken van hostnaam: %s" -#: src/protocol.c:167 +#: src/netutl.c:137 #, c-format -msgid "Got bad ID from %s" -msgstr "Kreeg ongeldige ID van %s" +msgid "%s port %s" +msgstr "%s poort %s" -#: src/protocol.c:175 +#: src/netutl.c:166 #, c-format -msgid "Peer %s (%s) uses incompatible version %d" -msgstr "Ander %s (%s) gebruikt een niet-compatibel protocol versie %d" +msgid "sockaddrcmp() was called with unknown address family %d, exitting!" +msgstr "" +"sockaddrcmp() werd aangeroepen met onbekende adresfamilie %d, beëindigen!" -#: src/protocol.c:184 +#: src/protocol.c:77 #, c-format -msgid "Peer %s uses invalid identity name" -msgstr "Ander %s gebruikt een ongeldige identiteitsnaam" +msgid "Output buffer overflow while sending request to %s (%s)" +msgstr "Uitvoer buffer overvol tijdens zenden verzoek naar %s (%s)" -#: src/protocol.c:192 +#: src/protocol.c:85 #, c-format -msgid "Peer %s had unknown identity (%s)" -msgstr "Ander %s heeft een onbekende identiteit (%s)" +msgid "Sending %s to %s (%s): %s" +msgstr "Verzending %s naar %s (%s): %s" -#: src/protocol.c:207 +#: src/protocol.c:87 #, c-format -msgid "Uplink %s (%s) is already in our connection list" -msgstr "%s (%s) staat al in onze verbindingslijst" +msgid "Sending %s to %s (%s)" +msgstr "Verzending %s naar %s (%s)" -#: src/protocol.c:253 +#: src/protocol.c:104 #, c-format -msgid "Got bad CHALLENGE from %s (%s)" -msgstr "Kreeg ongeldige CHALLENGE van %s (%s)" +msgid "Unknown request from %s (%s): %s" +msgstr "Onbekend verzoek van %s (%s): %s" -#: src/protocol.c:261 +#: src/protocol.c:107 #, c-format -msgid "Intruder: wrong challenge length from %s (%s)" -msgstr "Indringer: verkeerde lengte voor uitdaging van %s (%s)" +msgid "Unknown request from %s (%s)" +msgstr "Onbekend verzoek van %s (%s)" -#: src/protocol.c:287 +#: src/protocol.c:117 #, c-format -msgid "Trying to send CHAL_REPLY to %s (%s) without a valid CHALLENGE" -msgstr "Poging tot zenden CHAL_REPLY naar %s (%s) zonder een geldige CHALLENGE" +msgid "Got %s from %s (%s): %s" +msgstr "Kreeg %s van %s (%s): %s" -#: src/protocol.c:318 +#: src/protocol.c:120 #, c-format -msgid "Got bad CHAL_REPLY from %s (%s)" -msgstr "Kreeg ongeldige CHAL_REPLY van %s (%s)" +msgid "Got %s from %s (%s)" +msgstr "Kreeg %s van %s (%s)" -#: src/protocol.c:327 +#: src/protocol.c:127 #, c-format -msgid "Intruder: wrong challenge reply length from %s (%s)" -msgstr "Indringer: verkeerde lengte van antwoord op uitdaging van %s (%s)" +msgid "Unauthorized request from %s (%s)" +msgstr "Niet toegestaan verzoek van %s (%s)" -#: src/protocol.c:344 +#: src/protocol.c:134 #, c-format -msgid "Intruder: wrong challenge reply from %s (%s)" -msgstr "Indringer: verkeerd antwoord op de uitdaging van %s (%s)" +msgid "Error while processing %s from %s (%s)" +msgstr "Fout tijdens afhandelen %s van %s (%s)" -#: src/protocol.c:386 +#: src/protocol.c:141 #, c-format -msgid "Removing old entry for %s at %s in favour of new connection from %s" -msgstr "" -"Verwijdering oude verbinding voor %s op %s in voordeel van nieuwe verbinding " -"van %s" +msgid "Bogus data received from %s (%s)" +msgstr "Onzinnige data ontvangen van %s (%s)" -#: src/protocol.c:398 +#: src/protocol.c:187 +msgid "Already seen request" +msgstr "Verzoek reeds gezien" + +#: src/protocol.c:218 #, c-format -msgid "Connection with %s (%s) activated" -msgstr "Verbinding met %s (%s) geactiveerd" +msgid "Aging past requests: deleted %d, left %d\n" +msgstr "Veroudering vorige verzoeken: %d gewist, %d overgebleven\n" -#: src/protocol.c:438 +#: src/protocol_auth.c:69 src/protocol_auth.c:224 src/protocol_auth.c:357 +#: src/protocol_auth.c:417 src/protocol_auth.c:529 src/protocol_edge.c:90 +#: src/protocol_edge.c:219 src/protocol_key.c:80 src/protocol_key.c:128 +#: src/protocol_key.c:196 src/protocol_misc.c:61 src/protocol_misc.c:91 +#: src/protocol_misc.c:177 src/protocol_subnet.c:71 src/protocol_subnet.c:163 #, c-format -msgid "Got bad ADD_SUBNET from %s (%s)" -msgstr "Kreeg ongeldige ADD_SUBNET van %s (%s)" +msgid "Got bad %s from %s (%s)" +msgstr "Kreeg verkeerde %s van %s (%s)" -#: src/protocol.c:447 +#: src/protocol_auth.c:77 src/protocol_edge.c:98 src/protocol_edge.c:104 +#: src/protocol_edge.c:228 src/protocol_edge.c:234 src/protocol_subnet.c:79 +#: src/protocol_subnet.c:87 src/protocol_subnet.c:171 +#: src/protocol_subnet.c:189 #, c-format -msgid "Got bad ADD_SUBNET from %s (%s): invalid identity name" -msgstr "Kreeg ongeldige ADD_SUBNET van %s (%s): ongeldige identiteitsnaam" +msgid "Got bad %s from %s (%s): %s" +msgstr "Kreeg verkeerde %s van %s (%s): %s" -#: src/protocol.c:456 +#: src/protocol_auth.c:87 #, c-format -msgid "Got bad ADD_SUBNET from %s (%s): invalid subnet string" -msgstr "Kreeg ongeldige ADD_SUBNET van %s (%s): ongeldig subnet" +msgid "Peer %s is %s instead of %s" +msgstr "Ander %s is %s in plaats van %s" -#: src/protocol.c:467 +#: src/protocol_auth.c:98 #, c-format -msgid "Warning: got ADD_SUBNET from %s (%s) for ourself, restarting" -msgstr "Waarschuwing: kreeg ADD_SUBNET van %s (%s) voor onszelf, herstart" +msgid "Peer %s (%s) uses incompatible version %d" +msgstr "Ander %s (%s) gebruikt incompatibele versie %d" -#: src/protocol.c:478 +#: src/protocol_auth.c:117 #, c-format -msgid "Got ADD_SUBNET for %s from %s (%s) which is not in our connection list" -msgstr "" -"Kreeg DEL_SUBNET voor %d.%d.%d.%d van %s (%s) die niet voorkomt in onze " -"verbindingslijst" +msgid "Peer %s had unknown identity (%s)" +msgstr "Ander %s heeft onbekende identiteit (%s)" -#: src/protocol.c:506 +#: src/protocol_auth.c:175 #, c-format -msgid "Got bad DEL_SUBNET from %s (%s)" -msgstr "Kreeg ongeldige DEL_SUBNET van %s (%s)" +msgid "Generated random meta key (unencrypted): %s" +msgstr "Willekeurige meta sleutel aangemaakt (niet versleuteld): %s" -#: src/protocol.c:515 +#: src/protocol_auth.c:187 src/protocol_auth.c:254 #, c-format -msgid "Got bad DEL_SUBNET from %s (%s): invalid identity name" -msgstr "Kreeg ongeldige DEL_SUBNET van %s (%s): ongeldige identiteitsnaam" +msgid "Error during encryption of meta key for %s (%s)" +msgstr "Fout tijdens versleutelen van meta key voor %s (%s)" -#: src/protocol.c:524 +#: src/protocol_auth.c:234 src/protocol_auth.c:367 src/protocol_auth.c:425 +#: src/protocol_auth.c:443 #, c-format -msgid "Got bad DEL_SUBNET from %s (%s): invalid subnet string" -msgstr "Kreeg ongeldige DEL_SUBNET van %s (%s): ongeldige identiteitsnaam" +msgid "Possible intruder %s (%s): %s" +msgstr "Mogelijke indringer %s (%s): %s" -#: src/protocol.c:535 +#: src/protocol_auth.c:262 #, c-format -msgid "Warning: got DEL_SUBNET from %s (%s) for ourself, restarting" -msgstr "Waarschuwing: kreeg DEL_SUBNET van %s (%s) voor onszelf, herstart" +msgid "Received random meta key (unencrypted): %s" +msgstr "Ontving willekeurige meta key (niet versleuteld): %s" -#: src/protocol.c:546 +#: src/protocol_auth.c:274 #, c-format -msgid "Got DEL_SUBNET for %s from %s (%s) which is not in our connection list" -msgstr "" -"Kreeg DEL_SUBNET voor %d.%d.%d.%d van %s (%s) die niet voorkomt in onze " -"verbindingslijst" +msgid "%s (%s) uses unknown cipher!" +msgstr "%s (%s) gebruikt onbekende cipher!" -#: src/protocol.c:577 +#: src/protocol_auth.c:296 src/protocol_key.c:267 #, c-format -msgid "Got bad ADD_HOST from %s (%s)" -msgstr "Kreeg ongeldige ADD_HOST van %s (%s)" +msgid "Node %s (%s) uses unknown digest!" +msgstr "Node %s (%s) gebruikt onbekende digest!" -#: src/protocol.c:585 +#: src/protocol_auth.c:302 #, c-format -msgid "Got bad ADD_HOST from %s (%s): invalid identity name" -msgstr "Kreeg ongeldige ADD_HOST van %s (%s): ongeldige identiteitsnaam" +msgid "%s (%s) uses bogus MAC length!" +msgstr "%s (%s) gebruikt onzinnige MAC lengte!" + +#: src/protocol_auth.c:425 +msgid "wrong challenge reply length" +msgstr "verkeerde lengte antwoord op uitdaging" + +#: src/protocol_auth.c:443 +msgid "wrong challenge reply" +msgstr "verkeerd antwoord op uitdaging" -#: src/protocol.c:594 +#: src/protocol_auth.c:448 #, c-format -msgid "Warning: got ADD_HOST from %s (%s) for ourself, restarting" -msgstr "Waarschuwing: kreeg ADD_HOST van %s (%s) voor onszelf, herstart" +msgid "Expected challenge reply: %s" +msgstr "Verwachtte antwoord op uitdaging: %s" -#: src/protocol.c:604 +#: src/protocol_auth.c:549 #, c-format -msgid "Warning: got ADD_HOST from %s (%s) from ourself, restarting" -msgstr "Waarschuwing: kreeg ADD_HOST van %s (%s) van onszelf, herstart" +msgid "Established a second connection with %s (%s), closing old connection" +msgstr "Tweede verbinding met %s (%s) gemaakt, oude verbinding wordt gesloten" -#: src/protocol.c:614 +#: src/protocol_auth.c:583 #, c-format -msgid "" -"Got ADD_HOST from %s (%s) with origin %s which is not in our connection list" -msgstr "" -"Kreeg ADD_HOST van %s (%s) met herkomst %s die niet in onze verbindingslijst " -"voorkomt" +msgid "Connection with %s (%s) activated" +msgstr "Verbinding met %s (%s) geactiveerd" + +#: src/protocol_edge.c:98 src/protocol_edge.c:104 src/protocol_edge.c:228 +#: src/protocol_edge.c:234 src/protocol_subnet.c:79 src/protocol_subnet.c:171 +msgid "invalid name" +msgstr "ongeldige naam" -#: src/protocol.c:633 +#: src/protocol_edge.c:150 #, c-format -msgid "Got duplicate ADD_HOST for %s (%s) from %s (%s)" -msgstr "Kreeg een tweede ADD_HOST voor %s (%s) van %s (%s)" +msgid "Got %s from %s (%s) for ourself which does not match existing entry" +msgstr "" +"Kreeg %s van %s (%s) voor onszelf welke niet overeenkomt met reeds bekende" -#: src/protocol.c:640 +#: src/protocol_edge.c:157 #, c-format -msgid "Removing old entry for %s (%s)" -msgstr "Verwijdering oude verbinding voor %s (%s)" +msgid "Got %s from %s (%s) which does not match existing entry" +msgstr "Kreeg %s van %s (%s) welke niet overeenkomt met reeds bekende" -#: src/protocol.c:683 +#: src/protocol_edge.c:167 #, c-format -msgid "Got bad DEL_HOST from %s (%s)" -msgstr "Kreeg ongeldige DEL_HOST van %s (%s)" +msgid "Got %s from %s (%s) for ourself which does not exist" +msgstr "Kreeg %s van %s (%s) voor onszelf welke niet bestaat" -#: src/protocol.c:692 +#: src/protocol_edge.c:248 src/protocol_edge.c:257 src/protocol_edge.c:268 #, c-format -msgid "Got bad DEL_HOST from %s (%s): invalid identity name" -msgstr "Kreeg ongeldige DEL_HOST van %s (%s): ongeldige identiteitsnaam" +msgid "Got %s from %s (%s) which does not appear in the edge tree" +msgstr "Kreeg %s van %s (%s) welke niet voorkomt in de edge tree" -#: src/protocol.c:701 +#: src/protocol_edge.c:275 src/protocol_subnet.c:118 src/protocol_subnet.c:217 #, c-format -msgid "Warning: got DEL_HOST from %s (%s) for ourself, restarting" -msgstr "Waarschuwing: kreeg DEL_HOST van %s (%s) voor onszelf, herstart" +msgid "Got %s from %s (%s) for ourself" +msgstr "Kreeg %s van %s (%s) voor onszelf" -#: src/protocol.c:712 +#: src/protocol_key.c:92 #, c-format -msgid "Warning: got DEL_HOST from %s (%s) from ourself, restarting" -msgstr "Waarschuwing: kreeg DEL_HOST van %s (%s) van onszelf, herstart" +msgid "Got %s from %s (%s) origin %s which does not exist" +msgstr "Kreeg %s van %s (%s) herkomst %s welke niet bestaat" -#: src/protocol.c:722 +#: src/protocol_key.c:137 src/protocol_key.c:205 #, c-format msgid "" -"Got DEL_HOST from %s (%s) with origin %s which is not in our connection list" +"Got %s from %s (%s) origin %s which does not exist in our connection list" msgstr "" -"Kreeg DEL_HOST voor %s (%s) met herkomst %s die niet in onze " -"verbindingslijst voorkomt" +"Kreeg %s van %s (%s) herkomst %s welke niet voorkomt in de verbindingslijst" -#: src/protocol.c:734 +#: src/protocol_key.c:146 src/protocol_key.c:214 #, c-format -msgid "Got DEL_HOST from %s (%s) for %s which is not in our connection list" +msgid "" +"Got %s from %s (%s) destination %s which does not exist in our connection " +"list" msgstr "" -"Kreeg DEL_HOST van %s (%s) voor %s die niet in onze verbindingslijst voorkomt" +"Kreeg %s van %s (%s) doel %s welke niet voorkomt in de verbindingslijst" -#: src/protocol.c:744 +#: src/protocol_key.c:246 #, c-format -msgid "Got DEL_HOST from %s (%s) for %s which doesn't match" -msgstr "Kreeg DEL_HOST van %s (%s) voor %s wat niet overeenkomt" +msgid "Node %s (%s) uses unknown cipher!" +msgstr "Node %s (%s) gebruikt onbekende cipher!" -#: src/protocol.c:776 +#: src/protocol_key.c:251 #, c-format -msgid "Got bad STATUS from %s (%s)" -msgstr "Kreeg ongeldige STATUS van %s (%s)" +msgid "Node %s (%s) uses wrong keylength!" +msgstr "Node %s (%s) gebruikt verkeerde lengte sleutel!" -#: src/protocol.c:783 +#: src/protocol_key.c:272 #, c-format -msgid "Status message from %s (%s): %s: %s" -msgstr "Ontving statusbericht van %s (%s): %s: %s" +msgid "Node %s (%s) uses bogus MAC length!" +msgstr "Node %s (%s) gebruikt onzinnige MAC lengte!" -#: src/protocol.c:807 +#: src/protocol_misc.c:68 #, c-format -msgid "Got bad ERROR from %s (%s)" -msgstr "Kreeg ongeldige ERROR van %s (%s)" +msgid "Status message from %s (%s): %s: %s" +msgstr "Statusmelding van %s (%s): %s: %s" -#: src/protocol.c:814 +#: src/protocol_misc.c:98 #, c-format msgid "Error message from %s (%s): %s: %s" -msgstr "Ontving foutmelding van %s (%s): %s: %s" +msgstr "Foutmelding van %s (%s): %s: %s" -#: src/protocol.c:892 -#, c-format -msgid "Got bad KEY_CHANGED from %s (%s)" -msgstr "Kreeg ongeldige KEY_CHANGED van %s (%s)" +#: src/protocol_subnet.c:87 src/protocol_subnet.c:189 +msgid "invalid subnet string" +msgstr "ongeldige subnet string" -#: src/protocol.c:899 +#: src/protocol_subnet.c:180 #, c-format -msgid "" -"Got KEY_CHANGED from %s (%s) origin %s which does not exist in our " -"connection list" -msgstr "" -"Kreeg KEY_CHANGED van %s (%s) met herkomst %s die niet in onze " -"verbindingslijst voorkomt" +msgid "Got %s from %s (%s) for %s which is not in our node tree" +msgstr "Kreeg %s van %s (%s) voor %s welke niet voorkomt in de node boom" -#: src/protocol.c:929 +#: src/protocol_subnet.c:207 #, c-format -msgid "Got bad REQ_KEY from %s (%s)" -msgstr "Kreeg ongeldige REQ_KEY van %s (%s)" +msgid "Got %s from %s (%s) for %s which does not appear in his subnet tree" +msgstr "Kreeg %s van %s (%s) voor %s welke niet voorkomt in zijn subnet boom" -#: src/protocol.c:936 +#: src/subnet.c:99 #, c-format -msgid "" -"Got REQ_KEY from %s (%s) origin %s which does not exist in our connection " -"list" +msgid "subnet_compare() was called with unknown subnet type %d, exitting!" msgstr "" -"Kreeg REQ_KEY van %s (%s) herkomst %s die niet in onze verbindingslijst " -"voorkomt" +"subnet_compare() werd aangeroepen met onbekend subnet type %d, beëindigen!" -#: src/protocol.c:952 +#: src/subnet.c:274 #, c-format -msgid "" -"Got REQ_KEY from %s (%s) destination %s which does not exist in our " -"connection list" -msgstr "" -"Kreeg REQ_KEY van %s (%s) doel %s die niet in onze verbindingslijst voorkomt" +msgid "net2str() was called with unknown subnet type %d, exitting!" +msgstr "net2str() werd aangeroepen met onbekend subnet type %d, beëindigen!" -#: src/protocol.c:980 -#, c-format -msgid "Got bad ANS_KEY from %s (%s)" -msgstr "Kreeg ongeldige ANS_KEY van %s (%s)" +#: src/subnet.c:384 +msgid "Subnet list:" +msgstr "Subnet lijst:" -#: src/protocol.c:987 +#: src/subnet.c:389 #, c-format -msgid "" -"Got ANS_KEY from %s (%s) origin %s which does not exist in our connection " -"list" -msgstr "" -"Kreeg ANS_KEY van %s (%s) met herkomst %s die niet in onze verbindingslijst " -"voorkomt" +msgid " %s owner %s" +msgstr " %s eigenaar %s" -#: src/protocol.c:1003 -#, c-format -msgid "Got bad ANS_KEY from %s (%s) origin %s: invalid key" -msgstr "Kreeg ongeldige ANS_KEY van %s (%s) herkomst %s: ongeldige sleutel" - -#: src/protocol.c:1016 -#, c-format -msgid "" -"Got ANS_KEY from %s (%s) destination %s which does not exist in our " -"connection list" -msgstr "" -"Kreeg ANS_KEY van %s (%s) doel %s die niet in onze verbindingslijst voorkomt" +#: src/subnet.c:392 +msgid "End of subnet list." +msgstr "Einde van subnet lijst." -#: src/tincd.c:94 +#: src/tincd.c:100 #, c-format msgid "Try `%s --help' for more information.\n" msgstr "Probeer `%s --help' voor meer informatie.\n" -#: src/tincd.c:97 +#: src/tincd.c:103 #, c-format msgid "" "Usage: %s [option]...\n" @@ -711,109 +803,105 @@ msgstr "" "Gebruik: %s [optie]...\n" "\n" -#: src/tincd.c:98 +#: src/tincd.c:104 msgid "" -" -c, --config=DIR Read configuration options from DIR.\n" -" -D, --no-detach Don't fork and detach.\n" -" -d Increase debug level.\n" -" -k, --kill Attempt to kill a running tincd and exit.\n" -" -n, --net=NETNAME Connect to net NETNAME.\n" -" -t, --timeout=TIMEOUT Seconds to wait before giving a timeout.\n" +" -c, --config=DIR Read configuration options from DIR.\n" +" -D, --no-detach Don't fork and detach.\n" +" -d, --debug[=LEVEL] Increase debug level or set it to LEVEL.\n" +" -k, --kill[=SIGNAL] Attempt to kill a running tincd and exit.\n" +" -n, --net=NETNAME Connect to net NETNAME.\n" msgstr "" -" -c, --config=MAP Lees configuratie uit MAP.\n" -" -D, --no-detach Start geen nieuw proces.\n" -" -d Verhoog debugniveau.\n" -" -k, --kill Poging tot doden van lopende tincd en beëindig.\n" -" -n, --net=NETNAAM Verbind met net NETNAAM.\n" -" -t, --timeout=TIMEOUT Seconden wachten op timeout.\n" - -#: src/tincd.c:104 +" -c, --config=MAP Lees configuratie uit MAP.\n" +" -D, --no-detach Start geen nieuw proces.\n" +" -d, --debug[=NIVEAU] Verhoog debugniveau of stel het in op NIVEAU.\n" +" -k, --kill[=SIGNAAL] Poging tot zenden signaal naar lopende tincd en " +"beëindig.\n" +" -n, --net=NETNAAM Verbind met net NETNAAM.\n" + +#: src/tincd.c:109 msgid "" -" --help Display this help and exit.\n" -" --version Output version information and exit.\n" +" -K, --generate-keys[=BITS] Generate public/private RSA keypair.\n" +" --help Display this help and exit.\n" +" --version Output version information and exit.\n" "\n" msgstr "" -" --help Geef deze hulp en beëindig.\n" -" --version Geef versie informatie en beëindig.\n" +" -K, --generate-keys[=BITS] Genereer publiek/privé RSA sleutelpaar.\n" +" --help Geef deze hulp en beëindig.\n" +" --version Geef versie informatie en beëindig.\n" "\n" -#: src/tincd.c:106 +#: src/tincd.c:112 msgid "Report bugs to tinc@nl.linux.org.\n" msgstr "" "Meld fouten in het programma aan tinc@nl.linux.org;\n" "Meld fouten in de vertaling aan vertaling@nl.linux.org.\n" -#: src/tincd.c:144 +#: src/tincd.c:166 #, c-format -msgid "Invalid timeout value `%s'.\n" -msgstr "Ongeldige timeout waarde `%s'.\n" - -#: src/tincd.c:158 -#, c-format -msgid "Memory exhausted (last is %s:%d) (couldn't allocate %d bytes), exiting." +msgid "" +"Invalid argument `%s'; SIGNAL must be a number or one of HUP, TERM, KILL, " +"USR1, USR2, WINCH, INT or ALRM.\n" msgstr "" -"Geheugen is vol (laatste %s:%d) (kon geen %d bytes vrijmaken), beëindigen." - -#: src/tincd.c:213 -#, c-format -msgid "tincd %s (%s %s) starting, debug level %d" -msgstr "tincd %s (%s %s) gestart, debugniveau %d" +"Ongeldig argument `%s'; SIGNAAL moet een getal zijn of één van HUP, TERM, " +"KILL, USR1, USR2, WINCH, INT of ALRM.\n" -#: src/tincd.c:216 +#: src/tincd.c:184 #, c-format -msgid "tincd %s starting" -msgstr "tincd %s gestart" - -#: src/tincd.c:231 -#, c-format -msgid "Total bytes written: tap %d, socket %d; bytes read: tap %d, socket %d" +msgid "" +"Invalid argument `%s'; BITS must be a number equal to or greater than 512.\n" msgstr "" -"Totaal aantal bytes geschreven: tap %d, socket %d; bytes gelezen: top %d, " -"socket %d." +"Ongeldig argument `%s'; BITS moet een nummer zijn gelijk aan of groter dan " +"512.\n" -#: src/tincd.c:249 +#: src/tincd.c:245 #, c-format -msgid "A tincd is already running for net `%s' with pid %d.\n" -msgstr "Een tincd voor net `%s' draait al met procesnummer %d.\n" +msgid "Generating %d bits keys:\n" +msgstr "Bezig met genereren van een %d bits sleutel:\n" -#: src/tincd.c:252 -#, c-format -msgid "A tincd is already running with pid %d.\n" -msgstr "Een tincd draait al met procesnummer %d.\n" +#: src/tincd.c:250 +msgid "Error during key generation!\n" +msgstr "Fout tijdens genereren sleutel!\n" -#: src/tincd.c:273 -#, c-format -msgid "No other tincd is running for net `%s'.\n" -msgstr "Geen andere tincd gevonden voor net `%s'.\n" +#: src/tincd.c:254 +msgid "Done.\n" +msgstr "Klaar.\n" -#: src/tincd.c:275 -msgid "No other tincd is running.\n" -msgstr "Geen andere tincd gevonden.\n" +#: src/tincd.c:263 +msgid "public RSA key" +msgstr "openbare RSA sleutel" -#: src/tincd.c:282 -msgid "Removing stale lock file.\n" -msgstr "Ongebruikt vergrendelingsbestand verwijderd.\n" +#: src/tincd.c:267 src/tincd.c:278 +msgid "" +"Appending key to existing contents.\n" +"Make sure only one key is stored in the file.\n" +msgstr "" +"Sleutel wordt toegevoegd aan bestaande inhoud.\n" +"Let er op dat er slechts één sleutel in het bestand is.\n" + +#: src/tincd.c:274 +msgid "private RSA key" +msgstr "geheime RSA sleutel" -#. Do some intl stuff right now -#: src/tincd.c:325 -msgid "unknown" -msgstr "onbekend" +#: src/tincd.c:299 +msgid "Both netname and configuration directory given, using the latter..." +msgstr "" +"Zowel netnaam als configuratiemap zijn gegeven, laatste wordt gebruikt..." -#: src/tincd.c:331 +#: src/tincd.c:328 #, c-format msgid "%s version %s (built %s %s, protocol %d)\n" msgstr "%s versie %s (gemaakt %s %s, protocol %d)\n" -#: src/tincd.c:332 +#: src/tincd.c:329 msgid "" -"Copyright (C) 1998,1999,2000 Ivo Timmermans, Guus Sliepen and others.\n" +"Copyright (C) 1998-2002 Ivo Timmermans, Guus Sliepen and others.\n" "See the AUTHORS file for a complete list.\n" "\n" "tinc comes with ABSOLUTELY NO WARRANTY. This is free software,\n" "and you are welcome to redistribute it under certain conditions;\n" "see the file COPYING for details.\n" msgstr "" -"Copyright (C) 1998,1999,2000 Ivo Timmermans, Guus Sliepen en anderen.\n" +"Copyright (C) 1998-2002 Ivo Timmermans, Guus Sliepen en anderen.\n" "Zie het bestand AUTHORS voor een volledige lijst.\n" "\n" "tinc wordt gedistribueerd ZONDER ENIGE GARANTIE. Dit is vrije " @@ -821,69 +909,380 @@ msgstr "" "en je bent welkom om het te distribueren onder bepaalde voorwaarden;\n" "zie het bestand COPYING voor details.\n" -#: src/tincd.c:346 -msgid "You must be root to run this program. Sorry.\n" -msgstr "" -"Je moet systeembeheerder zijn om dit programma te kunnen draaien. Sorry.\n" - -#: src/tincd.c:377 +#: src/tincd.c:386 msgid "Unrecoverable error" msgstr "Onherstelbare fout" -#: src/tincd.c:382 +#: src/tincd.c:391 #, c-format msgid "Restarting in %d seconds!" msgstr "Herstart in %d seconden!" -#: src/tincd.c:387 src/tincd.c:433 -msgid "Aieee! Not restarting." -msgstr "Waaah! Geen herstart." +#: src/process.c:373 src/tincd.c:396 +msgid "Not restarting." +msgstr "Geen herstart." + +#: src/process.c:69 +#, c-format +msgid "Memory exhausted (couldn't allocate %d bytes), exitting." +msgstr "Geheugen uitgeput (kon geen %d bytes reserveren), beëindigen." + +#: src/process.c:100 +msgid "Terminating" +msgstr "Beëindigen" + +#: src/process.c:116 +#, c-format +msgid "A tincd is already running for net `%s' with pid %d.\n" +msgstr "Een tincd draait al voor net `%s' met pid %d.\n" + +#: src/process.c:119 +#, c-format +msgid "A tincd is already running with pid %d.\n" +msgstr "Een tincd draait al met pid %d.\n" + +#: src/process.c:140 +#, c-format +msgid "No other tincd is running for net `%s'.\n" +msgstr "Geen andere tincd draait voor net `%s'.\n" + +#: src/process.c:142 +msgid "No other tincd is running.\n" +msgstr "Geen andere tincd draait.\n" -#: src/tincd.c:397 +#: src/process.c:151 +#, c-format +msgid "The tincd for net `%s' is no longer running. " +msgstr "De tincd voor net `%s' draait niet meer. " + +#: src/process.c:153 +msgid "The tincd is no longer running. " +msgstr "De tincd draait niet meer. " + +#: src/process.c:155 +msgid "Removing stale lock file.\n" +msgstr "Verwijdering oud vergrendelingsbestand.\n" + +#: src/process.c:183 +#, c-format +msgid "Couldn't detach from terminal: %s" +msgstr "Kon niet ontkoppelen van terminal: %s" + +#: src/process.c:196 +#, c-format +msgid "tincd %s (%s %s) starting, debug level %d" +msgstr "tincd %s (%s %s) start, debug niveau %d" + +#: src/process.c:199 +#, c-format +msgid "tincd %s starting" +msgstr "tincd %s wordt gestart" + +#: src/process.c:280 +#, c-format +msgid "Executing script %s" +msgstr "Uitvoeren script %s" + +#: src/process.c:290 +#, c-format +msgid "Process %d (%s) exited with non-zero status %d" +msgstr "Proces %d (%s) beëindigde met status %d" + +#: src/process.c:298 +#, c-format +msgid "Process %d (%s) was killed by signal %d (%s)" +msgstr "Proces %d (%s) was gestopt door signaal %d (%s)" + +#: src/process.c:304 +#, c-format +msgid "Process %d (%s) terminated abnormally" +msgstr "Proces %d (%s) abnormaal beëindigd" + +#: src/process.c:329 msgid "Got TERM signal" msgstr "Kreeg TERM signaal" -#: src/tincd.c:405 +#: src/process.c:338 msgid "Got QUIT signal" msgstr "Kreeg QUIT signaal" -#: src/tincd.c:412 -msgid "Got another SEGV signal: not restarting" -msgstr "Kreeg nog een SEGV signaal: niet herstarten" +#: src/process.c:345 +#, c-format +msgid "Got another fatal signal %d (%s): not restarting." +msgstr "Kreeg nog een fataal signaal %s (%s): geen herstart." -#: src/tincd.c:419 -msgid "Got SEGV signal" -msgstr "Kreeg SEGV signaal" +#: src/process.c:354 +#, c-format +msgid "Got fatal signal %d (%s)" +msgstr "Kreeg fataal signaal %d (%s)" -#: src/tincd.c:424 +#: src/process.c:359 msgid "Trying to re-execute in 5 seconds..." -msgstr "Poging tot herstaren over 5 seconden..." +msgstr "Poging tot herstarten over 5 seconden..." -#: src/tincd.c:442 -msgid "Got HUP signal, rereading configuration and restarting" -msgstr "Kreeg HUP signaal, herlezen configuratie en herstarten" +#: src/process.c:382 +msgid "Got HUP signal" +msgstr "Kreeg HUP signaal" -#: src/tincd.c:450 -msgid "Got INT signal, exiting" -msgstr "Kreeg INT signaal, beëindigen" +#: src/process.c:391 +#, c-format +msgid "Reverting to old debug level (%d)" +msgstr "Herstellen van oud debug niveau (%d)" + +#: src/process.c:398 +#, c-format +msgid "" +"Temporarily setting debug level to 5. Kill me with SIGINT again to go back " +"to level %d." +msgstr "" +"Tijdelijk instellen debug niveau op 5. Zend nog een SIGINT signaal om niveau " +"%d te herstellen." -#: src/tincd.c:464 -msgid "Got USR2 signal, forcing new key generation" -msgstr "Kreeg USR2 signaal, nieuwe sleutels geforceerd" +#: src/process.c:409 +msgid "Got ALRM signal" +msgstr "Kreeg ALRM signaal" -#: src/tincd.c:473 +#: src/process.c:438 #, c-format msgid "Got unexpected signal %d (%s)" msgstr "Kreeg onverwacht signaal %d (%s)" -#~ msgid "Illegal passphrase in %s; size would be %d" -#~ msgstr "Ongeldig wachtwoord in %s; grootte zou %d zijn" +#: src/process.c:447 +#, c-format +msgid "Ignored signal %d (%s)" +msgstr "Signaal %d (%s) genegeerd" -#~ msgid "Generating %d bits keys" -#~ msgstr "%d bits sleutel genereren" +#: src/process.c:504 +#, c-format +msgid "Installing signal handler for signal %d (%s) failed: %s\n" +msgstr "Installeren van signaal afhandelaar voor signaal %d (%s) faalde: %s\n" -#~ msgid "Opening /dev/urandom failed: %m" -#~ msgstr "Openen van /dev/urandom mislukt: %m" +#: src/route.c:73 +#, c-format +msgid "Learned new MAC address %hx:%hx:%hx:%hx:%hx:%hx" +msgstr "Nieuw MAC adres %hx:%hx:%hx:%hx:%hx:%hx geleerd" + +#: src/route.c:107 +#, c-format +msgid "MAC address %hx:%hx:%hx:%hx:%hx:%hx expired" +msgstr "MAC adres %hx:%hx:%hx:%hx:%hx:%hx verlopen" + +#: src/route.c:152 +#, c-format +msgid "Cannot route packet: unknown IPv4 destination address %d.%d.%d.%d" +msgstr "Kan pakket niet routeren: onbekend IPv4 doeladres %d.%d.%d.%d" + +#: src/route.c:172 +#, c-format +msgid "" +"Cannot route packet: unknown IPv6 destination address %hx:%hx:%hx:%hx:%hx:%" +"hx:%hx:%hx" +msgstr "" +"Kan pakket niet routeren: onbekend IPv6 doeladres %hx:%hx:%hx:%hx:%hx:%hx:%" +"hx:%hx" + +#: src/route.c:233 +msgid "" +"Cannot route packet: received unknown type neighbor solicitation request" +msgstr "" +"Kan pakket niet routeren: ontvangst van onbekend type neighbor solicitation " +"verzoek" + +#: src/route.c:254 +msgid "Cannot route packet: checksum error for neighbor solicitation request" +msgstr "" +"Kan pakket niet routeren: checksum fout voor neighbor solicitation verzoek" + +#: src/route.c:266 +#, c-format +msgid "" +"Cannot route packet: neighbor solicitation request for unknown address %hx:%" +"hx:%hx:%hx:%hx:%hx:%hx:%hx" +msgstr "" +"Kan pakket niet routeren: neighbor solicitation verzoek voor onbekend adres %" +"hx:%hx:%hx:%hx:%hx:%hx:%hx:%hx" + +#: src/route.c:341 +msgid "Cannot route packet: received unknown type ARP request" +msgstr "Kan pakket niet routeren: ontvangst van onbekend type ARP verzoek" + +#: src/route.c:354 +#, c-format +msgid "Cannot route packet: ARP request for unknown address %d.%d.%d.%d" +msgstr "Kan pakket niet routeren: ARP verzoek voor onbekend adres %d.%d.%d.%d" + +#: src/route.c:411 +#, c-format +msgid "Cannot route packet: unknown type %hx" +msgstr "Kan pakket niet routeren: onbekend type %hx" + +#: src/node.c:161 +msgid "Nodes:" +msgstr "Nodes:" + +#: src/node.c:166 +#, c-format +msgid "" +" %s at %s cipher %d digest %d maclength %d compression %d options %lx status " +"%04x nexthop %s via %s" +msgstr "" +" %s op %s cipher %d digest %d maclengte %d compressie %d opties %lx status %" +"04x nexthop %s via %s" + +#: src/node.c:171 +msgid "End of nodes." +msgstr "Einde van nodes." + +#: src/edge.c:194 +msgid "Edges:" +msgstr "Edges:" + +#: src/edge.c:201 +#, c-format +msgid " %s at %s - %s at %s options %lx weight %d" +msgstr " %s op %s - %s op %s opties %lx gewicht %d" + +#: src/edge.c:209 +msgid "End of edges." +msgstr "Einde van edges." + +#: src/graph.c:261 +#, c-format +msgid "Node %s (%s) became reachable" +msgstr "Node %s (%s) werd bereikbaar" + +#: src/graph.c:273 +#, c-format +msgid "Node %s (%s) became unreachable" +msgstr "Node %s (%s) is niet meer bereikbaar" + +#: src/freebsd/device.c:70 src/linux/device.c:89 src/netbsd/device.c:74 +#: src/openbsd/device.c:74 src/solaris/device.c:75 +#, c-format +msgid "Could not open %s: %s" +msgstr "Kon `%s' niet openen: %s" + +#: src/linux/device.c:114 src/linux/device.c:124 +msgid "Linux tun/tap device" +msgstr "Linux tun/tap apparaat" + +#: src/linux/device.c:122 +#, c-format +msgid "Old ioctl() request was needed for %s" +msgstr "Oud ioctl() verzoek was nodig voor %s" + +#: src/linux/device.c:131 +msgid "Linux ethertap device" +msgstr "Linux ethertap apparaat" + +#: src/freebsd/device.c:87 src/linux/device.c:136 src/netbsd/device.c:90 +#: src/openbsd/device.c:90 src/solaris/device.c:132 +#, c-format +msgid "%s is a %s" +msgstr "%s is een %s" + +#: src/freebsd/device.c:108 src/linux/device.c:159 src/linux/device.c:169 +#: src/netbsd/device.c:111 src/openbsd/device.c:111 src/solaris/device.c:149 +#, c-format +msgid "Error while reading from %s %s: %s" +msgstr "Fout tijdens lezen van %s %s: %s" + +#: src/freebsd/device.c:117 src/linux/device.c:180 src/netbsd/device.c:126 +#: src/openbsd/device.c:140 src/solaris/device.c:164 +#, c-format +msgid "Read packet of %d bytes from %s" +msgstr "Pakket van %d bytes gelezen van %s" + +#: src/freebsd/device.c:128 src/linux/device.c:191 src/netbsd/device.c:139 +#: src/openbsd/device.c:154 src/solaris/device.c:175 +#, c-format +msgid "Writing packet of %d bytes to %s" +msgstr "Pakket van %d bytes geschreven naar %s" + +#: src/linux/device.c:198 src/linux/device.c:207 src/netbsd/device.c:149 +#: src/openbsd/device.c:180 src/solaris/device.c:180 +#, c-format +msgid "Can't write to %s %s: %s" +msgstr "Kan niet schrijven naar %s %s: %s" + +#: src/freebsd/device.c:144 src/linux/device.c:220 src/netbsd/device.c:160 +#: src/openbsd/device.c:191 src/solaris/device.c:192 +#, c-format +msgid "Statistics for %s %s:" +msgstr "Statistieken voor %s %s:" + +#: src/freebsd/device.c:145 src/linux/device.c:221 src/netbsd/device.c:161 +#: src/openbsd/device.c:192 src/solaris/device.c:193 +#, c-format +msgid " total bytes in: %10d" +msgstr " totaal aantal bytes in: %10d" + +#: src/freebsd/device.c:146 src/linux/device.c:222 src/netbsd/device.c:162 +#: src/openbsd/device.c:193 src/solaris/device.c:194 +#, c-format +msgid " total bytes out: %10d" +msgstr " totaal aantal bytes uit: %10d" + +#: src/freebsd/device.c:85 +msgid "FreeBSD tap device" +msgstr "FreeBSD tap apparaat" + +#: src/freebsd/device.c:133 +#, c-format +msgid "Error while writing to %s %s: %s" +msgstr "Fout tijdens schrijven naar %s %s: %s" + +#: src/solaris/device.c:86 +#, c-format +msgid "Could not open /dev/ip: %s" +msgstr "Kon /dev/ip niet openen: %s" + +#: src/solaris/device.c:92 +#, c-format +msgid "Can't assign new interface: %s" +msgstr "Kan geen nieuwe interface toekennen: %s" + +#: src/solaris/device.c:97 +#, c-format +msgid "Could not open %s twice: %s" +msgstr "Kon `%s' niet twee keer openen: %s" + +#: src/solaris/device.c:102 +#, c-format +msgid "Can't push IP module: %s" +msgstr "Kan IP module niet invoegen: %s" + +#: src/solaris/device.c:108 +#, c-format +msgid "Can't set PPA %d: %s" +msgstr "Kon PPA %d niet instellen: %s" + +#: src/solaris/device.c:113 +#, c-format +msgid "Can't link TUN device to IP: %s" +msgstr "Kan TUN apparaat niet koppelen aan IP: %s" + +#: src/solaris/device.c:120 +msgid "Solaris tun device" +msgstr "Solaris tun apparaat" + +#: src/netbsd/device.c:88 +msgid "NetBSD tun device" +msgstr "NetBSD tun apparaat" + +#: src/openbsd/device.c:88 +msgid "OpenBSD tun device" +msgstr "OpenBSD tun apparaat" + +#: src/openbsd/device.c:130 +#, c-format +msgid "Unknown address family %d while reading packet from %s %s" +msgstr "Onbekende adresfamilie tijdens lezen pakket van %s %s" + +#: src/openbsd/device.c:169 +#, c-format +msgid "Unknown address family %d while writing packet to %s %s" +msgstr "Onbekende adresfamilie tijdens schrijven pakket naar %s %s" -#~ msgid "Encryption key set to %s" -#~ msgstr "Sleutel ingesteld op %s" +#~ msgid "Invalid public/private keypair!" +#~ msgstr "Ongeldig publiek/privé sleutelpaar!" diff --git a/src/Makefile.am b/src/Makefile.am index 1ffe3d7b..a8f45b64 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -1,22 +1,31 @@ ## Produce this file with automake to get Makefile.in -# $Id: Makefile.am,v 1.5 2000/10/18 20:12:08 zarq Exp $ +# $Id: Makefile.am,v 1.6 2002/04/09 15:28:45 zarq Exp $ -sbin_PROGRAMS = tincd genauth +sbin_PROGRAMS = tincd -genauth_SOURCES = genauth.c -tincd_SOURCES = conf.c connlist.c meta.c net.c netutl.c protocol.c subnet.c tincd.c +EXTRA_DIST = linux/device.c freebsd/device.c openbsd/device.c solaris/device.c -INCLUDES = -I$(top_builddir) -I$(top_srcdir)/cipher -I$(top_srcdir)/lib -I$(top_srcdir)/intl +tincd_SOURCES = conf.c connection.c device.c edge.c event.c graph.c meta.c net.c net_packet.c net_setup.c \ + net_socket.c netutl.c node.c process.c protocol.c protocol_auth.c protocol_edge.c protocol_misc.c \ + protocol_key.c protocol_subnet.c route.c subnet.c tincd.c -noinst_HEADERS = conf.h connlist.h meta.h net.h netutl.h protocol.h subnet.h +INCLUDES = @INCLUDES@ -I$(top_builddir) -I$(top_srcdir)/lib -I$(top_srcdir)/intl + +noinst_HEADERS = conf.h connection.h device.h edge.h event.h graph.h meta.h net.h netutl.h node.h process.h \ + protocol.h route.h subnet.h LIBS = @LIBS@ @INTLLIBS@ tincd_LDADD = \ $(top_builddir)/lib/libvpn.a -genauth_LDADD = $(top_builddir)/lib/libvpn.a - localedir = $(datadir)/locale -CFLAGS = @CFLAGS@ -DPKGLIBDIR=$(pkglibdir) -DCONFDIR=\"@sysconfdir@\" -DLOCALEDIR=\"$(localedir)\" +CFLAGS = @CFLAGS@ -DPKGLIBDIR=$(pkglibdir) -DCONFDIR=\"$(sysconfdir)\" \ + -DLOCALEDIR=\"$(localedir)\" -DLOCALSTATEDIR=\"$(localstatedir)\" + +dist-hook: + rm -f `find . -type l` + +lint: $(tincd_SOURCES) + lclint -nullassign -nullret +trytorecover +posixlib -skipansiheaders -skipposixheaders +gnuextensions -I/usr/include -I/usr/lib/gcc-lib/i386-linux/2.95.2/include -I. -I/home/zarq/p/tinc/cvs/cabal/src -I.. -I.. -I/home/zarq/p/tinc/cvs/cabal/lib -I/home/zarq/p/tinc/cvs/cabal/intl -D_POSIX_SOURCE -D__ELF__ -Dunix -D__i386__ -Dlinux -DHAVE_CONFIG_H -DPKGLIBDIR=/usr/local/lib/tinc -DCONFDIR=\"/usr/local/etc\" -DLOCALEDIR=\"/usr/local/share/locale\" $^ -- 2.20.1