aboutsummaryrefslogtreecommitdiff
path: root/src/transport/gnunet-communicator-tcp.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/transport/gnunet-communicator-tcp.c')
-rw-r--r--src/transport/gnunet-communicator-tcp.c17
1 files changed, 13 insertions, 4 deletions
diff --git a/src/transport/gnunet-communicator-tcp.c b/src/transport/gnunet-communicator-tcp.c
index 0bf919787..07eb6db3a 100644
--- a/src/transport/gnunet-communicator-tcp.c
+++ b/src/transport/gnunet-communicator-tcp.c
@@ -3264,7 +3264,7 @@ init_socket (struct sockaddr *addr,
3264 return GNUNET_SYSERR; 3264 return GNUNET_SYSERR;
3265 } 3265 }
3266 3266
3267 GNUNET_log (GNUNET_ERROR_TYPE_ERROR, 3267 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
3268 "address %s\n", 3268 "address %s\n",
3269 GNUNET_a2s (addr, in_len)); 3269 GNUNET_a2s (addr, in_len));
3270 3270
@@ -3403,15 +3403,17 @@ nat_register ()
3403 socklen_t *saddr_lens; 3403 socklen_t *saddr_lens;
3404 int i; 3404 int i;
3405 struct Addresses *pos; 3405 struct Addresses *pos;
3406 size_t len;
3406 3407
3407 3408
3408 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, 3409 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
3409 "starting nat register!\n"); 3410 "starting nat register!\n");
3410 3411
3412 len = 0;
3411 i = 0; 3413 i = 0;
3412 saddrs = GNUNET_malloc ((addrs_lens + 1) * sizeof(struct sockaddr *)); 3414 saddrs = GNUNET_malloc ((addrs_lens) * sizeof(struct sockaddr *));
3413 3415
3414 saddr_lens = GNUNET_malloc ((addrs_lens + 1) * sizeof(socklen_t)); 3416 saddr_lens = GNUNET_malloc ((addrs_lens) * sizeof(socklen_t));
3415 3417
3416 for (pos = addrs_head; NULL != pos; pos = pos->next) 3418 for (pos = addrs_head; NULL != pos; pos = pos->next)
3417 { 3419 {
@@ -3421,12 +3423,19 @@ nat_register ()
3421 GNUNET_a2s (addrs_head->addr, addrs_head->addr_len)); 3423 GNUNET_a2s (addrs_head->addr, addrs_head->addr_len));
3422 3424
3423 saddr_lens[i] = addrs_head->addr_len; 3425 saddr_lens[i] = addrs_head->addr_len;
3426 len += saddr_lens[i];
3424 saddrs[i] = GNUNET_memdup (addrs_head->addr, saddr_lens[i]); 3427 saddrs[i] = GNUNET_memdup (addrs_head->addr, saddr_lens[i]);
3425 3428
3426 i++; 3429 i++;
3427 3430
3428 } 3431 }
3429 3432
3433 GNUNET_log (GNUNET_ERROR_TYPE_DEBUG,
3434 "registering addresses %lu %lu %lu %lu\n",
3435 (addrs_lens) * sizeof(struct sockaddr *),
3436 (addrs_lens) * sizeof(socklen_t),
3437 len,
3438 sizeof(COMMUNICATOR_CONFIG_SECTION));
3430 nat = GNUNET_NAT_register (cfg, 3439 nat = GNUNET_NAT_register (cfg,
3431 COMMUNICATOR_CONFIG_SECTION, 3440 COMMUNICATOR_CONFIG_SECTION,
3432 IPPROTO_TCP, 3441 IPPROTO_TCP,
@@ -3437,7 +3446,7 @@ nat_register ()
3437 NULL /* FIXME: support reversal: #5529 */, 3446 NULL /* FIXME: support reversal: #5529 */,
3438 NULL /* closure */); 3447 NULL /* closure */);
3439 3448
3440 i = 0; 3449 // i = 0;
3441 3450
3442 for (i = addrs_lens - 1; i >= 0; i--) 3451 for (i = addrs_lens - 1; i >= 0; i--)
3443 GNUNET_free (saddrs[i]); 3452 GNUNET_free (saddrs[i]);