Package vdb :: Package extensions :: Module i386
[hide private]
[frames] | no frames]

Source Code for Module vdb.extensions.i386

 1   
 2  import envi.archs.i386 as e_i386 
 3   
4 -def eflags(vdb, line):
5 """ 6 Show the status of the eflags register bits. 7 8 Usage: eflags 9 """ 10 t = vdb.getTrace() 11 ef = t.getRegisterByName("eflags") 12 vdb.vprint("%16s: %s" % ("Carry", bool(ef & e_i386.EFLAGS_CF))) 13 vdb.vprint("%16s: %s" % ("Parity", bool(ef & e_i386.EFLAGS_PF))) 14 vdb.vprint("%16s: %s" % ("Adjust", bool(ef & e_i386.EFLAGS_AF))) 15 vdb.vprint("%16s: %s" % ("Zero", bool(ef & e_i386.EFLAGS_ZF))) 16 vdb.vprint("%16s: %s" % ("Sign", bool(ef & e_i386.EFLAGS_SF))) 17 vdb.vprint("%16s: %s" % ("Trap", bool(ef & e_i386.EFLAGS_TF))) 18 vdb.vprint("%16s: %s" % ("Interrupt", bool(ef & e_i386.EFLAGS_IF))) 19 vdb.vprint("%16s: %s" % ("Direction", bool(ef & e_i386.EFLAGS_DF))) 20 vdb.vprint("%16s: %s" % ("Overflow", bool(ef & e_i386.EFLAGS_OF)))
21
22 -def vdbExtension(vdb, trace):
23 vdb.config.set('Aliases','db','mem -F bytes') 24 vdb.config.set('Aliases','dw','mem -F u_int_16') 25 vdb.config.set('Aliases','dd','mem -F u_int_32') 26 vdb.config.set('Aliases','dq','mem -F u_int_64') 27 vdb.config.set('Aliases','dr','mem -F "Deref View"') 28 vdb.config.set('Aliases','ds','mem -F "Symbols View"') 29 vdb.registerCmdExtension(eflags)
30