static void event_exit(void) { drmgr_unregister_tls_field(tls_idx); drwrap_exit(); drmgr_exit(); dr_fprintf(STDERR, "all done\n"); }
void funcwrap_exit_event(void) { md_delete_list(head, false); dr_global_free(client_arg, sizeof(client_arg_t)); drmgr_unregister_tls_field(tls_index); if (log_mode){ dr_close_file(logfile); } drwrap_exit(); drmgr_exit(); }
static void exit_event(void) { if (outfile != INVALID_FILE) { dr_fprintf(outfile, "exit while recording enabled\n"); dr_close_file(outfile); outfile = INVALID_FILE; } drsym_exit(); drreg_exit(); drwrap_exit(); drutil_exit(); drmgr_exit(); }
static void onExit() { dr_printf( "In onExit()\n" ); // Clean up hashtable. hashtable_delete( &wraps ); // Clean up output. dr_mutex_destroy( outMutex ); dr_close_file( outFile ); // Clean up extensions. drwrap_exit(); drsym_exit(); }
static void event_exit(void) { #ifdef SHOW_RESULTS char msg[256]; int len; len = dr_snprintf(msg, sizeof(msg)/sizeof(msg[0]), "<Largest malloc request: %d>\n<OOM simulations: %d>\n", max_malloc, malloc_oom); DR_ASSERT(len > 0); NULL_TERMINATE(msg); DISPLAY_STRING(msg); #endif /* SHOW_RESULTS */ dr_mutex_destroy(max_lock); drwrap_exit(); }
DR_EXPORT drmf_status_t drfuzz_exit(void) { int count = dr_atomic_add32_return_sum(&drfuzz_init_count, -1); if (count > 0) return DRMF_SUCCESS; if (count < 0) return DRMF_ERROR; global_free(callbacks, sizeof(drfuzz_callbacks_t), HEAPSTAT_MISC); drmgr_exit(); drwrap_exit(); hashtable_delete(&fuzz_target_htable); return DRMF_SUCCESS; }
void memdump_exit_event(void) { int i = 0; md_delete_list(filter_head, false); md_delete_list(done_head, false); md_delete_list(app_pc_head, false); dr_global_free(client_arg, sizeof(client_arg_t)); drmgr_unregister_tls_field(tls_index); if (log_mode){ dr_close_file(logfile); } for (i = 0; i < instr_clone_amount; i++){ instr_destroy(dr_get_current_drcontext(), instr_clones[i]); } dr_mutex_destroy(mutex); drutil_exit(); drmgr_exit(); drwrap_exit(); }
static void event_exit(void) { drwrap_exit(); drmgr_exit(); }