From c78b8f8567ae1ea288f66af557bccd2cf255ddab Mon Sep 17 00:00:00 2001 From: ulfvonbelow Date: Sun, 5 May 2024 23:49:15 -0500 Subject: [PATCH] TRANSPORT: properly handle no matching natted address being found. --- .../transport/gnunet-service-transport.c | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/service/transport/gnunet-service-transport.c b/src/service/transport/gnunet-service-transport.c index 06c33ad00..35877e244 100644 --- a/src/service/transport/gnunet-service-transport.c +++ b/src/service/transport/gnunet-service-transport.c @@ -11738,18 +11738,20 @@ check_for_global_natted (void *cls, GNUNET_HELLO_builder_free (builder); tgna_cls.addr = get_address_without_port (queue->address); + tgna_cls.tgna = NULL; address_len_without_port = strlen (tgna_cls.addr); GNUNET_CONTAINER_multipeermap_get_multiple (neighbour->natted_addresses, &neighbour->pid, &contains_address, &tgna_cls); - GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, - " tgna_cls.tgna tgna %p %u %u %u\n", - tgna_cls.tgna, - neighbour->size_of_global_addresses, - tgna_cls.tgna->address_length, - neighbour->number_of_addresses); - if (0 == tgna_cls.tgna->address_length && GNUNET_YES == queue->is_global_natted) + if (NULL != tgna_cls.tgna) + GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, + " tgna_cls.tgna tgna %p %u %u %u\n", + tgna_cls.tgna, + neighbour->size_of_global_addresses, + tgna_cls.tgna->address_length, + neighbour->number_of_addresses); + if (NULL == tgna_cls.tgna && GNUNET_YES == queue->is_global_natted) { struct TransportGlobalNattedAddress *tgna; @@ -11766,7 +11768,7 @@ check_for_global_natted (void *cls, "Created tgna %p\n", tgna); } - else if (0 != tgna_cls.tgna->address_length && GNUNET_NO == queue->is_global_natted) + else if (NULL != tgna_cls.tgna && GNUNET_NO == queue->is_global_natted) { GNUNET_CONTAINER_multipeermap_remove (neighbour->natted_addresses, &neighbour->pid, -- 2.41.0