CheckPointSW / Karta

Karta - source code assisted fast binary matching plugin for IDA

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Better handle faulty dependencies

chkp-eyalit opened this issue · comments

analyze_src_file.py is running inside a dissasembler, in batch mode, and the only way for it to realize inside which program it is being executed is catching ImportErrors. However, Karta currently assumes that it will find the disassembler, otherwise an ugly exception will be thrown at the user.

Since we lately has some issues when importing sark and other dependencies within ida_api.py, try to check in advance if these requirements are installed correctly, so to be able to warn the user in advance in a clear message. In addition, improve the exception that is thrown when no disassembler could be found.

The API change to DisasVerifier solves this issue.