add newly exposed values to python binding.

This commit is contained in:
Sauci 2018-07-08 15:22:14 -06:00
parent 38145bbaba
commit 0884e06527

View File

@ -122,6 +122,8 @@ _setup_prototype(_uc, "uc_open", ucerr, ctypes.c_uint, ctypes.c_uint, ctypes.POI
_setup_prototype(_uc, "uc_close", ucerr, uc_engine)
_setup_prototype(_uc, "uc_strerror", ctypes.c_char_p, ucerr)
_setup_prototype(_uc, "uc_errno", ucerr, uc_engine)
_setup_prototype(_uc, "uc_target_page_size", ctypes.c_uint32, uc_engine)
_setup_prototype(_uc, "uc_target_page_align", ctypes.c_uint32, uc_engine)
_setup_prototype(_uc, "uc_reg_read", ucerr, uc_engine, ctypes.c_int, ctypes.c_void_p)
_setup_prototype(_uc, "uc_reg_write", ucerr, uc_engine, ctypes.c_int, ctypes.c_void_p)
_setup_prototype(_uc, "uc_mem_read", ucerr, uc_engine, ctypes.c_uint64, ctypes.POINTER(ctypes.c_char), ctypes.c_size_t)
@ -320,6 +322,12 @@ class Uc(object):
if status != uc.UC_ERR_OK:
raise UcError(status)
def target_page_align(self):
return _uc.uc_target_page_align(self._uch)
def target_page_size(self):
return _uc.uc_target_page_size(self._uch)
# return the value of a register
def reg_read(self, reg_id, opt=None):
if self._arch == uc.UC_ARCH_X86: