aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/transport/transport-testing2.c57
1 files changed, 41 insertions, 16 deletions
diff --git a/src/transport/transport-testing2.c b/src/transport/transport-testing2.c
index ca338c52f..374d78f67 100644
--- a/src/transport/transport-testing2.c
+++ b/src/transport/transport-testing2.c
@@ -335,9 +335,15 @@ hello_iter_cb (void *cb_cls,
335 const char *emsg) 335 const char *emsg)
336{ 336{
337 struct GNUNET_TRANSPORT_TESTING_PeerContext *p = cb_cls; 337 struct GNUNET_TRANSPORT_TESTING_PeerContext *p = cb_cls;
338 if ((NULL == record) && (NULL == emsg))
339 {
340 LOG (GNUNET_ERROR_TYPE_DEBUG, "Iteration End\n");
341 return;
342 }
338 //Check record type et al? 343 //Check record type et al?
339 p->hello = GNUNET_malloc (record->value_size); 344 p->hello_size = record->value_size;
340 memcpy (p->hello, record->value, record->value_size); 345 p->hello = GNUNET_malloc (p->hello_size);
346 memcpy (p->hello, record->value, p->hello_size);
341 347
342 GNUNET_PEERSTORE_iterate_cancel (p->pic); 348 GNUNET_PEERSTORE_iterate_cancel (p->pic);
343 if (NULL != p->start_cb) 349 if (NULL != p->start_cb)
@@ -351,6 +357,23 @@ hello_iter_cb (void *cb_cls,
351 } 357 }
352} 358}
353 359
360static void
361retrieve_hello(void *cls)
362{
363 struct GNUNET_TRANSPORT_TESTING_PeerContext *p = cls;
364 LOG (GNUNET_ERROR_TYPE_DEBUG,
365 "Getting hello...\n");
366
367 p->pic = GNUNET_PEERSTORE_iterate (p->ph,
368 "transport",
369 &p->id,
370 GNUNET_PEERSTORE_TRANSPORT_HELLO_KEY,
371 hello_iter_cb,
372 p);
373
374}
375
376
354 377
355/** 378/**
356 * Start a peer with the given configuration 379 * Start a peer with the given configuration
@@ -507,13 +530,15 @@ GNUNET_TRANSPORT_TESTING_start_peer (struct
507 GNUNET_TRANSPORT_TESTING_stop_peer (p); 530 GNUNET_TRANSPORT_TESTING_stop_peer (p);
508 return NULL; 531 return NULL;
509 } 532 }
510 p->pic = GNUNET_PEERSTORE_iterate (p->ph, 533 p->ph = GNUNET_PEERSTORE_connect (p->cfg);
511 "transport", 534 // FIXME Error handling
512 &p->id, 535 p->ah = GNUNET_TRANSPORT_application_init (p->cfg);
513 GNUNET_PEERSTORE_TRANSPORT_HELLO_KEY, 536 GNUNET_assert (NULL != p->ah);
514 hello_iter_cb, 537 // FIXME Error handleing
515 p); 538 GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_SECONDS,
516 GNUNET_assert (NULL != p->pic); 539 retrieve_hello,
540 p);
541 //GNUNET_assert (NULL != p->pic);
517 542
518 return p; 543 return p;
519} 544}
@@ -739,18 +764,18 @@ offer_hello (void *cls)
739 GNUNET_i2s (&p1->id), 764 GNUNET_i2s (&p1->id),
740 p2->no, 765 p2->no,
741 p2_s, 766 p2_s,
742 cc->p2->hello); 767 p2->hello);
743 GNUNET_free (p2_s); 768 GNUNET_free (p2_s);
744 } 769 }
745 770
746 addr = GNUNET_HELLO_extract_address (cc->p2->hello, 771 addr = GNUNET_HELLO_extract_address (p2->hello,
747 cc->p2->hello_size, 772 strlen (p2->hello),
748 &cc->p2->id, 773 &p2->id,
749 &nt, 774 &nt,
750 &t); 775 &t);
751 GNUNET_assert (NULL == addr); 776 GNUNET_assert (NULL != addr);
752 GNUNET_TRANSPORT_application_validate (cc->p1->ah, 777 GNUNET_TRANSPORT_application_validate (p1->ah,
753 &cc->p2->id, 778 &p2->id,
754 nt, 779 nt,
755 addr); 780 addr);
756 GNUNET_free (addr); 781 GNUNET_free (addr);