Beispiel #1
0
def refresh_struct(sptr):
    #  Hack: the only way to update MF_BASECLASS is to add dummy field at the end of the struct
    if not sptr:
        return False
    member_ptr = add_to_struct(sptr, "dummy")
    if not member_ptr:
        log.warn("Failed to add dummy field to struct 0x%X", sptr.id)
        return False
    if not ida_struct.del_struc_member(sptr, member_ptr.soff):
        log.error("Failed to delete dummy member at the end of struct 0x%X", sptr.id)
        return False
    return True
 def __call__(self):
     struc = ida_struct.get_struc_id(Event.encode(self.sname))
     sptr = ida_struct.get_struc(struc)
     ida_struct.del_struc_member(sptr, self.offset)
Beispiel #3
0
def refresh_struct(sptr):
    #  Hack: need to refresh structure so MF_BASECLASS will be updated
    member_ptr = add_to_struct(sptr, "dummy")
    ida_struct.del_struc_member(sptr, member_ptr.soff)
Beispiel #4
0
 def implement(self):
     id_of_struct = ida_struct.get_struc_id(str(self._id))
     ida_struct.del_struc_member(ida_struct.get_struc(id_of_struct),
                                 int(self._offset))
Beispiel #5
0
 def implement(self):
     ida_struct.del_struc_member(self._id, self._offset)
Beispiel #6
0
 def implement(self):
     ida_struct.del_struc_member(ida_struct.get_struc(self._id),
                                 self._offset)