- improved error logging
[oweals/gnunet.git] / src / ats / ats_api_scheduling.c
index 2dff6c8ac06bca4da35c6d1fa6b329d0c3e0fa0b..31b032f72568df34bc967099b416899d366b9231 100644 (file)
@@ -678,8 +678,8 @@ interface_proc (void *cls, const char *name,
     net->netmask = (struct sockaddr *) &tmp[1];
     net->length = addrlen;
 
+    memset (&network4, 0, sizeof (network4));
     network4.sin_family = AF_INET;
-    network4.sin_port = htons (0);
 #if HAVE_SOCKADDR_IN_SIN_LEN
     network4.sin_len = sizeof (network4);
 #endif
@@ -702,8 +702,8 @@ interface_proc (void *cls, const char *name,
     net->netmask = (struct sockaddr *) &tmp[1];
     net->length = addrlen;
 
+    memset (&network6, 0, sizeof (network6));
     network6.sin6_family = AF_INET6;
-    network6.sin6_port = htons (0);
 #if HAVE_SOCKADDR_IN_SIN_LEN
     network6.sin6_len = sizeof (network6);
 #endif
@@ -721,11 +721,13 @@ interface_proc (void *cls, const char *name,
   /* Store in list */
   if (net != NULL)
   {
+#if VERBOSE_ATS
     char * netmask = strdup (GNUNET_a2s((struct sockaddr *) net->netmask, addrlen));
     GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Adding network `%s', netmask `%s'\n",
         GNUNET_a2s((struct sockaddr *) net->network, addrlen),
         netmask);
     GNUNET_free (netmask);
+# endif
     GNUNET_CONTAINER_DLL_insert(sh->net_head, sh->net_tail, net);
   }
   return GNUNET_OK;
@@ -1018,6 +1020,12 @@ GNUNET_ATS_address_update (struct GNUNET_ATS_SchedulingHandle *sh,
   size_t namelen;
   size_t msize;
 
+  if ((address == NULL) && (session == NULL))
+  {
+    GNUNET_break (0);
+    return;
+  }
+
   namelen =
       (address->transport_name ==
        NULL) ? 0 : strlen (address->transport_name) + 1;