summaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)Author
2019-07-25resolve: fix segmentation fault with musl >1.1.20HEADmasterDavid Bauer
When compiled with musl >1.1.20, fastd will crash in case it can't resolve a peers hostname. This is due to a changed implementation of freeaddrinfo in musl 1.1.21 onwards. This segfault is fixed by not calling freeaddrinfo in case the supplied pointer is null. Signed-off-by: David Bauer <mail@david-bauer.net>
2018-05-12status: fix segfault in tun/multitap mode with persist iface noMatthias Schiffer
2017-10-18cipher: remove aes128-ctr NaCl implementationMatthias Schiffer
New versions of libsodium have dropped support for aes128-ctr. AES support is only available with OpenSSL now.
2017-05-19Remove unnecessary OpenSSL initialization and cleanupMatthias Schiffer
Some of these functions have been deprecated in OpenSSL 1.1; in any case, the calls aren't necessary.
2017-05-19cipher: aes128-ctr: openssl: fix compatiblity with OpenSSL 1.1Matthias Schiffer
2017-03-25status: correctly align sockaddr_un bufferMatthias Schiffer
While at it, also do some more cleanup.
2016-10-10time, compat: don't redefine clock_gettime on MacOSMatthias Schiffer
MacOS X 10.12 has intruduced a clock_gettime function. Use an own function name instead.
2016-10-10fastd: fix documentation of fastd_context_t.nowMatthias Schiffer
2016-09-15Use raise(...) instead of kill(getpid(), ...)Matthias Schiffer
2016-09-15handshake: fix fastd_handshake_add_uint logicMatthias Schiffer
The function would add multipe records for big values. No actual use of this function did trigger the incorrect behaviour though.
2016-05-03peer: fix potential integer overflows in fastd_peer_eth_addr_addMatthias Schiffer
Fix potential integer overflows in binary search.
2016-05-03vector: catch overflows of the alloc counterMatthias Schiffer
Better fail than go into an endless loop...
2016-05-03alloc: check multiplications for overflowsMatthias Schiffer
2016-03-27build: fix build with nonstandard libsodium include pathMatthias Schiffer
2016-03-26poll: fix epoll supportMatthias Schiffer
2016-03-26iface: improve error handling, especially on non-Linux systemsMatthias Schiffer
Don't exit when a single interface can't be setup
2016-03-26iface: improve handling of name fieldMatthias Schiffer
2016-03-20Add missing doxygen commentsMatthias Schiffer
2016-03-20ec25519_fhmqvc: simplify protocol_handle_recv control flowMatthias Schiffer
2016-03-19ec25519_fhmqvc: update to follow new libuecc recommendationsMatthias Schiffer
2016-02-22capabilities: guard packet mark check with USE_PACKET_MARKMatthias Schiffer
At the moment, both capabilities and packet marks are supported on Linux only, so this doesn't really matter except for testing.
2016-02-22capabilities: print message about retained capabilitiesMatthias Schiffer
2016-02-22Retain CAP_NET_ADMIN if a packet mark is configured and dynamic binds are ↵Matthias Schiffer
required
2016-02-22Add "drop privileges force" option which allows to drop CAP_NET_ADMIN even ↵Matthias Schiffer
when fastd thinks it might still need it
2016-02-22Improve capability handling, retain required capabilitiesMatthias Schiffer
2016-02-22Update copyright yearsMatthias Schiffer
2016-02-22socket: improve and simplify error handlingMatthias Schiffer
Rather exit on errors we're unlikely to recover from than retrying indefinitely.
2016-02-22peer: remove dead code in fastd_peer_reset_socket()Matthias Schiffer
2016-02-22types: replace static consts with definesMatthias Schiffer
2016-02-22Handle optional features (capabilities, status socket) more consistentlyMatthias Schiffer
2016-02-21Print UID and GID as unsigned in log messageMatthias Schiffer
2016-02-21Replace setuid/setgid with setresuid/setresgid (or setreuid/setregid)Matthias Schiffer
The semantics of setuid in SUID processes are not entirely clear on all Unix-like systems. Better use setresuid to drop privileges where available.
2015-12-21Don't block fatal signalsMatthias Schiffer
2015-12-21Terminate with the received signalMatthias Schiffer
2015-11-25log: clean up fastd_logfMatthias Schiffer
Also, return early when no log destination would get the message anyways.
2015-11-18Unify periodic handshakes and peer maintenanceMatthias Schiffer
2015-11-18Clean up peer task handlingMatthias Schiffer
2015-11-17Use task queue for peer resets and keepalivesMatthias Schiffer
This makes it unnecessary to iterate over all peers for maintenance, and desynchronizes different peers' keepalives.
2015-11-16Call ethernet address cleanup from generic maintenance taskMatthias Schiffer
2015-11-10Add lots of missing doxygen commentsMatthias Schiffer
2015-11-10Implement generic task queue to handle handshakes and maintenanceMatthias Schiffer
2015-11-10pqueue: remove some unnessasary assignmentsMatthias Schiffer
2015-11-10Remove now unused doubly-linked list implementationMatthias Schiffer
2015-11-10Use heap-based priority queue to schedule handshakes instead of a linked listMatthias Schiffer
2015-11-10Add efficient priority queue implementationMatthias Schiffer
2015-11-09Destroy interfaces on OpenBSD as wellMatthias Schiffer
2015-11-09Implement interface cleanup on FreeBSDMatthias Schiffer
Based-on-patch-by: Julian Kornberger <jk+github@digineo.de>
2015-11-09Add generic interface cleanup infrastructureMatthias Schiffer
Some systems (like FreeBSD) don't delete TUN/TAP interfaces after closing, add some infrastructure to do that.
2015-11-09Check return value of sodium_init()Matthias Schiffer
Fixes a warning with -Wunused-result.
2015-11-09Use a global ioctl socketMatthias Schiffer
Based-on-patch-by: Julian Kornberger <jk+github@digineo.de>