Exemplo n.º 1
0
static void
event_exit(void)
{
    drmgr_unregister_tls_field(tls_idx);
    drwrap_exit();
    drmgr_exit();
    dr_fprintf(STDERR, "all done\n");
}
Exemplo n.º 2
0
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();

}
Exemplo n.º 3
0
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();
}
Exemplo n.º 4
0
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();
}
Exemplo n.º 5
0
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();
}
Exemplo n.º 6
0
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;
}
Exemplo n.º 7
0
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();

}
Exemplo n.º 8
0
static void
event_exit(void)
{
    drwrap_exit();
    drmgr_exit();
}