Ivo Timmermans
c2752b961c
Conversion to struct addrinfo is almost complete for this file.
2001-11-16 22:41:38 +00:00
Ivo Timmermans
836766d4c5
First part of rewriting things to use struct addrinfo.
2001-11-16 17:38:39 +00:00
Ivo Timmermans
6cf744e4b2
Don't include netutl.h.
2001-11-16 12:22:02 +00:00
Guus Sliepen
e06415e3d9
More fixes for Solaris.
2001-11-05 19:09:08 +00:00
Guus Sliepen
cf0e133e19
*** empty log message ***
2001-11-03 22:53:02 +00:00
Guus Sliepen
8910cbd67e
Use PEM functions as suggested by OpenSSL docs.
2001-11-03 21:21:04 +00:00
Guus Sliepen
ffb88ff641
Avoid connecting to another node twice, and check name of outgoing connections.
2001-10-31 20:22:52 +00:00
Guus Sliepen
c0a3f67a5d
- 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.
2001-10-31 12:50:24 +00:00
Guus Sliepen
2165931c62
More updates to protocol handlers and reimplemented terminate_connection().
2001-10-30 16:34:32 +00:00
Guus Sliepen
87ad5c97a9
Various fixes, tinc is now somewhat capable of actually working again.
2001-10-30 12:59:12 +00:00
Guus Sliepen
66067cc9c1
- More s/vertex/edge/g
...
- Implementation of Kruskal's minimum spanning tree algorithm.
2001-10-28 10:16:18 +00:00
Guus Sliepen
94497336ef
What was I thinking? s/vertex/edge/g.
2001-10-28 08:41:19 +00:00
Guus Sliepen
b98d9787fd
Various small fixes to make tinc runnable again.
2001-10-27 15:19:13 +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
1ef90a87fd
- Use ping timeout mechanism to close connections that don't authenticate
...
in time.
- Fix potential segmentation fault in check_dead_connections().
2001-10-08 13:37:30 +00:00
Guus Sliepen
ce9fd32c04
Fix bug where tinc would crash because of a portscan or a connection from a
...
tinc daemon with a different version.
2001-10-08 11:59:08 +00:00
Guus Sliepen
21027b1d57
- Renamed lastbutonehop to prevhop.
...
- Added connection_t *via to connection_t, this keeps record of where
to send UDP packets to.
2001-10-08 11:47:55 +00:00
Guus Sliepen
18d1233c40
Fill in next- and lastbutonehop for myself.
2001-09-25 13:39:11 +00:00
Guus Sliepen
ec100a58b4
Try next connectto instead of the same over and over.
2001-09-25 13:35:45 +00:00
Guus Sliepen
24a2c7e51a
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.
2001-09-24 14:12:00 +00:00
Guus Sliepen
154733927a
- Try old TUN/TAP ioctl() request if the one from if_tun.h fails.
...
- Be more verbose about the kind of tap device used.
2001-09-24 13:31:15 +00:00
Guus Sliepen
8ed27d40f3
Revised reconnection mechanism, always try out all ConnectTo lines.
2001-09-01 12:36:06 +00:00
Guus Sliepen
e1184ad15d
Don't send DEL_HOSTs when !status.meta
2001-08-17 18:14:04 +00:00
Guus Sliepen
30d22474cc
Explicitly log which type of tunnel device is used.
2001-07-24 20:14:30 +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
533ee1206f
Always close all sockets in terminate_connection().
2001-07-21 15:46:34 +00:00
Guus Sliepen
acb853205d
Updated terminate_connection() so you can choose if DEL_HOSTs should be
...
sent or not.
2001-07-21 15:34:18 +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
5e2ded68bf
Correctly use the active_tree.
2001-07-19 12:29:40 +00:00
Guus Sliepen
319e0cb48e
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.
2001-07-15 18:07:31 +00:00
Guus Sliepen
b3074590b1
Correct inclusion of standard if_tun.h header file.
2001-07-15 14:21:12 +00:00
Guus Sliepen
1e2bdc2b6d
- Always use <openssl/include.h> instead of just <include.h>
...
- Check if RAND_pseudo_bytes() exists, otherwise just use RAND_bytes()
2001-07-04 08:41:36 +00:00
Guus Sliepen
5d34503574
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.
2001-06-29 10:30:18 +00:00
Guus Sliepen
9e96840da8
Remove #warnings I used for debugging stuff.
2001-06-21 16:37:47 +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
ba918dce28
Only reset seconds_till_retry when we activate the outgoing connection.
2001-06-08 18:02:10 +00:00
Guus Sliepen
9cd9b03923
Add missing? counting of total_socket_in.
2001-06-05 19:45:47 +00:00
Guus Sliepen
7bd7f5b436
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)
2001-06-05 19:39:54 +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
7db1b999c8
Make sure Solaris is happy too.
2001-05-28 08:56:57 +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
a5e2ae6b2b
With recent kernels the tun device file is located in /dev/net.
2001-05-25 10:08:11 +00:00
Guus Sliepen
4dee76522e
Small fixes:
...
- Fix compiler warnings (one was a real (but harmless) bug)
- Don't send PING packets if there is UDP traffic
- Correctly terminate strings containing salt for PING/PONG packets
2001-05-25 08:36:11 +00:00
Guus Sliepen
e4f3d93ec6
- s/ip_t/ipv4_t/g
...
- Add "salt" to the beginning of UDP packets. Replaces length field which
is not useful anyway.
2001-05-07 19:08:46 +00:00
Guus Sliepen
a26081467c
Correctly cycle through ConnectTo variables.
2001-05-04 18:45:02 +00:00
Guus Sliepen
c426e981ee
Ignore alarm signals if we do not need to respond to them.
2001-03-13 21:32:24 +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