Commit graph

1247 commits

Author SHA1 Message Date
73f7d5048c Unblock signals only during poll/epoll wait
If signals are normally blocked, we can avoid a lot of EINTR handling.
2014-05-31 06:05:29 +02:00
6c656c7394 Make log levels verbose and info more useful 2014-05-31 05:52:07 +02:00
ae429e372a Split main function
init() is still a bit long, but much better than before.
2014-05-31 05:15:52 +02:00
060c911563 Fix signal handling races 2014-05-31 04:14:51 +02:00
404785fe4a Ensure peer hashtable consistency on address resets 2014-05-29 18:54:03 +02:00
2fe678653b Document *everything* 2014-05-29 05:00:11 +02:00
efcafca969 Simplify configuration of cipher and MAC implementations
Let the cipher and MAC handlers just store the chosen implementations themselves
instead of relying on the global configuration.
2014-05-29 01:30:07 +02:00
d5da100c55 Still more documentation 2014-05-28 04:52:58 +02:00
d859894f7a Remove fastd_true() 2014-05-27 23:44:07 +02:00
b9f329256d More documentation 2014-05-27 23:30:48 +02:00
64c79271c7 A bit more fastd.h cleanup 2014-05-27 22:44:56 +02:00
adb7453fae Merge handle_forward into fastd_send_data 2014-05-27 22:33:41 +02:00
073357bec4 A bit more documentation 2014-05-27 22:21:35 +02:00
e03ec94896 Lots and lots of documentation 2014-05-27 05:48:51 +02:00
9b5e5f7883 poll: document the poll API 2014-05-27 05:00:11 +02:00
e90be1577d Move tuntap handling out of poll.c 2014-05-27 04:53:38 +02:00
a0e0e9898a More documentation 2014-05-27 04:44:01 +02:00
556284a10e peer: completely document peer.h and peer.c 2014-05-27 04:09:15 +02:00
348f3844ec peer: remove some dead code 2014-05-27 04:08:25 +02:00
6a249659bf Unify fastd_peer_group_t and fastd_peer_group_config_t into a single structure 2014-05-25 23:10:26 +02:00
c9da7ad1de peer.h: some documentation 2014-05-25 22:49:36 +02:00
5e72359e9a Completely document fastd.h 2014-05-25 04:59:35 +02:00
f34e51a1c3 Make a few struct fields that are not supposed to be changed defines instead 2014-05-25 00:20:05 +02:00
1b21919d54 fastd.h: more documentation 2014-05-25 00:04:20 +02:00
52017c3919 shell: ensure the signal mask is restored if shell_command_do_exec fails 2014-05-23 03:03:37 +02:00
d899fca425 Implement a different fix for the waitpid race condition not needing a reaper thread for each child 2014-05-23 02:59:46 +02:00
47a34ece26 Revert "Fix waitpid race condition"
This reverts commit 47d84679d6.
2014-05-23 02:37:02 +02:00
6b72d65ebb More documentation 2014-05-23 02:36:57 +02:00
789495e5a2 More documentation 2014-05-22 05:10:59 +02:00
f885449c5b Move fastd_peer_group{,_config} definitions to peer.h 2014-05-22 04:01:43 +02:00
6427c80b3e verify: use default tristate constants 2014-05-22 03:45:05 +02:00
fa486bd8ec Document types.h 2014-05-22 03:40:18 +02:00
1c8d382fac Move fastd_loglevel_t to log.h 2014-05-22 03:34:59 +02:00
0e3407d9aa Move fastd_peer_state_t to peer.h 2014-05-22 03:31:22 +02:00
2693cfc6e5 Remove PACKET_TYPE_LEN define 2014-05-22 03:14:16 +02:00
1fe3425c97 Add Doxygen support 2014-05-22 02:48:59 +02:00
2a64611f72 Clean up fastd.c includes 2014-05-22 02:22:01 +02:00
09f525417c Move fastd_handle_receive() to receive.c 2014-05-22 02:16:44 +02:00
47d84679d6 Fix waitpid race condition
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-22 02:02:39 +02:00
956e414d7b Use unescaped instance name in systemd unit 2014-05-20 14:23:11 +02:00
56c72080ac Make systemd support optional again 2014-05-05 04:23:34 +02:00
1c71bf873a systemd: use syslog/journald by default 2014-05-01 16:30:40 +02:00
8ccba8ebfa Remove support for log files
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-05-01 16:26:39 +02:00
8e589f3a3a Fix CMake errors on some config combinations 2014-04-30 03:40:15 +02:00
0d0a857c69 Use SOCK_NONBLOCK where available 2014-04-30 03:32:36 +02:00
4f082c7df3 Remove now unneeded FD_CLOEXEC flag config 2014-04-30 02:56:02 +02:00
36f9d70182 shell: close all fds > 2 after forking
socket/fcntl to set FD_CLOEXEC isn't thread-safe with async verify handlers,
and SOCK_CLOEXEC isn't portable.
2014-04-30 02:45:01 +02:00
9a86ce6ea9 Fold fastd_open_pipe into fastd_async_init, simpify fastd_setfl and fastd_setfd and move to fastd.h 2014-04-29 16:17:58 +02:00
639ebc2ff9 More daemonize cleanup 2014-04-28 21:00:18 +02:00
dd11507cdf Fix socketpair error message 2014-04-28 20:48:57 +02:00