49 off_t offset, uint64_t size,
56 if ((uint64_t) (
size_t) size != size)
62 if (lseek (descriptor, offset, SEEK_SET) < 0)
69 if (view->
base == NULL)
77 r = read (descriptor, view->
base, size - got);
void * backtrace_alloc(struct backtrace_state *state ATTRIBUTE_UNUSED, size_t size, backtrace_error_callback error_callback, void *data)
void backtrace_free(struct backtrace_state *state ATTRIBUTE_UNUSED, void *p, size_t size ATTRIBUTE_UNUSED, backtrace_error_callback error_callback ATTRIBUTE_UNUSED, void *data ATTRIBUTE_UNUSED)
void(* backtrace_error_callback)(void *data, const char *msg, int errnum)
static void error_callback(void *data, const char *msg, int errnum)
void backtrace_release_view(struct backtrace_state *state, struct backtrace_view *view, backtrace_error_callback error_callback, void *data)
int backtrace_get_view(struct backtrace_state *state, int descriptor, off_t offset, uint64_t size, backtrace_error_callback error_callback, void *data, struct backtrace_view *view)
Functions to help with cleanup.