diff options
author | Christian Fuchs <christian.fuchs@cfuchs.net> | 2014-06-04 17:31:39 +0000 |
---|---|---|
committer | Christian Fuchs <christian.fuchs@cfuchs.net> | 2014-06-04 17:31:39 +0000 |
commit | f32b0bc6605984cf1766bc106f6f6d054cf26e06 (patch) | |
tree | 7b594e3881a422af501c43c438262635fd1e5457 /src/nat/nat_test.c | |
parent | d00e1d68624dc1576284a0a4fbc15a6140401960 (diff) | |
download | gnunet-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.c | 60 |
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 | ||