gnunet-svn
[Top][All Lists]
Advanced

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

[GNUnet-SVN] [taler-twister] branch master updated: Avoid asserting upon


From: gnunet
Subject: [GNUnet-SVN] [taler-twister] branch master updated: Avoid asserting upon malformed messages.
Date: Sat, 15 Jun 2019 00:01:52 +0200

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

marcello pushed a commit to branch master
in repository twister.

The following commit(s) were added to refs/heads/master by this push:
     new 90b1912  Avoid asserting upon malformed messages.
90b1912 is described below

commit 90b191290d18ca0a8e4bf2cf85597db06d65b5b2
Author: Marcello Stanisci <address@hidden>
AuthorDate: Sat Jun 15 00:01:35 2019 +0200

    Avoid asserting upon malformed messages.
---
 src/twister/taler-twister-service.c | 62 ++++++++++++++++++++++++-------------
 1 file changed, 41 insertions(+), 21 deletions(-)

diff --git a/src/twister/taler-twister-service.c 
b/src/twister/taler-twister-service.c
index 2e82b1f..b891715 100644
--- a/src/twister/taler-twister-service.c
+++ b/src/twister/taler-twister-service.c
@@ -2632,13 +2632,17 @@ handle_modify_path_dl (void *cls,
 
   tailsize = ntohs (src->header.size) - sizeof (*src);
 
-  GNUNET_assert
-    (tailsize == GNUNET_STRINGS_buffer_tokenize
-      ((const char *) &src[1],
-       tailsize,
-       2,
-       &payload_path,
-       &payload_value));
+  if (tailsize != GNUNET_STRINGS_buffer_tokenize
+    ((const char *) &src[1],
+     tailsize,
+     2,
+     &payload_path,
+     &payload_value))
+  {
+    GNUNET_break_op (0);
+    GNUNET_SERVICE_client_drop (c);
+    return;
+  }
 
   modify_path_dl = GNUNET_strdup (payload_path);
   modify_value = GNUNET_strdup (payload_value);
@@ -2694,12 +2698,17 @@ handle_flip_path_dl (void *cls,
 
   tailsize = ntohs (src->header.size) - sizeof (*src);
 
-  GNUNET_assert
-    (tailsize == GNUNET_STRINGS_buffer_tokenize
+  if (tailsize == GNUNET_STRINGS_buffer_tokenize
       ((const char *) &src[1],
        tailsize,
        1,
-       &payload));
+       &payload))
+  {
+    GNUNET_break_op (0);
+    GNUNET_SERVICE_client_drop (c);
+    return;
+  }
+
   flip_path_dl = GNUNET_strdup (payload);
   send_acknowledgement (c);
 }
@@ -2746,11 +2755,17 @@ handle_flip_path_ul (void *cls,
 
   tailsize = ntohs (src->header.size) - sizeof (*src);
 
-  GNUNET_assert
-    (tailsize == GNUNET_STRINGS_buffer_tokenize ((char *) &src[1],
-                                                 tailsize,
-                                                 1,
-                                                 &payload));
+  if (tailsize == GNUNET_STRINGS_buffer_tokenize
+    ((const char *) &src[1],
+     tailsize,
+     1,
+     &payload))
+  {
+    GNUNET_break_op (0);
+    GNUNET_SERVICE_client_drop (c);
+    return;
+  }
+
   flip_path_ul = GNUNET_strdup (payload);
   send_acknowledgement (c);
 }
@@ -2785,12 +2800,17 @@ handle_delete_path (void *cls,
 
   tailsize = ntohs (src->header.size) - sizeof (*src);
 
-  GNUNET_assert
-    (tailsize == GNUNET_STRINGS_buffer_tokenize
-      ((const char *) &src[1],
-       tailsize,
-       1,
-       &payload));
+  if (tailsize == GNUNET_STRINGS_buffer_tokenize
+    ((const char *) &src[1],
+     tailsize,
+     1,
+     &payload))
+  {
+    GNUNET_break_op (0);
+    GNUNET_SERVICE_client_drop (c);
+    return;
+  }
+
   delete_path = GNUNET_strdup (payload);
 
   send_acknowledgement (c);

-- 
To stop receiving notification emails like this one, please contact
address@hidden.



reply via email to

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