another one

Summary: kill me

Reviewed By: dulmarod

Differential Revision: D21261641

fbshipit-source-id: 94a367735
master
Jules Villard 5 years ago committed by Facebook GitHub Bot
parent 8dabbd5eda
commit a0b237fe06

@ -338,13 +338,14 @@ let dangerous_functions =
ref (List.map ~f:Procname.from_string_c_fun dangerous_list) ref (List.map ~f:Procname.from_string_c_fun dangerous_list)
let check_inherently_dangerous_function caller_pname callee_pname = let check_inherently_dangerous_function {InterproceduralAnalysis.proc_desc; err_log} callee_pname =
if List.exists ~f:(Procname.equal callee_pname) !dangerous_functions then if List.exists ~f:(Procname.equal callee_pname) !dangerous_functions then
let exn = let exn =
Exceptions.Inherently_dangerous_function Exceptions.Inherently_dangerous_function
(Localise.desc_inherently_dangerous_function callee_pname) (Localise.desc_inherently_dangerous_function callee_pname)
in in
SummaryReporting.log_issue_deprecated_using_state Exceptions.Warning caller_pname exn let attrs = Procdesc.get_attributes proc_desc in
BiabductionReporting.log_issue_deprecated_using_state attrs err_log Exceptions.Warning exn
let reason_to_skip ~callee_desc : string option = let reason_to_skip ~callee_desc : string option =
@ -1803,16 +1804,15 @@ and sym_exec_alloc_model analysis_data pname ret_typ ret_id_typ loc prop path :
(** Perform symbolic execution for a function call *) (** Perform symbolic execution for a function call *)
and proc_call (callee_pdesc, callee_summary) and proc_call (callee_pdesc, callee_summary)
{ Builtin.analysis_data= {proc_desc= caller_pdesc; tenv; _} as analysis_data { Builtin.analysis_data= {tenv; proc_desc= caller_pdesc; _} as analysis_data
; prop_= pre ; prop_= pre
; path ; path
; ret_id_typ ; ret_id_typ
; args= actual_pars ; args= actual_pars
; loc } = ; loc } =
let caller_pname = Procdesc.get_proc_name caller_pdesc in
let callee_pname = Procdesc.get_proc_name callee_pdesc in let callee_pname = Procdesc.get_proc_name callee_pdesc in
let callee_attributes = Procdesc.get_attributes callee_pdesc in let callee_attributes = Procdesc.get_attributes callee_pdesc in
check_inherently_dangerous_function caller_pname callee_pname ; check_inherently_dangerous_function analysis_data callee_pname ;
let formal_types = List.map ~f:snd callee_attributes.ProcAttributes.formals in let formal_types = List.map ~f:snd callee_attributes.ProcAttributes.formals in
let rec comb actual_pars formal_types = let rec comb actual_pars formal_types =
match (actual_pars, formal_types) with match (actual_pars, formal_types) with

Loading…
Cancel
Save