joxeankoret / diaphora

Diaphora, the most advanced Free and Open Source program diffing tool.
http://diaphora.re
GNU Affero General Public License v3.0
3.58k stars 371 forks source link

Silent failures could be made a little louder #235

Closed Talos878 closed 1 year ago

Talos878 commented 1 year ago

I am returning to using diaphora headless for the first time in a while and while playing with the command line noticed this trend

These two work ida64 -S"/Users/talos/diaphora/diaphora_ida.py" /Users/talos/Documents/boot

ida64 -A -B -S"/Users/talos/diaphora/diaphora_ida.py" /Users/talos/Documents/boot

This silently fails and corrupts the database ida64 -S"diaphora_ida.py" /Users/talos/Documents/boot

This silently fails and destroys the database ida64 -S"diaphora_ida.py /Users/talos/Documents/iBoot" /Users/talos/Documents/boot.i64

It would be nice to have some warnings in the situations where corruption happens. Am I giving arguments to some valid use case in a strange way here that is causing some normal functionality to run halfway and than never fix up the database?

joxeankoret commented 1 year ago

Hi! I don't think it has anything to do with Diaphora, or I do not properly understand the problem. The problem is that IDA doesn't support relative paths for scripts so, my guess is that it's just recreating your I64 database, isn't it? If that's the problem, I don't think I can do anything from Diaphora to prevent this, as it's happening even before Diaphora runs.

joxeankoret commented 1 year ago

I'm closing it for now. Feel free to reopen if you have problems.