aboutsummaryrefslogtreecommitdiff
path: root/src/nat/nat_test.c
diff options
context:
space:
mode:
authorChristian Fuchs <christian.fuchs@cfuchs.net>2014-06-04 17:31:39 +0000
committerChristian Fuchs <christian.fuchs@cfuchs.net>2014-06-04 17:31:39 +0000
commitf32b0bc6605984cf1766bc106f6f6d054cf26e06 (patch)
tree7b594e3881a422af501c43c438262635fd1e5457 /src/nat/nat_test.c
parentd00e1d68624dc1576284a0a4fbc15a6140401960 (diff)
downloadgnunet-f32b0bc6605984cf1766bc106f6f6d054cf26e06.tar.gz
gnunet-f32b0bc6605984cf1766bc106f6f6d054cf26e06.zip
- disentangled test_icmp_client and test_icmp_server's logics
- integrated more error-reporting changes for nat_test.c
Diffstat (limited to 'src/nat/nat_test.c')
-rw-r--r--src/nat/nat_test.c60
1 files changed, 30 insertions, 30 deletions
diff --git a/src/nat/nat_test.c b/src/nat/nat_test.c
index 7d9d1a49c..84cf3b01b 100644
--- a/src/nat/nat_test.c
+++ b/src/nat/nat_test.c
@@ -382,7 +382,7 @@ GNUNET_NAT_test_start (const struct GNUNET_CONFIGURATION_Handle *cfg,
382 GNUNET_NAT_TestCallback report, 382 GNUNET_NAT_TestCallback report,
383 void *report_cls) 383 void *report_cls)
384{ 384{
385 struct GNUNET_NAT_Test *ret; 385 struct GNUNET_NAT_Test *nh;
386 struct sockaddr_in sa; 386 struct sockaddr_in sa;
387 const struct sockaddr *addrs[] = { (const struct sockaddr *) &sa }; 387 const struct sockaddr *addrs[] = { (const struct sockaddr *) &sa };
388 const socklen_t addrlens[] = { sizeof (sa) }; 388 const socklen_t addrlens[] = { sizeof (sa) };
@@ -394,72 +394,72 @@ GNUNET_NAT_test_start (const struct GNUNET_CONFIGURATION_Handle *cfg,
394 sa.sin_len = sizeof (sa); 394 sa.sin_len = sizeof (sa);
395#endif 395#endif
396 396
397 ret = GNUNET_new (struct GNUNET_NAT_Test); 397 nh = GNUNET_new (struct GNUNET_NAT_Test);
398 ret->cfg = cfg; 398 nh->cfg = cfg;
399 ret->is_tcp = is_tcp; 399 nh->is_tcp = is_tcp;
400 ret->data = bnd_port; 400 nh->data = bnd_port;
401 ret->adv_port = adv_port; 401 nh->adv_port = adv_port;
402 ret->report = report; 402 nh->report = report;
403 ret->report_cls = report_cls; 403 nh->report_cls = report_cls;
404 if (0 == bnd_port) 404 if (0 == bnd_port)
405 { 405 {
406 ret->nat = 406 nh->nat =
407 GNUNET_NAT_register (cfg, is_tcp, 0, 0, NULL, NULL, &addr_cb, 407 GNUNET_NAT_register (cfg, is_tcp, 0, 0, NULL, NULL, &addr_cb,
408 &reversal_cb, ret); 408 &reversal_cb, nh);
409 } 409 }
410 else 410 else
411 { 411 {
412 ret->lsock = 412 nh->lsock =
413 GNUNET_NETWORK_socket_create (AF_INET, 413 GNUNET_NETWORK_socket_create (AF_INET,
414 (is_tcp == 414 (is_tcp ==
415 GNUNET_YES) ? SOCK_STREAM : SOCK_DGRAM, 415 GNUNET_YES) ? SOCK_STREAM : SOCK_DGRAM,
416 0); 416 0);
417 if ((ret->lsock == NULL) || 417 if ((nh->lsock == NULL) ||
418 (GNUNET_OK != 418 (GNUNET_OK !=
419 GNUNET_NETWORK_socket_bind (ret->lsock, (const struct sockaddr *) &sa, 419 GNUNET_NETWORK_socket_bind (nh->lsock, (const struct sockaddr *) &sa,
420 sizeof (sa)))) 420 sizeof (sa))))
421 { 421 {
422 GNUNET_log (GNUNET_ERROR_TYPE_ERROR, 422 GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
423 _("Failed to create listen socket bound to `%s' for NAT test: %s\n"), 423 _("Failed to create listen socket bound to `%s' for NAT test: %s\n"),
424 GNUNET_a2s ((const struct sockaddr *) &sa, sizeof (sa)), 424 GNUNET_a2s ((const struct sockaddr *) &sa, sizeof (sa)),
425 STRERROR (errno)); 425 STRERROR (errno));
426 if (NULL != ret->lsock) 426 if (NULL != nh->lsock)
427 GNUNET_NETWORK_socket_close (ret->lsock); 427 GNUNET_NETWORK_socket_close (nh->lsock);
428 GNUNET_free (ret); 428 GNUNET_free (nh);
429 return NULL; 429 return NULL;
430 } 430 }
431 if (GNUNET_YES == is_tcp) 431 if (GNUNET_YES == is_tcp)
432 { 432 {
433 GNUNET_break (GNUNET_OK == GNUNET_NETWORK_socket_listen (ret->lsock, 5)); 433 GNUNET_break (GNUNET_OK == GNUNET_NETWORK_socket_listen (nh->lsock, 5));
434 ret->ltask = 434 nh->ltask =
435 GNUNET_SCHEDULER_add_read_net (GNUNET_TIME_UNIT_FOREVER_REL, 435 GNUNET_SCHEDULER_add_read_net (GNUNET_TIME_UNIT_FOREVER_REL,
436 ret->lsock, &do_accept, ret); 436 nh->lsock, &do_accept, nh);
437 } 437 }
438 else 438 else
439 { 439 {
440 ret->ltask = 440 nh->ltask =
441 GNUNET_SCHEDULER_add_read_net (GNUNET_TIME_UNIT_FOREVER_REL, 441 GNUNET_SCHEDULER_add_read_net (GNUNET_TIME_UNIT_FOREVER_REL,
442 ret->lsock, &do_udp_read, ret); 442 nh->lsock, &do_udp_read, nh);
443 } 443 }
444 LOG (GNUNET_ERROR_TYPE_DEBUG, 444 LOG (GNUNET_ERROR_TYPE_DEBUG,
445 "NAT test listens on port %u (%s)\n", 445 "NAT test listens on port %u (%s)\n",
446 bnd_port, 446 bnd_port,
447 (GNUNET_YES == is_tcp) ? "tcp" : "udp"); 447 (GNUNET_YES == is_tcp) ? "tcp" : "udp");
448 ret->nat = GNUNET_NAT_register (cfg, is_tcp, adv_port, 1, addrs, addrlens, 448 nh->nat = GNUNET_NAT_register (cfg, is_tcp, adv_port, 1, addrs, addrlens,
449 &addr_cb, NULL, ret); 449 &addr_cb, NULL, nh);
450 if (NULL == ret->nat) 450 if (NULL == nh->nat)
451 { 451 {
452 LOG (GNUNET_ERROR_TYPE_ERROR, 452 LOG (GNUNET_ERROR_TYPE_ERROR,
453 _("NAT test failed to start NAT library\n")); 453 _("NAT test failed to start NAT library\n"));
454 if (GNUNET_SCHEDULER_NO_TASK != ret->ltask) 454 if (GNUNET_SCHEDULER_NO_TASK != nh->ltask)
455 GNUNET_SCHEDULER_cancel (ret->ltask); 455 GNUNET_SCHEDULER_cancel (nh->ltask);
456 if (NULL != ret->lsock) 456 if (NULL != nh->lsock)
457 GNUNET_NETWORK_socket_close (ret->lsock); 457 GNUNET_NETWORK_socket_close (nh->lsock);
458 GNUNET_free (ret); 458 GNUNET_free (nh);
459 return NULL; 459 return NULL;
460 } 460 }
461 } 461 }
462 return ret; 462 return nh;
463} 463}
464 464
465 465