allow empty/NULL context message
[oweals/gnunet.git] / src / transport / test_transport_api_manipulation_cfg.c
index e7cccb8124df1996fc29c54f89b6f77fb7f8a53f..fe3d31f7bb0a50043ccac7102935e6ee19fef151 100644 (file)
@@ -1,6 +1,6 @@
 /*
      This file is part of GNUnet.
-     (C) 2009, 2010 Christian Grothoff (and other contributing authors)
+     Copyright (C) 2009, 2010 GNUnet e.V.
 
      GNUnet is free software; you can redistribute it and/or modify
      it under the terms of the GNU General Public License as published
@@ -14,8 +14,8 @@
 
      You should have received a copy of the GNU General Public License
      along with GNUnet; see the file COPYING.  If not, write to the
-     Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-     Boston, MA 02111-1307, USA.
+     Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+     Boston, MA 02110-1301, USA.
 */
 /**
  * @file transport/test_transport_api_manipulation_send_tcp.c
@@ -75,7 +75,7 @@ static struct PeerContext *p1;
 
 static struct PeerContext *p2;
 
-static GNUNET_TRANSPORT_TESTING_ConnectRequest cc;
+static struct GNUNET_TRANSPORT_TESTING_ConnectRequest * cc;
 
 static struct GNUNET_TRANSPORT_TransmitHandle *th;
 
@@ -107,8 +107,9 @@ end ()
   GNUNET_TRANSPORT_TESTING_stop_peer (tth, p2);
 }
 
+
 static void
-end_badly (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
+end_badly (void *cls)
 {
   die_task = NULL;
 
@@ -180,31 +181,32 @@ notify_request_ready (void *cls, size_t size, void *buf)
   }
 
   GNUNET_assert (size >= TEST_MESSAGE_SIZE);
-  if (buf != NULL)
+  memset (buf, '\0', TEST_MESSAGE_SIZE);
+  hdr = buf;
+  hdr->size = htons (TEST_MESSAGE_SIZE);
+  hdr->type = htons (TEST_REQUEST_MESSAGE_TYPE);
+
   {
-    memset (buf, '\0', TEST_MESSAGE_SIZE);
-    hdr = buf;
-    hdr->size = htons (TEST_MESSAGE_SIZE);
-    hdr->type = htons (TEST_REQUEST_MESSAGE_TYPE);
+    char *ps = GNUNET_strdup (GNUNET_i2s (&p1->id));
+
+    GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+                "Sending request message from peer %u (`%4s') with type %u and size %u bytes to peer %u (`%4s')\n",
+                p1->no, ps,
+                ntohs (hdr->type),
+                ntohs (hdr->size),
+                p->no,
+                GNUNET_i2s (&p->id));
+    GNUNET_free (ps);
   }
 
-  char *ps = GNUNET_strdup (GNUNET_i2s (&p1->id));
-  GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
-              "Sending request message from peer %u (`%4s') with type %u and size %u bytes to peer %u (`%4s')\n",
-              p1->no, ps, ntohs (hdr->type), ntohs (hdr->size), p->no,
-              GNUNET_i2s (&p->id));
-  GNUNET_free (ps);
   return TEST_MESSAGE_SIZE;
 }
 
 
 static void
-sendtask_request_task (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
+sendtask_request_task (void *cls)
 {
   send_task = NULL;
-
-  if ((tc->reason & GNUNET_SCHEDULER_REASON_SHUTDOWN) != 0)
-    return;
   char *receiver_s = GNUNET_strdup (GNUNET_i2s (&p2->id));
 
   GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
@@ -240,42 +242,51 @@ notify_response_ready (void *cls, size_t size, void *buf)
   }
 
   GNUNET_assert (size >= TEST_MESSAGE_SIZE);
-  if (buf != NULL)
+  memset (buf, '\0', TEST_MESSAGE_SIZE);
+  hdr = buf;
+  hdr->size = htons (TEST_MESSAGE_SIZE);
+  hdr->type = htons (TEST_RESPONSE_MESSAGE_TYPE);
+
   {
-    memset (buf, '\0', TEST_MESSAGE_SIZE);
-    hdr = buf;
-    hdr->size = htons (TEST_MESSAGE_SIZE);
-    hdr->type = htons (TEST_RESPONSE_MESSAGE_TYPE);
+    char *ps = GNUNET_strdup (GNUNET_i2s (&p1->id));
+    GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+                "Sending response message from peer %u (`%4s') with type %u and size %u bytes to peer %u (`%4s')\n",
+                p1->no,
+                ps,
+                ntohs (hdr->type),
+                ntohs (hdr->size),
+                p->no,
+                GNUNET_i2s (&p->id));
+    GNUNET_free (ps);
   }
 
-  char *ps = GNUNET_strdup (GNUNET_i2s (&p1->id));
-  GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
-              "Sending response message from peer %u (`%4s') with type %u and size %u bytes to peer %u (`%4s')\n",
-              p1->no, ps, ntohs (hdr->type), ntohs (hdr->size), p->no,
-              GNUNET_i2s (&p->id));
-  GNUNET_free (ps);
-
   return TEST_MESSAGE_SIZE;
 }
 
+
 static void
-sendtask_response_task (void *cls, const struct GNUNET_SCHEDULER_TaskContext *tc)
+sendtask_response_task (void *cls)
 {
   send_task = NULL;
+  {
+    char *receiver_s = GNUNET_strdup (GNUNET_i2s (&p1->id));
 
-  if ((tc->reason & GNUNET_SCHEDULER_REASON_SHUTDOWN) != 0)
-    return;
-  char *receiver_s = GNUNET_strdup (GNUNET_i2s (&p1->id));
-
-  GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
-              "Sending message from peer %u (`%4s') -> peer %u (`%s') !\n",
-              p2->no, GNUNET_i2s (&p2->id), p1->no, receiver_s);
-  GNUNET_free (receiver_s);
+    GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
+                "Sending message from peer %u (`%4s') -> peer %u (`%s') !\n",
+                p2->no,
+                GNUNET_i2s (&p2->id),
+                p1->no,
+                receiver_s);
+    GNUNET_free (receiver_s);
+  }
 
   s_sending = GNUNET_YES;
-       start_response = GNUNET_TIME_absolute_get();
-  th = GNUNET_TRANSPORT_notify_transmit_ready (p2->th, &p1->id, TEST_MESSAGE_SIZE,
-                                               TIMEOUT_TRANSMIT, &notify_response_ready,
+  start_response = GNUNET_TIME_absolute_get();
+  th = GNUNET_TRANSPORT_notify_transmit_ready (p2->th,
+                                               &p1->id,
+                                               TEST_MESSAGE_SIZE,
+                                               TIMEOUT_TRANSMIT,
+                                               &notify_response_ready,
                                                p1);
 }