-typo
[oweals/gnunet.git] / src / util / resolver_api.c
index 371b2165a50c3cacbccb907f99ca50424353e852..87b76f12decc96582d0d362f8cf7376e774d7dd3 100644 (file)
@@ -250,10 +250,8 @@ GNUNET_RESOLVER_disconnect ()
   GNUNET_assert (NULL == req_tail);
   if (NULL != client)
   {
-#if DEBUG_RESOLVER
     LOG (GNUNET_ERROR_TYPE_DEBUG, "Disconnecting from DNS service\n");
-#endif
-    GNUNET_CLIENT_disconnect (client, GNUNET_NO);
+    GNUNET_CLIENT_disconnect (client);
     client = NULL;
   }
   if (r_task != GNUNET_SCHEDULER_NO_TASK)
@@ -272,50 +270,44 @@ GNUNET_RESOLVER_disconnect ()
 /**
  * Convert IP address to string without DNS resolution.
  *
- * @param sa the address
- * @param salen number of bytes in sa
+ * @param af address family
+ * @param ip the address
+ * @param ip_len number of bytes in ip
  * @return address as a string, NULL on error
  */
 static char *
-no_resolve (const struct sockaddr *sa, socklen_t salen)
+no_resolve (int af,
+           const void *ip, socklen_t ip_len)
 {
-  char *ret;
-  char inet4[INET_ADDRSTRLEN];
-  char inet6[INET6_ADDRSTRLEN];
+  char buf[INET6_ADDRSTRLEN];
 
-  if (salen < sizeof (struct sockaddr))
-    return NULL;
-  switch (sa->sa_family)
+  switch (af)
   {
   case AF_INET:
-    if (salen != sizeof (struct sockaddr_in))
+    if (ip_len != sizeof (struct in_addr))
       return NULL;
     if (NULL ==
-        inet_ntop (AF_INET, &((struct sockaddr_in *) sa)->sin_addr, inet4,
-                   INET_ADDRSTRLEN))
+        inet_ntop (AF_INET, ip, buf, sizeof (buf)))
     {
       LOG_STRERROR (GNUNET_ERROR_TYPE_WARNING, "inet_ntop");
       return NULL;
     }
-    ret = GNUNET_strdup (inet4);
     break;
   case AF_INET6:
-    if (salen != sizeof (struct sockaddr_in6))
+    if (ip_len != sizeof (struct in6_addr))
       return NULL;
     if (NULL ==
-        inet_ntop (AF_INET6, &((struct sockaddr_in6 *) sa)->sin6_addr, inet6,
-                   INET6_ADDRSTRLEN))
+        inet_ntop (AF_INET6, ip, buf, sizeof (buf)))
     {
       LOG_STRERROR (GNUNET_ERROR_TYPE_WARNING, "inet_ntop");
       return NULL;
     }
-    ret = GNUNET_strdup (inet6);
     break;
   default:
-    ret = NULL;
-    break;
+    GNUNET_break (0);
+    return NULL;
   }
-  return ret;
+  return GNUNET_strdup (buf);
 }
 
 
@@ -345,9 +337,7 @@ handle_response (void *cls, const struct GNUNET_MessageHeader *msg)
   struct GNUNET_RESOLVER_RequestHandle *rh = cls;
   uint16_t size;
 
-#if DEBUG_RESOLVER
   LOG (GNUNET_ERROR_TYPE_DEBUG, "Receiving response from DNS service\n");
-#endif
   if (msg == NULL)
   {
     char buf[INET6_ADDRSTRLEN];
@@ -368,7 +358,8 @@ handle_response (void *cls, const struct GNUNET_MessageHeader *msg)
         /* no reverse lookup was successful, return ip as string */
         if (rh->received_response == GNUNET_NO)
           rh->name_callback (rh->cls,
-                             no_resolve ((const struct sockaddr *) &rh[1],
+                             no_resolve (rh->af,
+                                        &rh[1],
                                          rh->data_len));
         /* at least one reverse lookup was successful */
         else
@@ -379,7 +370,7 @@ handle_response (void *cls, const struct GNUNET_MessageHeader *msg)
     }
     GNUNET_CONTAINER_DLL_remove (req_head, req_tail, rh);
     GNUNET_free (rh);
-    GNUNET_CLIENT_disconnect (client, GNUNET_NO);
+    GNUNET_CLIENT_disconnect (client);
     client = NULL;
     reconnect ();
     return;
@@ -387,7 +378,7 @@ handle_response (void *cls, const struct GNUNET_MessageHeader *msg)
   if (GNUNET_MESSAGE_TYPE_RESOLVER_RESPONSE != ntohs (msg->type))
   {
     GNUNET_break (0);
-    GNUNET_CLIENT_disconnect (client, GNUNET_NO);
+    GNUNET_CLIENT_disconnect (client);
     client = NULL;
     reconnect ();
     return;
@@ -422,15 +413,13 @@ handle_response (void *cls, const struct GNUNET_MessageHeader *msg)
         rh->name_callback (rh->cls, NULL);
       GNUNET_CONTAINER_DLL_remove (req_head, req_tail, rh);
       GNUNET_free (rh);
-      GNUNET_CLIENT_disconnect (client, GNUNET_NO);
+      GNUNET_CLIENT_disconnect (client);
       client = NULL;
       reconnect ();
       return;
     }
-#if DEBUG_RESOLVER
-    LOG (GNUNET_ERROR_TYPE_DEBUG, _("Resolver returns `%s' for IP `%s'.\n"),
+    LOG (GNUNET_ERROR_TYPE_DEBUG, "Resolver returns `%s' for IP `%s'.\n",
          hostname, GNUNET_a2s ((const void *) &rh[1], rh->data_len));
-#endif
     if (rh->was_transmitted != GNUNET_SYSERR)
       rh->name_callback (rh->cls, hostname);
     rh->received_response = GNUNET_YES;
@@ -478,20 +467,11 @@ handle_response (void *cls, const struct GNUNET_MessageHeader *msg)
         rh->addr_callback (rh->cls, NULL, 0);
       GNUNET_CONTAINER_DLL_remove (req_head, req_tail, rh);
       GNUNET_free (rh);
-      GNUNET_CLIENT_disconnect (client, GNUNET_NO);
+      GNUNET_CLIENT_disconnect (client);
       client = NULL;
       reconnect ();
       return;
     }
-#if DEBUG_RESOLVER
-    {
-      char *ips = no_resolve (sa, salen);
-
-      LOG (GNUNET_ERROR_TYPE_DEBUG, "Resolver returns `%s' for `%s'.\n", ips,
-           (const char *) &rh[1]);
-      GNUNET_free (ips);
-    }
-#endif
     rh->addr_callback (rh->cls, sa, salen);
     GNUNET_CLIENT_receive (client, &handle_response, rh,
                            GNUNET_TIME_absolute_get_remaining (rh->timeout));
@@ -620,7 +600,7 @@ static void
 process_requests ()
 {
   struct GNUNET_RESOLVER_GetMessage *msg;
-  char buf[GNUNET_SERVER_MAX_MESSAGE_SIZE - 1];
+  char buf[GNUNET_SERVER_MAX_MESSAGE_SIZE - 1] GNUNET_ALIGN;
   struct GNUNET_RESOLVER_RequestHandle *rh;
 
   if (NULL == client)
@@ -647,17 +627,15 @@ process_requests ()
   msg->direction = htonl (rh->direction);
   msg->af = htonl (rh->af);
   memcpy (&msg[1], &rh[1], rh->data_len);
-#if DEBUG_RESOLVER
   LOG (GNUNET_ERROR_TYPE_DEBUG,
        "Transmitting DNS resolution request to DNS service\n");
-#endif
   if (GNUNET_OK !=
       GNUNET_CLIENT_transmit_and_get_response (client, &msg->header,
                                                GNUNET_TIME_absolute_get_remaining
                                                (rh->timeout), GNUNET_YES,
                                                &handle_response, rh))
   {
-    GNUNET_CLIENT_disconnect (client, GNUNET_NO);
+    GNUNET_CLIENT_disconnect (client);
     client = NULL;
     reconnect ();
     return;
@@ -680,9 +658,7 @@ reconnect_task (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
     return;                     /* no work pending */
   if (0 != (tc->reason & GNUNET_SCHEDULER_REASON_SHUTDOWN))
     return;
-#if DEBUG_RESOLVER
   LOG (GNUNET_ERROR_TYPE_DEBUG, "Trying to connect to DNS service\n");
-#endif
   client = GNUNET_CLIENT_connect ("resolver", resolver_cfg);
   if (NULL == client)
   {
@@ -726,11 +702,9 @@ reconnect ()
       break;
     }
   }
-#if DEBUG_RESOLVER
   LOG (GNUNET_ERROR_TYPE_DEBUG,
        "Will try to connect to DNS service in %llu ms\n",
        (unsigned long long) backoff.rel_value);
-#endif
   GNUNET_assert (NULL != resolver_cfg);
   r_task = GNUNET_SCHEDULER_add_delayed (backoff, &reconnect_task, NULL);
   backoff = GNUNET_TIME_relative_multiply (backoff, 2);
@@ -816,10 +790,8 @@ numeric_reverse (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
   struct GNUNET_RESOLVER_RequestHandle *rh = cls;
   char *result;
 
-  result = no_resolve ((const struct sockaddr *) &rh[1], rh->data_len);
-#if DEBUG_RESOLVER
-  LOG (GNUNET_ERROR_TYPE_DEBUG, _("Resolver returns `%s'.\n"), result);
-#endif
+  result = no_resolve (rh->af, &rh[1], rh->data_len);
+  LOG (GNUNET_ERROR_TYPE_DEBUG, "Resolver returns `%s'.\n", result);
   if (result != NULL)
   {
     rh->name_callback (rh->cls, result);
@@ -911,9 +883,7 @@ GNUNET_RESOLVER_local_fqdn_get ()
                   "gethostname");
     return NULL;
   }
-#if DEBUG_RESOLVER
-  LOG (GNUNET_ERROR_TYPE_DEBUG, _("Resolving our FQDN `%s'\n"), hostname);
-#endif
+  LOG (GNUNET_ERROR_TYPE_DEBUG, "Resolving our FQDN `%s'\n", hostname);
   host = gethostbyname (hostname);
   if (NULL == host)
   {
@@ -948,9 +918,7 @@ GNUNET_RESOLVER_hostname_resolve (int af,
                   "gethostname");
     return NULL;
   }
-#if DEBUG_RESOLVER
-  LOG (GNUNET_ERROR_TYPE_DEBUG, _("Resolving our hostname `%s'\n"), hostname);
-#endif
+  LOG (GNUNET_ERROR_TYPE_DEBUG, "Resolving our hostname `%s'\n", hostname);
   return GNUNET_RESOLVER_ip_get (hostname, af, timeout, callback, cls);
 }