gnunet-svn
[Top][All Lists]
Advanced

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

[GNUnet-SVN] r35628 - gnunet/src/cadet


From: gnunet
Subject: [GNUnet-SVN] r35628 - gnunet/src/cadet
Date: Mon, 27 Apr 2015 21:15:24 +0200

Author: bartpolot
Date: 2015-04-27 21:15:24 +0200 (Mon, 27 Apr 2015)
New Revision: 35628

Modified:
   gnunet/src/cadet/gnunet-service-cadet_connection.c
   gnunet/src/cadet/gnunet-service-cadet_tunnel.c
Log:
- adjust checks for different encryption overheads

Modified: gnunet/src/cadet/gnunet-service-cadet_connection.c
===================================================================
--- gnunet/src/cadet/gnunet-service-cadet_connection.c  2015-04-27 19:15:22 UTC 
(rev 35627)
+++ gnunet/src/cadet/gnunet-service-cadet_connection.c  2015-04-27 19:15:24 UTC 
(rev 35628)
@@ -2235,7 +2235,8 @@
   const struct GNUNET_CADET_Encrypted *msg;
   const struct GNUNET_CADET_Hash* cid;
   struct CadetConnection *c;
-  size_t expected_size;
+  size_t minumum_size;
+  size_t overhead;
   uint32_t pid;
   uint32_t ttl;
   int fwd;
@@ -2244,11 +2245,14 @@
   cid = &msg->cid;
   log_message (message, peer, cid);
 
-  expected_size = sizeof (struct GNUNET_CADET_Encrypted)
-                  + sizeof (struct GNUNET_MessageHeader);
+  if (GNUNET_MESSAGE_TYPE_CADET_AX == ntohs (message->type))
+    overhead = sizeof (struct GNUNET_CADET_AX);
+  else
+    overhead = sizeof (struct GNUNET_CADET_Encrypted);
+  minumum_size = sizeof (struct GNUNET_MessageHeader) + overhead;
   c = connection_get (cid);
   pid = ntohl (msg->pid);
-  fwd = check_message (message, expected_size, cid, c, peer, pid);
+  fwd = check_message (message, minumum_size, cid, c, peer, pid);
 
   /* If something went wrong, discard message. */
   if (GNUNET_SYSERR == fwd)

Modified: gnunet/src/cadet/gnunet-service-cadet_tunnel.c
===================================================================
--- gnunet/src/cadet/gnunet-service-cadet_tunnel.c      2015-04-27 19:15:22 UTC 
(rev 35627)
+++ gnunet/src/cadet/gnunet-service-cadet_tunnel.c      2015-04-27 19:15:24 UTC 
(rev 35628)
@@ -2684,14 +2684,15 @@
 GCT_handle_encrypted (struct CadetTunnel *t,
                       const struct GNUNET_MessageHeader *msg)
 {
-  size_t size = ntohs (msg->size);
+  uint16_t size = ntohs (msg->size);
+  char cbuf [size];
   size_t payload_size;
   int decrypted_size;
-  char cbuf [size];
-  uint16_t type = ntohs (msg->type);
+  uint16_t type;
   struct GNUNET_MessageHeader *msgh;
   unsigned int off;
 
+  type = ntohs (msg->type);
   if (GNUNET_MESSAGE_TYPE_CADET_ENCRYPTED == type)
   {
     const struct GNUNET_CADET_Encrypted *emsg;




reply via email to

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