def deleting_enum_member(self, id, cid): ename = ida_enum.get_enum_name(id) value = ida_enum.get_enum_member_value(cid) serial = ida_enum.get_enum_member_serial(cid) bmask = ida_enum.get_enum_member_bmask(cid) self._send_event(EnumMemberDeletedEvent(ename, value, serial, bmask)) return 0
def deleting_enum_member(self, id_of_struct, cid): if not shared.PAUSE_HOOK: log("Enum member deleted {0} {1}".format(id_of_struct, cid)) name = ida_enum.get_enum_name(id_of_struct) value = ida_enum.get_enum_member_value(cid) serial = ida_enum.get_enum_member_serial(cid) bmask = ida_enum.get_enum_member_bmask(cid) pass_to_manager(DeleteEnumMemberEvent(name, value, serial, bmask)) return ida_idp.IDB_Hooks.deleting_enum_member(self, id_of_struct, cid)
def deleting_enum_member(self, id, cid): ename = ida_enum.get_enum_name(id) value = ida_enum.get_enum_member_value(cid) serial = ida_enum.get_enum_member_serial(cid) bmask = ida_enum.get_enum_member_bmask(cid) print( "Detected a new enum member created: 0x%x (%s), 0x%x (%s) = 0x%x, 0x%x" % (id, ename, cid, serial, value, bmask)) return 0
def deleting_enum_member(self, id, cid): print("enum member") return ename = ida_enum.get_enum_name(id) value = ida_enum.get_enum_member_value(cid) serial = ida_enum.get_enum_member_serial(cid) bmask = ida_enum.get_enum_member_bmask(cid) self._send_packet( evt.EnumMemberDeletedEvent(ename, value, serial, bmask)) return 0
def _serial(self): """ Property which return the "serial" of this enum member. This is used only for interfacing with native IDAPython API. The serial is not a unique id for this enum, the serials for enum members always start at 0 and is incremented only when two enum members have the same value. :return: The serial integer for this enum member. """ return ida_enum.get_enum_member_serial(self._mid)
def implement(self): enum_name = ida_enum.get_enum_name(self._id) value = ida_enum.get_enum_member_value(self._member_id) serial = ida_enum.get_enum_member_serial(self._member_id) bmask = ida_enum.get_enum_member_bmask(self._member_id) ida_enum.del_enum_member(enum_name, value, serial, bmask)