summaryrefslogtreecommitdiff
path: root/src/common
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2018-06-27 15:00:11 -0400
committerNick Mathewson <nickm@torproject.org>2018-06-27 15:28:44 -0400
commit4d81f5211b3c714edae6370bccc6873033c0092d (patch)
tree351446df167a5e80530a66dcb7b13c697fa19180 /src/common
parent000de2f2ac4f740be8351673691371d78a5da7e9 (diff)
downloadtor-4d81f5211b3c714edae6370bccc6873033c0092d.tar.gz
tor-4d81f5211b3c714edae6370bccc6873033c0092d.zip
Move set/get_uint*() to inline functions in arch/bytes.h
Also move our ntohll/htonll functions.
Diffstat (limited to 'src/common')
-rw-r--r--src/common/compat.c65
-rw-r--r--src/common/compat.h17
-rw-r--r--src/common/util.c21
-rw-r--r--src/common/util.h3
4 files changed, 1 insertions, 105 deletions
diff --git a/src/common/compat.c b/src/common/compat.c
index e26591776e..033ffa6aee 100644
--- a/src/common/compat.c
+++ b/src/common/compat.c
@@ -227,71 +227,6 @@ tor_strtok_r_impl(char *str, const char *sep, char **lasts)
return start;
}
-/**
- * Read a 16-bit value beginning at <b>cp</b>. Equivalent to
- * *(uint16_t*)(cp), but will not cause segfaults on platforms that forbid
- * unaligned memory access.
- */
-uint16_t
-get_uint16(const void *cp)
-{
- uint16_t v;
- memcpy(&v,cp,2);
- return v;
-}
-/**
- * Read a 32-bit value beginning at <b>cp</b>. Equivalent to
- * *(uint32_t*)(cp), but will not cause segfaults on platforms that forbid
- * unaligned memory access.
- */
-uint32_t
-get_uint32(const void *cp)
-{
- uint32_t v;
- memcpy(&v,cp,4);
- return v;
-}
-/**
- * Read a 64-bit value beginning at <b>cp</b>. Equivalent to
- * *(uint64_t*)(cp), but will not cause segfaults on platforms that forbid
- * unaligned memory access.
- */
-uint64_t
-get_uint64(const void *cp)
-{
- uint64_t v;
- memcpy(&v,cp,8);
- return v;
-}
-
-/**
- * Set a 16-bit value beginning at <b>cp</b> to <b>v</b>. Equivalent to
- * *(uint16_t*)(cp) = v, but will not cause segfaults on platforms that forbid
- * unaligned memory access. */
-void
-set_uint16(void *cp, uint16_t v)
-{
- memcpy(cp,&v,2);
-}
-/**
- * Set a 32-bit value beginning at <b>cp</b> to <b>v</b>. Equivalent to
- * *(uint32_t*)(cp) = v, but will not cause segfaults on platforms that forbid
- * unaligned memory access. */
-void
-set_uint32(void *cp, uint32_t v)
-{
- memcpy(cp,&v,4);
-}
-/**
- * Set a 64-bit value beginning at <b>cp</b> to <b>v</b>. Equivalent to
- * *(uint64_t*)(cp) = v, but will not cause segfaults on platforms that forbid
- * unaligned memory access. */
-void
-set_uint64(void *cp, uint64_t v)
-{
- memcpy(cp,&v,8);
-}
-
/** Represents a lockfile on which we hold the lock. */
struct tor_lockfile_t {
/** Name of the file */
diff --git a/src/common/compat.h b/src/common/compat.h
index 1379f95a7e..2282e07be3 100644
--- a/src/common/compat.h
+++ b/src/common/compat.h
@@ -46,6 +46,7 @@
#endif
#include "lib/cc/compat_compiler.h"
+#include "lib/arch/bytes.h"
#include "common/compat_time.h"
#include "lib/string/compat_ctype.h"
#include "lib/string/compat_string.h"
@@ -152,22 +153,6 @@ typedef enum {
/* ===== OS compatibility */
MOCK_DECL(const char *, get_uname, (void));
-uint16_t get_uint16(const void *cp) ATTR_NONNULL((1));
-uint32_t get_uint32(const void *cp) ATTR_NONNULL((1));
-uint64_t get_uint64(const void *cp) ATTR_NONNULL((1));
-void set_uint16(void *cp, uint16_t v) ATTR_NONNULL((1));
-void set_uint32(void *cp, uint32_t v) ATTR_NONNULL((1));
-void set_uint64(void *cp, uint64_t v) ATTR_NONNULL((1));
-
-/* These uint8 variants are defined to make the code more uniform. */
-#define get_uint8(cp) (*(const uint8_t*)(cp))
-static void set_uint8(void *cp, uint8_t v);
-static inline void
-set_uint8(void *cp, uint8_t v)
-{
- *(uint8_t*)cp = v;
-}
-
#if !defined(HAVE_RLIM_T)
typedef unsigned long rlim_t;
#endif
diff --git a/src/common/util.c b/src/common/util.c
index 6233b8e4f1..09d3b2679c 100644
--- a/src/common/util.c
+++ b/src/common/util.c
@@ -2848,24 +2848,3 @@ ENABLE_GCC_WARNING(double-promotion)
ENABLE_GCC_WARNING(float-conversion)
#endif
}
-
-/** Return a uint64_t value from <b>a</b> in network byte order. */
-uint64_t
-tor_htonll(uint64_t a)
-{
-#ifdef WORDS_BIGENDIAN
- /* Big endian. */
- return a;
-#else /* WORDS_BIGENDIAN */
- /* Little endian. The worst... */
- return htonl((uint32_t)(a>>32)) |
- (((uint64_t)htonl((uint32_t)a))<<32);
-#endif /* defined(WORDS_BIGENDIAN) */
-}
-
-/** Return a uint64_t value from <b>a</b> in host byte order. */
-uint64_t
-tor_ntohll(uint64_t a)
-{
- return tor_htonll(a);
-}
diff --git a/src/common/util.h b/src/common/util.h
index 4f8d6395d2..2b16fc4576 100644
--- a/src/common/util.h
+++ b/src/common/util.h
@@ -39,9 +39,6 @@
#include "lib/fs/files.h"
#include "lib/fs/path.h"
-uint64_t tor_htonll(uint64_t a);
-uint64_t tor_ntohll(uint64_t a);
-
void tor_log_mallinfo(int severity);
/** Macro: yield a pointer to an enclosing structure given a pointer to