Commit graph

1147 commits

Author SHA1 Message Date
e9ccb06be4 doc: update build instructions 2016-03-27 04:34:51 +02:00
56551b42d3 android: update libuecc to v7, libsodium to 1.0.8
Also, script fixes and cleanup.
2016-03-27 03:46:01 +02:00
794caa0da0 build: fix build with nonstandard libsodium include path 2016-03-27 03:24:27 +02:00
7e3159dc35 build: fix nacl dependency (without libsodium) 2016-03-26 23:59:02 +01:00
dfc7610527 build: fix removal of previously required dependencies 2016-03-26 23:54:29 +01:00
9b84e5e3b0 poll: fix epoll support 2016-03-26 23:14:14 +01:00
a2c6604e73 iface: improve error handling, especially on non-Linux systems
Don't exit when a single interface can't be setup
2016-03-26 22:51:18 +01:00
6a7ff21e68 iface: improve handling of name field 2016-03-26 02:28:32 +01:00
f5820021ef doc: update build dependencies 2016-03-26 01:36:58 +01:00
8b9465773a doc: build-fastd-android: fix fastd build dir existence check
Just a cosmetic fix.
2016-03-25 03:20:39 +01:00
9b4202dd55 build: always try to find libraries without CMAKE_FIND_ROOT_PATH first
Fixes build on Android
2016-03-25 03:17:06 +01:00
1e8fb62a0e Remove gcc-{ar,nm,ranlib} hack
If a GCC version is used which requires the GCC-specific binutils for LTO,
they should rather be provided explicitly.
2016-03-25 02:50:53 +01:00
6bc0ca2f28 doc: add preliminary v18 release notes 2016-03-25 01:36:23 +01:00
9256105618 doc: update with new configuration options 2016-03-20 20:57:03 +01:00
a86d2f5d89 doc: examples/openwrt: update init script and example config with new options 2016-03-20 18:39:04 +01:00
2e9ef2eda9 doc: examples/openwrt/fastd.init: print error message when used without instance arguments 2016-03-20 18:00:28 +01:00
5944dc18a7 doc: examples/openwrt/fastd.init: add help text for custom commands 2016-03-20 17:36:55 +01:00
93a4b231fe Add missing doxygen comments 2016-03-20 16:58:18 +01:00
39a2215fd3 ec25519_fhmqvc: simplify protocol_handle_recv control flow 2016-03-20 14:26:32 +01:00
cefdc338d8 ec25519_fhmqvc: update to follow new libuecc recommendations 2016-03-19 14:51:30 +01:00
bc6650141c capabilities: guard packet mark check with USE_PACKET_MARK
At the moment, both capabilities and packet marks are supported on Linux
only, so this doesn't really matter except for testing.
2016-02-22 22:57:11 +01:00
d7f23732b6 capabilities: print message about retained capabilities 2016-02-22 22:00:55 +01:00
aac5eefccd Retain CAP_NET_ADMIN if a packet mark is configured and dynamic binds are required 2016-02-22 21:56:34 +01:00
55aa537fb5 Add "drop privileges force" option which allows to drop CAP_NET_ADMIN even when fastd thinks it might still need it 2016-02-22 21:29:04 +01:00
69c830f363 Improve capability handling, retain required capabilities 2016-02-22 21:03:40 +01:00
995380597a Update copyright years 2016-02-22 17:14:24 +01:00
766433b850 socket: improve and simplify error handling
Rather exit on errors we're unlikely to recover from than retrying
indefinitely.
2016-02-22 17:10:13 +01:00
29894cc8d1 peer: remove dead code in fastd_peer_reset_socket() 2016-02-22 15:48:33 +01:00
96c9ba0f09 types: replace static consts with defines 2016-02-22 15:20:25 +01:00
8255dd8965 Handle optional features (capabilities, status socket) more consistently 2016-02-22 14:54:55 +01:00
38b71290e4 Print UID and GID as unsigned in log message 2016-02-21 20:35:09 +01:00
7306ae9a02 Replace setuid/setgid with setresuid/setresgid (or setreuid/setregid)
The semantics of setuid in SUID processes are not entirely clear on all
Unix-like systems. Better use setresuid to drop privileges where available.
2016-02-21 20:13:12 +01:00
0358cbf937 Don't block fatal signals 2015-12-21 14:49:18 +01:00
0e159b6d64 Terminate with the received signal 2015-12-21 14:43:35 +01:00
281fbb0057 log: clean up fastd_logf
Also, return early when no log destination would get the message anyways.
2015-11-25 03:40:12 +01:00
5b1d1a36df Unify periodic handshakes and peer maintenance 2015-11-18 03:44:26 +01:00
16e2b0213b Clean up peer task handling 2015-11-18 01:23:21 +01:00
5082b5a4d2 Use task queue for peer resets and keepalives
This makes it unnecessary to iterate over all peers for maintenance, and
desynchronizes different peers' keepalives.
2015-11-17 01:27:47 +01:00
cca293a6d4 Call ethernet address cleanup from generic maintenance task 2015-11-16 18:47:01 +01:00
bb761bafb8 Add lots of missing doxygen comments 2015-11-10 22:00:15 +01:00
c5aeb0dc42 Implement generic task queue to handle handshakes and maintenance 2015-11-10 20:55:47 +01:00
598a8acfc1 pqueue: remove some unnessasary assignments 2015-11-10 19:16:57 +01:00
312a9d0a21 Remove now unused doubly-linked list implementation 2015-11-10 18:27:14 +01:00
9bd967affa Use heap-based priority queue to schedule handshakes instead of a linked list 2015-11-10 18:26:37 +01:00
181deb9320 Add efficient priority queue implementation 2015-11-10 18:24:24 +01:00
999b87b803 Destroy interfaces on OpenBSD as well 2015-11-09 21:57:52 +01:00
57bf9f904a Implement interface cleanup on FreeBSD
Based-on-patch-by: Julian Kornberger <jk+github@digineo.de>
2015-11-09 21:32:16 +01:00
93945ca368 Add generic interface cleanup infrastructure
Some systems (like FreeBSD) don't delete TUN/TAP interfaces after closing,
add some infrastructure to do that.
2015-11-09 17:39:38 +01:00
2c71060d25 Check return value of sodium_init()
Fixes a warning with -Wunused-result.
2015-11-09 17:24:58 +01:00
c34723cfb9 Use a global ioctl socket
Based-on-patch-by: Julian Kornberger <jk+github@digineo.de>
2015-11-09 17:14:10 +01:00