Guus Sliepen
fb0cfccf7d
Use splay trees instead of AVL trees.
2007-05-18 10:05:26 +00:00
Guus Sliepen
ddc6a81a85
Remove global variable "now".
2007-05-18 09:34:06 +00:00
Guus Sliepen
8852d4407d
Use libevent to age learned MAC addresses.
2007-05-17 23:24:40 +00:00
Guus Sliepen
134dc8995b
memcpy() addresses from packet headers before calling the lookup functions.
...
This probably fixes a problem on the ARM architecture that causes tinc to fail to lookup IPv4 addresses.
2006-08-09 22:31:10 +00:00
Guus Sliepen
9fa27097dd
Fix format string warnings.
2006-08-08 13:29:17 +00:00
Guus Sliepen
de78d79db8
Update copyright notices, remove Ivo's email address.
2006-04-26 13:52:58 +00:00
Guus Sliepen
df3220a154
Update copyright notices.
2005-05-04 18:09:30 +00:00
Guus Sliepen
d02d81ff9d
Let compiler decide when to inline.
2004-11-10 19:36:02 +00:00
Guus Sliepen
e8b11b1cca
Missing check for NULL-pointer.
2004-11-10 18:10:59 +00:00
Guus Sliepen
b0a80007e8
Fix several #includes.
2004-10-01 18:23:08 +00:00
Guus Sliepen
7926a156e5
Update copyrights, links, email addresses and let Subversion update $Id$ keywords.
2004-03-21 14:21:22 +00:00
Guus Sliepen
aebc97a77f
Small fixes for PMTU discovery.
2003-12-24 10:48:15 +00:00
Guus Sliepen
35399784b6
Improvements for PMTU discovery and IPv4 packet fragmentation.
2003-12-22 11:04:17 +00:00
Guus Sliepen
6d41b429a2
Better name, show probed MTU in dump.
2003-12-20 21:25:17 +00:00
Guus Sliepen
6b12bea62f
Let tinc figure out the exact MTU of the link.
2003-12-20 19:47:53 +00:00
Guus Sliepen
e8fbef5de6
Forget multicast. Always inline some function.
2003-12-13 21:50:26 +00:00
Guus Sliepen
5a1406adef
Code beautification, start of multicast support.
2003-12-12 19:52:25 +00:00
Guus Sliepen
354b7ab20e
Fix proxy-neighborsolicitation.
2003-12-08 12:00:40 +00:00
Guus Sliepen
c97b8827ed
const
2003-10-06 13:57:12 +00:00
Guus Sliepen
60943122f7
Copy structs from packets to the stack before using them, to prevent
...
alignment issues.
2003-10-06 13:49:57 +00:00
Guus Sliepen
acbb9d6692
Better length checks.
2003-10-01 09:14:01 +00:00
Guus Sliepen
288d956728
Check for short packets from the tun/tap device and from other tinc daemons.
2003-09-23 20:59:01 +00:00
Guus Sliepen
6c5f3d8b74
We don't have to tell GCC how to cast.
2003-08-28 21:05:11 +00:00
Guus Sliepen
1fe5663787
No easy way to properly detect header files...
2003-07-31 13:18:34 +00:00
Guus Sliepen
eefa28059a
Use bools and enums where appropriate.
2003-07-22 20:55:21 +00:00
Guus Sliepen
271d3537fe
Remove all #ifndefs from route.c
2003-07-18 12:21:03 +00:00
Guus Sliepen
b0a4f7b555
Even more missing definitions.
2003-07-18 12:16:24 +00:00
Guus Sliepen
e449d94cae
Big header file cleanup: everything that has to do with standard system
...
libraries is moved to system.h.
2003-07-17 15:06:27 +00:00
Guus Sliepen
d26a4af456
Export mymac.
2003-07-15 16:26:18 +00:00
Guus Sliepen
5db596c684
Simplify logging, update copyrights and some minor cleanups.
2003-07-12 17:41:48 +00:00
Guus Sliepen
30c0381d71
Provide all missing IPv6 definitions in lib/ipv6.h.
2003-07-07 11:11:33 +00:00
Guus Sliepen
1401faf608
Sprinkling the source with static and attributes.
2003-07-06 23:16:29 +00:00
Guus Sliepen
0b9175e998
Define logger(), cleans up source code and allows us to write log entries
...
to a separate file.
2003-07-06 22:11:37 +00:00
Guus Sliepen
8681047030
Check for IPv6 header files.
2003-07-06 17:49:49 +00:00
Guus Sliepen
81f5713ab7
- simplify configure.in
...
- drop support for OpenSSL < 0.9.7
- add some missing definitions/includes
2003-07-06 17:15:25 +00:00
Guus Sliepen
0a9aef2da7
More braces to make gcc happy.
2003-06-11 19:40:43 +00:00
Guus Sliepen
12de5a8eed
Remove mymac stuff from device.c.
2003-06-11 19:28:38 +00:00
Guus Sliepen
8285827da1
Checksums must also work for uneven number of bytes.
2003-03-29 22:11:22 +00:00
Guus Sliepen
c3ad3731a8
Don't copy more than necessary.
2003-03-29 21:58:35 +00:00
Guus Sliepen
7d21a8d1c7
- Speed up checksumming
...
- If a destination is not found in the subnet list or the destination node
is unreachable, respond with an appropiate ICMP message.
2003-03-29 21:51:21 +00:00
Guus Sliepen
6f9f6779e6
Remove redundant spaces.
2002-09-09 22:33:31 +00:00
Guus Sliepen
f75dcef72a
Switch to K&R style indentation.
2002-09-09 21:25:28 +00:00
Guus Sliepen
5fc1ed17f4
Cleanups:
...
- Convert cp to cp(); so that automatic indenters work.
- Convert constructions like if(x == NULL) to if(!x).
- Move all assignments out of conditions.
2002-09-09 19:40:12 +00:00
Guus Sliepen
627f7c22b4
s/sliepen.warande.net/sliepen.eu.org/g
...
s/itimmermans@bigfoot.com/ivo@o2w.nl/g
2002-06-21 10:11:37 +00:00
Guus Sliepen
78e8852184
- netinet/* include files depend on netinet/in_systm.h.
...
- Squash bashism in configure.in.
2002-06-08 14:08:57 +00:00
Guus Sliepen
e47e51e9d1
Use inttypes.h instead of stdint.h.
2002-06-08 13:46:43 +00:00
Guus Sliepen
116ba3b3da
Cleanup:
...
- Remove checks for specific OS's, instead check for #defines/#includes.
- Use uint??_t where appropriate.
- Mask handling functions use void pointers to get rid of silly casts.
2002-06-08 12:57:10 +00:00
Guus Sliepen
14e570f5ee
Use correct includes on NetBSD.
2002-06-05 00:25:55 +00:00
Guus Sliepen
40c2e36a96
Support for MaxOS/X.
2002-04-19 14:06:40 +00:00
Guus Sliepen
5c2d74de86
Don't use s6_addr[16|32] anymore.
2002-03-19 00:08:23 +00:00
Guus Sliepen
07e37f8da0
Typo.
2002-03-15 15:50:14 +00:00
Guus Sliepen
e0dee53770
Different way of detecting neighbor solicitation requests.
2002-03-15 15:40:40 +00:00
Guus Sliepen
0e93f0aa02
Oops, don't forget to actually put the checksum in the response packet.
2002-03-15 15:08:21 +00:00
Guus Sliepen
e1de9ca990
Neighbor solicitation requests now work (I think).
2002-03-15 14:41:57 +00:00
Guus Sliepen
f219f156cf
Put #ifdef NEIGHBORSOL around corresponding code.
2002-03-12 14:25:04 +00:00
Guus Sliepen
d2e0ed533c
New strategy: forward icmp6 neighbor solicitations to intended target.
2002-03-11 13:56:00 +00:00
Guus Sliepen
46fa10cec7
Try to reply to neighbor solicitation requests.
2002-03-11 13:14:53 +00:00
Guus Sliepen
024ab44d98
Fix forwarding of IPv6 packets.
2002-03-10 14:04:48 +00:00
Guus Sliepen
7d5741859e
Woops.
2002-03-01 14:33:48 +00:00
Guus Sliepen
ab90fa9bd1
Document and clean up MAC address expiry.
2002-03-01 14:25:10 +00:00
Guus Sliepen
14979f835d
- Global time_t now, so that we don't have to call time() too often.
...
- MAC addresses expire after a time configurable by MACExpire (default 600
seconds)
2002-03-01 14:09:31 +00:00
Guus Sliepen
c2b738e7b5
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.
2002-03-01 12:26:56 +00:00
Guus Sliepen
ed50931290
Forward packets in router mode.
2002-02-20 16:04:59 +00:00
Guus Sliepen
c2b9c06062
- 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.
2002-02-18 16:25:19 +00:00
Guus Sliepen
f0aa9641e8
Merging of the entire pre5 branch.
2002-02-10 21:57:54 +00:00
Ivo Timmermans
9b2b374734
route_ipv4 and route_ipv6 replaced by route_ip.
2001-11-16 17:40:50 +00:00
Guus Sliepen
ac066bb057
Make sure everything links.
2001-10-27 13:13:35 +00:00
Guus Sliepen
82e3837109
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.
2001-10-27 12:13:17 +00:00
Guus Sliepen
fcbe215d64
Woohoo! tinc now compiles, runs and actually *works* on Solaris!
...
Tested on a SparcStation 20MP running Solaris 7. (Thanks, jiggel!)
2001-07-21 20:21:25 +00:00
Guus Sliepen
12f6b80429
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.
2001-07-20 20:25:10 +00:00
Guus Sliepen
37ed4265fa
Remove all unnecessary status.meta and status.active checks.
2001-07-20 13:54:19 +00:00
Guus Sliepen
9645cabc8e
Fix compiler warning.
2001-07-01 09:21:14 +00:00
Guus Sliepen
04ec0b82ab
- 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).
2001-06-21 16:16:32 +00:00
Guus Sliepen
96ef7becdd
Fixes to make switching work between hosts that have no meta-connection.
2001-06-06 19:12:38 +00:00
Guus Sliepen
fa376fbd4e
- This oneliner removes the need for ifconfig tap? hw ether fe:fd:0:0:0:0
2001-06-05 16:31:59 +00:00
Guus Sliepen
4f9dad0972
- tinc can now act as a switch or a hub too (as opposed to a router only)
...
- cleaner initialisation of "UNKNOWN" and "MYSELF" names
2001-06-05 16:09:55 +00:00
Guus Sliepen
428482d86f
Added proxy-arp support. No more ifconfig -arp needed. Works like a charm
...
under FreeBSD now :).
2001-06-04 11:14:35 +00:00
Guus Sliepen
65247c063b
Small fixes to allow correct compilation under FreeBSD (tested with 4.3)
2001-05-28 08:21:43 +00:00
Guus Sliepen
fcf869cd42
TCPonly now works (in a relatively clean way too).
2001-05-25 11:54:28 +00:00
Guus Sliepen
34f9e6cf2d
- route.c is now used to determine destination
...
- flags are removed, since they were not used at all. Use options instead.
- indirectdata works now, tcponly almost...
- made functions that don't return useful information void
2001-03-04 13:59:32 +00:00
Guus Sliepen
d3f889c807
- It's 2001, all copyright notices are updated.
2001-01-07 17:09:07 +00:00
Guus Sliepen
07a08f5539
- Reinstated a queue for outgoing packets.
2001-01-07 15:25:49 +00:00
Guus Sliepen
e924096f62
- Let user choose whether keys are in the config files or separate
...
- Use AVL trees instead of RBL trees
- Fixed a lot of annoying subtle bugs! Thanks to gdb...
2001-01-05 23:53:53 +00:00
Guus Sliepen
408ca91766
- Integrate rbl trees into tinc.
2000-11-20 19:12:17 +00:00
Guus Sliepen
698191fd2f
- Prepended config_ to all configuration option names, because it confused
...
everything (including myself).
- Use connection oriented UDP sockets for both incoming and outgoing
packets.
2000-11-04 22:57:33 +00:00
Guus Sliepen
c46e84837d
- route.c will contain the routing logic.
2000-10-23 13:52:54 +00:00