gnunet-svn
[Top][All Lists]
Advanced

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

[gnunet] branch master updated: replace expensive function call with mac


From: gnunet
Subject: [gnunet] branch master updated: replace expensive function call with macro for trivial calculation
Date: Wed, 25 Dec 2019 16:18:56 +0100

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

grothoff pushed a commit to branch master
in repository gnunet.

The following commit(s) were added to refs/heads/master by this push:
     new 64d6551e3 replace expensive function call with macro for trivial 
calculation
64d6551e3 is described below

commit 64d6551e3c6608afcd5dfd5ebdf6ad9bbac0b9f5
Author: Christian Grothoff <address@hidden>
AuthorDate: Wed Dec 25 16:14:57 2019 +0100

    replace expensive function call with macro for trivial calculation
---
 src/include/gnunet_common.h                  | 14 ++++++++++++++
 src/transport/transport_api2_communication.c |  6 +++++-
 src/util/common_endian.c                     |  8 ++++++++
 3 files changed, 27 insertions(+), 1 deletion(-)

diff --git a/src/include/gnunet_common.h b/src/include/gnunet_common.h
index 3ac186e0b..36f9eee4a 100644
--- a/src/include/gnunet_common.h
+++ b/src/include/gnunet_common.h
@@ -997,6 +997,11 @@ GNUNET_error_type_to_string (enum GNUNET_ErrorType kind);
 
 /* ************************* endianess conversion ****************** */
 
+#ifdef htonbe64
+
+#define GNUNET_htonll(n) htobe64 (n)
+
+#else
 /**
  * Convert unsigned 64-bit integer to network byte order.
  *
@@ -1008,7 +1013,14 @@ GNUNET_error_type_to_string (enum GNUNET_ErrorType kind);
 uint64_t
 GNUNET_htonll (uint64_t n);
 
+#endif
+
 
+#ifdef be64toh
+
+#define GNUNET_ntohll(n) be64toh (n)
+
+#else
 /**
  * Convert unsigned 64-bit integer to host byte order.
  *
@@ -1020,6 +1032,8 @@ GNUNET_htonll (uint64_t n);
 uint64_t
 GNUNET_ntohll (uint64_t n);
 
+#endif
+
 
 /**
  * Convert double to network byte order.
diff --git a/src/transport/transport_api2_communication.c 
b/src/transport/transport_api2_communication.c
index de5b42c3f..9df9424da 100644
--- a/src/transport/transport_api2_communication.c
+++ b/src/transport/transport_api2_communication.c
@@ -872,7 +872,7 @@ GNUNET_TRANSPORT_communicator_receive (
   {
     GNUNET_log (
       GNUNET_ERROR_TYPE_WARNING,
-      "Dropping message: transprot is too slow, queue length %llu exceeded\n",
+      "Dropping message: transport is too slow, queue length %llu exceeded\n",
       ch->max_queue_length);
     return GNUNET_NO;
   }
@@ -888,6 +888,10 @@ GNUNET_TRANSPORT_communicator_receive (
   im->expected_address_validity =
     GNUNET_TIME_relative_hton (expected_addr_validity);
   im->sender = *sender;
+  // FIXME: this is expensive, would be better if we would
+  // re-design the API to allow us to create the envelope first,
+  // and then have the application fill in the body so we do
+  // not have to memcpy()
   memcpy (&im[1], msg, msize);
   if (NULL != cb)
   {
diff --git a/src/util/common_endian.c b/src/util/common_endian.c
index fa7d99d85..d69cc1da5 100644
--- a/src/util/common_endian.c
+++ b/src/util/common_endian.c
@@ -31,6 +31,7 @@
 #define LOG(kind, ...) GNUNET_log_from (kind, "util-common-endian", 
__VA_ARGS__)
 
 
+#ifndef htonbe64
 uint64_t
 GNUNET_htonll (uint64_t n)
 {
@@ -44,6 +45,10 @@ GNUNET_htonll (uint64_t n)
 }
 
 
+#endif
+
+
+#ifndef be64toh
 uint64_t
 GNUNET_ntohll (uint64_t n)
 {
@@ -57,6 +62,9 @@ GNUNET_ntohll (uint64_t n)
 }
 
 
+#endif
+
+
 /**
  * Convert double to network-byte-order.
  * @param d the value in network byte order

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



reply via email to

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