gnunet-svn
[Top][All Lists]
Advanced

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

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


From: gnunet
Subject: [GNUnet-SVN] r22109 - gnunet/src/ats
Date: Tue, 19 Jun 2012 15:14:18 +0200

Author: wachs
Date: 2012-06-19 15:14:18 +0200 (Tue, 19 Jun 2012)
New Revision: 22109

Modified:
   gnunet/src/ats/ats_api_scheduling.c
Log:
- fix memory leaks 


Modified: gnunet/src/ats/ats_api_scheduling.c
===================================================================
--- gnunet/src/ats/ats_api_scheduling.c 2012-06-19 12:40:27 UTC (rev 22108)
+++ gnunet/src/ats/ats_api_scheduling.c 2012-06-19 13:14:18 UTC (rev 22109)
@@ -1097,16 +1097,6 @@
     return GNUNET_SYSERR;
   }
 
-  p = GNUNET_malloc (sizeof (struct PendingMessage) + msize);
-  p->size = msize;
-  p->is_init = GNUNET_NO;
-  m = (struct AddressUpdateMessage *) &p[1];
-  m->header.type = htons (GNUNET_MESSAGE_TYPE_ATS_ADDRESS_ADD);
-  m->header.size = htons (msize);
-  m->ats_count = htonl (ats_count);
-  m->peer = address->peer;
-  m->address_length = htons (address->address_length);
-  m->plugin_name_length = htons (namelen);
   if (NULL != session)
   {
     s = find_session_id (sh, session, &address->peer);
@@ -1122,6 +1112,17 @@
     s = find_empty_session_slot (sh, session, &address->peer);
     GNUNET_break (NOT_FOUND != s);
   }
+
+  p = GNUNET_malloc (sizeof (struct PendingMessage) + msize);
+  p->size = msize;
+  p->is_init = GNUNET_NO;
+  m = (struct AddressUpdateMessage *) &p[1];
+  m->header.type = htons (GNUNET_MESSAGE_TYPE_ATS_ADDRESS_ADD);
+  m->header.size = htons (msize);
+  m->ats_count = htonl (ats_count);
+  m->peer = address->peer;
+  m->address_length = htons (address->address_length);
+  m->plugin_name_length = htons (namelen);
   m->session_id = htonl (s);
 
   GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
@@ -1197,16 +1198,6 @@
     return;
   }
 
-  p = GNUNET_malloc (sizeof (struct PendingMessage) + msize);
-  p->size = msize;
-  p->is_init = GNUNET_NO;
-  m = (struct AddressUpdateMessage *) &p[1];
-  m->header.type = htons (GNUNET_MESSAGE_TYPE_ATS_ADDRESS_UPDATE);
-  m->header.size = htons (msize);
-  m->ats_count = htonl (ats_count);
-  m->peer = address->peer;
-  m->address_length = htons (address->address_length);
-  m->plugin_name_length = htons (namelen);
   if (NULL != session)
   {
     s = find_session_id (sh, session, &address->peer);
@@ -1221,6 +1212,18 @@
       return;
     }
   }
+
+  p = GNUNET_malloc (sizeof (struct PendingMessage) + msize);
+  p->size = msize;
+  p->is_init = GNUNET_NO;
+  m = (struct AddressUpdateMessage *) &p[1];
+  m->header.type = htons (GNUNET_MESSAGE_TYPE_ATS_ADDRESS_UPDATE);
+  m->header.size = htons (msize);
+  m->ats_count = htonl (ats_count);
+  m->peer = address->peer;
+  m->address_length = htons (address->address_length);
+  m->plugin_name_length = htons (namelen);
+
   m->session_id = htonl (s);
 
   GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
@@ -1273,16 +1276,6 @@
     return;
   }
 
-  p = GNUNET_malloc (sizeof (struct PendingMessage) + msize);
-  p->size = msize;
-  p->is_init = GNUNET_NO;
-  m = (struct AddressUseMessage *) &p[1];
-  m->header.type = htons (GNUNET_MESSAGE_TYPE_ATS_ADDRESS_IN_USE);
-  m->header.size = htons (msize);
-  m->peer = address->peer;
-  m->in_use = htons (in_use);
-  m->address_length = htons (address->address_length);
-  m->plugin_name_length = htons (namelen);
   if (session != NULL)
   {
     s = find_session_id (sh, session, &address->peer);
@@ -1303,6 +1296,17 @@
     }
   }
 
+  p = GNUNET_malloc (sizeof (struct PendingMessage) + msize);
+  p->size = msize;
+  p->is_init = GNUNET_NO;
+  m = (struct AddressUseMessage *) &p[1];
+  m->header.type = htons (GNUNET_MESSAGE_TYPE_ATS_ADDRESS_IN_USE);
+  m->header.size = htons (msize);
+  m->peer = address->peer;
+  m->in_use = htons (in_use);
+  m->address_length = htons (address->address_length);
+  m->plugin_name_length = htons (namelen);
+
   GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
               "Setting address used to %s for peer `%s', plugin `%s', session 
%p\n",
               (GNUNET_YES == in_use) ? "YES" : "NO",
@@ -1351,6 +1355,16 @@
     return;
   }
 
+  s = find_session_id (sh, session, &address->peer);
+  if ((NULL != session) && (NOT_FOUND == s))
+  {
+    /* trying to delete unknown address */
+    GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+                "Trying to delete unknown address for peer `%s', plugin `%s', 
session %p\n",
+                GNUNET_i2s (&address->peer), address->transport_name, session);
+    return;
+  }
+
   p = GNUNET_malloc (sizeof (struct PendingMessage) + msize);
   p->size = msize;
   p->is_init = GNUNET_NO;
@@ -1362,16 +1376,6 @@
   m->address_length = htons (address->address_length);
   m->plugin_name_length = htons (namelen);
 
-  s = find_session_id (sh, session, &address->peer);
-  if ((NULL != session) && (NOT_FOUND == s))
-  {
-    /* trying to delete unknown address */
-    GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
-                "Trying to delete unknown address for peer `%s', plugin `%s', 
session %p\n",
-                GNUNET_i2s (&address->peer), address->transport_name, session);
-    return;
-  }
-
   GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
               "Deleting address for peer `%s', plugin `%s', session %p\n",
               GNUNET_i2s (&address->peer), address->transport_name, session);




reply via email to

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