Guus Sliepen [Fri, 1 Mar 2002 12:26:56 +0000 (12:26 +0000)]
If "PriorityInheritance = yes" is specified in tinc.conf, the value of the
TOS field of the tunneled packets will be passed on to the UDP packets tinc
sends out.
Guus Sliepen [Fri, 1 Mar 2002 12:25:58 +0000 (12:25 +0000)]
Fix listening sockets.
Guus Sliepen [Fri, 1 Mar 2002 11:18:34 +0000 (11:18 +0000)]
Make BindToInterface work.
Guus Sliepen [Wed, 27 Feb 2002 22:37:55 +0000 (22:37 +0000)]
Fix send_request() bug.
Guus Sliepen [Tue, 26 Feb 2002 23:26:41 +0000 (23:26 +0000)]
Allow multiple listening sockets.
Guus Sliepen [Tue, 26 Feb 2002 22:47:51 +0000 (22:47 +0000)]
Tweaking IPv6 support.
Guus Sliepen [Wed, 20 Feb 2002 22:37:38 +0000 (22:37 +0000)]
- Change SA_LEN to SALEN, former one is already defined on some platforms.
- Use SALEN everywhere appropriate.
Guus Sliepen [Wed, 20 Feb 2002 22:15:32 +0000 (22:15 +0000)]
- Use gai_strerror() where appropriate
- Clear hints before using them with getaddrinfo()
- Use sa_len on platforms that support them
Guus Sliepen [Wed, 20 Feb 2002 19:31:15 +0000 (19:31 +0000)]
Preserve inpkt->len, needed for broadcasts.
Guus Sliepen [Wed, 20 Feb 2002 19:25:09 +0000 (19:25 +0000)]
Protocol now also exchanges cipher/digest/maclength/compression for the
meta connection.
Guus Sliepen [Wed, 20 Feb 2002 17:16:15 +0000 (17:16 +0000)]
Cache results of lookup_subnet_...().
Guus Sliepen [Wed, 20 Feb 2002 17:15:33 +0000 (17:15 +0000)]
Fix maskcmp() and maskcpy().
Guus Sliepen [Wed, 20 Feb 2002 16:04:59 +0000 (16:04 +0000)]
Forward packets in router mode.
Guus Sliepen [Wed, 20 Feb 2002 16:04:39 +0000 (16:04 +0000)]
Use AF_UNSPEC for listening sockets if AddressFamily = any.
Guus Sliepen [Wed, 20 Feb 2002 16:04:07 +0000 (16:04 +0000)]
Fix segfault when receiving HUP signal.
Guus Sliepen [Mon, 18 Feb 2002 16:25:19 +0000 (16:25 +0000)]
- Non-blocking connect()s.
- Socket handling revamped to use sockaddr_t.
- tinc can now tunnel over IPv6.
- Handle all addresses and subnets in network byte order.
Only convert them when they need to be printed.
- IPv6 subnets bigger than /128 now work.
- Use %s and strerror(errno) instead of %m.
Guus Sliepen [Tue, 12 Feb 2002 14:42:37 +0000 (14:42 +0000)]
Add check for NetBSD.
Guus Sliepen [Tue, 12 Feb 2002 14:40:12 +0000 (14:40 +0000)]
Added device.c for NetBSD, actually a copy of the OpenBSD one.
Guus Sliepen [Tue, 12 Feb 2002 14:36:45 +0000 (14:36 +0000)]
Get rid of sys/signal.h.
Guus Sliepen [Tue, 12 Feb 2002 14:29:00 +0000 (14:29 +0000)]
Don't use sa_sigaction (which NetBSD doesn't like) at all if we don't use siginfo.
Guus Sliepen [Mon, 11 Feb 2002 15:59:18 +0000 (15:59 +0000)]
Added support for packet compression, thanks to Mark Glines.
Add "Compression = <level>" to the host config files, where level can be
0 (off), or any integer between 1 (fast) and 9 (best).
Guus Sliepen [Mon, 11 Feb 2002 14:20:46 +0000 (14:20 +0000)]
Small fix.
Guus Sliepen [Mon, 11 Feb 2002 14:20:21 +0000 (14:20 +0000)]
- If no PrivateKeyFile is specified, /etc/tinc/netname/rsa_key.priv is assumed.
- Check RSA key before using it.
Guus Sliepen [Mon, 11 Feb 2002 12:33:01 +0000 (12:33 +0000)]
Sensible defaults for $INTERFACE.
Guus Sliepen [Mon, 11 Feb 2002 10:16:18 +0000 (10:16 +0000)]
Last bits of the merger.
Guus Sliepen [Mon, 11 Feb 2002 10:05:58 +0000 (10:05 +0000)]
Forgot to merge new files from pre5.
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().