summaryrefslogtreecommitdiffstats
path: root/src/fastd.c
AgeCommit message (Collapse)Author
2014-01-26Get rid of long_ago variable, use timeout helpersMatthias Schiffer
2014-01-26Add minimum handshake interval for unknown addresses (handles up to 8 ↵Matthias Schiffer
addresses for now)
2013-12-25main: reorder a few initialization calls to initialize as little as possible ↵Matthias Schiffer
before we are sure we must
2013-12-24Fix invalid memory accesses after failed resolvesMatthias Schiffer
2013-12-24Fix segfault on session refresh for peers without remotesMatthias Schiffer
2013-12-23Remove a pointless assertMatthias Schiffer
2013-12-23After a peer was ignored because of a peer limit, always re-resolve the ↵Matthias Schiffer
first remote
2013-12-23Always reset to the first address of the first remoteMatthias Schiffer
2013-12-16config: don't check configuration before logging has been set upMatthias Schiffer
2013-12-16resolve: consider all addresses returned for a hostnameMatthias Schiffer
2013-12-16Revert "resolve: save a timestamp in the resolve return to ensure we don't ↵Matthias Schiffer
confuse remotes before and after reconfiguration" This reverts commit 4475652054616ded16485341b081abf42cc6c08e.
2013-12-16resolve: save a timestamp in the resolve return to ensure we don't confuse ↵Matthias Schiffer
remotes before and after reconfiguration
2013-12-16Implement proper double-fork with --daemonMatthias Schiffer
2013-12-16Never write to syslog/log files during key generationMatthias Schiffer
2013-11-30Remove cipher and MAC contextsMatthias Schiffer
Not a single implementation was using them...
2013-11-29Compile with -std=c99 and restructure some code to ensure there is no ↵Matthias Schiffer
invalid aliasing (hopefully)
2013-11-27Correctly initialize OpenSSLMatthias Schiffer
2013-11-25Move crypto algorithm information out of implementationMatthias Schiffer
2013-11-03Allow building without NaCl againMatthias Schiffer
2013-11-02Move a few prototypes from fastd.h into a new config.hMatthias Schiffer
2013-11-02Convert ghash to the new crypto algorithm schemeMatthias Schiffer
2013-11-02Implement the first step towards a more flexible way to support crypto methodsMatthias Schiffer
2013-10-29Allow using libsodium instead of NaClMatthias Schiffer
As libsodium has some strange include files (like a version.h), we try to use absolute include paths whenever possible in fastd now and rename our generated headers.
2013-10-28Organize method and protocol source files into distinct source directoriesMatthias Schiffer
2013-09-06Change directory to / when privileges are dropped or the user is changedMatthias Schiffer
2013-09-03Add packet/byte statisticsMatthias Schiffer
2013-08-29Don't initialize monotone timestamps with zeroMatthias Schiffer
The monotone timestamp is near zero on linux systems, confusing fastd.
2013-08-29Replace old task queueMatthias Schiffer
The handshakes are now schedules in a doubly-linked list that is maintained as a part of the peer structure.
2013-08-29Simplify keepalive sendingMatthias Schiffer
By using a global keepalive timer, the O(n) keepalive queue purge operation on every send operation is avoided.
2013-08-28ec25519: ensure that there is always a handshake enqueued after sending a ↵Matthias Schiffer
handshake finish This ensures that the handshake is repeated in case the finish packet is lost.
2013-08-27Introduce new log level debug2 for potentially very frequent messagesMatthias Schiffer
2013-08-20Fix lots of -Wextra warningsMatthias Schiffer
Everything clang and GCC warn about, except GCC's missing-field-initializers which are just stupid as they don't allow {} syntax to zero a field.
2013-08-12Add pre-up and post-down handlersMatthias Schiffer
2013-08-12Install signal handlers later so key generation can be interruptedMatthias Schiffer
2013-08-07Use multi-af tun mode on FreeBSD to make IPv6 work on tunMatthias Schiffer
2013-08-07Move tun/tap initialization to a dedicated source fileMatthias Schiffer
2013-08-07Include net/if_tun.h instead of linux/if_tun.h on non-Linux systemsMatthias Schiffer
2013-07-29Fix assertion fail on key renewal handshakes with peers without remotesMatthias Schiffer
2013-07-25Move more code out of fastd.cMatthias Schiffer
2013-07-25Move send functions out of fastd.cMatthias Schiffer
2013-07-25Move socket handling out of fastd.cMatthias Schiffer
2013-07-25Move _GNU_SOURCE define to types.hMatthias Schiffer
2013-07-25Improve handling of similar remote resolvesMatthias Schiffer
2013-07-25Set IP_MTU_DISCOVER on socketsMatthias Schiffer
2013-07-24Include IP address in "sending handshake" debug messagesMatthias Schiffer
2013-07-24Allow specifying multiple remote entries for a single peerMatthias Schiffer
2013-07-24Remove handing for packets received on wrong sockets (this shouldn't happen)Matthias Schiffer
2013-07-24Don't let resolves delay handshakesMatthias Schiffer
2013-07-24Don't initialize peers before dropping privilegesMatthias Schiffer
2013-07-23Use schedule_handshake in handle_resolv_returnsMatthias Schiffer