Guus Sliepen [Sun, 10 Feb 2002 21:57:54 +0000 (21:57 +0000)]
Merging of the entire pre5 branch.
Ivo Timmermans [Fri, 16 Nov 2001 22:41:38 +0000 (22:41 +0000)]
Conversion to struct addrinfo is almost complete for this file.
Ivo Timmermans [Fri, 16 Nov 2001 22:40:26 +0000 (22:40 +0000)]
Don't include netutl.h.
Ivo Timmermans [Fri, 16 Nov 2001 22:31:41 +0000 (22:31 +0000)]
Fixed silly typo: "np" instead of "no"
Ivo Timmermans [Fri, 16 Nov 2001 22:31:15 +0000 (22:31 +0000)]
get_config_subnet needs to be fixed.
Ivo Timmermans [Fri, 16 Nov 2001 17:40:50 +0000 (17:40 +0000)]
route_ipv4 and route_ipv6 replaced by route_ip.
Ivo Timmermans [Fri, 16 Nov 2001 17:39:59 +0000 (17:39 +0000)]
Don't include netutl.h.
Ivo Timmermans [Fri, 16 Nov 2001 17:39:38 +0000 (17:39 +0000)]
lookup_node_udp changed.
Ivo Timmermans [Fri, 16 Nov 2001 17:38:39 +0000 (17:38 +0000)]
First part of rewriting things to use struct addrinfo.
Ivo Timmermans [Fri, 16 Nov 2001 17:37:08 +0000 (17:37 +0000)]
Added dropin replacements for get*info and helper functions.
Ivo Timmermans [Fri, 16 Nov 2001 16:16:33 +0000 (16:16 +0000)]
Added HAVE_STRUCT_ADDRINFO
Ivo Timmermans [Fri, 16 Nov 2001 15:56:44 +0000 (15:56 +0000)]
(re)added port to struct node_t
Ivo Timmermans [Fri, 16 Nov 2001 12:22:02 +0000 (12:22 +0000)]
Don't include netutl.h.
Ivo Timmermans [Fri, 16 Nov 2001 12:21:22 +0000 (12:21 +0000)]
Obsoleted.
Ivo Timmermans [Fri, 16 Nov 2001 12:16:28 +0000 (12:16 +0000)]
Don't compile/link netutl.c.
Ivo Timmermans [Fri, 16 Nov 2001 12:14:20 +0000 (12:14 +0000)]
get_config_{ip,port} removed.
Ivo Timmermans [Fri, 16 Nov 2001 12:13:34 +0000 (12:13 +0000)]
Changed to use struct addrinfo where needed.
Ivo Timmermans [Fri, 16 Nov 2001 12:10:54 +0000 (12:10 +0000)]
Obsoleted all IP<x> types in favor of struct addrinfo
Ivo Timmermans [Fri, 16 Nov 2001 12:08:38 +0000 (12:08 +0000)]
Removed definitions of ipv4_t, ipv6_t, port_t
Ivo Timmermans [Fri, 16 Nov 2001 12:02:17 +0000 (12:02 +0000)]
Changed lookup_connection to use struct addrinfo
Ivo Timmermans [Fri, 16 Nov 2001 12:01:48 +0000 (12:01 +0000)]
Changed prototype for lookup_connection to use struct addrinfo
Ivo Timmermans [Fri, 16 Nov 2001 00:23:28 +0000 (00:23 +0000)]
Use struct addrinfo in connection_t to hold all host data such as IP
address and port
Ivo Timmermans [Fri, 16 Nov 2001 00:13:08 +0000 (00:13 +0000)]
Deprecated get_config_ip and get_config_port
Ivo Timmermans [Thu, 15 Nov 2001 23:49:46 +0000 (23:49 +0000)]
Check for struct addrinfo
Ivo Timmermans [Thu, 15 Nov 2001 23:28:58 +0000 (23:28 +0000)]
Credit OpenSSH
Ivo Timmermans [Thu, 15 Nov 2001 23:26:27 +0000 (23:26 +0000)]
Check for getnameinfo, gai_strerror, freeaddrinfo
Ivo Timmermans [Thu, 15 Nov 2001 23:05:34 +0000 (23:05 +0000)]
Check for getaddrinfo
Guus Sliepen [Mon, 5 Nov 2001 19:09:08 +0000 (19:09 +0000)]
More fixes for Solaris.
Guus Sliepen [Mon, 5 Nov 2001 19:06:07 +0000 (19:06 +0000)]
Various fixes needed for Solaris.
Guus Sliepen [Sun, 4 Nov 2001 23:48:27 +0000 (23:48 +0000)]
Correctly check if subnet owner exists.
Guus Sliepen [Sun, 4 Nov 2001 23:29:50 +0000 (23:29 +0000)]
Be liberal in what you accept: allow unknown edges to be deleted.
Guus Sliepen [Sat, 3 Nov 2001 22:53:02 +0000 (22:53 +0000)]
*** empty log message ***
Guus Sliepen [Sat, 3 Nov 2001 21:22:02 +0000 (21:22 +0000)]
Several bugfixes.
Guus Sliepen [Sat, 3 Nov 2001 21:21:04 +0000 (21:21 +0000)]
Use PEM functions as suggested by OpenSSL docs.
Guus Sliepen [Wed, 31 Oct 2001 20:37:54 +0000 (20:37 +0000)]
Some very small fixes
Guus Sliepen [Wed, 31 Oct 2001 20:22:52 +0000 (20:22 +0000)]
Avoid connecting to another node twice, and check name of outgoing connections.
Guus Sliepen [Wed, 31 Oct 2001 20:07:17 +0000 (20:07 +0000)]
Show cfg->variable instead of cfg->value when complaining about wrong type.
Guus Sliepen [Wed, 31 Oct 2001 20:02:06 +0000 (20:02 +0000)]
Don't forget to read public RSA key when making an outgoing connection.
Guus Sliepen [Wed, 31 Oct 2001 12:50:24 +0000 (12:50 +0000)]
- Small fixes to graph algorithms
- More control over tap device, ability to set interface name to something
other than the netname.
- Export NETNAME, DEVICE and INTERFACE environment variables to scripts.
Guus Sliepen [Tue, 30 Oct 2001 16:34:32 +0000 (16:34 +0000)]
More updates to protocol handlers and reimplemented terminate_connection().
Guus Sliepen [Tue, 30 Oct 2001 12:59:12 +0000 (12:59 +0000)]
Various fixes, tinc is now somewhat capable of actually working again.
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.
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.
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.
Guus Sliepen [Sun, 28 Oct 2001 08:41:19 +0000 (08:41 +0000)]
What was I thinking? s/vertex/edge/g.
Guus Sliepen [Sat, 27 Oct 2001 15:19:13 +0000 (15:19 +0000)]
Various small fixes to make tinc runnable again.
Guus Sliepen [Sat, 27 Oct 2001 13:13:35 +0000 (13:13 +0000)]
Make sure everything links.
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.
Guus Sliepen [Sat, 13 Oct 2001 13:53:07 +0000 (13:53 +0000)]
Support new files (node/vertex/device.[ch]) and OpenBSD.
Guus Sliepen [Fri, 12 Oct 2001 15:52:03 +0000 (15:52 +0000)]
Forgot the tun specific stuff.
Guus Sliepen [Fri, 12 Oct 2001 15:49:11 +0000 (15:49 +0000)]
Added OpenBSD tun device handling. Untested though.
Guus Sliepen [Fri, 12 Oct 2001 15:38:35 +0000 (15:38 +0000)]
Forgot to remove some old #ifdef stuff.
Guus Sliepen [Fri, 12 Oct 2001 15:33:21 +0000 (15:33 +0000)]
Solaris tun device handling cleaned up a bit and added.
Guus Sliepen [Fri, 12 Oct 2001 15:22:59 +0000 (15:22 +0000)]
Added FreeBSD tap device handling.
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.
Guus Sliepen [Wed, 10 Oct 2001 20:35:10 +0000 (20:35 +0000)]
More updates to new node/vertex/connection combo.
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.
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.
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.
Wessel Dankers [Tue, 9 Oct 2001 19:41:56 +0000 (19:41 +0000)]
make is not always GNU make.
Guus Sliepen [Tue, 9 Oct 2001 19:37:10 +0000 (19:37 +0000)]
Small corrections.
Guus Sliepen [Tue, 9 Oct 2001 19:30:30 +0000 (19:30 +0000)]
Started implementing doc/CONNECTIVITY.
Guus Sliepen [Mon, 8 Oct 2001 15:47:30 +0000 (15:47 +0000)]
Updated dutch translation.
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.
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().
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.
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.
Guus Sliepen [Tue, 25 Sep 2001 13:39:11 +0000 (13:39 +0000)]
Fill in next- and lastbutonehop for myself.
Guus Sliepen [Tue, 25 Sep 2001 13:35:45 +0000 (13:35 +0000)]
Try next connectto instead of the same over and over.
Guus Sliepen [Mon, 24 Sep 2001 14:16:29 +0000 (14:16 +0000)]
Show next- and lastbutonehop when dumping connectionlist to syslog.
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.
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.
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.
Guus Sliepen [Sat, 1 Sep 2001 12:46:49 +0000 (12:46 +0000)]
config_t* is a const parameter in get_config_val().
Guus Sliepen [Sat, 1 Sep 2001 12:36:53 +0000 (12:36 +0000)]
Optional signal number for -k option.
Guus Sliepen [Sat, 1 Sep 2001 12:36:06 +0000 (12:36 +0000)]
Revised reconnection mechanism, always try out all ConnectTo lines.
Guus Sliepen [Sat, 1 Sep 2001 12:02:39 +0000 (12:02 +0000)]
Remove IndirectData support for now, new implementation will be added
later.
Guus Sliepen [Tue, 28 Aug 2001 20:52:39 +0000 (20:52 +0000)]
Fix signed comparison bug in lookup_subnet_ipv4().
Guus Sliepen [Fri, 17 Aug 2001 18:14:04 +0000 (18:14 +0000)]
Don't send DEL_HOSTs when !status.meta
Guus Sliepen [Tue, 24 Jul 2001 20:14:30 +0000 (20:14 +0000)]
Explicitly log which type of tunnel device is used.
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.
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).
Guus Sliepen [Tue, 24 Jul 2001 20:03:40 +0000 (20:03 +0000)]
Don't use %m in fprintf().
Guus Sliepen [Tue, 24 Jul 2001 08:51:36 +0000 (08:51 +0000)]
More on edges.
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.
Guus Sliepen [Sun, 22 Jul 2001 17:41:52 +0000 (17:41 +0000)]
Written down a possible solution.
Guus Sliepen [Sun, 22 Jul 2001 15:25:13 +0000 (15:25 +0000)]
Correctie.
Guus Sliepen [Sun, 22 Jul 2001 14:58:18 +0000 (14:58 +0000)]
Small update.
Guus Sliepen [Sun, 22 Jul 2001 14:46:11 +0000 (14:46 +0000)]
Described problem in more detail.
Guus Sliepen [Sun, 22 Jul 2001 14:04:38 +0000 (14:04 +0000)]
Started writing a document about how daemons connect to each other.
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!)
Guus Sliepen [Sat, 21 Jul 2001 15:46:34 +0000 (15:46 +0000)]
Always close all sockets in terminate_connection().
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.
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.
Guus Sliepen [Fri, 20 Jul 2001 13:54:19 +0000 (13:54 +0000)]
Remove all unnecessary status.meta and status.active checks.
Guus Sliepen [Thu, 19 Jul 2001 12:29:40 +0000 (12:29 +0000)]
Correctly use the active_tree.
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.
Guus Sliepen [Sun, 15 Jul 2001 14:21:12 +0000 (14:21 +0000)]
Correct inclusion of standard if_tun.h header file.
Guus Sliepen [Wed, 4 Jul 2001 08:43:32 +0000 (08:43 +0000)]
Don't load table of verbose OpenSSL errormessages.
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()