[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[gnunet] branch master updated: -fix messenger renaming
From: |
gnunet |
Subject: |
[gnunet] branch master updated: -fix messenger renaming |
Date: |
Tue, 05 Apr 2022 22:46:49 +0200 |
This is an automated email from the git hooks/post-receive script.
thejackimonster pushed a commit to branch master
in repository gnunet.
The following commit(s) were added to refs/heads/master by this push:
new d887cda50 -fix messenger renaming
d887cda50 is described below
commit d887cda509e0001adcdeb74feca80a71416827b7
Author: TheJackiMonster <thejackimonster@gmail.com>
AuthorDate: Tue Apr 5 22:46:38 2022 +0200
-fix messenger renaming
Signed-off-by: TheJackiMonster <thejackimonster@gmail.com>
---
src/messenger/gnunet-service-messenger_ego_store.c | 72 ++++++++++++++--------
1 file changed, 47 insertions(+), 25 deletions(-)
diff --git a/src/messenger/gnunet-service-messenger_ego_store.c
b/src/messenger/gnunet-service-messenger_ego_store.c
index bcc301e95..8f40a924b 100644
--- a/src/messenger/gnunet-service-messenger_ego_store.c
+++ b/src/messenger/gnunet-service-messenger_ego_store.c
@@ -181,8 +181,14 @@ create_store_ego (struct GNUNET_MESSENGER_EgoStore *store,
element->identifier = GNUNET_strdup (identifier);
- element->operation = GNUNET_IDENTITY_create (store->identity, identifier,
NULL,
- GNUNET_IDENTITY_TYPE_ECDSA,
callback_ego_create, element);
+ element->operation = GNUNET_IDENTITY_create (
+ store->identity,
+ identifier,
+ NULL,
+ GNUNET_IDENTITY_TYPE_ECDSA,
+ callback_ego_create,
+ element
+ );
GNUNET_CONTAINER_DLL_insert (store->op_start, store->op_end, element);
}
@@ -228,14 +234,28 @@ callback_ego_lookup (void *cls,
GNUNET_assert (element->identifier);
- struct GNUNET_MESSENGER_Ego *msg_ego;
+ struct GNUNET_MESSENGER_Ego *msg_ego = NULL;
if (ego)
+ {
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "New ego looked up: '%s'\n",
element->identifier);
msg_ego = update_store_ego (
- store, element->identifier, GNUNET_IDENTITY_ego_get_private_key(ego)
+ store,
+ element->identifier,
+ GNUNET_IDENTITY_ego_get_private_key(ego)
);
+ }
else
- msg_ego = NULL;
+ {
+ struct GNUNET_HashCode hash;
+ GNUNET_CRYPTO_hash (element->identifier, strlen (element->identifier),
&hash);
+
+ if (GNUNET_CONTAINER_multihashmap_get (store->egos, &hash))
+ {
+ GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Looked up ego got deleted:
'%s'\n", element->identifier);
+ delete_store_ego(store, element->identifier);
+ }
+ }
if (element->cb)
element->cb(element->cls, element->identifier, msg_ego);
@@ -261,28 +281,18 @@ lookup_store_ego(struct GNUNET_MESSENGER_EgoStore *store,
return;
}
- struct GNUNET_HashCode hash;
- GNUNET_CRYPTO_hash (identifier, strlen (identifier), &hash);
-
- struct GNUNET_MESSENGER_Ego *ego = GNUNET_CONTAINER_multihashmap_get
(store->egos, &hash);
+ struct GNUNET_MESSENGER_EgoLookup *element = GNUNET_new (struct
GNUNET_MESSENGER_EgoLookup);
- if (ego)
- lookup(cls, identifier, ego);
- else
- {
- struct GNUNET_MESSENGER_EgoLookup *element = GNUNET_new (struct
GNUNET_MESSENGER_EgoLookup);
-
- element->store = store;
+ element->store = store;
- element->cb = lookup;
- element->cls = cls;
+ element->cb = lookup;
+ element->cls = cls;
- element->identifier = GNUNET_strdup (identifier);
+ element->identifier = GNUNET_strdup (identifier);
- element->lookup = GNUNET_IDENTITY_ego_lookup(store->cfg, identifier,
callback_ego_lookup, element);
+ element->lookup = GNUNET_IDENTITY_ego_lookup(store->cfg, identifier,
callback_ego_lookup, element);
- GNUNET_CONTAINER_DLL_insert (store->lu_start, store->lu_end, element);
- }
+ GNUNET_CONTAINER_DLL_insert (store->lu_start, store->lu_end, element);
}
struct GNUNET_MESSENGER_Ego*
@@ -334,6 +344,8 @@ delete_store_ego (struct GNUNET_MESSENGER_EgoStore *store,
GNUNET_CONTAINER_multihashmap_remove (store->egos, &hash, ego);
GNUNET_free(ego);
+
+
}
static void
@@ -391,12 +403,17 @@ rename_store_ego (struct GNUNET_MESSENGER_EgoStore *store,
element->identifier = GNUNET_strdup (old_identifier);
- element->operation = GNUNET_IDENTITY_rename (store->identity,
old_identifier, new_identifier, callback_ego_rename, element);
+ element->operation = GNUNET_IDENTITY_rename (
+ store->identity,
+ old_identifier,
+ new_identifier,
+ callback_ego_rename,
+ element
+ );
GNUNET_CONTAINER_DLL_insert (store->op_start, store->op_end, element);
}
-
static void
callback_ego_delete (void *cls,
const char *emsg)
@@ -431,7 +448,12 @@ renew_store_ego (struct GNUNET_MESSENGER_EgoStore *store,
element->identifier = GNUNET_strdup (identifier);
- element->operation = GNUNET_IDENTITY_delete(store->identity, identifier,
callback_ego_delete, element);
+ element->operation = GNUNET_IDENTITY_delete(
+ store->identity,
+ identifier,
+ callback_ego_delete,
+ element
+ );
GNUNET_CONTAINER_DLL_insert (store->op_start, store->op_end, element);
}
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [gnunet] branch master updated: -fix messenger renaming,
gnunet <=