drmemtrace.h File Reference

Header for customizing the DrMemtrace tracer. More...

Data Structures

struct  dynamorio::drmemtrace::drmemtrace_replace_file_ops_t
 

Namespaces

 dynamorio::drmemtrace
 

Macros

#define DRMGR_PRIORITY_NAME_MEMTRACE   "memtrace"
 

Typedefs

typedef file_t(* dynamorio::drmemtrace::drmemtrace_open_file_func_t) (const char *fname, uint mode_flags)
 
typedef file_t(* dynamorio::drmemtrace::drmemtrace_open_file_ex_func_t) (const char *fname, uint mode_flags, thread_id_t thread_id, int64 window_id)
 
typedef ssize_t(* dynamorio::drmemtrace::drmemtrace_read_file_func_t) (file_t file, void *buf, size_t count)
 
typedef ssize_t(* dynamorio::drmemtrace::drmemtrace_write_file_func_t) (file_t file, const void *data, size_t count)
 
typedef void(* dynamorio::drmemtrace::drmemtrace_close_file_func_t) (file_t file)
 
typedef bool(* dynamorio::drmemtrace::drmemtrace_create_dir_func_t) (const char *dir)
 
typedef bool(* dynamorio::drmemtrace::drmemtrace_handoff_func_t) (file_t file, void *data, size_t data_size, size_t alloc_size)
 
typedef void(* dynamorio::drmemtrace::drmemtrace_exit_func_t) (void *arg)
 

Enumerations

enum  dynamorio::drmemtrace::drmemtrace_status_t {
  dynamorio::drmemtrace::DRMEMTRACE_SUCCESS,
  dynamorio::drmemtrace::DRMEMTRACE_ERROR,
  dynamorio::drmemtrace::DRMEMTRACE_ERROR_INVALID_PARAMETER,
  dynamorio::drmemtrace::DRMEMTRACE_ERROR_NOT_IMPLEMENTED
}
 

Functions

DR_EXPORT void dynamorio::drmemtrace::drmemtrace_client_main (client_id_t id, int argc, const char *argv[])
 
DR_EXPORT drmemtrace_status_t dynamorio::drmemtrace::drmemtrace_replace_file_ops (drmemtrace_open_file_func_t open_file_func, drmemtrace_read_file_func_t read_file_func, drmemtrace_write_file_func_t write_file_func, drmemtrace_close_file_func_t close_file_func, drmemtrace_create_dir_func_t create_dir_func)
 
DR_EXPORT drmemtrace_status_t dynamorio::drmemtrace::drmemtrace_buffer_handoff (drmemtrace_handoff_func_t handoff_func, drmemtrace_exit_func_t exit_func, void *exit_func_arg)
 
DR_EXPORT drmemtrace_status_t dynamorio::drmemtrace::drmemtrace_replace_file_ops_ex (drmemtrace_replace_file_ops_t *ops)
 
DR_EXPORT drmemtrace_status_t dynamorio::drmemtrace::drmemtrace_get_output_path (DR_PARAM_OUT const char **path)
 
DR_EXPORT drmemtrace_status_t dynamorio::drmemtrace::drmemtrace_get_modlist_path (DR_PARAM_OUT const char **path)
 
DR_EXPORT drmemtrace_status_t dynamorio::drmemtrace::drmemtrace_get_funclist_path (DR_PARAM_OUT const char **path)
 
DR_EXPORT drmemtrace_status_t dynamorio::drmemtrace::drmemtrace_get_encoding_path (DR_PARAM_OUT const char **path)
 
DR_EXPORT drmemtrace_status_t dynamorio::drmemtrace::drmemtrace_custom_module_data (void *(*load_cb)(module_data_t *module, int seg_idx), int(*print_cb)(void *data, char *dst, size_t max_len), void(*free_cb)(void *data))
 
drmemtrace_status_t dynamorio::drmemtrace::drmemtrace_filter_threads (bool(*should_trace_thread_cb)(thread_id_t tid, void *user_data), void *user_value)
 
DR_EXPORT drmemtrace_status_t dynamorio::drmemtrace::drmemtrace_get_timestamp_from_offline_trace (const void *trace, size_t trace_size, DR_PARAM_OUT uint64 *timestamp)
 

Detailed Description

Header for customizing the DrMemtrace tracer.

Macro Definition Documentation

◆ DRMGR_PRIORITY_NAME_MEMTRACE

#define DRMGR_PRIORITY_NAME_MEMTRACE   "memtrace"

Name of drmgr instrumentation pass priorities for app2app, analysis, insert, and instru2instru.