summaryrefslogtreecommitdiffstats
path: root/src/resolve.c
AgeCommit message (Collapse)Author
2014-08-24Use simple int64_t timestamps in ms instead of timespecsMatthias Schiffer
2014-08-24Merge peer config into peer structureMatthias Schiffer
With this refactoring, the structure fastd_peer_config_t is merged into fastd_peer_t, and fastd_remote_config_t into fastd_remote_t. This also means we now create peers directly when reading their configurations, which significantly simplifies the whole reload process, and prepares for some future optimizations like a key hash table. Note: This commit is too big, but I couldn't come up with a nice way to split it into smaller pieces...
2014-08-18peer: add a flag `dynamic' instead of checking the config field for NULLMatthias Schiffer
2014-08-18Rename "temporary peers" to "dynamic peers"Matthias Schiffer
2014-08-02Introduce and use alloc helpersMatthias Schiffer
These new helpers will terminate fastd on allocation failures and add some additional convenience (allow strdup with NULL; typesafe new(type) macros).
2014-06-03Create threads in detached stateMatthias Schiffer
2014-05-28Still more documentationMatthias Schiffer
2014-05-27More documentationMatthias Schiffer
2014-05-25Make a few struct fields that are not supposed to be changed defines insteadMatthias Schiffer
2014-05-22More documentationMatthias Schiffer
2014-04-26pthread_create returns an error instead of setting errnoMatthias Schiffer
2014-04-25Remove ref-counting on remotesMatthias Schiffer
Now that peers have a peer id we can use that to specify a peer in a resolve return. As the remote list of a peer doesn't change without the peer id changing, instead of taking a remote ref we can just use the peer id and remote index.
2014-04-20Make ctx globalMatthias Schiffer
2014-04-20Make conf globalMatthias Schiffer
2014-04-10Add support for multiple async message typesMatthias Schiffer
2014-04-10Move handling of resolve returns requests to a new source fileMatthias Schiffer
2014-03-14Adjust copyright yearsMatthias Schiffer
2014-03-10Remove aligned data_t type againMatthias Schiffer
2014-01-27Add an aligned uint8_t type data_t and use it to ensure the alignment of ↵Matthias Schiffer
various buffers on the stack
2014-01-26Get rid of long_ago variable, use timeout helpersMatthias Schiffer
2013-12-26resolve: avoid using alloca as OpenBSD doesn't find it with -std=c99Matthias 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-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-08Check for AI_ADDRCONFIGMatthias Schiffer
2013-07-25Move _GNU_SOURCE define to types.hMatthias Schiffer
2013-07-25Improve handling of similar remote resolvesMatthias Schiffer
2013-07-24Allow specifying multiple remote entries for a single peerMatthias Schiffer
2013-07-24Don't let resolves delay handshakesMatthias Schiffer
2013-04-25Minor cleanup in resolverMatthias Schiffer
2013-02-26Experimental support for accepting connections from unknown peersMatthias Schiffer
2013-01-24Don't reset peer address on repeated resolvesMatthias Schiffer
This can lead to handshakes being ignored for an indefinite time.
2013-01-24resolver: write whole hostname instead of a pointer to the resolver pipeMatthias Schiffer
Shouldn't make a difference, but feels cleaner now, and silences a clang-analyzer warning.
2013-01-05Adjust copyright yearsMatthias Schiffer
2012-12-18Convert type names to _t conventionMatthias Schiffer
2012-12-13Always convert v4-mapped IPv6 addresses to IPv4 addressesMatthias Schiffer
2012-11-01Move unistd.h include to fastd.hMatthias Schiffer
2012-06-06Limit resolve frequencyMatthias Schiffer
2012-06-06Improve some log levelsMatthias Schiffer
2012-06-01Fix a possible crash involving strange resolve returnsMatthias Schiffer
fastd has been seen crashing on some hosts under strange circumstances. As the bug seems to involve invalid address families, try to assure no unsupported address families are returned from resolver.
2012-05-04Zero out resolve return to silence valgrind warningMatthias Schiffer
2012-05-03Use pipe to transmit resolved addresses to main threadv0.4-rc7Matthias Schiffer
2012-04-23resolve: don't set AI_IDN, it will fail with uClibcv0.4-rc3Matthias Schiffer
2012-04-16Lots of fixes and improvements on the resolver codeMatthias Schiffer
2012-04-16Add support for peers specified by hostnamesMatthias Schiffer