Scott Lamb
f0a57eab4c
Retry connections through control socket
2007-11-07 02:50:58 +00:00
Scott Lamb
a62a6825a8
Alter debugging levels through control socket
2007-11-07 02:50:27 +00:00
Scott Lamb
1065879c8c
Purge through the control socket
2007-11-07 02:49:57 +00:00
Scott Lamb
6eaefb4dbc
Dump through control socket
...
Note this removes SIGUSR1, SIGUSR2, and the graph dumping config option.
It seems cleaner to do everything through the control socket.
2007-11-07 02:49:25 +00:00
Scott Lamb
b0b5299184
Fix reload crash
...
sighup_handler was expecting the connection_tree to stay the same across
terminate_connection(), which hasn't been true since r1539.
2007-11-07 02:48:15 +00:00
Guus Sliepen
fbf305c09d
Use libevent for meta socket input/output buffering.
2007-05-19 22:23:02 +00:00
Guus Sliepen
bc0a24ec81
Fix retrying outgoing connections.
2007-05-19 13:34:32 +00:00
Guus Sliepen
ce976717ea
We can safely delete a connection_t in terminate_connection() now.
2007-05-19 12:07:30 +00:00
Guus Sliepen
fb0cfccf7d
Use splay trees instead of AVL trees.
2007-05-18 10:05:26 +00:00
Guus Sliepen
f02d3ed3e1
K&R style braces
2007-05-18 10:00:00 +00:00
Guus Sliepen
760dd966ef
Remove last references to the global variable "running".
2007-05-18 09:51:54 +00:00
Guus Sliepen
3909b8e51b
Remove the last bits of the legacy main_loop().
2007-05-18 09:43:52 +00:00
Guus Sliepen
ddc6a81a85
Remove global variable "now".
2007-05-18 09:34:06 +00:00
Guus Sliepen
7e1117197c
Move key regeneration handling to net_setup.c.
2007-05-17 23:57:48 +00:00
Guus Sliepen
563577a147
Use libevent to handle key expiration.
2007-05-17 23:33:07 +00:00
Guus Sliepen
8852d4407d
Use libevent to age learned MAC addresses.
2007-05-17 23:24:40 +00:00
Guus Sliepen
a530f94e7c
Use libevent to age past requests.
2007-05-17 23:14:42 +00:00
Guus Sliepen
aaf1851315
Redo SIGALRM handling.
2007-05-17 23:04:02 +00:00
Guus Sliepen
6d19ebd612
Use libevent to handle all non-fatal signals.
2007-05-17 22:41:34 +00:00
Guus Sliepen
bf6490825e
Remove legacy event system.
2007-05-17 22:13:12 +00:00
Guus Sliepen
294ce72441
Use libevent to handle HUP signal.
2007-05-17 21:34:58 +00:00
Guus Sliepen
4d0621b1f3
Use libevent to dump graphs when necessary.
...
event_add() can be called repeatedly, the second and later calls are ignored if
the event hasn't been removed yet.
2007-05-17 21:14:30 +00:00
Guus Sliepen
0f6f54ff8a
Use a separate event structure to handle meta data writes.
...
Make meta socket events persistent.
2007-05-17 20:20:10 +00:00
Scott Lamb
38c25d62c2
Convert to libevent.
...
This is a quick initial conversion that doesn't yet show much advantage:
- We roll our own timeouts.
- We roll our own signal handling.
- We build up the meta connection fd events on each loop rather than
on state changes.
2007-02-27 01:57:01 +00:00
Scott Lamb
834290b00f
A couple missed tevent things.
...
(Sorry; had a couple changes queued.)
2007-02-27 01:30:57 +00:00
Scott Lamb
6362b12df7
Rename "event_t" to "tevent_t", along with associated functions.
...
This relieves some confusion and problems during the libevent transition.
In particular, "event_add" was defined by both.
(The 't' stands for 'timeout', 'tinc', 'temporary', or some such.)
2007-02-27 01:26:11 +00:00
Guus Sliepen
6c6535a416
Apply patch from Scott Lamb preventing an infinite loop when sending SIGALRM.
2007-02-14 09:20:20 +00:00
Guus Sliepen
1bb5a284fe
Make sure resolved addressed for outgoing connections are freed, if there are any.
2006-11-29 16:57:46 +00:00
Guus Sliepen
0714ac6c59
Nodes use events, so event system should be initialised first and destroyed last.
2006-11-11 22:44:15 +00:00
Guus Sliepen
0200d3cd5d
Added graph dumping ability based on Markus Goetz's patch.
2006-11-11 14:11:16 +00:00
Guus Sliepen
9fa27097dd
Fix format string warnings.
2006-08-08 13:29:17 +00:00
Guus Sliepen
eb391c52ee
Do not break strict aliasing of status_t structs.
2006-08-08 13:21:08 +00:00
Guus Sliepen
de78d79db8
Update copyright notices, remove Ivo's email address.
2006-04-26 13:52:58 +00:00
Guus Sliepen
af95368c0f
Fix signedness compiler warnings.
2006-03-19 13:06:21 +00:00
Guus Sliepen
228e7a5c8f
Apply patch from Scott Lamb adding an output buffer for the TCP sockets.
...
This helps coalescing multiple send_meta() commands into one TCP packet.
Also limit the size of the output buffer before dropping PACKETs.
2006-01-19 17:13:18 +00:00
Guus Sliepen
df3220a154
Update copyright notices.
2005-05-04 18:09:30 +00:00
Guus Sliepen
fe84fafcb6
Handle timeouts during connecting the same way as other errors.
2004-06-21 14:37:52 +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
6b12bea62f
Let tinc figure out the exact MTU of the link.
2003-12-20 19:47:53 +00:00
Guus Sliepen
5a1406adef
Code beautification, start of multicast support.
2003-12-12 19:52:25 +00:00
Guus Sliepen
e3220cacb5
Replace Opaque and Strict options with a TunnelServer option.
2003-11-17 15:30:18 +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
762cc2d279
Remove old edges from unreachable nodes to us. This prevents the hosts/NAME-up
...
script from being called twice in some situations.
2003-08-28 15:27:12 +00:00
Guus Sliepen
89c9f3ed8f
When purging nodes, only delete them if nobody references them anymore.
2003-08-22 15:04:26 +00:00
Guus Sliepen
5ac4179df6
If we're not in main_loop() and the service is stopped, exit immediately.
2003-08-17 12:05:08 +00:00
Guus Sliepen
f08fc359a0
Install tinc as a service under Windows (MinGW). Remove cleanup_and_exit(),
...
either exit() directly on errors or let main_loop() shutdown gracefully.
2003-08-02 20:50:38 +00:00
Guus Sliepen
721e4caee0
Native Windows support.
2003-07-29 22:59:01 +00:00
Guus Sliepen
714fb32d03
Fix compile errors and warnings.
2003-07-29 10:50:15 +00:00
Guus Sliepen
5cb1471351
Don't initialise a CIPHER_CTX if cipher == NULL.
2003-07-23 22:17:31 +00:00
Guus Sliepen
eefa28059a
Use bools and enums where appropriate.
2003-07-22 20:55:21 +00:00