summaryrefslogtreecommitdiffstats
path: root/src/fastd.c
AgeCommit message (Collapse)Author
2012-12-24Add user switching and capability supportMatthias Schiffer
2012-12-23Set FD_CLOEXEC on all file descriptors, use non-blocking IO for sockets and TUNMatthias Schiffer
2012-12-18Convert type names to _t conventionMatthias Schiffer
2012-12-13Add helper function to simplify v4-mapped addressesMatthias Schiffer
2012-12-13Reduce v4-mapped IPv6 addresses to IPv4 addressesMatthias Schiffer
We need this for "any" binds to work correctly again.
2012-12-08Only try to set MTU when it isn't correctMatthias Schiffer
This allows fastd to run completely without root privileges when the TUN/TAP device is pre-created
2012-12-08Maximum interface name length is IFNAMSIZ-1, not IFNAMSIZMatthias Schiffer
Linux handles the string just fine without NULL termination, but that doesn't make it correct...
2012-11-10Keep track of configured peer count correctly on dynamic reloadsMatthias Schiffer
2012-11-08Truncate PID fileMatthias Schiffer
2012-11-05Get rid of some annoyances with peer limitsMatthias Schiffer
Remove some debug messages, and don't resolve peers again and again we don't want to connect to anyways.
2012-11-05Don't inline send_handshakeMatthias Schiffer
2012-11-05Implement peer limit constraintsMatthias Schiffer
2012-11-05Implement peer groupsMatthias Schiffer
2012-11-02Directly use peer when receiving on associated socketsMatthias Schiffer
2012-11-02Keep track of corresonding peers in associated socketsMatthias Schiffer
2012-11-01Dynamically create and destroy sockets without fixed bindsMatthias Schiffer
2012-11-01Move unistd.h include to fastd.hMatthias Schiffer
2012-11-01Handle socket errorsMatthias Schiffer
2012-11-01Refactor bind address configurationMatthias Schiffer
2012-10-29Fix bind error messagesMatthias Schiffer
2012-10-29Add support for multiple bindsMatthias Schiffer
2012-09-21Nicely encapsulate different crypto algorithm implementationsMatthias Schiffer
2012-09-16Fix alignment for NaCl's core2 assembler implementation of AES128-CTRMatthias Schiffer
2012-09-16Ignore SIGPIPEMatthias Schiffer
We want this because of reasons. Just to be sure.
2012-09-15Use inline function for alignmentMatthias Schiffer
2012-09-15Add support for using kernel implementations of GHASHMatthias Schiffer
This doesn't really improve performance on my Intel CPU (I guess due to the context switches), but more tests have to be made, in combination with offloading the AES to the kernel as well, and on different hardware.
2012-09-15Rework some parts of the AES128-GCM methodMatthias Schiffer
These changes improve the performance of the AES128-GCM method by ~10% on my Intel CPU when compiled with -O2. Furthermore, the AES and the GHASH parts are separated now, allowing to switch to other implementations of the algorithms more easily.
2012-09-15Improve data alignmentMatthias Schiffer
Ensure that the actual packet data is always aligned to a multiple of 8.
2012-07-01Add support for multiple crypto methods without reconfigurationMatthias Schiffer
2012-06-27Fix critical memory corruption bug in coreMatthias Schiffer
2012-06-19Don't re-resolve dynamic-floating peers on key refreshMatthias Schiffer
2012-06-07Limit handshake frequency where possibleMatthias Schiffer
2012-06-07Fix memory leakMatthias Schiffer
2012-06-06Limit resolve frequencyMatthias Schiffer
2012-06-06Improve some log levelsMatthias Schiffer
2012-06-04Add version string to handshakeMatthias Schiffer
2012-06-04Add pidfile supportMatthias Schiffer
2012-06-02Fix warning messageMatthias Schiffer
2012-05-18Uninline pr_logMatthias Schiffer
2012-05-18New logging facilitiesMatthias Schiffer
2012-05-17Add daemon modeMatthias Schiffer
2012-05-17Close inherited file handlesv0.4-rc8Matthias Schiffer
2012-05-04Free eth_addr list on exitMatthias Schiffer
2012-05-03Use pipe to transmit resolved addresses to main threadv0.4-rc7Matthias Schiffer
2012-04-27Automatically set interface MTUMatthias Schiffer
2012-04-25Send handshakes after resolve even when the connection is already ↵v0.4-rc4Matthias Schiffer
established for session refreshs to work
2012-04-22Add --show-key and --machine-readable optionsMatthias Schiffer
2012-04-19Don't regenerate session handshake keypair for every handshake so a global ↵Matthias Schiffer
state can be used; remove the concept of temporary peers These changes will fix the possibility of a TCP-SYN-Flood-like DoS attack, at the cost of another protocol change: as we can't count request IDs when we don't know have temporary peers, request IDs are removed completely.
2012-04-16Make sure we don't get interupted by signals when we can't handle them properlyMatthias Schiffer
2012-04-16Rename peer-to-peer to forward; remove now useless peer command line optionv0.4-rc1Matthias Schiffer