gnunet-svn
[Top][All Lists]
Advanced

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

[gnunet] branch master updated (b2f9db3b8 -> d8cbbb5b6)


From: gnunet
Subject: [gnunet] branch master updated (b2f9db3b8 -> d8cbbb5b6)
Date: Mon, 06 Feb 2023 05:41:10 +0100

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

martin-schanzenbach pushed a change to branch master
in repository gnunet.

    from b2f9db3b8 Merge branch 'master' of git+ssh://git.gnunet.org/gnunet
     new 4b227ccb1 INCLUDE: change Mulit --> Multi in 
G_C_MulitHashMapIteratorCallback.
     new 1505f2f06 UTIL: fix memory leaks in several places.
     new 3b5473735 UTIL: fix one-byte buffer over-reads.
     new 491979ce5 UTIL: fix memory leak in test.
     new d8cbbb5b6 REVOCATION: add shutdown task earlier.

The 5 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 src/fs/gnunet-service-fs_pr.c              |  2 +-
 src/include/gnunet_container_lib.h         | 14 +++++++-------
 src/revocation/gnunet-service-revocation.c |  4 ++--
 src/set/gnunet-set-ibf-profiler.c          |  2 +-
 src/setu/gnunet-setu-ibf-profiler.c        |  2 +-
 src/util/container_multihashmap.c          |  6 +++---
 src/util/container_multihashmap32.c        |  4 ++--
 src/util/crypto_crc.c                      |  2 +-
 src/util/crypto_ecc_gnsrecord.c            |  2 ++
 src/util/crypto_hash.c                     |  2 +-
 src/util/crypto_hash_file.c                |  2 ++
 src/util/gnunet-crypto-tvg.c               | 27 +++++++++++++++++----------
 src/util/test_common_allocation.c          |  1 +
 13 files changed, 41 insertions(+), 29 deletions(-)

diff --git a/src/fs/gnunet-service-fs_pr.c b/src/fs/gnunet-service-fs_pr.c
index b938e3593..f192c017d 100644
--- a/src/fs/gnunet-service-fs_pr.c
+++ b/src/fs/gnunet-service-fs_pr.c
@@ -691,7 +691,7 @@ GSF_iterate_pending_requests_ (GSF_PendingRequestIterator 
it, void *cls)
 {
   GNUNET_CONTAINER_multihashmap_iterate (
     pr_map,
-    (GNUNET_CONTAINER_MulitHashMapIteratorCallback) it,
+    (GNUNET_CONTAINER_MultiHashMapIteratorCallback) it,
     cls);
 }
 
diff --git a/src/include/gnunet_container_lib.h 
b/src/include/gnunet_container_lib.h
index 02bd32330..ce1b8f296 100644
--- a/src/include/gnunet_container_lib.h
+++ b/src/include/gnunet_container_lib.h
@@ -401,7 +401,7 @@ enum GNUNET_CONTAINER_MultiHashMapOption
  *         #GNUNET_NO if not.
  */
 typedef enum GNUNET_GenericReturnValue
-(*GNUNET_CONTAINER_MulitHashMapIteratorCallback)(
+(*GNUNET_CONTAINER_MultiHashMapIteratorCallback)(
   void *cls,
   const struct GNUNET_HashCode *key,
   void *value);
@@ -580,7 +580,7 @@ GNUNET_CONTAINER_multihashmap_size (
 int
 GNUNET_CONTAINER_multihashmap_iterate (
   struct GNUNET_CONTAINER_MultiHashMap *map,
-  GNUNET_CONTAINER_MulitHashMapIteratorCallback it,
+  GNUNET_CONTAINER_MultiHashMapIteratorCallback it,
   void *it_cls);
 
 
@@ -650,7 +650,7 @@ int
 GNUNET_CONTAINER_multihashmap_get_multiple (
   struct GNUNET_CONTAINER_MultiHashMap *map,
   const struct GNUNET_HashCode *key,
-  GNUNET_CONTAINER_MulitHashMapIteratorCallback it,
+  GNUNET_CONTAINER_MultiHashMapIteratorCallback it,
   void *it_cls);
 
 
@@ -668,7 +668,7 @@ GNUNET_CONTAINER_multihashmap_get_multiple (
 unsigned int
 GNUNET_CONTAINER_multihashmap_get_random (
   const struct GNUNET_CONTAINER_MultiHashMap *map,
-  GNUNET_CONTAINER_MulitHashMapIteratorCallback it,
+  GNUNET_CONTAINER_MultiHashMapIteratorCallback it,
   void *it_cls);
 
 
@@ -1550,7 +1550,7 @@ struct GNUNET_CONTAINER_MultiHashMap32Iterator;
  *         #GNUNET_NO if not.
  */
 typedef enum GNUNET_GenericReturnValue
-(*GNUNET_CONTAINER_MulitHashMapIterator32Callback)(
+(*GNUNET_CONTAINER_MultiHashMapIterator32Callback)(
   void *cls,
   uint32_t key,
   void *value);
@@ -1621,7 +1621,7 @@ GNUNET_CONTAINER_multihashmap32_get (
 int
 GNUNET_CONTAINER_multihashmap32_iterate (
   struct GNUNET_CONTAINER_MultiHashMap32 *map,
-  GNUNET_CONTAINER_MulitHashMapIterator32Callback it,
+  GNUNET_CONTAINER_MultiHashMapIterator32Callback it,
   void *it_cls);
 
 
@@ -1729,7 +1729,7 @@ int
 GNUNET_CONTAINER_multihashmap32_get_multiple (
   struct GNUNET_CONTAINER_MultiHashMap32 *map,
   uint32_t key,
-  GNUNET_CONTAINER_MulitHashMapIterator32Callback it,
+  GNUNET_CONTAINER_MultiHashMapIterator32Callback it,
   void *it_cls);
 
 
diff --git a/src/revocation/gnunet-service-revocation.c 
b/src/revocation/gnunet-service-revocation.c
index e10771557..2cee70857 100644
--- a/src/revocation/gnunet-service-revocation.c
+++ b/src/revocation/gnunet-service-revocation.c
@@ -899,6 +899,8 @@ run (void *cls,
   cfg = c;
   revocation_map = GNUNET_CONTAINER_multihashmap_create (16,
                                                          GNUNET_NO);
+  GNUNET_SCHEDULER_add_shutdown (&shutdown_task,
+                                 NULL);
   if (GNUNET_OK !=
       GNUNET_CONFIGURATION_get_value_number (cfg,
                                              "REVOCATION",
@@ -1001,8 +1003,6 @@ run (void *cls,
   }
   GNUNET_free (fn);
 
-  GNUNET_SCHEDULER_add_shutdown (&shutdown_task,
-                                 NULL);
   peers = GNUNET_CONTAINER_multipeermap_create (128,
                                                 GNUNET_YES);
   /* Connect to core service and register core handlers */
diff --git a/src/set/gnunet-set-ibf-profiler.c 
b/src/set/gnunet-set-ibf-profiler.c
index 944b63d30..6465b15b8 100644
--- a/src/set/gnunet-set-ibf-profiler.c
+++ b/src/set/gnunet-set-ibf-profiler.c
@@ -67,7 +67,7 @@ register_hashcode (struct GNUNET_HashCode *hash)
 
 static void
 iter_hashcodes (struct IBF_Key key,
-                GNUNET_CONTAINER_MulitHashMapIteratorCallback iter,
+                GNUNET_CONTAINER_MultiHashMapIteratorCallback iter,
                 void *cls)
 {
   struct GNUNET_HashCode replicated;
diff --git a/src/setu/gnunet-setu-ibf-profiler.c 
b/src/setu/gnunet-setu-ibf-profiler.c
index 944b63d30..6465b15b8 100644
--- a/src/setu/gnunet-setu-ibf-profiler.c
+++ b/src/setu/gnunet-setu-ibf-profiler.c
@@ -67,7 +67,7 @@ register_hashcode (struct GNUNET_HashCode *hash)
 
 static void
 iter_hashcodes (struct IBF_Key key,
-                GNUNET_CONTAINER_MulitHashMapIteratorCallback iter,
+                GNUNET_CONTAINER_MultiHashMapIteratorCallback iter,
                 void *cls)
 {
   struct GNUNET_HashCode replicated;
diff --git a/src/util/container_multihashmap.c 
b/src/util/container_multihashmap.c
index ab909484a..b61395471 100644
--- a/src/util/container_multihashmap.c
+++ b/src/util/container_multihashmap.c
@@ -308,7 +308,7 @@ GNUNET_CONTAINER_multihashmap_get (
 int
 GNUNET_CONTAINER_multihashmap_iterate (
   struct GNUNET_CONTAINER_MultiHashMap *map,
-  GNUNET_CONTAINER_MulitHashMapIteratorCallback it,
+  GNUNET_CONTAINER_MultiHashMapIteratorCallback it,
   void *it_cls)
 {
   int count;
@@ -781,7 +781,7 @@ int
 GNUNET_CONTAINER_multihashmap_get_multiple (
   struct GNUNET_CONTAINER_MultiHashMap *map,
   const struct GNUNET_HashCode *key,
-  GNUNET_CONTAINER_MulitHashMapIteratorCallback it,
+  GNUNET_CONTAINER_MultiHashMapIteratorCallback it,
   void *it_cls)
 {
   int count;
@@ -847,7 +847,7 @@ GNUNET_CONTAINER_multihashmap_get_multiple (
 unsigned int
 GNUNET_CONTAINER_multihashmap_get_random (
   const struct GNUNET_CONTAINER_MultiHashMap *map,
-  GNUNET_CONTAINER_MulitHashMapIteratorCallback it,
+  GNUNET_CONTAINER_MultiHashMapIteratorCallback it,
   void *it_cls)
 {
   unsigned int off;
diff --git a/src/util/container_multihashmap32.c 
b/src/util/container_multihashmap32.c
index 4ff4e1678..4ddf0053b 100644
--- a/src/util/container_multihashmap32.c
+++ b/src/util/container_multihashmap32.c
@@ -225,7 +225,7 @@ GNUNET_CONTAINER_multihashmap32_get (
 int
 GNUNET_CONTAINER_multihashmap32_iterate (
   struct GNUNET_CONTAINER_MultiHashMap32 *map,
-  GNUNET_CONTAINER_MulitHashMapIterator32Callback it,
+  GNUNET_CONTAINER_MultiHashMapIterator32Callback it,
   void *it_cls)
 {
   int count;
@@ -491,7 +491,7 @@ int
 GNUNET_CONTAINER_multihashmap32_get_multiple (
   struct GNUNET_CONTAINER_MultiHashMap32 *map,
   uint32_t key,
-  GNUNET_CONTAINER_MulitHashMapIterator32Callback it,
+  GNUNET_CONTAINER_MultiHashMapIterator32Callback it,
   void *it_cls)
 {
   int count;
diff --git a/src/util/crypto_crc.c b/src/util/crypto_crc.c
index 9328f2b84..f93b5b0b3 100644
--- a/src/util/crypto_crc.c
+++ b/src/util/crypto_crc.c
@@ -114,7 +114,7 @@ GNUNET_CRYPTO_crc16_step (uint32_t sum, const void *buf, 
size_t len)
   for (; len >= 2; len -= 2)
     sum += *(hdr++);
   if (len == 1)
-    sum += (*hdr) & ntohs (0xFF00);
+    sum += ntohs(*((uint8_t *)hdr) << 8);
   return sum;
 }
 
diff --git a/src/util/crypto_ecc_gnsrecord.c b/src/util/crypto_ecc_gnsrecord.c
index b902e0e0a..fc99bfc18 100644
--- a/src/util/crypto_ecc_gnsrecord.c
+++ b/src/util/crypto_ecc_gnsrecord.c
@@ -361,7 +361,9 @@ GNUNET_CRYPTO_eddsa_private_key_derive (
   gcry_mpi_release (h);
   gcry_mpi_release (x);
   gcry_mpi_release (n);
+  gcry_mpi_release (h_mod_n);
   gcry_mpi_release (a1);
+  gcry_mpi_release (eight);
   gcry_mpi_release (a2);
   gcry_ctx_release (ctx);
   GNUNET_CRYPTO_mpi_print_unsigned (dc, sizeof(dc), d);
diff --git a/src/util/crypto_hash.c b/src/util/crypto_hash.c
index e45cb42e0..95c5c3480 100644
--- a/src/util/crypto_hash.c
+++ b/src/util/crypto_hash.c
@@ -73,7 +73,7 @@ GNUNET_CRYPTO_hash_from_string2 (const char *enc,
                                  size_t enclen,
                                  struct GNUNET_HashCode *result)
 {
-  char upper_enc[enclen];
+  char upper_enc[enclen+1];
   char *up_ptr = upper_enc;
 
   if (GNUNET_OK != GNUNET_STRINGS_utf8_toupper (enc, up_ptr))
diff --git a/src/util/crypto_hash_file.c b/src/util/crypto_hash_file.c
index 7300bab29..96d364d2b 100644
--- a/src/util/crypto_hash_file.c
+++ b/src/util/crypto_hash_file.c
@@ -184,6 +184,7 @@ GNUNET_CRYPTO_hash_file (enum GNUNET_SCHEDULER_Priority 
priority,
   if (GPG_ERR_NO_ERROR != gcry_md_open (&fhc->md, GCRY_MD_SHA512, 0))
   {
     GNUNET_break (0);
+    GNUNET_free (fhc->filename);
     GNUNET_free (fhc);
     return NULL;
   }
@@ -227,6 +228,7 @@ GNUNET_CRYPTO_hash_file_cancel (struct 
GNUNET_CRYPTO_FileHashContext *fhc)
   GNUNET_free (fhc->filename);
   GNUNET_break (GNUNET_OK ==
                 GNUNET_DISK_file_close (fhc->fh));
+  gcry_md_close (fhc->md);
   GNUNET_free (fhc);
 }
 
diff --git a/src/util/gnunet-crypto-tvg.c b/src/util/gnunet-crypto-tvg.c
index 4655407f0..5a16bb8fc 100644
--- a/src/util/gnunet-crypto-tvg.c
+++ b/src/util/gnunet-crypto-tvg.c
@@ -637,11 +637,12 @@ checkvec (const char *operation,
                                                             blinded_len)) )
     {
       GNUNET_free (blinded_data);
+      GNUNET_free (blinded_data_comp);
       GNUNET_free (public_enc_data);
       GNUNET_free (secret_enc_data);
       GNUNET_free (sig_enc_data);
-      GNUNET_free (skey);
-      GNUNET_free (pkey);
+      GNUNET_CRYPTO_rsa_private_key_free (skey);
+      GNUNET_CRYPTO_rsa_public_key_free (pkey);
       GNUNET_break (0);
       return GNUNET_NO;
     }
@@ -650,6 +651,7 @@ checkvec (const char *operation,
     sig = GNUNET_CRYPTO_rsa_unblind (blinded_sig, &bks, pkey);
     GNUNET_assert (GNUNET_YES == GNUNET_CRYPTO_rsa_verify (&message_hash, sig,
                                                            pkey));
+    GNUNET_free(public_enc_data);
     public_enc_len = GNUNET_CRYPTO_rsa_public_key_encode (pkey,
                                                           &public_enc_data);
     sig_enc_length_comp = GNUNET_CRYPTO_rsa_signature_encode (sig,
@@ -658,25 +660,29 @@ checkvec (const char *operation,
     if ( (sig_enc_length != sig_enc_length_comp) ||
          (0 != memcmp (sig_enc_data, sig_enc_data_comp, sig_enc_length) ))
     {
-      GNUNET_free (blinded_sig);
+      GNUNET_CRYPTO_rsa_signature_free (blinded_sig);
       GNUNET_free (blinded_data);
+      GNUNET_free (blinded_data_comp);
       GNUNET_free (public_enc_data);
       GNUNET_free (secret_enc_data);
       GNUNET_free (sig_enc_data);
-      GNUNET_free (skey);
-      GNUNET_free (sig);
-      GNUNET_free (pkey);
+      GNUNET_free (sig_enc_data_comp);
+      GNUNET_CRYPTO_rsa_private_key_free (skey);
+      GNUNET_CRYPTO_rsa_signature_free (sig);
+      GNUNET_CRYPTO_rsa_public_key_free (pkey);
       GNUNET_break (0);
       return GNUNET_NO;
     }
-    GNUNET_free (blinded_sig);
+    GNUNET_CRYPTO_rsa_signature_free (blinded_sig);
     GNUNET_free (blinded_data);
+    GNUNET_free (blinded_data_comp);
     GNUNET_free (public_enc_data);
     GNUNET_free (secret_enc_data);
     GNUNET_free (sig_enc_data);
-    GNUNET_free (sig);
-    GNUNET_free (pkey);
-    GNUNET_free (skey);
+    GNUNET_free (sig_enc_data_comp);
+    GNUNET_CRYPTO_rsa_signature_free (sig);
+    GNUNET_CRYPTO_rsa_public_key_free (pkey);
+    GNUNET_CRYPTO_rsa_private_key_free (skey);
   }
   else if (0 == strcmp (operation, "cs_blind_signing"))
   {
@@ -1009,6 +1015,7 @@ check_vectors ()
         break;
       }
     }
+    json_decref (vecfile);
     return (ret == GNUNET_OK) ? 0 : 1;
   }
 }
diff --git a/src/util/test_common_allocation.c 
b/src/util/test_common_allocation.c
index e262b696e..d4cc4bb58 100644
--- a/src/util/test_common_allocation.c
+++ b/src/util/test_common_allocation.c
@@ -154,6 +154,7 @@ check2 (void)
                                a1,
                                5));
   GNUNET_assert (5 == a1_len);
+  GNUNET_free (a1);
   return 0;
 }
 

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