8dda55956d
Simpilify daemonize
2014-04-28 20:48:18 +02:00
5871d08a3a
Make on-verify support optional
2014-04-26 23:22:24 +02:00
36690c7203
Implement async verify
2014-04-26 22:46:05 +02:00
64ce1c0f51
pthread_create returns an error instead of setting errno
2014-04-26 22:20:27 +02:00
4020ee614c
Revise shell command API
2014-04-26 20:37:47 +02:00
1ea5ef8944
epoll: update time *after* waiting...
2014-04-25 21:50:29 +02:00
6785e06f2b
handshake: simplify fastd_handshake_new_reply
...
This will hopefully lead to an async verify implementation...
2014-04-25 03:39:56 +02:00
8c193693d7
Move around some code
2014-04-25 03:23:13 +02:00
1723e18b1d
Reduce minimum vector allocation
2014-04-25 02:28:32 +02:00
7fbaedb117
Replace a few more O(n) peer operations with O(log n) using binary search
2014-04-25 02:16:48 +02:00
5adfca9b65
Remove ref-counting on remotes
...
Now that peers have a peer id we can use that to specify a peer in a resolve
return. As the remote list of a peer doesn't change without the peer id
changing, instead of taking a remote ref we can just use the peer id and remote
index.
2014-04-25 01:51:36 +02:00
482ddc46a6
fastd_peer_claim_address: add parameter to allow claiming addresses of established peers
2014-04-25 00:56:07 +02:00
1bb1eb5a33
fastd_peer_claim_address: allow claiming addresses from other peers when they aren't configured statically
2014-04-25 00:49:44 +02:00
53b74ddf2c
vector: add VECTOR_BSEARCH macro and use where appropriate
2014-04-25 00:13:44 +02:00
4ea57586f5
Add a sequential number to identify peers
2014-04-24 22:25:41 +02:00
e4e4f007e8
config: remove support for deprecated float syntax
2014-04-24 04:12:16 +02:00
ea609fe8c2
Convert few more counters to size_t, just for the sake of consistency...
2014-04-24 03:36:36 +02:00
e8296fbc9f
ec25519-fhmqvc: use PUBLICKEYBYTES and SECRETKEYBYTES defines more
2014-04-24 03:33:09 +02:00
4872dd03e7
Always use size_t for counters
2014-04-24 03:17:46 +02:00
baf9b2fd60
Make async handle buffer aligned
2014-04-24 01:04:03 +02:00
d3eb3ac888
Use socketpair instead of pipe for internal message pipes
...
While pipe2 recently got O_DIRECT on Linux, we'll just use SOCK_DGRAM to stay
portable, and get proper handling of full queues.
2014-04-23 17:36:59 +02:00
f37fb374a9
Fix peer group tree traversal when reading peer dirs
...
This broke when conf was made global.
2014-04-21 20:14:06 +02:00
505f97771a
Remove vector of new temporary peers
...
The new poll code has made this second peer list obsolete.
2014-04-21 20:02:43 +02:00
175685ed5f
poll: add pollfd count assert
2014-04-21 19:51:28 +02:00
bda274971e
Define IP_FREEBIND if it is not provided
2014-04-20 19:37:07 +02:00
7adeb6e881
Make ctx global
2014-04-20 05:29:11 +02:00
b9c8603931
Make conf global
2014-04-20 04:36:34 +02:00
ab4ca17ba3
Linux: use epoll to handle great numbers of peers with less overhead
2014-04-20 02:48:25 +02:00
8c705b9cd4
Minimize poll interface to simplify implementation of alternative implementations
2014-04-20 02:16:44 +02:00
0bf9268453
Keep peers in a hash table to allow fast address lookups
2014-04-19 23:54:10 +02:00
194e1c878a
Keep a vector of pollfds instead of regenerating it all the time
2014-04-19 22:03:07 +02:00
6798a76ffa
Store peers as vectors of pointers instead of linked lists
2014-04-19 20:00:36 +02:00
2e14d72936
Make eth_addrs a vector
2014-04-19 19:07:18 +02:00
e59ff6e444
Add vector macros
2014-04-19 19:06:48 +02:00
a184210f2e
Fix handling of new temporary peers
2014-04-19 03:53:11 +02:00
bcc97326a2
Free on-connect handler on exit
2014-04-19 03:50:42 +02:00
38141a902a
dlist: remove unused includes
2014-04-19 02:44:19 +02:00
86888f3e1b
Optimize maintenance routine (and don't run it more often than necessary)
2014-04-19 02:09:35 +02:00
d4c410f99a
shell: unblock SIGCHLD before exec
2014-04-18 16:54:32 +02:00
e6ad38a540
Fix zombie process cleanup
2014-04-18 16:50:32 +02:00
87dd930bed
Clean up shell command handling
2014-04-18 16:36:16 +02:00
dd5d95468e
Simplify handling of on-verify commands
2014-04-13 18:53:21 +02:00
296fac170c
Break very long line
2014-04-13 18:32:11 +02:00
e628a01fff
Add on-connect hook
2014-04-13 18:21:17 +02:00
7cac6770e0
Add support for async commands
2014-04-11 18:56:47 +02:00
a45a313422
Improve shell command config handling
2014-04-11 15:50:43 +02:00
e5a8f90035
Add support for multiple async message types
2014-04-10 21:04:27 +02:00
80f981c052
Move handling of resolve returns requests to a new source file
2014-04-10 20:17:18 +02:00
2b3043e578
Use #pragma once
2014-04-10 19:42:06 +02:00
4ab823eb50
Set IP_FREEBIND
2014-04-06 12:31:51 +02:00