tinc
23 years agoWorking version of Kruskal's algorithm. The running time is very bad though.
Guus Sliepen [Mon, 29 Oct 2001 13:14:57 +0000 (13:14 +0000)]
Working version of Kruskal's algorithm. The running time is very bad though.

23 years ago- More changes needed for Kruskal's algorithm
Guus Sliepen [Sun, 28 Oct 2001 22:42:49 +0000 (22:42 +0000)]
- More changes needed for Kruskal's algorithm
- Implemented a breadth-first search algorithm as a cheap substitution for a
  single-source shortest path algorithm.

23 years ago- More s/vertex/edge/g
Guus Sliepen [Sun, 28 Oct 2001 10:16:18 +0000 (10:16 +0000)]
- More s/vertex/edge/g
- Implementation of Kruskal's minimum spanning tree algorithm.

23 years agoWhat was I thinking? s/vertex/edge/g.
Guus Sliepen [Sun, 28 Oct 2001 08:41:19 +0000 (08:41 +0000)]
What was I thinking? s/vertex/edge/g.

23 years agoVarious small fixes to make tinc runnable again.
Guus Sliepen [Sat, 27 Oct 2001 15:19:13 +0000 (15:19 +0000)]
Various small fixes to make tinc runnable again.

23 years agoMake sure everything links.
Guus Sliepen [Sat, 27 Oct 2001 13:13:35 +0000 (13:13 +0000)]
Make sure everything links.

23 years agoBig bad commit:
Guus Sliepen [Sat, 27 Oct 2001 12:13:17 +0000 (12:13 +0000)]
Big bad commit:
- Transition to new node/vertex/connection structures
- Use new configuration handling everywhere
- Linux tun/tap device handling cleanup
- Start of IPv6 support in route.c

It compiles, but it won't link.

23 years agoSupport new files (node/vertex/device.[ch]) and OpenBSD.
Guus Sliepen [Sat, 13 Oct 2001 13:53:07 +0000 (13:53 +0000)]
Support new files (node/vertex/device.[ch]) and OpenBSD.

23 years agoForgot the tun specific stuff.
Guus Sliepen [Fri, 12 Oct 2001 15:52:03 +0000 (15:52 +0000)]
Forgot the tun specific stuff.

23 years agoAdded OpenBSD tun device handling. Untested though.
Guus Sliepen [Fri, 12 Oct 2001 15:49:11 +0000 (15:49 +0000)]
Added OpenBSD tun device handling. Untested though.

23 years agoForgot to remove some old #ifdef stuff.
Guus Sliepen [Fri, 12 Oct 2001 15:38:35 +0000 (15:38 +0000)]
Forgot to remove some old #ifdef stuff.

23 years agoSolaris tun device handling cleaned up a bit and added.
Guus Sliepen [Fri, 12 Oct 2001 15:33:21 +0000 (15:33 +0000)]
Solaris tun device handling cleaned up a bit and added.

23 years agoAdded FreeBSD tap device handling.
Guus Sliepen [Fri, 12 Oct 2001 15:22:59 +0000 (15:22 +0000)]
Added FreeBSD tap device handling.

23 years ago- Split tap device stuff out of net.[ch]
Guus Sliepen [Fri, 12 Oct 2001 15:16:03 +0000 (15:16 +0000)]
- Split tap device stuff out of net.[ch]
- Each OS gets it's own device.c to get rid of evil #ifdefs.
- Cleaned up Linux ethertap and tun/tap handling.

23 years agoMore updates to new node/vertex/connection combo.
Guus Sliepen [Wed, 10 Oct 2001 20:35:10 +0000 (20:35 +0000)]
More updates to new node/vertex/connection combo.

23 years agoRevamp configuration handling:
Guus Sliepen [Wed, 10 Oct 2001 20:34:27 +0000 (20:34 +0000)]
Revamp configuration handling:
- Store everything in AVL trees (fast lookup)
- No need for hazahaza anymore
- Parse values when needed
- This simplifies a lot of config variable lookups.

23 years agoRemoved everything from connection.c that has already been moved to node.c and
Guus Sliepen [Wed, 10 Oct 2001 09:42:29 +0000 (09:42 +0000)]
Removed everything from connection.c that has already been moved to node.c and
vertex.c.

23 years agoFurther implementation of doc/CONNECTIVITY. connection.[ch] is now split into a
Guus Sliepen [Wed, 10 Oct 2001 08:49:47 +0000 (08:49 +0000)]
Further implementation of doc/CONNECTIVITY. connection.[ch] is now split into a
node, vertex and connection part.

23 years agomake is not always GNU make.
Wessel Dankers [Tue, 9 Oct 2001 19:41:56 +0000 (19:41 +0000)]
make is not always GNU make.

23 years agoSmall corrections.
Guus Sliepen [Tue, 9 Oct 2001 19:37:10 +0000 (19:37 +0000)]
Small corrections.

23 years agoStarted implementing doc/CONNECTIVITY.
Guus Sliepen [Tue, 9 Oct 2001 19:30:30 +0000 (19:30 +0000)]
Started implementing doc/CONNECTIVITY.

23 years agoUpdated dutch translation.
Guus Sliepen [Mon, 8 Oct 2001 15:47:30 +0000 (15:47 +0000)]
Updated dutch translation.

23 years agoFix bug when dropping an old connection in favour of a new one from the
Guus Sliepen [Mon, 8 Oct 2001 15:37:14 +0000 (15:37 +0000)]
Fix bug when dropping an old connection in favour of a new one from the
same host.

23 years ago- Use ping timeout mechanism to close connections that don't authenticate
Guus Sliepen [Mon, 8 Oct 2001 13:37:30 +0000 (13:37 +0000)]
- Use ping timeout mechanism to close connections that don't authenticate
  in time.
- Fix potential segmentation fault in check_dead_connections().

23 years agoFix bug where tinc would crash because of a portscan or a connection from a
Guus Sliepen [Mon, 8 Oct 2001 11:59:08 +0000 (11:59 +0000)]
Fix bug where tinc would crash because of a portscan or a connection from a
tinc daemon with a different version.

23 years ago- Renamed lastbutonehop to prevhop.
Guus Sliepen [Mon, 8 Oct 2001 11:47:55 +0000 (11:47 +0000)]
- Renamed lastbutonehop to prevhop.
- Added connection_t *via to connection_t, this keeps record of where
  to send UDP packets to.

23 years agoFill in next- and lastbutonehop for myself.
Guus Sliepen [Tue, 25 Sep 2001 13:39:11 +0000 (13:39 +0000)]
Fill in next- and lastbutonehop for myself.

23 years agoTry next connectto instead of the same over and over.
Guus Sliepen [Tue, 25 Sep 2001 13:35:45 +0000 (13:35 +0000)]
Try next connectto instead of the same over and over.

23 years agoShow next- and lastbutonehop when dumping connectionlist to syslog.
Guus Sliepen [Mon, 24 Sep 2001 14:16:29 +0000 (14:16 +0000)]
Show next- and lastbutonehop when dumping connectionlist to syslog.

23 years agoNot only keep track of nexthop, but also of lastbutonehop. If destination cl
Guus Sliepen [Mon, 24 Sep 2001 14:12:00 +0000 (14:12 +0000)]
Not only keep track of nexthop, but also of lastbutonehop. If destination cl
wants indirectdata, send it to the lastbutonehop instead, unless it too has
requested so, and so on.

23 years ago- Try old TUN/TAP ioctl() request if the one from if_tun.h fails.
Guus Sliepen [Mon, 24 Sep 2001 13:31:15 +0000 (13:31 +0000)]
- Try old TUN/TAP ioctl() request if the one from if_tun.h fails.
- Be more verbose about the kind of tap device used.

23 years agoKilling tincd with SIGINT causes it to toggle between the current
Ivo Timmermans [Wed, 5 Sep 2001 18:38:09 +0000 (18:38 +0000)]
Killing tincd with SIGINT causes it to toggle between the current
debug level and level 5.  Useful to debug a running tincd.

23 years agoconfig_t* is a const parameter in get_config_val().
Guus Sliepen [Sat, 1 Sep 2001 12:46:49 +0000 (12:46 +0000)]
config_t* is a const parameter in get_config_val().

23 years agoOptional signal number for -k option.
Guus Sliepen [Sat, 1 Sep 2001 12:36:53 +0000 (12:36 +0000)]
Optional signal number for -k option.

23 years agoRevised reconnection mechanism, always try out all ConnectTo lines.
Guus Sliepen [Sat, 1 Sep 2001 12:36:06 +0000 (12:36 +0000)]
Revised reconnection mechanism, always try out all ConnectTo lines.

23 years agoRemove IndirectData support for now, new implementation will be added
Guus Sliepen [Sat, 1 Sep 2001 12:02:39 +0000 (12:02 +0000)]
Remove IndirectData support for now, new implementation will be added
later.

23 years agoFix signed comparison bug in lookup_subnet_ipv4().
Guus Sliepen [Tue, 28 Aug 2001 20:52:39 +0000 (20:52 +0000)]
Fix signed comparison bug in lookup_subnet_ipv4().

23 years agoDon't send DEL_HOSTs when !status.meta
Guus Sliepen [Fri, 17 Aug 2001 18:14:04 +0000 (18:14 +0000)]
Don't send DEL_HOSTs when !status.meta

23 years agoExplicitly log which type of tunnel device is used.
Guus Sliepen [Tue, 24 Jul 2001 20:14:30 +0000 (20:14 +0000)]
Explicitly log which type of tunnel device is used.

23 years agoThe val variable in a config_t is never used as a long.
Guus Sliepen [Tue, 24 Jul 2001 20:13:42 +0000 (20:13 +0000)]
The val variable in a config_t is never used as a long.

23 years agoWrite public key to rsa_key.pub instead of rsa_key.priv (if not host
Guus Sliepen [Tue, 24 Jul 2001 20:04:22 +0000 (20:04 +0000)]
Write public key to rsa_key.pub instead of rsa_key.priv (if not host
configuration file is found).

23 years agoDon't use %m in fprintf().
Guus Sliepen [Tue, 24 Jul 2001 20:03:40 +0000 (20:03 +0000)]
Don't use %m in fprintf().

23 years agoMore on edges.
Guus Sliepen [Tue, 24 Jul 2001 08:51:36 +0000 (08:51 +0000)]
More on edges.

23 years agoDiscuss how sending ADD_EDGEs would be better than sending ADD_HOSTs.
Guus Sliepen [Mon, 23 Jul 2001 22:06:22 +0000 (22:06 +0000)]
Discuss how sending ADD_EDGEs would be better than sending ADD_HOSTs.

23 years agoWritten down a possible solution.
Guus Sliepen [Sun, 22 Jul 2001 17:41:52 +0000 (17:41 +0000)]
Written down a possible solution.

23 years agoCorrectie.
Guus Sliepen [Sun, 22 Jul 2001 15:25:13 +0000 (15:25 +0000)]
Correctie.

23 years agoSmall update.
Guus Sliepen [Sun, 22 Jul 2001 14:58:18 +0000 (14:58 +0000)]
Small update.

23 years agoDescribed problem in more detail.
Guus Sliepen [Sun, 22 Jul 2001 14:46:11 +0000 (14:46 +0000)]
Described problem in more detail.

23 years agoStarted writing a document about how daemons connect to each other.
Guus Sliepen [Sun, 22 Jul 2001 14:04:38 +0000 (14:04 +0000)]
Started writing a document about how daemons connect to each other.

23 years agoWoohoo! tinc now compiles, runs and actually *works* on Solaris!
Guus Sliepen [Sat, 21 Jul 2001 20:21:25 +0000 (20:21 +0000)]
Woohoo! tinc now compiles, runs and actually *works* on Solaris!
Tested on a SparcStation 20MP running Solaris 7. (Thanks, jiggel!)

23 years agoAlways close all sockets in terminate_connection().
Guus Sliepen [Sat, 21 Jul 2001 15:46:34 +0000 (15:46 +0000)]
Always close all sockets in terminate_connection().

23 years agoUpdated terminate_connection() so you can choose if DEL_HOSTs should be
Guus Sliepen [Sat, 21 Jul 2001 15:34:18 +0000 (15:34 +0000)]
Updated terminate_connection() so you can choose if DEL_HOSTs should be
sent or not.

23 years agoAdded purge_tree for connection_t's which are no longer in the connection,
Guus Sliepen [Fri, 20 Jul 2001 20:25:10 +0000 (20:25 +0000)]
Added purge_tree for connection_t's which are no longer in the connection,
active or id trees, but which may still be referenced. This tree is flushed
when it is safe, this replaces purge_connection_tree().

Also lots of bugfixes related to the new trees.

23 years agoRemove all unnecessary status.meta and status.active checks.
Guus Sliepen [Fri, 20 Jul 2001 13:54:19 +0000 (13:54 +0000)]
Remove all unnecessary status.meta and status.active checks.

23 years agoCorrectly use the active_tree.
Guus Sliepen [Thu, 19 Jul 2001 12:29:40 +0000 (12:29 +0000)]
Correctly use the active_tree.

23 years agoSplit connection list into two lists:
Guus Sliepen [Sun, 15 Jul 2001 18:07:31 +0000 (18:07 +0000)]
Split connection list into two lists:
 - one list to handle all incoming/outgoing TCP connections
 - another list to handle all UDP connections

This will prevent race conditions.

23 years agoCorrect inclusion of standard if_tun.h header file.
Guus Sliepen [Sun, 15 Jul 2001 14:21:12 +0000 (14:21 +0000)]
Correct inclusion of standard if_tun.h header file.

23 years agoDon't load table of verbose OpenSSL errormessages.
Guus Sliepen [Wed, 4 Jul 2001 08:43:32 +0000 (08:43 +0000)]
Don't load table of verbose OpenSSL errormessages.

23 years ago- Always use <openssl/include.h> instead of just <include.h>
Guus Sliepen [Wed, 4 Jul 2001 08:41:36 +0000 (08:41 +0000)]
- Always use <openssl/include.h> instead of just <include.h>
- Check if RAND_pseudo_bytes() exists, otherwise just use RAND_bytes()

23 years agoCheck for all potential duplicate entries in the id tree.
Guus Sliepen [Sun, 1 Jul 2001 21:42:13 +0000 (21:42 +0000)]
Check for all potential duplicate entries in the id tree.

23 years agoFix compiler warning.
Guus Sliepen [Sun, 1 Jul 2001 09:21:14 +0000 (09:21 +0000)]
Fix compiler warning.

23 years agoFix printf format bug.
Guus Sliepen [Sun, 1 Jul 2001 09:21:01 +0000 (09:21 +0000)]
Fix printf format bug.

23 years agoMore items marked as done.
Guus Sliepen [Sun, 1 Jul 2001 09:06:17 +0000 (09:06 +0000)]
More items marked as done.

23 years agoDutch translation updated.
Guus Sliepen [Fri, 29 Jun 2001 15:38:40 +0000 (15:38 +0000)]
Dutch translation updated.

23 years agoUpdate of RedHat build scripts.
Guus Sliepen [Fri, 29 Jun 2001 15:33:18 +0000 (15:33 +0000)]
Update of RedHat build scripts.

23 years agoIt appears that autogen.sh doesn't like es.po if it isn't mentioned in
Guus Sliepen [Fri, 29 Jun 2001 15:32:26 +0000 (15:32 +0000)]
It appears that autogen.sh doesn't like es.po if it isn't mentioned in
the makefile/configure scripts.

23 years agoCheck for dlopen in standard libraries first (needed for DEC OSF).
Guus Sliepen [Fri, 29 Jun 2001 14:15:46 +0000 (14:15 +0000)]
Check for dlopen in standard libraries first (needed for DEC OSF).

23 years agoFix gcc 3.0 warnings.
Guus Sliepen [Fri, 29 Jun 2001 13:09:55 +0000 (13:09 +0000)]
Fix gcc 3.0 warnings.

23 years agoLog error if two hosts connect with same IP/port tuple.
Guus Sliepen [Fri, 29 Jun 2001 13:09:32 +0000 (13:09 +0000)]
Log error if two hosts connect with same IP/port tuple.

23 years agoAlso remove po/Makefile.in.in, which is generated by autogen.sh.
Guus Sliepen [Fri, 29 Jun 2001 11:09:13 +0000 (11:09 +0000)]
Also remove po/Makefile.in.in, which is generated by autogen.sh.

23 years agoes.po revived.
Guus Sliepen [Fri, 29 Jun 2001 11:03:27 +0000 (11:03 +0000)]
es.po revived.

23 years agoExecute tinc-down BEFORE tap device is closed. This is a. more symmetric
Guus Sliepen [Fri, 29 Jun 2001 10:30:18 +0000 (10:30 +0000)]
Execute tinc-down BEFORE tap device is closed. This is a. more symmetric
(tinc-up is started after tap device is opened) and b. is needed for
tun/tap device, where the interface does not exist anymore after the
device file is closed.

23 years agoDon't build Spanish translation.
Guus Sliepen [Fri, 29 Jun 2001 10:27:57 +0000 (10:27 +0000)]
Don't build Spanish translation.

23 years agoABOUT-NLS is created by autogen.sh.
Guus Sliepen [Fri, 29 Jun 2001 10:27:33 +0000 (10:27 +0000)]
ABOUT-NLS is created by autogen.sh.

23 years agoSpanish translation removed. Nobody maintains it, and it is severely
Guus Sliepen [Fri, 29 Jun 2001 10:23:46 +0000 (10:23 +0000)]
Spanish translation removed. Nobody maintains it, and it is severely
outdated.

23 years agoSmall fix to make it compile again
Ivo Timmermans [Tue, 26 Jun 2001 22:00:57 +0000 (22:00 +0000)]
Small fix to make it compile again

23 years agoReinstated search for if_tun.h in kernel source tree, because apparently
Guus Sliepen [Thu, 21 Jun 2001 18:28:52 +0000 (18:28 +0000)]
Reinstated search for if_tun.h in kernel source tree, because apparently
/usr/include/linux does not always have the same contents as the include
files from the currently running kernel.

23 years agoRemove #warnings I used for debugging stuff.
Guus Sliepen [Thu, 21 Jun 2001 16:37:47 +0000 (16:37 +0000)]
Remove #warnings I used for debugging stuff.

23 years agoCheck for and add -ldl.
Guus Sliepen [Thu, 21 Jun 2001 16:37:05 +0000 (16:37 +0000)]
Check for and add -ldl.

23 years ago- Solaris compile fixes
Guus Sliepen [Thu, 21 Jun 2001 16:16:32 +0000 (16:16 +0000)]
- Solaris compile fixes
- Set mymac to broadcast MAC so that ifconfig hw ether <...> is really not
  needed anymore.
- Forwarding of indirect packets when in switch mode (because the kernel
  will not do it for us then).

23 years agoDon't include the debian/ dir in a release
Ivo Timmermans [Wed, 20 Jun 2001 21:32:40 +0000 (21:32 +0000)]
Don't include the debian/ dir in a release

23 years agoWoops - big bug in send_key_changed fixed.
Guus Sliepen [Sat, 9 Jun 2001 10:00:34 +0000 (10:00 +0000)]
Woops - big bug in send_key_changed fixed.

23 years agoOnly reset seconds_till_retry when we activate the outgoing connection.
Guus Sliepen [Fri, 8 Jun 2001 18:02:10 +0000 (18:02 +0000)]
Only reset seconds_till_retry when we activate the outgoing connection.

23 years agoChanged drastically because it didn't work correctly:
Guus Sliepen [Thu, 7 Jun 2001 07:51:04 +0000 (07:51 +0000)]
Changed drastically because it didn't work correctly:
- Don't cache the --with-openssl-* option arguments
- Only search for openssl/*.h, the openssl include files include other
  files only from an openssl/ directory too
- Set CPPFLAGS before AC_CHECK_HEADERS

23 years agoSave configure cache more often.
Guus Sliepen [Thu, 7 Jun 2001 07:48:11 +0000 (07:48 +0000)]
Save configure cache more often.

23 years agoFixes to make switching work between hosts that have no meta-connection.
Guus Sliepen [Wed, 6 Jun 2001 19:12:38 +0000 (19:12 +0000)]
Fixes to make switching work between hosts that have no meta-connection.

23 years agoLog and warn about duplicate subnet_add()'s for the same subnet.
Guus Sliepen [Wed, 6 Jun 2001 19:11:16 +0000 (19:11 +0000)]
Log and warn about duplicate subnet_add()'s for the same subnet.

23 years agoAdd missing? counting of total_socket_in.
Guus Sliepen [Tue, 5 Jun 2001 19:45:47 +0000 (19:45 +0000)]
Add missing? counting of total_socket_in.

23 years agoYou can now put an option "Mode" in tinc.conf, and choose from:
Guus Sliepen [Tue, 5 Jun 2001 19:39:54 +0000 (19:39 +0000)]
You can now put an option "Mode" in tinc.conf, and choose from:

- Mode = router (default, work like tinc has always worked)
- Mode = switch (work like a switch)
- Mode = hub    (work like a hub, broadcasting everything)

23 years agoFix bug where lookup_subnet_ipv4() could go into an infinite loop.
Guus Sliepen [Tue, 5 Jun 2001 18:07:14 +0000 (18:07 +0000)]
Fix bug where lookup_subnet_ipv4() could go into an infinite loop.

23 years ago- This oneliner removes the need for ifconfig tap? hw ether fe:fd:0:0:0:0
Guus Sliepen [Tue, 5 Jun 2001 16:31:59 +0000 (16:31 +0000)]
- This oneliner removes the need for ifconfig tap? hw ether fe:fd:0:0:0:0

23 years agoUpdated dutch translation.
Guus Sliepen [Tue, 5 Jun 2001 16:15:48 +0000 (16:15 +0000)]
Updated dutch translation.

23 years agoChanged some stuff to allow correct generation of po/Makefile after a
Guus Sliepen [Tue, 5 Jun 2001 16:13:41 +0000 (16:13 +0000)]
Changed some stuff to allow correct generation of po/Makefile after a
make cvs-clean.

23 years ago- tinc can now act as a switch or a hub too (as opposed to a router only)
Guus Sliepen [Tue, 5 Jun 2001 16:09:55 +0000 (16:09 +0000)]
- tinc can now act as a switch or a hub too (as opposed to a router only)
- cleaner initialisation of "UNKNOWN" and "MYSELF" names

23 years agoAdded proxy-arp support. No more ifconfig -arp needed. Works like a charm
Guus Sliepen [Mon, 4 Jun 2001 11:14:35 +0000 (11:14 +0000)]
Added proxy-arp support. No more ifconfig -arp needed. Works like a charm
under FreeBSD now :).

23 years agoFix subnet_lookup() for overlapping subnets. Needs rethinking.
Guus Sliepen [Fri, 1 Jun 2001 08:02:09 +0000 (08:02 +0000)]
Fix subnet_lookup() for overlapping subnets. Needs rethinking.

23 years agoMake sure Solaris is happy too.
Guus Sliepen [Mon, 28 May 2001 08:56:57 +0000 (08:56 +0000)]
Make sure Solaris is happy too.

23 years agoSmall fixes to allow correct compilation under FreeBSD (tested with 4.3)
Guus Sliepen [Mon, 28 May 2001 08:21:43 +0000 (08:21 +0000)]
Small fixes to allow correct compilation under FreeBSD (tested with 4.3)

23 years agoDon't distribute autogen.sh in a release
Ivo Timmermans [Sat, 26 May 2001 09:35:28 +0000 (09:35 +0000)]
Don't distribute autogen.sh in a release

23 years agoChanged version number to 1.0-cvs
Ivo Timmermans [Sat, 26 May 2001 09:35:00 +0000 (09:35 +0000)]
Changed version number to 1.0-cvs