summaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)Author
2014-05-22Document types.hMatthias Schiffer
2014-05-22Move fastd_loglevel_t to log.hMatthias Schiffer
2014-05-22Move fastd_peer_state_t to peer.hMatthias Schiffer
2014-05-22Remove PACKET_TYPE_LEN defineMatthias Schiffer
2014-05-22Clean up fastd.c includesMatthias Schiffer
2014-05-22Move fastd_handle_receive() to receive.cMatthias Schiffer
2014-05-22Fix waitpid race conditionMatthias Schiffer
Doing a waitpid for all processes in the SIGCHLD handler could sometimes steal a signal from a fastd_shell_command_exec_sync call. To fix this, don't reap the children in the SIGCHLD handler anymore, but create a reaper thread for each asynchronous shell command.
2014-05-05Make systemd support optional againMatthias Schiffer
2014-05-01Remove support for log filesMatthias Schiffer
syslog/journald do a much better job at organizing logs, with the additional advantage of proper log rotation. If someone really wants to have a log file for fastd, they can just redirect stderr.
2014-04-30Fix CMake errors on some config combinationsMatthias Schiffer
2014-04-30Use SOCK_NONBLOCK where availableMatthias Schiffer
2014-04-30Remove now unneeded FD_CLOEXEC flag configMatthias Schiffer
2014-04-30shell: close all fds > 2 after forkingMatthias Schiffer
socket/fcntl to set FD_CLOEXEC isn't thread-safe with async verify handlers, and SOCK_CLOEXEC isn't portable.
2014-04-29Fold fastd_open_pipe into fastd_async_init, simpify fastd_setfl and ↵Matthias Schiffer
fastd_setfd and move to fastd.h
2014-04-28More daemonize cleanupMatthias Schiffer
2014-04-28Fix socketpair error messageMatthias Schiffer
2014-04-28Simpilify daemonizeMatthias Schiffer
2014-04-26Make on-verify support optionalMatthias Schiffer
2014-04-26Implement async verifyMatthias Schiffer
2014-04-26pthread_create returns an error instead of setting errnoMatthias Schiffer
2014-04-26Revise shell command APIMatthias Schiffer
2014-04-25epoll: update time *after* waiting...Matthias Schiffer
2014-04-25handshake: simplify fastd_handshake_new_replyMatthias Schiffer
This will hopefully lead to an async verify implementation...
2014-04-25Move around some codeMatthias Schiffer
2014-04-25Reduce minimum vector allocationMatthias Schiffer
2014-04-25Replace a few more O(n) peer operations with O(log n) using binary searchMatthias Schiffer
2014-04-25Remove ref-counting on remotesMatthias Schiffer
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-25fastd_peer_claim_address: add parameter to allow claiming addresses of ↵Matthias Schiffer
established peers
2014-04-25fastd_peer_claim_address: allow claiming addresses from other peers when ↵Matthias Schiffer
they aren't configured statically
2014-04-25vector: add VECTOR_BSEARCH macro and use where appropriateMatthias Schiffer
2014-04-24Add a sequential number to identify peersMatthias Schiffer
2014-04-24config: remove support for deprecated float syntaxMatthias Schiffer
2014-04-24Convert few more counters to size_t, just for the sake of consistency...Matthias Schiffer
2014-04-24ec25519-fhmqvc: use PUBLICKEYBYTES and SECRETKEYBYTES defines moreMatthias Schiffer
2014-04-24Always use size_t for countersMatthias Schiffer
2014-04-24Make async handle buffer alignedMatthias Schiffer
2014-04-23Use socketpair instead of pipe for internal message pipesMatthias Schiffer
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-21Fix peer group tree traversal when reading peer dirsMatthias Schiffer
This broke when conf was made global.
2014-04-21Remove vector of new temporary peersMatthias Schiffer
The new poll code has made this second peer list obsolete.
2014-04-21poll: add pollfd count assertMatthias Schiffer
2014-04-20Define IP_FREEBIND if it is not providedMatthias Schiffer
2014-04-20Make ctx globalMatthias Schiffer
2014-04-20Make conf globalMatthias Schiffer
2014-04-20Linux: use epoll to handle great numbers of peers with less overheadMatthias Schiffer
2014-04-20Minimize poll interface to simplify implementation of alternative ↵Matthias Schiffer
implementations
2014-04-19Keep peers in a hash table to allow fast address lookupsMatthias Schiffer
2014-04-19Keep a vector of pollfds instead of regenerating it all the timeMatthias Schiffer
2014-04-19Store peers as vectors of pointers instead of linked listsMatthias Schiffer
2014-04-19Make eth_addrs a vectorMatthias Schiffer
2014-04-19Add vector macrosMatthias Schiffer