angr.flirt.build_sig

angr.flirt.build_sig.get_basic_info(ar_path)

Get basic information of the archive file.

Return type:

dict[str, str]

Parameters:

ar_path (str)

angr.flirt.build_sig.get_unique_strings(ar_path)

For Linux libraries, this method requires ar (from binutils), nm (from binutils), and strings.

Return type:

list[str]

Parameters:

ar_path (str)

angr.flirt.build_sig.run_pelf(pelf_path, ar_path, output_path)
Parameters:
  • pelf_path (str)

  • ar_path (str)

  • output_path (str)

angr.flirt.build_sig.run_sigmake(sigmake_path, sig_name, pat_path, sig_path)
Parameters:
  • sigmake_path (str)

  • sig_name (str)

  • pat_path (str)

  • sig_path (str)

angr.flirt.build_sig.process_exc_file(exc_path)

We are doing the stupidest thing possible: For each batch of conflicts, we pick the most likely result based on a set of predefined rules.

TODO: Add caller-callee-based de-duplication.

Parameters:

exc_path (str)

angr.flirt.build_sig.main()