Print this page
smatch: check libld_* allocation functions


 445 }
 446 
 447 void check_memory(int id)
 448 {
 449         my_id = id;
 450         add_unmatched_state_hook(my_id, &unmatched_state);
 451         add_hook(&match_function_def, FUNC_DEF_HOOK);
 452         add_hook(&match_declarations, DECLARATION_HOOK);
 453         add_hook(&match_function_call, FUNCTION_CALL_HOOK);
 454         add_hook(&match_condition, CONDITION_HOOK);
 455         add_hook(&match_assign, ASSIGNMENT_HOOK);
 456         add_hook(&match_return, RETURN_HOOK);
 457         add_hook(&match_end_func, END_FUNC_HOOK);
 458         add_hook(&match_after_func, AFTER_FUNC_HOOK);
 459         add_modification_hook(my_id, &set_unfree);
 460         if (option_project == PROJ_KERNEL) {
 461                 add_function_hook("kfree", &match_free_func, (void *)0);
 462                 register_funcs_from_file();
 463         } else {
 464                 add_function_hook("free", &match_free_func, (void *)0);



 465         }
 466 }


 445 }
 446 
 447 void check_memory(int id)
 448 {
 449         my_id = id;
 450         add_unmatched_state_hook(my_id, &unmatched_state);
 451         add_hook(&match_function_def, FUNC_DEF_HOOK);
 452         add_hook(&match_declarations, DECLARATION_HOOK);
 453         add_hook(&match_function_call, FUNCTION_CALL_HOOK);
 454         add_hook(&match_condition, CONDITION_HOOK);
 455         add_hook(&match_assign, ASSIGNMENT_HOOK);
 456         add_hook(&match_return, RETURN_HOOK);
 457         add_hook(&match_end_func, END_FUNC_HOOK);
 458         add_hook(&match_after_func, AFTER_FUNC_HOOK);
 459         add_modification_hook(my_id, &set_unfree);
 460         if (option_project == PROJ_KERNEL) {
 461                 add_function_hook("kfree", &match_free_func, (void *)0);
 462                 register_funcs_from_file();
 463         } else {
 464                 add_function_hook("free", &match_free_func, (void *)0);
 465                 if (option_project == PROJ_ILLUMOS_USER)
 466                         add_function_hook("libld_free", &match_free_func,
 467                             (void *)0);
 468         }
 469 }