gnunet-svn
[Top][All Lists]
Advanced

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

[taler-exchange] branch master updated: -fixes in extension event handle


From: gnunet
Subject: [taler-exchange] branch master updated: -fixes in extension event handler
Date: Mon, 27 Jun 2022 18:06:48 +0200

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

oec pushed a commit to branch master
in repository exchange.

The following commit(s) were added to refs/heads/master by this push:
     new 206c7ec7 -fixes in extension event handler
206c7ec7 is described below

commit 206c7ec705567b3520ab170fd61cd8114adeed89
Author: Özgür Kesim <oec-taler@kesim.org>
AuthorDate: Mon Jun 27 18:06:44 2022 +0200

    -fixes in extension event handler
---
 src/exchange/taler-exchange-httpd_extensions.c            | 11 +++++++----
 src/exchange/taler-exchange-httpd_management_extensions.c | 10 +++-------
 2 files changed, 10 insertions(+), 11 deletions(-)

diff --git a/src/exchange/taler-exchange-httpd_extensions.c 
b/src/exchange/taler-exchange-httpd_extensions.c
index c9d47052..5a613738 100644
--- a/src/exchange/taler-exchange-httpd_extensions.c
+++ b/src/exchange/taler-exchange-httpd_extensions.c
@@ -38,8 +38,8 @@ static struct GNUNET_DB_EventHandler *extensions_eh;
  * the extensions data in the database.
  *
  * @param cls NULL
- * @param extra unused
- * @param extra_size number of bytes in @a extra unused
+ * @param extra type of the extension
+ * @param extra_size number of bytes in @a extra
  */
 static void
 extension_update_event_cb (void *cls,
@@ -47,13 +47,14 @@ extension_update_event_cb (void *cls,
                            size_t extra_size)
 {
   (void) cls;
+  uint32_t nbo_type;
   enum TALER_Extension_Type type;
   const struct TALER_Extension *extension;
 
   GNUNET_log (GNUNET_ERROR_TYPE_INFO,
               "Received extensions update event\n");
 
-  if (sizeof(enum TALER_Extension_Type) != extra_size)
+  if (sizeof(nbo_type) != extra_size)
   {
     GNUNET_break (0);
     GNUNET_log (GNUNET_ERROR_TYPE_ERROR,
@@ -61,8 +62,10 @@ extension_update_event_cb (void *cls,
     return;
   }
 
-  type = *(enum TALER_Extension_Type *) extra;
+  GNUNET_assert (NULL != extra);
 
+  nbo_type = *(uint32_t *) extra;
+  type = (enum TALER_Extension_Type) ntohl (nbo_type);
 
   /* Get the corresponding extension */
   extension = TALER_extensions_get_by_type (type);
diff --git a/src/exchange/taler-exchange-httpd_management_extensions.c 
b/src/exchange/taler-exchange-httpd_management_extensions.c
index ce151e2e..83a1dfc9 100644
--- a/src/exchange/taler-exchange-httpd_management_extensions.c
+++ b/src/exchange/taler-exchange-httpd_management_extensions.c
@@ -121,20 +121,16 @@ set_extensions (void *cls,
 
     /* Success, trigger event */
     {
-      enum TALER_Extension_Type *type = &sec->extensions[i].type;
+      uint32_t nbo_type = htonl (sec->extensions[i].type);
       struct GNUNET_DB_EventHeaderP ev = {
         .size = htons (sizeof (ev)),
         .type = htons (TALER_DBEVENT_EXCHANGE_EXTENSIONS_UPDATED)
       };
 
-      // FIXME-Oec: bug: convert type to NBO first!
-      // FIXME-Oec: bug: sizeof enum is ill-defined...
-      // FIXME-Oec: bug: don't see /keys listening to the event
-      // FIXME-Oec: why is   TEH_keys_update_states (); not enough?
       TEH_plugin->event_notify (TEH_plugin->cls,
                                 &ev,
-                                type,
-                                sizeof(*type));
+                                &nbo_type,
+                                sizeof(nbo_type));
     }
 
   }

-- 
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]