28static bool is_verbose =
true;
39#define PKRSRV_UTIL_ASSERT(condition) \
42 printf("Assertion failed: %s\n", #condition); \
43 printf("\tat: %s:%d\n", __FILE__, __LINE__); \
45 void* callstack[128]; \
46 int frames = backtrace(callstack, sizeof(callstack) / sizeof(void*)); \
47 char** lines = backtrace_symbols(callstack, frames); \
50 printf("Call Stack:\n"); \
52 for (int i = 0; i < frames; i++) { \
53 printf("%s\n", lines[i]); \
56 pkrsrv_util_assert_fail(); \
unsigned char * pkrsrv_util_base64_decode(unsigned char *data, int length)
int pkrsrv_util_msleep(long millis)
void pkrsrv_util_verbose(const char *format,...)
int pkrsrv_util_int2str(int number, char *target)
void pkrsrv_util_assert_fail()
void pkrsrv_util_verbose_set(int p_is_verbose)
unsigned char * pkrsrv_util_base64_encode(unsigned char *data, int length)
uint64_t pkrsrv_util_get_time_msec()