- log
[oweals/gnunet.git] / src / conversation / test_conversation_api.c
index 4417317fe3c4b3dbd31981c9ac769540a4d94892..d8c10c2bfd879a1f35c5c680fd558ba1a1cef379 100644 (file)
@@ -36,6 +36,8 @@
 
 #define FREQ GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_MILLISECONDS, 250)
 
+#define TIMEOUT GNUNET_TIME_relative_multiply (GNUNET_TIME_UNIT_SECONDS, 25)
+
 static int ok = 1;
 
 static const struct GNUNET_CONFIGURATION_Handle *cfg;
@@ -166,7 +168,7 @@ destroy_speaker (void *cls)
 }
 
 
-static struct GNUNET_SPEAKER_Handle caller_speaker = {
+static struct GNUNET_SPEAKER_Handle call_speaker = {
   &enable_speaker,
   &play,
   &disable_speaker,
@@ -180,7 +182,7 @@ static struct GNUNET_SPEAKER_Handle phone_speaker = {
   &play,
   &disable_speaker,
   &destroy_speaker,
-  "caller"
+  "phone"
 };
 
 
@@ -223,14 +225,15 @@ disable_mic (void *cls)
     phone_rdc = NULL;
     phone_rdc_cls = NULL;
     GNUNET_SCHEDULER_cancel (phone_task);
+    phone_task = GNUNET_SCHEDULER_NO_TASK;
   }
   else
   {
     call_rdc = NULL;
     call_rdc_cls = NULL;
     GNUNET_SCHEDULER_cancel (call_task);
+    call_task = GNUNET_SCHEDULER_NO_TASK;
   }
-
 }
 
 
@@ -245,7 +248,7 @@ destroy_mic (void *cls)
 }
 
 
-static struct GNUNET_MICROPHONE_Handle caller_mic = {
+static struct GNUNET_MICROPHONE_Handle call_mic = {
   &enable_mic,
   &disable_mic,
   &destroy_mic,
@@ -257,7 +260,7 @@ static struct GNUNET_MICROPHONE_Handle phone_mic = {
   &enable_mic,
   &disable_mic,
   &destroy_mic,
-  "caller"
+  "phone"
 };
 
 
@@ -373,6 +376,9 @@ call_event_handler (void *cls,
     break;
   case GNUNET_CONVERSATION_EC_CALL_GNS_FAIL:
   case GNUNET_CONVERSATION_EC_CALL_HUNG_UP:
+    call = NULL;
+    fprintf (stderr, "Unexpected call code: %d\n", code);
+    break;
   case GNUNET_CONVERSATION_EC_CALL_SUSPENDED:
   case GNUNET_CONVERSATION_EC_CALL_RESUMED:
     fprintf (stderr, "Unexpected call code: %d\n", code);
@@ -450,8 +456,8 @@ identity_cb (void *cls,
     call = GNUNET_CONVERSATION_call_start (cfg,
                                            ego,
                                            gns_name,
-                                           &caller_speaker,
-                                           &caller_mic,
+                                           &call_speaker,
+                                           &call_mic,
                                            &call_event_handler,
                                            NULL);
     return;
@@ -474,8 +480,7 @@ run (void *cls,
      struct GNUNET_TESTING_Peer *peer)
 {
   cfg = c;
-  GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_relative_multiply
-                                (GNUNET_TIME_UNIT_MINUTES, 1), &end_test,
+  GNUNET_SCHEDULER_add_delayed (TIMEOUT, &end_test,
                                 NULL);
   id = GNUNET_IDENTITY_connect (cfg,
                                 &identity_cb,