strcmp instead of memcmp
authorChristian Grothoff <christian@grothoff.org>
Wed, 22 Feb 2017 13:53:11 +0000 (14:53 +0100)
committerChristian Grothoff <christian@grothoff.org>
Wed, 22 Feb 2017 13:53:11 +0000 (14:53 +0100)
src/block/plugin_block_template.c
src/block/plugin_block_test.c
src/dht/dht_api.c
src/dht/gnunet-service-dht_neighbours.c
src/dht/plugin_block_dht.c
src/fs/plugin_block_fs.c
src/include/gnunet_strings_lib.h
src/regex/plugin_block_regex.c
src/util/strings.c

index f11d5ee76ff194c87829ed1f234acf77ef505af8..0825bd095ef286776e7a21b5f31770f3fb0220b4 100644 (file)
@@ -98,13 +98,11 @@ block_plugin_template_create_group (void *cls,
   const char *guard;
 
   guard = va_arg (va, const char *);
-  if (0 == memcmp (guard,
-                   "seen-set-size",
-                   strlen ("seen-set-size")))
+  if (0 == strcmp (guard,
+                   "seen-set-size"))
     bf_size = compute_bloomfilter_size (va_arg (va, unsigned int));
-  else if (0 == memcmp (guard,
-                        "filter-size",
-                        strlen ("filter-size")))
+  else if (0 == strcmp (guard,
+                        "filter-size"))
     bf_size = va_arg (va, unsigned int);
   else
   {
index c5483f26eb8e6f9151bacb9a4b5484b33f9df79d..31112e5dde4c44bf35faeae5b11ddf41012f6739 100644 (file)
@@ -96,13 +96,11 @@ block_plugin_test_create_group (void *cls,
   const char *guard;
 
   guard = va_arg (va, const char *);
-  if (0 == memcmp (guard,
-                   "seen-set-size",
-                   strlen ("seen-set-size")))
+  if (0 == strcmp (guard,
+                   "seen-set-size"))
     bf_size = compute_bloomfilter_size (va_arg (va, unsigned int));
-  else if (0 == memcmp (guard,
-                        "filter-size",
-                        strlen ("filter-size")))
+  else if (0 == strcmp (guard,
+                        "filter-size"))
     bf_size = va_arg (va, unsigned int);
   else
   {
index 070d248edda2d5edbc107d7846f59c8e51271036..ee208b50e73770341630419fd71f1e95142e33f0 100644 (file)
@@ -754,12 +754,25 @@ process_client_result (void *cls,
   meta_length =
       sizeof (struct GNUNET_PeerIdentity) * (get_path_length + put_path_length);
   data_length = msize - meta_length;
-  LOG (GNUNET_ERROR_TYPE_DEBUG,
-       "Giving %u byte reply for %s to application\n",
-       (unsigned int) data_length,
-       GNUNET_h2s (key));
   put_path = (const struct GNUNET_PeerIdentity *) &crm[1];
   get_path = &put_path[put_path_length];
+  {
+    char *pp;
+    char *gp;
+
+    gp = GNUNET_STRINGS_pp2s (get_path,
+                              get_path_length);
+    pp = GNUNET_STRINGS_pp2s (put_path,
+                              put_path_length);
+    LOG (GNUNET_ERROR_TYPE_DEBUG,
+         "Giving %u byte reply for %s to application (GP: %s, PP: %s)\n",
+         (unsigned int) data_length,
+         GNUNET_h2s (key),
+         gp,
+         pp);
+    GNUNET_free (gp);
+    GNUNET_free (pp);
+  }
   data = &get_path[get_path_length];
   /* remember that we've seen this result */
   GNUNET_CRYPTO_hash (data,
index 346925032bce95dcee505fc05525d82fc10ef876..bb6285730313911ca33cb4da6a1f6be238fda016 100644 (file)
@@ -1665,10 +1665,13 @@ handle_dht_p2p_put (void *cls,
   if (GNUNET_YES == log_route_details_stderr)
   {
     char *tmp;
+    char *pp;
 
+    pp = GNUNET_STRINGS_pp2s (put_path,
+                              putlen);
     tmp = GNUNET_strdup (GNUNET_i2s (&my_identity));
     LOG_TRAFFIC (GNUNET_ERROR_TYPE_DEBUG,
-                 "R5N PUT %s: %s->%s (%u, %u=>%u)\n",
+                 "R5N PUT %s: %s->%s (%u, %u=>%u, PP: %s)\n",
                  GNUNET_h2s (&put->key),
                  GNUNET_i2s (peer->id),
                  tmp,
@@ -1676,8 +1679,9 @@ handle_dht_p2p_put (void *cls,
                  GNUNET_CRYPTO_hash_matching_bits (&peer->phash,
                                                    &put->key),
                  GNUNET_CRYPTO_hash_matching_bits (&my_identity_hash,
-                                                   &put->key)
-                );
+                                                   &put->key),
+                 pp);
+    GNUNET_free (pp);
     GNUNET_free (tmp);
   }
   switch (GNUNET_BLOCK_get_key
@@ -1965,6 +1969,15 @@ handle_local_result (void *cls,
                      const void *data,
                      size_t data_size)
 {
+  char *pp;
+
+  pp = GNUNET_STRINGS_pp2s (put_path,
+                            put_path_length);
+  LOG (GNUNET_ERROR_TYPE_DEBUG,
+       "Found local result for %s (PP: %s)\n",
+       GNUNET_h2s (key),
+       pp);
+  GNUNET_free (pp);
   // FIXME: we can probably do better here by
   // passing the peer that did the query in the closure...
   GDS_ROUTING_process (NULL,
@@ -2243,14 +2256,23 @@ handle_dht_p2p_result (void *cls,
   if (GNUNET_YES == log_route_details_stderr)
   {
     char *tmp;
+    char *pp;
+    char *gp;
 
+    gp = GNUNET_STRINGS_pp2s (get_path,
+                              get_path_length);
+    pp = GNUNET_STRINGS_pp2s (put_path,
+                              put_path_length);
     tmp = GNUNET_strdup (GNUNET_i2s (&my_identity));
     LOG_TRAFFIC (GNUNET_ERROR_TYPE_DEBUG,
-                 "R5N RESULT %s: %s->%s (%u)\n",
+                 "R5N RESULT %s: %s->%s (GP: %s, PP: %s)\n",
                  GNUNET_h2s (&prm->key),
                  GNUNET_i2s (peer->id),
                  tmp,
-                 get_path_length + 1);
+                 gp,
+                 pp);
+    GNUNET_free (gp);
+    GNUNET_free (pp);
     GNUNET_free (tmp);
   }
   /* if we got a HELLO, consider it for our own routing table */
index 72480536cef73a826d8f3d1c3d696f33583a0da0..29c08dd50fc55349861ad4f2b58f9cba97a3de97 100644 (file)
@@ -95,13 +95,11 @@ block_plugin_dht_create_group (void *cls,
   const char *guard;
 
   guard = va_arg (va, const char *);
-  if (0 == memcmp (guard,
-                   "seen-set-size",
-                   strlen ("seen-set-size")))
+  if (0 == strcmp (guard,
+                   "seen-set-size"))
     bf_size = compute_bloomfilter_size (va_arg (va, unsigned int));
-  else if (0 == memcmp (guard,
-                        "filter-size",
-                        strlen ("filter-size")))
+  else if (0 == strcmp (guard,
+                        "filter-size"))
     bf_size = va_arg (va, unsigned int);
   else
   {
index bea6b148c423242af39de9189ffd1079255d7043..996c06dcba5650da667dd6a0a5cbcf28484c1dc3 100644 (file)
@@ -102,9 +102,8 @@ block_plugin_fs_create_group (void *cls,
     return NULL;
   case GNUNET_BLOCK_TYPE_FS_UBLOCK:
     guard = va_arg (va, const char *);
-    if (0 != memcmp (guard,
-                     "seen-set-size",
-                     strlen ("seen-set-size")))
+    if (0 != strcmp (guard,
+                     "seen-set-size"))
     {
       /* va-args invalid! bad bug, complain! */
       GNUNET_break (0);
index 0328882ddb64ce0afae89f99492be2a38d8fbbef..144780c8211d7455e2f3b3421186283d4c2bd467 100644 (file)
@@ -359,6 +359,18 @@ GNUNET_STRINGS_base64_decode (const char *data,
                              char **output);
 
 
+/**
+ * Convert a peer path to a human-readable string.
+ *
+ * @param pids array of PIDs to convert to a string
+ * @param num_pids length of the @a pids array
+ * @return string representing the array of @a pids
+ */
+char *
+GNUNET_STRINGS_pp2s (const struct GNUNET_PeerIdentity *pids,
+                     unsigned int num_pids);
+
+
 /**
  * Parse a path that might be an URI.
  *
@@ -477,7 +489,7 @@ GNUNET_STRINGS_to_address_ipv4 (const char *zt_addr,
 
 
 /**
- * Parse an address given as a string into a 
+ * Parse an address given as a string into a
  * `struct sockaddr`.
  *
  * @param addr the address
index b9814c737d0b2dd5c76634d38516ea947cb7bf54..19335e8157bc28d443d90d8b39580ad2b37bacb7 100644 (file)
@@ -100,13 +100,11 @@ block_plugin_regex_create_group (void *cls,
   const char *guard;
 
   guard = va_arg (va, const char *);
-  if (0 == memcmp (guard,
-                   "seen-set-size",
-                   strlen ("seen-set-size")))
+  if (0 == strcmp (guard,
+                   "seen-set-size"))
     bf_size = compute_bloomfilter_size (va_arg (va, unsigned int));
-  else if (0 == memcmp (guard,
-                        "filter-size",
-                        strlen ("filter-size")))
+  else if (0 == strcmp (guard,
+                        "filter-size"))
     bf_size = va_arg (va, unsigned int);
   else
   {
index 2b51d3e523d0c6403303c2851635228f944d7d13..2912553446d9ded02c26a6a6f2026b3366c4cf5e 100644 (file)
@@ -1,6 +1,6 @@
 /*
      This file is part of GNUnet.
-     Copyright (C) 2005-2013 GNUnet e.V.
+     Copyright (C) 2005-2017 GNUnet e.V.
 
      GNUnet is free software; you can redistribute it and/or modify
      it under the terms of the GNU General Public License as published
@@ -17,7 +17,6 @@
      Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
      Boston, MA 02110-1301, USA.
 */
-
 /**
  * @file util/strings.c
  * @brief string functions
@@ -89,6 +88,37 @@ GNUNET_STRINGS_buffer_fill (char *buffer, size_t size, unsigned int count, ...)
 }
 
 
+/**
+ * Convert a peer path to a human-readable string.
+ *
+ * @param pids array of PIDs to convert to a string
+ * @param num_pids length of the @a pids array
+ * @return string representing the array of @a pids
+ */
+char *
+GNUNET_STRINGS_pp2s (const struct GNUNET_PeerIdentity *pids,
+                     unsigned int num_pids)
+{
+  char *buf;
+  size_t off;
+  size_t plen = num_pids * 5 + 1;
+
+  off = 0;
+  buf = GNUNET_malloc (plen);
+  for (unsigned int i = 0;
+       i < num_pids;
+       i++)
+  {
+    off += GNUNET_snprintf (&buf[off],
+                            plen - off,
+                            "%s%s",
+                            GNUNET_i2s (&pids[i]),
+                            (i == num_pids -1) ? "" : "-");
+  }
+  return buf;
+}
+
+
 /**
  * Given a buffer of a given size, find "count"
  * 0-terminated strings in the buffer and assign