gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r27874 - gnunet/src/ats


From: gnunet
Subject: [GNUnet-SVN] r27874 - gnunet/src/ats
Date: Wed, 10 Jul 2013 14:20:04 +0200

Author: wachs
Date: 2013-07-10 14:20:04 +0200 (Wed, 10 Jul 2013)
New Revision: 27874

Modified:
   gnunet/src/ats/ats_api_scheduling.c
Log:
move error reporting to client, since now it's the plugins fault if sessions 
are unknown


Modified: gnunet/src/ats/ats_api_scheduling.c
===================================================================
--- gnunet/src/ats/ats_api_scheduling.c 2013-07-10 12:12:11 UTC (rev 27873)
+++ gnunet/src/ats/ats_api_scheduling.c 2013-07-10 12:20:04 UTC (rev 27874)
@@ -1241,8 +1241,10 @@
  * @param session session handle, can be NULL
  * @param ats performance data for the address
  * @param ats_count number of performance records in 'ats'
+ * @return GNUNET_YES on success, GNUNET_NO if address or session are unknown,
+ * GNUNET_SYSERR on hard failure
  */
-void
+int
 GNUNET_ATS_address_update (struct GNUNET_ATS_SchedulingHandle *sh,
                            const struct GNUNET_HELLO_Address *address,
                            struct Session *session,
@@ -1257,14 +1259,18 @@
   size_t msize;
   uint32_t s = 0;
 
-  if (address == NULL)
+  if (NULL == address)
   {
     GNUNET_break (0);
-    return;
+    return GNUNET_SYSERR;
   }
+  if (NULL == sh)
+  {
+    GNUNET_break (0);
+    return GNUNET_SYSERR;
+  }
 
-  namelen =
-      (address->transport_name ==
+  namelen = (address->transport_name ==
        NULL) ? 0 : strlen (address->transport_name) + 1;
   msize =
       sizeof (struct AddressUpdateMessage) + address->address_length +
@@ -1276,22 +1282,14 @@
        GNUNET_SERVER_MAX_MESSAGE_SIZE / sizeof (struct 
GNUNET_ATS_Information)))
   {
     GNUNET_break (0);
-    return;
+    return GNUNET_SYSERR;
   }
 
   if (NULL != session)
   {
     s = find_session_id (sh, session, &address->peer);
     if (NOT_FOUND == s)
-    {
-      GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
-                  "Update for unknown address for peer `%s', plugin `%s', 
session %p id %u\n",
-                  GNUNET_i2s (&address->peer),
-                  address->transport_name, session, s);
-
-      GNUNET_break (0);
-      return;
-    }
+      return GNUNET_NO;
   }
 
   p = GNUNET_malloc (sizeof (struct PendingMessage) + msize);
@@ -1319,7 +1317,7 @@
   memcpy (&pm[address->address_length], address->transport_name, namelen);
   GNUNET_CONTAINER_DLL_insert_tail (sh->pending_head, sh->pending_tail, p);
   do_transmit (sh);
-  return;
+  return GNUNET_YES;
 }
 
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]