Print this page
smatch: check libld_* allocation functions

Split Close
Expand all
Collapse all
          --- old/usr/src/tools/smatch/src/check_free.c
          +++ new/usr/src/tools/smatch/src/check_free.c
↓ open down ↓ 282 lines elided ↑ open up ↑
 283  283  {
 284  284          my_id = id;
 285  285  
 286  286          if (option_project == PROJ_KERNEL) {
 287  287                  /* The kernel use check_free_strict.c */
 288  288                  return;
 289  289          }
 290  290  
 291  291          add_function_hook("free", &match_free, INT_PTR(0));
 292  292  
      293 +        if (option_project == PROJ_ILLUMOS_USER)
      294 +                add_function_hook("libld_free", &match_free, INT_PTR(0));
      295 +
 293  296          if (option_spammy)
 294  297                  add_hook(&match_symbol, SYM_HOOK);
 295  298          add_hook(&match_dereferences, DEREF_HOOK);
 296  299          add_hook(&match_call, FUNCTION_CALL_HOOK);
 297  300          add_hook(&match_return, RETURN_HOOK);
 298  301  
 299  302          add_modification_hook(my_id, &ok_to_use);
 300  303          select_return_implies_hook(PARAM_FREED, &set_param_freed);
 301  304          add_pre_merge_hook(my_id, &pre_merge_hook);
 302  305  }
    
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX