Reformat all code using astyle.
[tinc] / src / address_cache.c
index 42b671b..381ae78 100644 (file)
@@ -85,14 +85,16 @@ void add_recent_address(address_cache_t *cache, const sockaddr_t *sa) {
        unsigned int pos = find_cached(cache, sa);
 
        // It's in the first spot, so nothing to do
-       if (pos == 0) {
+       if(pos == 0) {
                return;
        }
 
        // Shift everything, move/add the address to the first slot
        if(pos == NOT_CACHED) {
-               if(cache->data.used < MAX_CACHED_ADDRESSES)
+               if(cache->data.used < MAX_CACHED_ADDRESSES) {
                        cache->data.used++;
+               }
+
                pos = cache->data.used - 1;
        }
 
@@ -126,7 +128,7 @@ const sockaddr_t *get_recent_address(address_cache_t *cache) {
 
                if(cache->ai) {
                        if(cache->aip) {
-                               sockaddr_t *sa = (sockaddr_t *)cache->aip;
+                               sockaddr_t *sa = (sockaddr_t *)cache->aip->ai_addr;
 
                                if(find_cached(cache, sa) != NOT_CACHED) {
                                        continue;
@@ -173,16 +175,16 @@ const sockaddr_t *get_recent_address(address_cache_t *cache) {
                cache->cfg = lookup_config_next(cache->config_tree, cache->cfg);
        }
 
-       if(cache->aip) {
-               sockaddr_t *sa = (sockaddr_t *)cache->aip->ai_addr;
-               cache->aip = cache->aip->ai_next;
+       if(cache->ai) {
+               if(cache->aip) {
+                       sockaddr_t *sa = (sockaddr_t *)cache->aip->ai_addr;
 
-               if(!cache->aip) {
+                       cache->aip = cache->aip->ai_next;
+                       return sa;
+               } else {
                        freeaddrinfo(cache->ai);
-                       cache->ai = cache->aip = NULL;
+                       cache->ai = NULL;
                }
-
-               return sa;
        }
 
        // We're all out of addresses.