Commit 9744a40f authored by David Goulet's avatar David Goulet Committed by David Goulet
Browse files

Add tor_htonll/ntohll functions



Signed-off-by: default avatarDavid Goulet <dgoulet@ev0ke.net>
parent 49e8f475
Loading
Loading
Loading
Loading
+21 −0
Original line number Diff line number Diff line
@@ -5587,3 +5587,24 @@ clamp_double_to_int64(double number)
  return signbit(number) ? INT64_MIN : INT64_MAX;
}

/** 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 /* 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);
}
+2 −0
Original line number Diff line number Diff line
@@ -61,6 +61,8 @@ void *tor_memdup_(const void *mem, size_t len DMALLOC_PARAMS)
void *tor_memdup_nulterm_(const void *mem, size_t len DMALLOC_PARAMS)
  ATTR_MALLOC ATTR_NONNULL((1));
void tor_free_(void *mem);
uint64_t tor_htonll(uint64_t a);
uint64_t tor_ntohll(uint64_t a);
#ifdef USE_DMALLOC
extern int dmalloc_free(const char *file, const int line, void *pnt,
                        const int func_id);