- Per-node EVP_CIPHER_CTX to avoid initialisation overhead.
authorGuus Sliepen <guus@tinc-vpn.org>
Tue, 6 May 2003 21:13:18 +0000 (21:13 +0000)
committerGuus Sliepen <guus@tinc-vpn.org>
Tue, 6 May 2003 21:13:18 +0000 (21:13 +0000)
- LZO compression, thanks to Teemu Kiviniemi.
- Updated dutch translation.

THANKS
configure.in
po/nl.po
src/net.c
src/net.h
src/net_packet.c
src/net_setup.c
src/node.c
src/node.h
src/protocol_key.c

diff --git a/THANKS b/THANKS
index e58c428..9eef8a5 100644 (file)
--- a/THANKS
+++ b/THANKS
@@ -23,6 +23,8 @@ We would like to thank
  * Ivo van Dong (for help during the early versions of tinc)
  * Jeroen Ubbink (for help testing tinc on Free- and NetBSD)
  * LarstiQ (for help testing tinc on MacOS/X)
  * Ivo van Dong (for help during the early versions of tinc)
  * Jeroen Ubbink (for help testing tinc on Free- and NetBSD)
  * LarstiQ (for help testing tinc on MacOS/X)
+ * Marc A. Lehmann (for bitching and valid criticism)
+ * Teemu Kiviniemi (for his lzo compression patch)
 
 for their help, support and ideas.  Thank you guys!
 
 
 for their help, support and ideas.  Thank you guys!
 
index 0477c21..83e1fae 100644 (file)
@@ -1,6 +1,6 @@
 dnl Process this file with autoconf to produce a configure script.
 
 dnl Process this file with autoconf to produce a configure script.
 
-dnl $Id: configure.in,v 1.13.2.60 2003/01/17 00:43:56 guus Exp $
+dnl $Id: configure.in,v 1.13.2.61 2003/05/06 21:13:13 guus Exp $
 
 AC_PREREQ(2.53)
 AC_INIT(src/tincd.c)
 
 AC_PREREQ(2.53)
 AC_INIT(src/tincd.c)
@@ -154,6 +154,7 @@ dnl These are defined in files in m4/
 tinc_TUNTAP
 tinc_OPENSSL
 tinc_ZLIB
 tinc_TUNTAP
 tinc_OPENSSL
 tinc_ZLIB
+tinc_LZO
 
 dnl Check if support for jumbograms is requested 
 AC_ARG_ENABLE(jumbograms,
 
 dnl Check if support for jumbograms is requested 
 AC_ARG_ENABLE(jumbograms,
index c7dc27b..ca8dfef 100644 (file)
--- a/po/nl.po
+++ b/po/nl.po
@@ -5,8 +5,8 @@
 msgid ""
 msgstr ""
 "Project-Id-Version: tinc 1.0-cvs\n"
 msgid ""
 msgstr ""
 "Project-Id-Version: tinc 1.0-cvs\n"
-"POT-Creation-Date: 2002-09-15 15:51+0200\n"
-"PO-Revision-Date: 2002-09-15 15:51+0200\n"
+"POT-Creation-Date: 2003-05-06 23:10+0200\n"
+"PO-Revision-Date: 2003-05-06 23:10+0200\n"
 "Last-Translator: Guus Sliepen <guus@sliepen.eu.org>\n"
 "Language-Team: Dutch <vertaling@nl.linux.org>\n"
 "MIME-Version: 1.0\n"
 "Last-Translator: Guus Sliepen <guus@sliepen.eu.org>\n"
 "Language-Team: Dutch <vertaling@nl.linux.org>\n"
 "MIME-Version: 1.0\n"
@@ -138,37 +138,37 @@ msgstr " %s op %s opties %lx socket %d status %04x"
 msgid "End of connections."
 msgstr "Einde van verbindingen."
 
 msgid "End of connections."
 msgstr "Einde van verbindingen."
 
-#: src/meta.c:51
+#: src/meta.c:52
 #, c-format
 msgid "Sending %d bytes of metadata to %s (%s)"
 msgstr "Verzenden van %d bytes metadata naar %s (%s)"
 
 #, c-format
 msgid "Sending %d bytes of metadata to %s (%s)"
 msgstr "Verzenden van %d bytes metadata naar %s (%s)"
 
-#: src/meta.c:62
+#: src/meta.c:67
 #, c-format
 msgid "Sending meta data to %s (%s) failed: %s"
 msgstr "Fout tijdens verzenden metadata naar %s (%s): %s"
 
 #, c-format
 msgid "Sending meta data to %s (%s) failed: %s"
 msgstr "Fout tijdens verzenden metadata naar %s (%s): %s"
 
-#: src/meta.c:97
+#: src/meta.c:105
 #, c-format
 msgid "This is a bug: %s:%d: %d:%s %s (%s)"
 msgstr "Dit is een programmeerfout: %s:%d: %d:%s %s (%s)"
 
 #, 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:103
+#: src/meta.c:111
 #, c-format
 msgid "Metadata socket error for %s (%s): %s"
 msgstr "Fout op metadata socket voor %s (%s): %s"
 
 #, c-format
 msgid "Metadata socket error for %s (%s): %s"
 msgstr "Fout op metadata socket voor %s (%s): %s"
 
-#: src/meta.c:122
+#: src/meta.c:130
 #, c-format
 msgid "Connection closed by %s (%s)"
 msgstr "Verbinding beëindigd door %s (%s)"
 
 #, c-format
 msgid "Connection closed by %s (%s)"
 msgstr "Verbinding beëindigd door %s (%s)"
 
-#: src/meta.c:127
+#: src/meta.c:135
 #, c-format
 msgid "Metadata socket read error for %s (%s): %s"
 msgstr "Fout op metadata socket voor %s (%s) tijdens lezen: %s"
 
 #, c-format
 msgid "Metadata socket read error for %s (%s): %s"
 msgstr "Fout op metadata socket voor %s (%s) tijdens lezen: %s"
 
-#: src/meta.c:190
+#: src/meta.c:198
 #, c-format
 msgid "Metadata read buffer overflow for %s (%s)"
 msgstr "Metadata leesbuffer overloop voor %s (%s)"
 #, c-format
 msgid "Metadata read buffer overflow for %s (%s)"
 msgstr "Metadata leesbuffer overloop voor %s (%s)"
@@ -182,238 +182,240 @@ msgstr "Verwijderen onbereikbare nodes"
 msgid "Purging node %s (%s)"
 msgstr "Verwijdering node %s (%s)"
 
 msgid "Purging node %s (%s)"
 msgstr "Verwijdering node %s (%s)"
 
-#: src/net.c:177
+#: src/net.c:188
 #, c-format
 msgid "Closing connection with %s (%s)"
 msgstr "Beëindigen verbinding met %s (%s)"
 
 #, c-format
 msgid "Closing connection with %s (%s)"
 msgstr "Beëindigen verbinding met %s (%s)"
 
-#: src/net.c:231
+#: src/net.c:242
 #, c-format
 msgid "%s (%s) didn't respond to PING"
 msgstr "%s (%s) antwoordde niet op ping"
 
 #, c-format
 msgid "%s (%s) didn't respond to PING"
 msgstr "%s (%s) antwoordde niet op ping"
 
-#: src/net.c:240
+#: src/net.c:251
 #, c-format
 msgid "Old connection_t for %s (%s) status %04x still lingering, deleting..."
 msgstr ""
 "Oude connection_t voor %s (%s) status %04x nog steeds aanwezig, wordt "
 "verwijderd..."
 
 #, c-format
 msgid "Old connection_t for %s (%s) status %04x still lingering, deleting..."
 msgstr ""
 "Oude connection_t voor %s (%s) status %04x nog steeds aanwezig, wordt "
 "verwijderd..."
 
-#: src/net.c:246
+#: src/net.c:257
 #, c-format
 msgid "Timeout from %s (%s) during authentication"
 msgstr "Timeout van %s (%s) tijdens authenticatie"
 
 #, c-format
 msgid "Timeout from %s (%s) during authentication"
 msgstr "Timeout van %s (%s) tijdens authenticatie"
 
-#: src/net.c:289 src/net_socket.c:279
+#: src/net.c:300
 #, c-format
 msgid "Error while connecting to %s (%s): %s"
 msgstr "Fout tijdens schrijven naar %s (%s): %s"
 
 #, c-format
 msgid "Error while connecting to %s (%s): %s"
 msgstr "Fout tijdens schrijven naar %s (%s): %s"
 
-#: src/net.c:341
+#: src/net.c:353
 #, c-format
 msgid "Error while waiting for input: %s"
 msgstr "Fout tijdens wachten op invoer: %s"
 
 #, c-format
 msgid "Error while waiting for input: %s"
 msgstr "Fout tijdens wachten op invoer: %s"
 
-#: src/net.c:373
+#: src/net.c:385
 msgid "Regenerating symmetric key"
 msgstr "Hergenereren symmetrische sleutel"
 
 msgid "Regenerating symmetric key"
 msgstr "Hergenereren symmetrische sleutel"
 
-#: src/net.c:388
+#: src/net.c:401
 msgid "Flushing event queue"
 msgstr "Legen taakrij"
 
 msgid "Flushing event queue"
 msgstr "Legen taakrij"
 
-#: src/net.c:403
-msgid "Rereading configuration file and restarting in 5 seconds..."
-msgstr "Herlezen configuratiebestand en herstarten na 5 seconden..."
-
-#: src/net.c:410
+#: src/net.c:425
 msgid "Unable to reread configuration file, exitting."
 msgstr "Kan configuratiebestand niet herlezen, beëindigen."
 
 msgid "Unable to reread configuration file, exitting."
 msgstr "Kan configuratiebestand niet herlezen, beëindigen."
 
-#: src/net_packet.c:110
+#: src/net_packet.c:154
 #, c-format
 msgid "Got unauthenticated packet from %s (%s)"
 msgstr "Kreeg niet-geauthenticeerd pakket van %s (%s)"
 
 #, c-format
 msgid "Got unauthenticated packet from %s (%s)"
 msgstr "Kreeg niet-geauthenticeerd pakket van %s (%s)"
 
-#: src/net_packet.c:139
+#: src/net_packet.c:184
 #, c-format
 #, c-format
-msgid "Got late or replayed packet from %s (%s), seqno %d"
-msgstr "Kreeg laat of gedupliceerd pakket van %s (%s), seqno %d"
+msgid "Lost %d packets from %s (%s)"
+msgstr "%d pakketten van %s (%s) verloren"
 
 
-#: src/net_packet.c:155
+#: src/net_packet.c:190
+#, c-format
+msgid "Got late or replayed packet from %s (%s), seqno %d, last received %d"
+msgstr ""
+"Kreeg laat of gedupliceerd pakket van %s (%s), seqno %d, laatste ontvangen %d"
+
+#: src/net_packet.c:210
 #, c-format
 msgid "Error while uncompressing packet from %s (%s)"
 msgstr "Fout tijdens decomprimeren pakket van %s (%s)"
 
 #, c-format
 msgid "Error while uncompressing packet from %s (%s)"
 msgstr "Fout tijdens decomprimeren pakket van %s (%s)"
 
-#: src/net_packet.c:184
+#: src/net_packet.c:238
 #, c-format
 msgid "Received packet of %d bytes from %s (%s)"
 msgstr "Ontvangst pakket van %d bytes van %s (%s)"
 
 #, c-format
 msgid "Received packet of %d bytes from %s (%s)"
 msgstr "Ontvangst pakket van %d bytes van %s (%s)"
 
-#: src/net_packet.c:212
+#: src/net_packet.c:265
 #, 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 wachtrij gezet"
 
 #, 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 wachtrij gezet"
 
-#: src/net_packet.c:244
+#: src/net_packet.c:295
 #, c-format
 msgid "Error while compressing packet to %s (%s)"
 msgstr "Fout tijdens comprimeren pakket naar %s (%s)"
 
 #, c-format
 msgid "Error while compressing packet to %s (%s)"
 msgstr "Fout tijdens comprimeren pakket naar %s (%s)"
 
-#: src/net_packet.c:296
+#: src/net_packet.c:347
 #, c-format
 msgid "Setting outgoing packet priority to %d"
 msgstr "Instellen prioriteit uitgaand pakket op %d"
 
 #, c-format
 msgid "Setting outgoing packet priority to %d"
 msgstr "Instellen prioriteit uitgaand pakket op %d"
 
-#: src/net_packet.c:299 src/net_setup.c:476 src/net_socket.c:110
+#: src/net_packet.c:350 src/net_setup.c:485 src/net_socket.c:110
 #: src/net_socket.c:157 src/net_socket.c:187 src/tincd.c:375 src/process.c:265
 #: src/process.c:295
 #, c-format
 msgid "System call `%s' failed: %s"
 msgstr "Systeemaanroep `%s' mislukte: %s"
 
 #: src/net_socket.c:157 src/net_socket.c:187 src/tincd.c:375 src/process.c:265
 #: src/process.c:295
 #, c-format
 msgid "System call `%s' failed: %s"
 msgstr "Systeemaanroep `%s' mislukte: %s"
 
-#: src/net_packet.c:305
+#: src/net_packet.c:356
 #, c-format
 msgid "Error sending packet to %s (%s): %s"
 msgstr "Fout tijdens verzenden pakket naar %s (%s): %s"
 
 #, c-format
 msgid "Error sending packet to %s (%s): %s"
 msgstr "Fout tijdens verzenden pakket naar %s (%s): %s"
 
-#: src/net_packet.c:323
+#: src/net_packet.c:374
 #, c-format
 msgid "Sending packet of %d bytes to %s (%s)"
 msgstr "Verzending pakket van %d bytes naar %s (%s)"
 
 #, c-format
 msgid "Sending packet of %d bytes to %s (%s)"
 msgstr "Verzending pakket van %d bytes naar %s (%s)"
 
-#: src/net_packet.c:328
+#: src/net_packet.c:379
 msgid "Packet is looping back to us!"
 msgstr "Pakket komt terug naar ons!"
 
 msgid "Packet is looping back to us!"
 msgstr "Pakket komt terug naar ons!"
 
-#: src/net_packet.c:335
+#: src/net_packet.c:386
 #, c-format
 msgid "Node %s (%s) is not reachable"
 msgstr "Node %s (%s) is niet bereikbaar"
 
 #, c-format
 msgid "Node %s (%s) is not reachable"
 msgstr "Node %s (%s) is niet bereikbaar"
 
-#: src/net_packet.c:344
+#: src/net_packet.c:395
 #, c-format
 msgid "Sending packet to %s via %s (%s)"
 msgstr "Verzending pakket naar %s via %s (%s)"
 
 #, c-format
 msgid "Sending packet to %s via %s (%s)"
 msgstr "Verzending pakket naar %s via %s (%s)"
 
-#: src/net_packet.c:364
+#: src/net_packet.c:415
 #, c-format
 msgid "Broadcasting packet of %d bytes from %s (%s)"
 msgstr "Verspreiding pakket van %d bytes van %s (%s)"
 
 #, c-format
 msgid "Broadcasting packet of %d bytes from %s (%s)"
 msgstr "Verspreiding pakket van %d bytes van %s (%s)"
 
-#: src/net_packet.c:382
+#: src/net_packet.c:433
 #, c-format
 msgid "Flushing queue for %s (%s)"
 msgstr "Legen van wachtrij voor %s (%s)"
 
 #, c-format
 msgid "Flushing queue for %s (%s)"
 msgstr "Legen van wachtrij voor %s (%s)"
 
-#: src/net_packet.c:403
+#: src/net_packet.c:454
 #, c-format
 msgid "This is a bug: %s:%d: %d:%s"
 msgstr "Dit is een programmeerfout: %s:%d: %d:%s"
 
 #, c-format
 msgid "This is a bug: %s:%d: %d:%s"
 msgstr "Dit is een programmeerfout: %s:%d: %d:%s"
 
-#: src/net_packet.c:410
+#: src/net_packet.c:461
 #, c-format
 msgid "Incoming data socket error: %s"
 msgstr "Fout op socket voor inkomend verkeer: %s"
 
 #, c-format
 msgid "Incoming data socket error: %s"
 msgstr "Fout op socket voor inkomend verkeer: %s"
 
-#: src/net_packet.c:417
+#: src/net_packet.c:468
 #, c-format
 msgid "Receiving packet failed: %s"
 msgstr "Ontvangst pakket mislukt: %s"
 
 #, c-format
 msgid "Receiving packet failed: %s"
 msgstr "Ontvangst pakket mislukt: %s"
 
-#: src/net_packet.c:427
+#: src/net_packet.c:478
 #, c-format
 msgid "Received UDP packet from unknown source %s"
 msgstr "Ontvangst UDP pakket van onbekende oorsprong %s"
 
 #, c-format
 msgid "Received UDP packet from unknown source %s"
 msgstr "Ontvangst UDP pakket van onbekende oorsprong %s"
 
-#: src/net_setup.c:108 src/net_setup.c:125
+#: src/net_setup.c:110 src/net_setup.c:127
 #, c-format
 msgid "Error reading RSA public key file `%s': %s"
 msgstr "Fout tijdens lezen RSA publieke sleutel bestand `%s': %s"
 
 #, c-format
 msgid "Error reading RSA public key file `%s': %s"
 msgstr "Fout tijdens lezen RSA publieke sleutel bestand `%s': %s"
 
-#: src/net_setup.c:138
+#: src/net_setup.c:142
 #, c-format
 msgid "Reading RSA public key file `%s' failed: %s"
 msgstr "Lezen RSA publieke sleutel bestand `%s' mislukt: %s"
 
 #, c-format
 msgid "Reading RSA public key file `%s' failed: %s"
 msgstr "Lezen RSA publieke sleutel bestand `%s' mislukt: %s"
 
-#: src/net_setup.c:177
+#: src/net_setup.c:182
 #, c-format
 msgid "No public key for %s specified!"
 msgstr "Geen publieke sleutel bekend voor %s gespecificeerd!"
 
 #, c-format
 msgid "No public key for %s specified!"
 msgstr "Geen publieke sleutel bekend voor %s gespecificeerd!"
 
-#: src/net_setup.c:204
+#: src/net_setup.c:210
 #, c-format
 msgid "Error reading RSA private key file `%s': %s"
 msgstr "Fout tijdens lezen RSA privé sleutel bestand `%s': %s"
 
 #, c-format
 msgid "Error reading RSA private key file `%s': %s"
 msgstr "Fout tijdens lezen RSA privé sleutel bestand `%s': %s"
 
-#: src/net_setup.c:216
+#: src/net_setup.c:222
 #, c-format
 msgid "Reading RSA private key file `%s' failed: %s"
 msgstr "Fout tijdens lezen RSA privé sleutel bestand `%s': %s"
 
 #, c-format
 msgid "Reading RSA private key file `%s' failed: %s"
 msgstr "Fout tijdens lezen RSA privé sleutel bestand `%s': %s"
 
-#: src/net_setup.c:246 src/net_setup.c:247
+#: src/net_setup.c:252 src/net_setup.c:253
 msgid "MYSELF"
 msgstr "MIJZELF"
 
 msgid "MYSELF"
 msgstr "MIJZELF"
 
-#: src/net_setup.c:253
+#: src/net_setup.c:259
 msgid "Name for tinc daemon required!"
 msgstr "Naam voor tinc daemon verplicht!"
 
 msgid "Name for tinc daemon required!"
 msgstr "Naam voor tinc daemon verplicht!"
 
-#: src/net_setup.c:258
+#: src/net_setup.c:264
 msgid "Invalid name for myself!"
 msgstr "Ongeldige naam voor mijzelf!"
 
 msgid "Invalid name for myself!"
 msgstr "Ongeldige naam voor mijzelf!"
 
-#: src/net_setup.c:270
+#: src/net_setup.c:276
 msgid "Cannot open host configuration file for myself!"
 msgstr "Kan host configuratie bestand voor mijzelf niet openen!"
 
 msgid "Cannot open host configuration file for myself!"
 msgstr "Kan host configuratie bestand voor mijzelf niet openen!"
 
-#: src/net_setup.c:326
+#: src/net_setup.c:332
 msgid "Invalid routing mode!"
 msgstr "Ongeldige routing modus!"
 
 msgid "Invalid routing mode!"
 msgstr "Ongeldige routing modus!"
 
-#: src/net_setup.c:337
+#: src/net_setup.c:343
 msgid "PriorityInheritance not supported on this platform"
 msgstr "PriorityInheritance wordt niet ondersteund op dit platform"
 
 msgid "PriorityInheritance not supported on this platform"
 msgstr "PriorityInheritance wordt niet ondersteund op dit platform"
 
-#: src/net_setup.c:347
+#: src/net_setup.c:353
 msgid "Bogus maximum timeout!"
 msgstr "Onzinnige maximum timeout!"
 
 msgid "Bogus maximum timeout!"
 msgstr "Onzinnige maximum timeout!"
 
-#: src/net_setup.c:361
+#: src/net_setup.c:367
 msgid "Invalid address family!"
 msgstr "Ongeldige adresfamilie!"
 
 msgid "Invalid address family!"
 msgstr "Ongeldige adresfamilie!"
 
-#: src/net_setup.c:380
+#: src/net_setup.c:386
 msgid "Unrecognized cipher type!"
 msgstr "Onbekend cipher type!"
 
 msgid "Unrecognized cipher type!"
 msgstr "Onbekend cipher type!"
 
-#: src/net_setup.c:412
+#: src/net_setup.c:421
 msgid "Unrecognized digest type!"
 msgstr "Onbekend digest type!"
 
 msgid "Unrecognized digest type!"
 msgstr "Onbekend digest type!"
 
-#: src/net_setup.c:426
+#: src/net_setup.c:435
 msgid "MAC length exceeds size of digest!"
 msgstr "MAC lengte is groter dan dat van digest!"
 
 msgid "MAC length exceeds size of digest!"
 msgstr "MAC lengte is groter dan dat van digest!"
 
-#: src/net_setup.c:429
+#: src/net_setup.c:438
 msgid "Bogus MAC length!"
 msgstr "Onzinnige MAC lengte!"
 
 msgid "Bogus MAC length!"
 msgstr "Onzinnige MAC lengte!"
 
-#: src/net_setup.c:444
+#: src/net_setup.c:453
 msgid "Bogus compression level!"
 msgstr "Onzinnig compressieniveau!"
 
 msgid "Bogus compression level!"
 msgstr "Onzinnig compressieniveau!"
 
-#: src/net_setup.c:498
+#: src/net_setup.c:507
 #, c-format
 msgid "Listening on %s"
 msgstr "Luisterend op %s"
 
 #, c-format
 msgid "Listening on %s"
 msgstr "Luisterend op %s"
 
-#: src/net_setup.c:509
+#: src/net_setup.c:518
 msgid "Ready"
 msgstr "Gereed"
 
 msgid "Ready"
 msgstr "Gereed"
 
-#: src/net_setup.c:511
+#: src/net_setup.c:520
 msgid "Unable to create any listening socket!"
 msgstr "Kon geen enkele luistersocket aanmaken!"
 
 msgid "Unable to create any listening socket!"
 msgstr "Kon geen enkele luistersocket aanmaken!"
 
@@ -428,8 +430,8 @@ msgid "Can't bind to interface %s: %s"
 msgstr "Kan niet aan interface %s binden: %s"
 
 #: src/net_socket.c:142
 msgstr "Kan niet aan interface %s binden: %s"
 
 #: src/net_socket.c:142
-msgid "BindToDevice not supported on this platform"
-msgstr "BindToDevice wordt niet ondersteund op dit platform"
+msgid "BindToInterface not supported on this platform"
+msgstr "BindToInterface wordt niet ondersteund op dit platform"
 
 #: src/net_socket.c:149
 #, c-format
 
 #: src/net_socket.c:149
 #, c-format
@@ -451,57 +453,57 @@ msgstr "Kan niet aan %s/udp binden: %s"
 msgid "Trying to re-establish outgoing connection in %d seconds"
 msgstr "Poging tot herstellen van uitgaande verbinding over %d seconden"
 
 msgid "Trying to re-establish outgoing connection in %d seconds"
 msgstr "Poging tot herstellen van uitgaande verbinding over %d seconden"
 
-#: src/net_socket.c:252 src/net_socket.c:350
-#, c-format
-msgid "Trying to connect to %s (%s)"
-msgstr "Poging tot verbinden met %s (%s)"
-
-#: src/net_socket.c:258 src/net_socket.c:357
-#, c-format
-msgid "Creating socket for %s failed: %s"
-msgstr "Aanmaken socket voor %s mislukt: %s"
-
-#: src/net_socket.c:285 src/net_socket.c:296
+#: src/net_socket.c:250
 #, c-format
 msgid "Connected to %s (%s)"
 msgstr "Verbonden met %s (%s)"
 
 #, c-format
 msgid "Connected to %s (%s)"
 msgstr "Verbonden met %s (%s)"
 
-#: src/net_socket.c:314
+#: src/net_socket.c:268
 #, c-format
 msgid "Could not set up a meta connection to %s"
 msgstr "Kon geen metaverbinding aangaan met %s"
 
 #, c-format
 msgid "Could not set up a meta connection to %s"
 msgstr "Kon geen metaverbinding aangaan met %s"
 
-#: src/net_socket.c:380
+#: src/net_socket.c:304
+#, c-format
+msgid "Trying to connect to %s (%s)"
+msgstr "Poging tot verbinden met %s (%s)"
+
+#: src/net_socket.c:311
+#, c-format
+msgid "Creating socket for %s failed: %s"
+msgstr "Aanmaken socket voor %s mislukt: %s"
+
+#: src/net_socket.c:334
 #, c-format
 msgid "fcntl for %s: %s"
 msgstr "fcntl voor %s: %s"
 
 #, c-format
 msgid "fcntl for %s: %s"
 msgstr "fcntl voor %s: %s"
 
-#: src/net_socket.c:396
+#: src/net_socket.c:350
 #, c-format
 msgid "%s: %s"
 msgstr "%s: %s"
 
 #, c-format
 msgid "%s: %s"
 msgstr "%s: %s"
 
-#: src/net_socket.c:418
+#: src/net_socket.c:372
 #, c-format
 msgid "Already connected to %s"
 msgstr "Reeds verbonden met %s"
 
 #, c-format
 msgid "Already connected to %s"
 msgstr "Reeds verbonden met %s"
 
-#: src/net_socket.c:437
+#: src/net_socket.c:391
 #, c-format
 msgid "No address specified for %s"
 msgstr "Geen adres gespecificeerd voor %s"
 
 #, c-format
 msgid "No address specified for %s"
 msgstr "Geen adres gespecificeerd voor %s"
 
-#: src/net_socket.c:467
+#: src/net_socket.c:421
 #, c-format
 msgid "Accepting a new connection failed: %s"
 msgstr "Aanname van nieuwe verbinding is mislukt: %s"
 
 #, c-format
 msgid "Accepting a new connection failed: %s"
 msgstr "Aanname van nieuwe verbinding is mislukt: %s"
 
-#: src/net_socket.c:486
+#: src/net_socket.c:440
 #, c-format
 msgid "Connection from %s"
 msgstr "Verbinding van %s"
 
 #, c-format
 msgid "Connection from %s"
 msgstr "Verbinding van %s"
 
-#: src/net_socket.c:510
+#: src/net_socket.c:464
 #, c-format
 msgid "Invalid name for outgoing connection in %s line %d"
 msgstr "Ongeldige naam voor uitgaande verbinding in %s regel %d"
 #, c-format
 msgid "Invalid name for outgoing connection in %s line %d"
 msgstr "Ongeldige naam voor uitgaande verbinding in %s regel %d"
@@ -601,17 +603,17 @@ msgstr "Verzoek reeds gezien"
 msgid "Aging past requests: deleted %d, left %d\n"
 msgstr "Veroudering vorige verzoeken: %d gewist, %d overgebleven\n"
 
 msgid "Aging past requests: deleted %d, left %d\n"
 msgstr "Veroudering vorige verzoeken: %d gewist, %d overgebleven\n"
 
-#: src/protocol_auth.c:72 src/protocol_auth.c:230 src/protocol_auth.c:362
-#: src/protocol_auth.c:426 src/protocol_auth.c:531 src/protocol_edge.c:82
-#: src/protocol_edge.c:195 src/protocol_key.c:70 src/protocol_key.c:112
-#: src/protocol_key.c:175 src/protocol_misc.c:63 src/protocol_misc.c:94
+#: src/protocol_auth.c:72 src/protocol_auth.c:228 src/protocol_auth.c:355
+#: src/protocol_auth.c:419 src/protocol_auth.c:524 src/protocol_edge.c:82
+#: src/protocol_edge.c:196 src/protocol_key.c:70 src/protocol_key.c:112
+#: src/protocol_key.c:176 src/protocol_misc.c:63 src/protocol_misc.c:94
 #: src/protocol_misc.c:188 src/protocol_subnet.c:71 src/protocol_subnet.c:162
 #, c-format
 msgid "Got bad %s from %s (%s)"
 msgstr "Kreeg verkeerde %s van %s (%s)"
 
 #: src/protocol_auth.c:80 src/protocol_edge.c:90 src/protocol_edge.c:96
 #: src/protocol_misc.c:188 src/protocol_subnet.c:71 src/protocol_subnet.c:162
 #, c-format
 msgid "Got bad %s from %s (%s)"
 msgstr "Kreeg verkeerde %s van %s (%s)"
 
 #: src/protocol_auth.c:80 src/protocol_edge.c:90 src/protocol_edge.c:96
-#: src/protocol_edge.c:203 src/protocol_edge.c:209 src/protocol_subnet.c:79
+#: src/protocol_edge.c:204 src/protocol_edge.c:210 src/protocol_subnet.c:79
 #: src/protocol_subnet.c:89 src/protocol_subnet.c:170
 #: src/protocol_subnet.c:191
 #, c-format
 #: src/protocol_subnet.c:89 src/protocol_subnet.c:170
 #: src/protocol_subnet.c:191
 #, c-format
@@ -638,62 +640,62 @@ msgstr "Ander %s heeft onbekende identiteit (%s)"
 msgid "Generated random meta key (unencrypted): %s"
 msgstr "Willekeurige meta sleutel aangemaakt (niet versleuteld): %s"
 
 msgid "Generated random meta key (unencrypted): %s"
 msgstr "Willekeurige meta sleutel aangemaakt (niet versleuteld): %s"
 
-#: src/protocol_auth.c:188 src/protocol_auth.c:260
+#: src/protocol_auth.c:188 src/protocol_auth.c:257
 #, c-format
 msgid "Error during encryption of meta key for %s (%s)"
 msgstr "Fout tijdens versleutelen van meta key voor %s (%s)"
 
 #, c-format
 msgid "Error during encryption of meta key for %s (%s)"
 msgstr "Fout tijdens versleutelen van meta key voor %s (%s)"
 
-#: src/protocol_auth.c:240 src/protocol_auth.c:372 src/protocol_auth.c:434
-#: src/protocol_auth.c:452
+#: src/protocol_auth.c:238 src/protocol_auth.c:365 src/protocol_auth.c:427
+#: src/protocol_auth.c:445
 #, c-format
 msgid "Possible intruder %s (%s): %s"
 msgstr "Mogelijke indringer %s (%s): %s"
 
 #, c-format
 msgid "Possible intruder %s (%s): %s"
 msgstr "Mogelijke indringer %s (%s): %s"
 
-#: src/protocol_auth.c:268
+#: src/protocol_auth.c:265
 #, c-format
 msgid "Received random meta key (unencrypted): %s"
 msgstr "Ontving willekeurige meta key (niet versleuteld): %s"
 
 #, c-format
 msgid "Received random meta key (unencrypted): %s"
 msgstr "Ontving willekeurige meta key (niet versleuteld): %s"
 
-#: src/protocol_auth.c:280
+#: src/protocol_auth.c:276
 #, c-format
 msgid "%s (%s) uses unknown cipher!"
 msgstr "%s (%s) gebruikt onbekende cipher!"
 
 #, c-format
 msgid "%s (%s) uses unknown cipher!"
 msgstr "%s (%s) gebruikt onbekende cipher!"
 
-#: src/protocol_auth.c:301 src/protocol_key.c:242
+#: src/protocol_auth.c:296 src/protocol_key.c:243
 #, c-format
 msgid "Node %s (%s) uses unknown digest!"
 msgstr "Node %s (%s) gebruikt onbekende digest!"
 
 #, c-format
 msgid "Node %s (%s) uses unknown digest!"
 msgstr "Node %s (%s) gebruikt onbekende digest!"
 
-#: src/protocol_auth.c:307
+#: src/protocol_auth.c:301
 #, c-format
 msgid "%s (%s) uses bogus MAC length!"
 msgstr "%s (%s) gebruikt onzinnige MAC lengte!"
 
 #, c-format
 msgid "%s (%s) uses bogus MAC length!"
 msgstr "%s (%s) gebruikt onzinnige MAC lengte!"
 
-#: src/protocol_auth.c:435
+#: src/protocol_auth.c:428
 msgid "wrong challenge reply length"
 msgstr "verkeerde lengte antwoord op uitdaging"
 
 msgid "wrong challenge reply length"
 msgstr "verkeerde lengte antwoord op uitdaging"
 
-#: src/protocol_auth.c:453
+#: src/protocol_auth.c:446
 msgid "wrong challenge reply"
 msgstr "verkeerd antwoord op uitdaging"
 
 msgid "wrong challenge reply"
 msgstr "verkeerd antwoord op uitdaging"
 
-#: src/protocol_auth.c:458
+#: src/protocol_auth.c:451
 #, c-format
 msgid "Expected challenge reply: %s"
 msgstr "Verwachtte antwoord op uitdaging: %s"
 
 #, c-format
 msgid "Expected challenge reply: %s"
 msgstr "Verwachtte antwoord op uitdaging: %s"
 
-#: src/protocol_auth.c:548
+#: src/protocol_auth.c:541
 #, c-format
 msgid "Established a second connection with %s (%s), closing old connection"
 msgstr "Tweede verbinding met %s (%s) gemaakt, oude verbinding wordt gesloten"
 
 #, c-format
 msgid "Established a second connection with %s (%s), closing old connection"
 msgstr "Tweede verbinding met %s (%s) gemaakt, oude verbinding wordt gesloten"
 
-#: src/protocol_auth.c:564
+#: src/protocol_auth.c:559
 #, c-format
 msgid "Connection with %s (%s) activated"
 msgstr "Verbinding met %s (%s) geactiveerd"
 
 #, c-format
 msgid "Connection with %s (%s) activated"
 msgstr "Verbinding met %s (%s) geactiveerd"
 
-#: src/protocol_edge.c:91 src/protocol_edge.c:97 src/protocol_edge.c:204
-#: src/protocol_edge.c:210 src/protocol_subnet.c:80 src/protocol_subnet.c:171
+#: src/protocol_edge.c:91 src/protocol_edge.c:97 src/protocol_edge.c:205
+#: src/protocol_edge.c:211 src/protocol_subnet.c:80 src/protocol_subnet.c:171
 msgid "invalid name"
 msgstr "ongeldige naam"
 
 msgid "invalid name"
 msgstr "ongeldige naam"
 
@@ -708,17 +710,17 @@ msgstr ""
 msgid "Got %s from %s (%s) which does not match existing entry"
 msgstr "Kreeg %s van %s (%s) welke niet overeenkomt met reeds bekende"
 
 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_edge.c:148
+#: src/protocol_edge.c:149
 #, c-format
 msgid "Got %s from %s (%s) for ourself which does not exist"
 msgstr "Kreeg %s van %s (%s) voor onszelf welke niet bestaat"
 
 #, c-format
 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_edge.c:223 src/protocol_edge.c:232 src/protocol_edge.c:243
+#: src/protocol_edge.c:224 src/protocol_edge.c:233 src/protocol_edge.c:244
 #, c-format
 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"
 
 #, c-format
 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_edge.c:250 src/protocol_subnet.c:118 src/protocol_subnet.c:218
+#: src/protocol_edge.c:251 src/protocol_subnet.c:118 src/protocol_subnet.c:218
 #, c-format
 msgid "Got %s from %s (%s) for ourself"
 msgstr "Kreeg %s van %s (%s) voor onszelf"
 #, c-format
 msgid "Got %s from %s (%s) for ourself"
 msgstr "Kreeg %s van %s (%s) voor onszelf"
@@ -728,14 +730,14 @@ msgstr "Kreeg %s van %s (%s) voor onszelf"
 msgid "Got %s from %s (%s) origin %s which does not exist"
 msgstr "Kreeg %s van %s (%s) herkomst %s welke niet bestaat"
 
 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_key.c:120 src/protocol_key.c:183
+#: src/protocol_key.c:120 src/protocol_key.c:184
 #, c-format
 msgid ""
 "Got %s from %s (%s) origin %s which does not exist in our connection list"
 msgstr ""
 "Kreeg %s van %s (%s) herkomst %s welke niet voorkomt in de verbindingslijst"
 
 #, c-format
 msgid ""
 "Got %s from %s (%s) origin %s which does not exist in our connection list"
 msgstr ""
 "Kreeg %s van %s (%s) herkomst %s welke niet voorkomt in de verbindingslijst"
 
-#: src/protocol_key.c:128 src/protocol_key.c:191
+#: src/protocol_key.c:128 src/protocol_key.c:192
 #, c-format
 msgid ""
 "Got %s from %s (%s) destination %s which does not exist in our connection "
 #, c-format
 msgid ""
 "Got %s from %s (%s) destination %s which does not exist in our connection "
@@ -743,21 +745,26 @@ msgid ""
 msgstr ""
 "Kreeg %s van %s (%s) doel %s welke niet voorkomt in de verbindingslijst"
 
 msgstr ""
 "Kreeg %s van %s (%s) doel %s welke niet voorkomt in de verbindingslijst"
 
-#: src/protocol_key.c:222
+#: src/protocol_key.c:223
 #, c-format
 msgid "Node %s (%s) uses unknown cipher!"
 msgstr "Node %s (%s) gebruikt onbekende cipher!"
 
 #, c-format
 msgid "Node %s (%s) uses unknown cipher!"
 msgstr "Node %s (%s) gebruikt onbekende cipher!"
 
-#: src/protocol_key.c:228
+#: src/protocol_key.c:229
 #, c-format
 msgid "Node %s (%s) uses wrong keylength!"
 msgstr "Node %s (%s) gebruikt verkeerde lengte sleutel!"
 
 #, c-format
 msgid "Node %s (%s) uses wrong keylength!"
 msgstr "Node %s (%s) gebruikt verkeerde lengte sleutel!"
 
-#: src/protocol_key.c:248
+#: src/protocol_key.c:249
 #, c-format
 msgid "Node %s (%s) uses bogus MAC length!"
 msgstr "Node %s (%s) gebruikt onzinnige MAC lengte!"
 
 #, c-format
 msgid "Node %s (%s) uses bogus MAC length!"
 msgstr "Node %s (%s) gebruikt onzinnige MAC lengte!"
 
+#: src/protocol_key.c:258
+#, c-format
+msgid "Node %s (%s) uses bogus compression level!"
+msgstr "Node %s (%s) gebruikt onzinnig compressieniveau!"
+
 #: src/protocol_misc.c:69
 #, c-format
 msgid "Status message from %s (%s): %s: %s"
 #: src/protocol_misc.c:69
 #, c-format
 msgid "Status message from %s (%s): %s: %s"
@@ -928,16 +935,16 @@ msgstr ""
 msgid "mlockall() not supported on this platform!"
 msgstr "mlockall() wordt niet ondersteund op dit platform!"
 
 msgid "mlockall() not supported on this platform!"
 msgstr "mlockall() wordt niet ondersteund op dit platform!"
 
-#: src/tincd.c:419
+#: src/tincd.c:427
 msgid "Unrecoverable error"
 msgstr "Onherstelbare fout"
 
 msgid "Unrecoverable error"
 msgstr "Onherstelbare fout"
 
-#: src/tincd.c:423
+#: src/tincd.c:431
 #, c-format
 msgid "Restarting in %d seconds!"
 msgstr "Herstart in %d seconden!"
 
 #, c-format
 msgid "Restarting in %d seconds!"
 msgstr "Herstart in %d seconden!"
 
-#: src/tincd.c:426 src/process.c:353
+#: src/tincd.c:434 src/process.c:353
 msgid "Not restarting."
 msgstr "Geen herstart."
 
 msgid "Not restarting."
 msgstr "Geen herstart."
 
@@ -1081,22 +1088,22 @@ msgstr "Signaal %d (%s) genegeerd"
 msgid "Installing signal handler for signal %d (%s) failed: %s\n"
 msgstr "Installeren van signaal afhandelaar voor signaal %d (%s) faalde: %s\n"
 
 msgid "Installing signal handler for signal %d (%s) failed: %s\n"
 msgstr "Installeren van signaal afhandelaar voor signaal %d (%s) faalde: %s\n"
 
-#: src/route.c:84
+#: src/route.c:117
 #, c-format
 msgid "Learned new MAC address %hx:%hx:%hx:%hx:%hx:%hx"
 msgstr "Nieuw MAC adres %hx:%hx:%hx:%hx:%hx:%hx geleerd"
 
 #, 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:118
+#: src/route.c:151
 #, c-format
 msgid "MAC address %hx:%hx:%hx:%hx:%hx:%hx expired"
 msgstr "MAC adres %hx:%hx:%hx:%hx:%hx:%hx verlopen"
 
 #, 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:167
+#: src/route.c:261
 #, 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"
 
 #, 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:188
+#: src/route.c:354
 #, c-format
 msgid ""
 "Cannot route packet: unknown IPv6 destination address %hx:%hx:%hx:%hx:%hx:%"
 #, c-format
 msgid ""
 "Cannot route packet: unknown IPv6 destination address %hx:%hx:%hx:%hx:%hx:%"
@@ -1105,19 +1112,19 @@ msgstr ""
 "Kan pakket niet routeren: onbekend IPv6 doeladres %hx:%hx:%hx:%hx:%hx:%hx:%"
 "hx:%hx"
 
 "Kan pakket niet routeren: onbekend IPv6 doeladres %hx:%hx:%hx:%hx:%hx:%hx:%"
 "hx:%hx"
 
-#: src/route.c:248
+#: src/route.c:407
 msgid ""
 "Cannot route packet: received unknown type neighbor solicitation request"
 msgstr ""
 "Kan pakket niet routeren: ontvangst van onbekend type neighbor solicitation "
 "verzoek"
 
 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:268
+#: src/route.c:426
 msgid "Cannot route packet: checksum error for neighbor solicitation request"
 msgstr ""
 "Kan pakket niet routeren: checksum fout voor neighbor solicitation verzoek"
 
 msgid "Cannot route packet: checksum error for neighbor solicitation request"
 msgstr ""
 "Kan pakket niet routeren: checksum fout voor neighbor solicitation verzoek"
 
-#: src/route.c:278
+#: src/route.c:436
 #, c-format
 msgid ""
 "Cannot route packet: neighbor solicitation request for unknown address %hx:%"
 #, c-format
 msgid ""
 "Cannot route packet: neighbor solicitation request for unknown address %hx:%"
@@ -1126,25 +1133,25 @@ msgstr ""
 "Kan pakket niet routeren: neighbor solicitation verzoek voor onbekend adres %"
 "hx:%hx:%hx:%hx:%hx:%hx:%hx:%hx"
 
 "Kan pakket niet routeren: neighbor solicitation verzoek voor onbekend adres %"
 "hx:%hx:%hx:%hx:%hx:%hx:%hx:%hx"
 
-#: src/route.c:357
+#: src/route.c:516
 msgid "Cannot route packet: received unknown type ARP request"
 msgstr "Kan pakket niet routeren: ontvangst van onbekend type ARP verzoek"
 
 msgid "Cannot route packet: received unknown type ARP request"
 msgstr "Kan pakket niet routeren: ontvangst van onbekend type ARP verzoek"
 
-#: src/route.c:368
+#: src/route.c:527
 #, 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"
 
 #, 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:426
+#: src/route.c:585
 #, c-format
 msgid "Cannot route packet: unknown type %hx"
 msgstr "Kan pakket niet routeren: onbekend type %hx"
 
 #, c-format
 msgid "Cannot route packet: unknown type %hx"
 msgstr "Kan pakket niet routeren: onbekend type %hx"
 
-#: src/node.c:172
+#: src/node.c:175
 msgid "Nodes:"
 msgstr "Nodes:"
 
 msgid "Nodes:"
 msgstr "Nodes:"
 
-#: src/node.c:176
+#: src/node.c:179
 #, c-format
 msgid ""
 " %s at %s cipher %d digest %d maclength %d compression %d options %lx status "
 #, c-format
 msgid ""
 " %s at %s cipher %d digest %d maclength %d compression %d options %lx status "
@@ -1153,7 +1160,7 @@ msgstr ""
 " %s op %s cipher %d digest %d maclengte %d compressie %d opties %lx status %"
 "04x nexthop %s via %s"
 
 " %s op %s cipher %d digest %d maclengte %d compressie %d opties %lx status %"
 "04x nexthop %s via %s"
 
-#: src/node.c:183
+#: src/node.c:186
 msgid "End of nodes."
 msgstr "Einde van nodes."
 
 msgid "End of nodes."
 msgstr "Einde van nodes."
 
@@ -1170,12 +1177,12 @@ msgstr " %s naar %s op %s opties %lx gewicht %d"
 msgid "End of edges."
 msgstr "Einde van edges."
 
 msgid "End of edges."
 msgstr "Einde van edges."
 
-#: src/graph.c:268
+#: src/graph.c:267
 #, c-format
 msgid "Node %s (%s) became reachable"
 msgstr "Node %s (%s) werd bereikbaar"
 
 #, c-format
 msgid "Node %s (%s) became reachable"
 msgstr "Node %s (%s) werd bereikbaar"
 
-#: src/graph.c:271
+#: src/graph.c:270
 #, c-format
 msgid "Node %s (%s) became unreachable"
 msgstr "Node %s (%s) is niet meer bereikbaar"
 #, c-format
 msgid "Node %s (%s) became unreachable"
 msgstr "Node %s (%s) is niet meer bereikbaar"
index a20de41..582c90a 100644 (file)
--- a/src/net.c
+++ b/src/net.c
@@ -17,7 +17,7 @@
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
-    $Id: net.c,v 1.35.4.185 2003/04/19 11:12:45 guus Exp $
+    $Id: net.c,v 1.35.4.186 2003/05/06 21:13:14 guus Exp $
 */
 
 #include "config.h"
 */
 
 #include "config.h"
@@ -385,6 +385,7 @@ void main_loop(void)
                                        syslog(LOG_INFO, _("Regenerating symmetric key"));
 
                                RAND_pseudo_bytes(myself->key, myself->keylength);
                                        syslog(LOG_INFO, _("Regenerating symmetric key"));
 
                                RAND_pseudo_bytes(myself->key, myself->keylength);
+                               EVP_DecryptInit_ex(&packet_ctx, myself->cipher, NULL, myself->key, myself->key + myself->cipher->key_len);
                                send_key_changed(broadcast, myself);
                                keyexpires = now + keylifetime;
                        }
                                send_key_changed(broadcast, myself);
                                keyexpires = now + keylifetime;
                        }
index d652734..6d2677b 100644 (file)
--- a/src/net.h
+++ b/src/net.h
@@ -17,7 +17,7 @@
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
-    $Id: net.h,v 1.9.4.56 2003/03/28 13:41:49 guus Exp $
+    $Id: net.h,v 1.9.4.57 2003/05/06 21:13:17 guus Exp $
 */
 
 #ifndef __TINC_NET_H__
 */
 
 #ifndef __TINC_NET_H__
 
 #ifdef ENABLE_JUMBOGRAMS
 #define MTU 9014                               /* 9000 bytes payload + 14 bytes ethernet header */
 
 #ifdef ENABLE_JUMBOGRAMS
 #define MTU 9014                               /* 9000 bytes payload + 14 bytes ethernet header */
-#define MAXSIZE 9100                   /* MTU + header (seqno) and trailer (CBC padding and HMAC) */
-#define MAXBUFSIZE 9100                        /* Must support TCP packets of length 9000. */
 #else
 #define MTU 1514                               /* 1500 bytes payload + 14 bytes ethernet header */
 #else
 #define MTU 1514                               /* 1500 bytes payload + 14 bytes ethernet header */
-#define MAXSIZE 1600                   /* MTU + header (seqno) and trailer (CBC padding and HMAC) */
-#define MAXBUFSIZE 2100                        /* Quite large but needed for support of keys up to 8192 bits. */
 #endif
 
 #endif
 
+#define MAXSIZE (MTU + 4 + 8 + 64 + MTU/64 + 20)       /* MTU + seqno + padding + HMAC + compressor overhead */
+#define MAXBUFSIZE ((MAXSIZE > 2048 ? MAXSIZE : 2048) + 128)   /* Enough room for a request with a MAXSIZEd packet or a 8192 bits RSA key */
+
 #define MAXSOCKETS 128                 /* Overkill... */
 
 #define MAXQUEUELENGTH 8               /* Maximum number of packats in a single queue */
 #define MAXSOCKETS 128                 /* Overkill... */
 
 #define MAXQUEUELENGTH 8               /* Maximum number of packats in a single queue */
index 724eaa3..e4c4c10 100644 (file)
@@ -17,7 +17,7 @@
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
-    $Id: net_packet.c,v 1.1.2.27 2003/04/18 21:18:36 guus Exp $
+    $Id: net_packet.c,v 1.1.2.28 2003/05/06 21:13:17 guus Exp $
 */
 
 #include "config.h"
 */
 
 #include "config.h"
@@ -56,6 +56,7 @@
 #include <openssl/hmac.h>
 
 #include <zlib.h>
 #include <openssl/hmac.h>
 
 #include <zlib.h>
+#include <lzo1x.h>
 
 #include <utils.h>
 #include <xalloc.h>
 
 #include <utils.h>
 #include <xalloc.h>
 int keylifetime = 0;
 int keyexpires = 0;
 EVP_CIPHER_CTX packet_ctx;
 int keylifetime = 0;
 int keyexpires = 0;
 EVP_CIPHER_CTX packet_ctx;
+char lzo_wrkmem[MAXSIZE];
+
 
 #define MAX_SEQNO 1073741824
 
 
 #define MAX_SEQNO 1073741824
 
+length_t compress_packet(uint8_t *dest, const uint8_t *source, length_t len, int level)
+{
+       if(level == 10) {
+               lzo_uint lzolen = sizeof(lzo_wrkmem);
+               lzo1x_1_compress(source, len, dest, &lzolen, lzo_wrkmem);
+               return lzolen;
+       } else if(level < 10) {
+               unsigned long destlen;
+               if(compress2(dest, &destlen, source, len, level) == Z_OK)
+                       return destlen;
+               else
+                       return -1;
+       } else {
+               lzo_uint lzolen = sizeof(lzo_wrkmem);
+               lzo1x_999_compress(source, len, dest, &lzolen, lzo_wrkmem);
+               return lzolen;
+       }
+       
+       return -1;
+}
+
+length_t uncompress_packet(uint8_t *dest, const uint8_t *source, length_t len, int level)
+{
+       if(level > 9) {
+               lzo_uint lzolen = sizeof(lzo_wrkmem);
+               if(lzo1x_decompress_safe(source, len, dest, &lzolen, NULL) == LZO_E_OK)
+                       return lzolen;
+               else
+                       return -1;
+       } else {
+               unsigned long destlen;
+               if(uncompress(dest, &destlen, source, len) == Z_OK)
+                       return destlen;
+               else
+                       return -1;
+       }
+       
+       return -1;
+}
+
 /* VPN packet I/O */
 
 void receive_udppacket(node_t *n, vpn_packet_t *inpkt)
 /* VPN packet I/O */
 
 void receive_udppacket(node_t *n, vpn_packet_t *inpkt)
@@ -119,8 +162,9 @@ void receive_udppacket(node_t *n, vpn_packet_t *inpkt)
        if(myself->cipher) {
                outpkt = pkt[nextpkt++];
 
        if(myself->cipher) {
                outpkt = pkt[nextpkt++];
 
-               EVP_DecryptInit_ex(&packet_ctx, myself->cipher, NULL, myself->key,
-                                               myself->key + myself->cipher->key_len);
+//             EVP_DecryptInit_ex(&packet_ctx, myself->cipher, NULL, myself->key,
+//                                             myself->key + myself->cipher->key_len);
+               EVP_DecryptInit_ex(&packet_ctx, NULL, NULL, NULL, NULL);
                EVP_DecryptUpdate(&packet_ctx, (char *) &outpkt->seqno, &outlen,
                                                  (char *) &inpkt->seqno, inpkt->len);
                EVP_DecryptFinal_ex(&packet_ctx, (char *) &outpkt->seqno + outlen, &outpad);
                EVP_DecryptUpdate(&packet_ctx, (char *) &outpkt->seqno, &outlen,
                                                  (char *) &inpkt->seqno, inpkt->len);
                EVP_DecryptFinal_ex(&packet_ctx, (char *) &outpkt->seqno + outlen, &outpad);
@@ -162,13 +206,12 @@ void receive_udppacket(node_t *n, vpn_packet_t *inpkt)
        if(myself->compression) {
                outpkt = pkt[nextpkt++];
 
        if(myself->compression) {
                outpkt = pkt[nextpkt++];
 
-               if(uncompress(outpkt->data, &complen, inpkt->data, inpkt->len) != Z_OK) {
+               if((outpkt->len = uncompress_packet(outpkt->data, inpkt->data, inpkt->len, myself->compression)) < 0) {
                        syslog(LOG_ERR, _("Error while uncompressing packet from %s (%s)"),
                                   n->name, n->hostname);
                        return;
                }
 
                        syslog(LOG_ERR, _("Error while uncompressing packet from %s (%s)"),
                                   n->name, n->hostname);
                        return;
                }
 
-               outpkt->len = complen;
                inpkt = outpkt;
        }
 
                inpkt = outpkt;
        }
 
@@ -248,15 +291,12 @@ void send_udppacket(node_t *n, vpn_packet_t *inpkt)
        if(n->compression) {
                outpkt = pkt[nextpkt++];
 
        if(n->compression) {
                outpkt = pkt[nextpkt++];
 
-               if(compress2
-                  (outpkt->data, &complen, inpkt->data, inpkt->len,
-                       n->compression) != Z_OK) {
+               if((outpkt->len = compress_packet(outpkt->data, inpkt->data, inpkt->len, n->compression)) < 0) {
                        syslog(LOG_ERR, _("Error while compressing packet to %s (%s)"),
                                   n->name, n->hostname);
                        return;
                }
 
                        syslog(LOG_ERR, _("Error while compressing packet to %s (%s)"),
                                   n->name, n->hostname);
                        return;
                }
 
-               outpkt->len = complen;
                inpkt = outpkt;
        }
 
                inpkt = outpkt;
        }
 
@@ -270,10 +310,11 @@ void send_udppacket(node_t *n, vpn_packet_t *inpkt)
        if(n->cipher) {
                outpkt = pkt[nextpkt++];
 
        if(n->cipher) {
                outpkt = pkt[nextpkt++];
 
-               EVP_EncryptInit_ex(&packet_ctx, n->cipher, NULL, n->key, n->key + n->cipher->key_len);
-               EVP_EncryptUpdate(&packet_ctx, (char *) &outpkt->seqno, &outlen,
+//             EVP_EncryptInit_ex(&packet_ctx, n->cipher, NULL, n->key, n->key + n->cipher->key_len);
+               EVP_EncryptInit_ex(&n->packet_ctx, NULL, NULL, NULL, NULL);
+               EVP_EncryptUpdate(&n->packet_ctx, (char *) &outpkt->seqno, &outlen,
                                                  (char *) &inpkt->seqno, inpkt->len);
                                                  (char *) &inpkt->seqno, inpkt->len);
-               EVP_EncryptFinal_ex(&packet_ctx, (char *) &outpkt->seqno + outlen, &outpad);
+               EVP_EncryptFinal_ex(&n->packet_ctx, (char *) &outpkt->seqno + outlen, &outpad);
 
                outpkt->len = outlen + outpad;
                inpkt = outpkt;
 
                outpkt->len = outlen + outpad;
                inpkt = outpkt;
index fcbc8c5..44d0c74 100644 (file)
@@ -17,7 +17,7 @@
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
-    $Id: net_setup.c,v 1.1.2.30 2003/03/28 13:41:49 guus Exp $
+    $Id: net_setup.c,v 1.1.2.31 2003/05/06 21:13:17 guus Exp $
 */
 
 #include "config.h"
 */
 
 #include "config.h"
@@ -406,6 +406,7 @@ int setup_myself(void)
        keyexpires = now + keylifetime;
        
        EVP_CIPHER_CTX_init(&packet_ctx);
        keyexpires = now + keylifetime;
        
        EVP_CIPHER_CTX_init(&packet_ctx);
+       EVP_DecryptInit_ex(&packet_ctx, myself->cipher, NULL, myself->key, myself->key + myself->cipher->key_len);
 
        /* Check if we want to use message authentication codes... */
 
 
        /* Check if we want to use message authentication codes... */
 
@@ -448,7 +449,7 @@ int setup_myself(void)
        if(get_config_int
           (lookup_config(myself->connection->config_tree, "Compression"),
                &myself->compression)) {
        if(get_config_int
           (lookup_config(myself->connection->config_tree, "Compression"),
                &myself->compression)) {
-               if(myself->compression < 0 || myself->compression > 9) {
+               if(myself->compression < 0 || myself->compression > 11) {
                        syslog(LOG_ERR, _("Bogus compression level!"));
                        return -1;
                }
                        syslog(LOG_ERR, _("Bogus compression level!"));
                        return -1;
                }
index e68c735..48a4ebd 100644 (file)
@@ -17,7 +17,7 @@
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
-    $Id: node.c,v 1.1.2.18 2002/09/09 22:32:49 guus Exp $
+    $Id: node.c,v 1.1.2.19 2003/05/06 21:13:17 guus Exp $
 */
 
 #include "config.h"
 */
 
 #include "config.h"
@@ -83,6 +83,7 @@ node_t *new_node(void)
        n->subnet_tree = new_subnet_tree();
        n->edge_tree = new_edge_tree();
        n->queue = list_alloc((list_action_t) free);
        n->subnet_tree = new_subnet_tree();
        n->edge_tree = new_edge_tree();
        n->queue = list_alloc((list_action_t) free);
+       EVP_CIPHER_CTX_init(&n->packet_ctx);
 
        return n;
 }
 
        return n;
 }
@@ -109,6 +110,8 @@ void free_node(node_t *n)
        if(n->edge_tree)
                free_edge_tree(n->edge_tree);
 
        if(n->edge_tree)
                free_edge_tree(n->edge_tree);
 
+       EVP_CIPHER_CTX_cleanup(&n->packet_ctx);
+       
        free(n);
 }
 
        free(n);
 }
 
index 6e5e68e..800c6de 100644 (file)
@@ -17,7 +17,7 @@
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
-    $Id: node.h,v 1.1.2.21 2003/04/18 21:18:36 guus Exp $
+    $Id: node.h,v 1.1.2.22 2003/05/06 21:13:18 guus Exp $
 */
 
 #ifndef __TINC_NODE_H__
 */
 
 #ifndef __TINC_NODE_H__
@@ -54,7 +54,8 @@ typedef struct node_t {
        const EVP_CIPHER *cipher;       /* Cipher type for UDP packets */
        char *key;                                      /* Cipher key and iv */
        int keylength;                          /* Cipher key and iv length */
        const EVP_CIPHER *cipher;       /* Cipher type for UDP packets */
        char *key;                                      /* Cipher key and iv */
        int keylength;                          /* Cipher key and iv length */
-
+       EVP_CIPHER_CTX packet_ctx;      /* Cipher context */
+       
        const EVP_MD *digest;           /* Digest type for MAC */
        int maclength;                          /* Length of MAC */
 
        const EVP_MD *digest;           /* Digest type for MAC */
        int maclength;                          /* Length of MAC */
 
index 786a8a1..0ecad9b 100644 (file)
@@ -17,7 +17,7 @@
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
     along with this program; if not, write to the Free Software
     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
 
-    $Id: protocol_key.c,v 1.1.4.15 2003/04/18 21:18:36 guus Exp $
+    $Id: protocol_key.c,v 1.1.4.16 2003/05/06 21:13:18 guus Exp $
 */
 
 #include "config.h"
 */
 
 #include "config.h"
@@ -254,8 +254,15 @@ int ans_key_h(connection_t *c)
                from->digest = NULL;
        }
 
                from->digest = NULL;
        }
 
+       if(compression < 0 || compression > 11) {
+               syslog(LOG_ERR, _("Node %s (%s) uses bogus compression level!"), from->name, from->hostname);
+               return -1;
+       }
+       
        from->compression = compression;
 
        from->compression = compression;
 
+       EVP_EncryptInit_ex(&from->packet_ctx, from->cipher, NULL, from->key, from->key + from->cipher->key_len);
+
        flush_queue(from);
 
        return 0;
        flush_queue(from);
 
        return 0;