gnunet-svn
[Top][All Lists]
Advanced

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

[gnunet] branch master updated: RECLAIM: Fix assert during ticket iterat


From: gnunet
Subject: [gnunet] branch master updated: RECLAIM: Fix assert during ticket iteration
Date: Mon, 29 Jan 2024 23:59:22 +0100

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 31a66fa66 RECLAIM: Fix assert during ticket iteration
31a66fa66 is described below

commit 31a66fa661710e8d842e5742618664e067910c49
Author: TheJackiMonster <thejackimonster@gmail.com>
AuthorDate: Mon Jan 29 23:59:14 2024 +0100

    RECLAIM: Fix assert during ticket iteration
    
    Signed-off-by: TheJackiMonster <thejackimonster@gmail.com>
---
 src/service/reclaim/gnunet-service-reclaim.c |  5 +++--
 src/service/reclaim/reclaim_api.c            | 16 +++++++++-------
 src/service/reclaim/reclaim_credential.c     |  1 -
 3 files changed, 12 insertions(+), 10 deletions(-)

diff --git a/src/service/reclaim/gnunet-service-reclaim.c 
b/src/service/reclaim/gnunet-service-reclaim.c
index 2e45324c0..858a86aa5 100644
--- a/src/service/reclaim/gnunet-service-reclaim.c
+++ b/src/service/reclaim/gnunet-service-reclaim.c
@@ -671,13 +671,13 @@ send_ticket_result (const struct IdpClient *client,
   buf = (char*) &irm[1];
   if (NULL != ticket)
   {
-    irm->tkt_len = htons (tkt_len);
     written = GNUNET_RECLAIM_write_ticket_to_buffer (ticket, buf, tkt_len);
     GNUNET_assert (0 <= written);
     buf += written;
   }
   // TODO add success member
   irm->id = htonl (r_id);
+  irm->tkt_len = htons (tkt_len);
   irm->presentations_len = htons (pres_len);
   if (NULL != presentations)
   {
@@ -2515,9 +2515,10 @@ ticket_iter_cb (void *cls, struct GNUNET_RECLAIM_Ticket 
*ticket)
                                            &trm[1],
                                            tkt_len);
   }
-  trm->tkt_len = htons (tkt_len);
   trm->id = htonl (ti->r_id);
   GNUNET_log (GNUNET_ERROR_TYPE_DEBUG, "Sending TICKET_RESULT message\n");
+  trm->tkt_len = htons (tkt_len);
+  trm->presentations_len = htons(0);
   GNUNET_MQ_send (ti->client->mq, env);
   if (NULL == ticket)
     GNUNET_free (ti);
diff --git a/src/service/reclaim/reclaim_api.c 
b/src/service/reclaim/reclaim_api.c
index e9a34dd95..d865f0050 100644
--- a/src/service/reclaim/reclaim_api.c
+++ b/src/service/reclaim/reclaim_api.c
@@ -25,7 +25,6 @@
  */
 #include "platform.h"
 #include "gnunet_util_lib.h"
-#include "gnunet_constants.h"
 #include "gnunet_protocols.h"
 #include "gnunet_reclaim_lib.h"
 #include "gnunet_reclaim_service.h"
@@ -964,12 +963,15 @@ handle_ticket_result (void *cls, const struct 
TicketResultMessage *msg)
   if ((NULL == op) && (NULL == it))
     return;
   buf = (char*) &msg[1];
-  GNUNET_assert (GNUNET_SYSERR !=
-                 GNUNET_RECLAIM_read_ticket_from_buffer (buf,
-                                                         tkt_len,
-                                                         &ticket,
-                                                         &tb_read));
-  buf += tb_read;
+  if (0 < tkt_len)
+  {
+    GNUNET_assert (GNUNET_SYSERR !=
+                  GNUNET_RECLAIM_read_ticket_from_buffer (buf,
+                                                          tkt_len,
+                                                          &ticket,
+                                                          &tb_read));
+    buf += tb_read;
+  }
   if (NULL != op)
   {
     if (0 < pres_len)
diff --git a/src/service/reclaim/reclaim_credential.c 
b/src/service/reclaim/reclaim_credential.c
index 1aad261a1..a0cb7a62e 100644
--- a/src/service/reclaim/reclaim_credential.c
+++ b/src/service/reclaim/reclaim_credential.c
@@ -23,7 +23,6 @@
  * @brief helper library to manage identity attribute credentials
  * @author Martin Schanzenbach
  */
-#include "platform.h"
 #include "gnunet_util_lib.h"
 #include "gnunet_reclaim_plugin.h"
 #include "reclaim_credential.h"

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