2018-05-22 15:54:19 +00:00
|
|
|
#define NO_JEMALLOC
|
2019-01-10 19:41:51 +00:00
|
|
|
#include <util/mem.h>
|
2018-05-22 15:54:19 +00:00
|
|
|
#include <cstdlib>
|
2018-01-08 13:49:05 +00:00
|
|
|
|
2019-04-19 18:24:33 +00:00
|
|
|
#include <absl/base/attributes.h>
|
|
|
|
|
2018-05-18 12:39:17 +00:00
|
|
|
namespace llarp
|
|
|
|
{
|
2018-05-22 15:54:19 +00:00
|
|
|
void
|
|
|
|
Zero(void *ptr, size_t sz)
|
2018-05-18 12:39:17 +00:00
|
|
|
{
|
2019-07-30 23:42:13 +00:00
|
|
|
auto *p = (uint8_t *)ptr;
|
2018-05-18 12:39:17 +00:00
|
|
|
while(sz--)
|
|
|
|
{
|
|
|
|
*p = 0;
|
|
|
|
++p;
|
|
|
|
}
|
|
|
|
}
|
2018-07-09 03:34:29 +00:00
|
|
|
} // namespace llarp
|
2018-05-16 18:13:18 +00:00
|
|
|
|
2018-05-22 15:54:19 +00:00
|
|
|
void
|
2019-04-19 18:24:33 +00:00
|
|
|
llarp_mem_slab(ABSL_ATTRIBUTE_UNUSED struct llarp_alloc *mem,
|
|
|
|
ABSL_ATTRIBUTE_UNUSED uint32_t *buf,
|
|
|
|
ABSL_ATTRIBUTE_UNUSED size_t sz)
|
2018-05-22 15:54:19 +00:00
|
|
|
{
|
|
|
|
// not implemented
|
|
|
|
abort();
|
|
|
|
}
|
2018-05-20 13:43:42 +00:00
|
|
|
|
2018-05-22 15:54:19 +00:00
|
|
|
bool
|
|
|
|
llarp_eq(const void *a, const void *b, size_t sz)
|
|
|
|
{
|
2019-07-30 23:42:13 +00:00
|
|
|
bool result = true;
|
|
|
|
const auto *a_ptr = (const uint8_t *)a;
|
|
|
|
const auto *b_ptr = (const uint8_t *)b;
|
2018-05-22 15:54:19 +00:00
|
|
|
while(sz--)
|
2018-05-20 13:43:42 +00:00
|
|
|
{
|
2018-05-22 15:54:19 +00:00
|
|
|
result &= a_ptr[sz] == b_ptr[sz];
|
2018-05-20 13:43:42 +00:00
|
|
|
}
|
2018-05-22 15:54:19 +00:00
|
|
|
return result;
|
|
|
|
}
|