gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[gnunet] branch master updated: Hello: Change error handling of GNUNET_H


From: gnunet
Subject: [gnunet] branch master updated: Hello: Change error handling of GNUNET_HELLO_builder_add_address usage.
Date: Wed, 08 Nov 2023 19:53:15 +0100

This is an automated email from the git hooks/post-receive script.

t3sserakt pushed a commit to branch master
in repository gnunet.

The following commit(s) were added to refs/heads/master by this push:
     new 1848ece45 Hello: Change error handling of 
GNUNET_HELLO_builder_add_address usage.
1848ece45 is described below

commit 1848ece45b985c3396968b308e005eda46d8d944
Author: t3sserakt <t3ss@posteo.de>
AuthorDate: Wed Nov 8 19:52:59 2023 +0100

    Hello: Change error handling of GNUNET_HELLO_builder_add_address usage.
---
 src/service/dht/gnunet-service-dht.c             | 14 ++++++++++++--
 src/service/transport/gnunet-service-transport.c | 22 ++++++++++++++++------
 2 files changed, 28 insertions(+), 8 deletions(-)

diff --git a/src/service/dht/gnunet-service-dht.c 
b/src/service/dht/gnunet-service-dht.c
index c3ce2f284..6250f60d4 100644
--- a/src/service/dht/gnunet-service-dht.c
+++ b/src/service/dht/gnunet-service-dht.c
@@ -264,10 +264,21 @@ u_address_add (void *cls,
 {
   struct GDS_Underlay *u = cls;
   struct MyAddress *a;
+  unsigned int add_success;
 
   GNUNET_log (GNUNET_ERROR_TYPE_INFO,
               "Underlay adds address %s for this peer\n",
               address);
+  add_success != GNUNET_HELLO_builder_add_address (GDS_my_hello,
+                                                   address);
+  if (GNUNET_OK != add_success)
+  {
+    GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
+                "Adding address `%s' from underlay %s\n",
+                address,
+                GNUNET_NO == add_success ? "not done" : "failed");
+    return;
+  }
   a = GNUNET_new (struct MyAddress);
   a->source = source;
   a->url = GNUNET_strdup (address);
@@ -276,8 +287,7 @@ u_address_add (void *cls,
                                a_tail,
                                a);
   *ctx = a;
-  GNUNET_HELLO_builder_add_address (GDS_my_hello,
-                                    address);
+  
   if (NULL != hello_task)
     GNUNET_SCHEDULER_cancel (hello_task);
   hello_task = GNUNET_SCHEDULER_add_now (&broadcast_hello,
diff --git a/src/service/transport/gnunet-service-transport.c 
b/src/service/transport/gnunet-service-transport.c
index 9562c1f68..3f0027a98 100644
--- a/src/service/transport/gnunet-service-transport.c
+++ b/src/service/transport/gnunet-service-transport.c
@@ -5526,6 +5526,15 @@ shc_cont (void *cls, int success)
                                     GNUNET_PEERSTORE_STOREOPTION_MULTIPLE,
                                     &peerstore_store_own_cb,
                                     ale);
+  if (NULL == ale->sc)
+  {
+    GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
+                "Failed to store our address `%s' with peerstore\n",
+                ale->address);
+    ale->st = GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_SECONDS,
+                                            &store_pi,
+                                            ale);
+   }
 }
 
 
@@ -5543,6 +5552,7 @@ store_pi (void *cls)
   const char *dash;
   char *address_uri;
   char *prefix = GNUNET_HELLO_address_to_prefix (ale->address);
+  unsigned int add_success;
 
   dash = strchr (ale->address, '-');
   GNUNET_assert (NULL != dash);
@@ -5557,15 +5567,15 @@ store_pi (void *cls)
               "Storing our address `%s' in peerstore until %s!\n",
               ale->address,
               GNUNET_STRINGS_absolute_time_to_string (hello_mono_time));
-  if (GNUNET_OK != GNUNET_HELLO_builder_add_address (GST_my_hello,
-                                                     address_uri))
+  add_success = GNUNET_HELLO_builder_add_address (GST_my_hello,
+                                                  address_uri);
+  if (GNUNET_OK != add_success)
   {
     GNUNET_log (GNUNET_ERROR_TYPE_WARNING,
-                "Address `%s' invalid\n",
-                address_uri);
+                "Storing our address `%s' %s\n",
+                address_uri,
+                GNUNET_NO == add_success ? "not done" : "failed");
     GNUNET_free (address_uri);
-    ale->st =
-      GNUNET_SCHEDULER_add_delayed (GNUNET_TIME_UNIT_SECONDS, &store_pi, ale);
     return;
   }
   // FIXME hello_mono_time used here?? What about expiration in ale?

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]