Loading src/common/util.c +21 −0 Original line number Diff line number Diff line Loading @@ -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); } src/common/util.h +2 −0 Original line number Diff line number Diff line Loading @@ -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); Loading Loading
src/common/util.c +21 −0 Original line number Diff line number Diff line Loading @@ -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); }
src/common/util.h +2 −0 Original line number Diff line number Diff line Loading @@ -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); Loading