Преглед изворни кода

Move hex_str to binascii.c

Nick Mathewson пре 5 година
родитељ
комит
0a9d8dcf2b
4 измењених фајлова са 17 додато и 17 уклоњено
  1. 0 15
      src/common/util.c
  2. 0 2
      src/common/util.h
  3. 15 0
      src/lib/encoding/binascii.c
  4. 2 0
      src/lib/encoding/binascii.h

+ 0 - 15
src/common/util.c

@@ -225,21 +225,6 @@ add_laplace_noise(int64_t signal_, double random_, double delta_f,
  * String manipulation
  * ===== */
 
-/** Return a pointer to a NUL-terminated hexadecimal string encoding
- * the first <b>fromlen</b> bytes of <b>from</b>. (fromlen must be \<= 32.) The
- * result does not need to be deallocated, but repeated calls to
- * hex_str will trash old results.
- */
-const char *
-hex_str(const char *from, size_t fromlen)
-{
-  static char buf[65];
-  if (fromlen>(sizeof(buf)-1)/2)
-    fromlen = (sizeof(buf)-1)/2;
-  base16_encode(buf,sizeof(buf),from,fromlen);
-  return buf;
-}
-
 /** Return true if <b>string</b> is a valid 'key=[value]' string.
  *  "value" is optional, to indicate the empty string. Log at logging
  *  <b>severity</b> if something ugly happens. */

+ 0 - 2
src/common/util.h

@@ -71,8 +71,6 @@ int64_t clamp_double_to_int64(double number);
 
 /* String manipulation */
 
-const char *hex_str(const char *from, size_t fromlen) ATTR_NONNULL((1));
-
 int string_is_key_value(int severity, const char *string);
 
 char *tor_escape_str_for_pt_args(const char *string,

+ 15 - 0
src/lib/encoding/binascii.c

@@ -25,6 +25,21 @@
 #include <string.h>
 #include <stdlib.h>
 
+/** Return a pointer to a NUL-terminated hexadecimal string encoding
+ * the first <b>fromlen</b> bytes of <b>from</b>. (fromlen must be \<= 32.) The
+ * result does not need to be deallocated, but repeated calls to
+ * hex_str will trash old results.
+ */
+const char *
+hex_str(const char *from, size_t fromlen)
+{
+  static char buf[65];
+  if (fromlen>(sizeof(buf)-1)/2)
+    fromlen = (sizeof(buf)-1)/2;
+  base16_encode(buf,sizeof(buf),from,fromlen);
+  return buf;
+}
+
 /* Return the base32 encoded size in bytes using the source length srclen.
  *
  * (WATCH OUT: This API counts the terminating NUL byte, but

+ 2 - 0
src/lib/encoding/binascii.h

@@ -12,6 +12,8 @@
 #include "lib/testsupport/testsupport.h"
 #include "lib/cc/torint.h"
 
+const char *hex_str(const char *from, size_t fromlen);
+
 /** @{ */
 /** These macros don't check for overflow.  Use them only for constant inputs
  * (like array declarations).  The *_LEN macros are the raw encoding lengths