ida can be slow, so don't make it the default

This commit is contained in:
George Hotz 2014-09-16 14:01:25 +00:00
parent b2d9ee8411
commit 14dd127312
6 changed files with 11 additions and 3 deletions

View File

@ -28,6 +28,7 @@ if __name__ == '__main__':
parser.add_argument("--host", metavar="HOST", help="listen address for web interface and socat. 127.0.0.1 by default", default=qira_config.HOST)
parser.add_argument("--web-port", metavar="PORT", help="listen port for web interface. 3002 by default", type=int, default=qira_config.WEB_PORT)
parser.add_argument("--socat-port", metavar="PORT", help="listen port for socat. 4000 by default", type=int, default=qira_config.SOCAT_PORT)
parser.add_argument("--ida", help="use ida to generate static data", action="store_true")
#parser.add_argument("--with-capstone", metavar="WITH_CAPSTONE", help="enable capstone for smarter disassembly", action="store_true")
#capstone flag in qira_config for now
@ -82,6 +83,8 @@ if __name__ == '__main__':
if args.cda:
qira_config.WITH_CDA = True
qira_config.WITH_DWARF = True
if args.ida:
qira_config.WITH_IDA = True
if args.flush_cache:
print "*** flushing caches"
os.system("rm -rfv /tmp/qira*")

View File

@ -287,6 +287,9 @@ def get_instruction_flow(trace, program, minclnum, maxclnum):
time.sleep(0.1)
ins = program.tags[r[0]['address']]['instruction']
# set the lengths of the instructions
program.tags[r[0]['address']]['len'] = r[0]['data']
ret.append((r[0]['address'], r[0]['data'], r[0]['clnum'], ins))
if (time.time() - start) > 0.01:
time.sleep(0.01)

View File

@ -23,4 +23,6 @@ CALLED_AS_CDA = False
WITH_STATIC = True
WITH_CAPSTONE = WITH_STATIC
WITH_IDA = False

View File

@ -209,7 +209,7 @@ class Program:
else:
raise Exception("unknown binary type")
if qira_config.WITH_STATIC:
if qira_config.WITH_STATIC and qira_config.WITH_IDA:
# call out to ida
print "*** running the ida parser"
ret = os.system(qira_config.BASEDIR+"/static/python32/Python/python "+qira_config.BASEDIR+"/static/ida_parser.py /tmp/qira_binary > /tmp/qida_log")
@ -233,7 +233,6 @@ class Program:
dat = open(self.program, "rb").read()
load_addr = 0x8048000
# generate the static data for the instruction
print "** running static"
for addr in self.tags:

View File

@ -97,7 +97,7 @@ $(document).ready(function() {
$('#staticpanel').on('mouseout', '#outergbox', function(e) {
/*p(e.target);
p(e.target.id);*/
if (e.target.id === "outergbox") {
if (e.target.id === "outergbox" || e.target.id === "gcanvas") {
endDrag(e.screenX, e.screenY, true);
}
});

View File

@ -144,6 +144,7 @@ Graph.prototype.render = function() {
var canvas = document.createElement("canvas");
canvas.width = fnum(gdata[2])+10;
canvas.height = fnum(gdata[3])+10;
canvas.id = "gcanvas";
gbox.appendChild(canvas);
var ctx = canvas.getContext("2d");