diff --git a/build.py b/build.py index 62737c5..5fae11d 100644 --- a/build.py +++ b/build.py @@ -22,14 +22,14 @@ from distutils import sysconfig # Start of user configurable options VERBOSE = True IDA_MAJOR_VERSION = 5 -IDA_MINOR_VERSION = 1 +IDA_MINOR_VERSION = 3 IDA_SDK = ".." + os.sep + "swigsdk-versions" + os.sep + "%d.%d" % (IDA_MAJOR_VERSION, IDA_MINOR_VERSION) # End of user configurable options # IDAPython version -VERSION_MAJOR = 0 -VERSION_MINOR = 9 -VERSION_PATCH = 61 +VERSION_MAJOR = 1 +VERSION_MINOR = 0 +VERSION_PATCH = 50 # Determine Python version PYTHON_MAJOR_VERSION = int(platform.python_version()[0]) @@ -71,6 +71,7 @@ BINDIST_MANIFEST = [ "examples/ex1.idc", "examples/ex1_idaapi.py", "examples/ex1_idautils.py", + "examples/hotkey.py", "examples/structure.py", ] @@ -101,6 +102,7 @@ SRCDIST_MANIFEST = [ "swig/moves.i", "swig/nalt.i", "swig/name.i", + "swig/netnode.i", "swig/offset.i", "swig/pro.i", "swig/queue.i", @@ -421,4 +423,3 @@ if __name__ == "__main__": cleanlist.extend(BUILD_TEMPFILES) cleanlist.append(plugin_name) # clean(cleanlist) - diff --git a/python.cpp b/python.cpp index 369bd6e..059da35 100644 --- a/python.cpp +++ b/python.cpp @@ -35,7 +35,7 @@ extern "C" /* Python-style version tuple comes from the makefile */ /* Only the serial and status is set here */ #define VER_SERIAL 0 -#define VER_STATUS "final" +#define VER_STATUS "alpha" #define IDAPYTHON_RUNFILE 0 #define IDAPYTHON_RUNSTATEMENT 1 diff --git a/swig/bytes.i b/swig/bytes.i index b25fd5d..84e10b2 100644 --- a/swig/bytes.i +++ b/swig/bytes.i @@ -48,10 +48,13 @@ %ignore lock_dbgmem_config; %ignore unlock_dbgmem_config; %ignore set_op_type_no_event; +%ignore shuffle_tribytes; %ignore ida_vpagesize; %ignore ida_vpages; %ignore ida_npagesize; %ignore ida_npages; +%ignore fpnum_digits; +%ignore fpnum_length; %ignore FlagsInit; %ignore FlagsTerm; %ignore FlagsReset; diff --git a/swig/dbg.i b/swig/dbg.i index b37a12a..06e4ea0 100644 --- a/swig/dbg.i +++ b/swig/dbg.i @@ -21,61 +21,61 @@ public: bool hook() { return hook_to_notification_point(HT_DBG, DBG_Callback, this); }; bool unhook() { return unhook_from_notification_point(HT_DBG, DBG_Callback, this); }; /* Hook functions to be overridden in Python */ - virtual void dbg_process_start(process_id_t pid, - thread_id_t tid, + virtual void dbg_process_start(pid_t pid, + thid_t tid, ea_t ea, char *name, ea_t base, asize_t size) { }; - virtual void dbg_process_exit(process_id_t pid, - thread_id_t tid, + virtual void dbg_process_exit(pid_t pid, + thid_t tid, ea_t ea, int exit_code) { }; - virtual void dbg_process_attach(process_id_t pid, - thread_id_t tid, + virtual void dbg_process_attach(pid_t pid, + thid_t tid, ea_t ea, char *name, ea_t base, asize_t size) { }; - virtual void dbg_process_detach(process_id_t pid, - thread_id_t tid, + virtual void dbg_process_detach(pid_t pid, + thid_t tid, ea_t ea) { }; - virtual void dbg_thread_start(process_id_t pid, - thread_id_t tid, + virtual void dbg_thread_start(pid_t pid, + thid_t tid, ea_t ea) { }; - virtual void dbg_thread_exit(process_id_t pid, - thread_id_t tid, + virtual void dbg_thread_exit(pid_t pid, + thid_t tid, ea_t ea, int exit_code) { }; - virtual void dbg_library_load(process_id_t pid, - thread_id_t tid, + virtual void dbg_library_load(pid_t pid, + thid_t tid, ea_t ea, char *name, ea_t base, asize_t size) { }; - virtual void dbg_library_unload(process_id_t pid, - thread_id_t tid, + virtual void dbg_library_unload(pid_t pid, + thid_t tid, ea_t ea, char *libname) { }; - virtual void dbg_information(process_id_t pid, - thread_id_t tid, + virtual void dbg_information(pid_t pid, + thid_t tid, ea_t ea, char *info) { }; - virtual int dbg_exception(process_id_t pid, - thread_id_t tid, + virtual int dbg_exception(pid_t pid, + thid_t tid, ea_t ea, int code, bool can_cont, ea_t exc_ea, char *info) { return 0; }; virtual void dbg_suspend_process(void) { }; - virtual int dbg_bpt(thread_id_t tid, ea_t breakpoint_ea) { return 0; }; - virtual int dbg_trace(thread_id_t tid, ea_t ip) { return 0; }; + virtual int dbg_bpt(thid_t tid, ea_t breakpoint_ea) { return 0; }; + virtual int dbg_trace(thid_t tid, ea_t ip) { return 0; }; virtual void dbg_request_error(ui_notification_t failed_command, dbg_notification_t failed_dbg_notification) { }; virtual void dbg_step_into(void) { }; virtual void dbg_step_over(void) { }; - virtual void dbg_run_to(thread_id_t tid) { }; + virtual void dbg_run_to(thid_t tid) { }; virtual void dbg_step_until_ret(void) { }; }; @@ -84,7 +84,7 @@ int idaapi DBG_Callback(void *ud, int notification_code, va_list va) class DBG_Hooks *proxy = (class DBG_Hooks *)ud; debug_event_t *event; - thread_id_t tid; + thid_t tid; int *warn; ea_t ip; ui_notification_t failed_command; @@ -186,14 +186,14 @@ int idaapi DBG_Callback(void *ud, int notification_code, va_list va) return 0; case dbg_bpt: - tid = va_arg(va, thread_id_t); + tid = va_arg(va, thid_t); breakpoint_ea = va_arg(va, ea_t); warn = va_arg(va, int *); *warn = proxy->dbg_bpt(tid, breakpoint_ea); return 0; case dbg_trace: - tid = va_arg(va, thread_id_t); + tid = va_arg(va, thid_t); ip = va_arg(va, ea_t); return proxy->dbg_bpt(tid, ip); @@ -212,7 +212,7 @@ int idaapi DBG_Callback(void *ud, int notification_code, va_list va) return 0; case dbg_run_to: - tid = va_arg(va, thread_id_t); + tid = va_arg(va, thid_t); proxy->dbg_run_to(tid); return 0; diff --git a/swig/enum.i b/swig/enum.i index 2227dfc..0f3ea56 100644 --- a/swig/enum.i +++ b/swig/enum.i @@ -3,6 +3,9 @@ %ignore init_enums; %ignore save_enums; %ignore term_enums; +%ignore set_enum_flag; +%ignore sync_from_enum;; +%ignore del_all_consts; %ignore get_selected_enum; %ignore add_selected_enum; %ignore unmark_selected_enums; diff --git a/swig/funcs.i b/swig/funcs.i index 863f47b..eaeb20e 100644 --- a/swig/funcs.i +++ b/swig/funcs.i @@ -28,6 +28,7 @@ %ignore create_func_eas_array; %ignore auto_add_func_tails; +%ignore read_tails; %include "funcs.hpp" diff --git a/swig/loader.i b/swig/loader.i index cb0a96f..3737c70 100644 --- a/swig/loader.i +++ b/swig/loader.i @@ -41,6 +41,9 @@ %ignore unhook_from_notification_point; %ignore invoke_callbacks; +// Ignore this experimental function +%ignore gen_dev_event; + // Ignore kernel-only & unexported symbols %ignore LDSC; %ignore PLUGIN; @@ -78,6 +81,7 @@ %ignore database_id0; %ignore is_database_ext; %ignore ida_database_memory; +%ignore ida_workdir; %ignore database_flags; %ignore DBFL_KILL; %ignore DBFL_COMP; @@ -87,6 +91,8 @@ %ignore pe_create_idata; %ignore pe_load_resources; %ignore pe_create_flat_group; +%ignore initializing; +%ignore highest_processor_level; %ignore dbcheck_t; %ignore DBCHK_NONE; %ignore DBCHK_OK; @@ -96,11 +102,13 @@ %ignore open_database; %ignore flush_buffers; %ignore save_database; +%ignore get_workbase_fname; %ignore close_database; %ignore compress_btree; %ignore get_input_file_from_archive; %ignore loader_move_segm; %ignore generate_ida_copyright; +%ignore clear_plugin_options; %ignore is_in_loader; %ignore get_ids_filename; diff --git a/swig/name.i b/swig/name.i index 1151ee9..1b89a9b 100644 --- a/swig/name.i +++ b/swig/name.i @@ -26,6 +26,7 @@ %ignore fix_new_name; %ignore rename; %ignore move_names; +%ignore is_noret_name; %ignore is_exit_name; %ignore dummy_name_ea; diff --git a/swig/queue.i b/swig/queue.i index f7e4947..6412168 100644 --- a/swig/queue.i +++ b/swig/queue.i @@ -9,4 +9,7 @@ %ignore move_problems; %ignore queue_del; +%ignore mark_rollback; +%ignore had_rolled_back; + %include "queue.hpp" \ No newline at end of file diff --git a/swig/struct.i b/swig/struct.i index c375615..7b07ebf 100644 --- a/swig/struct.i +++ b/swig/struct.i @@ -1,7 +1,9 @@ // Kernel-only symbols -%ignore init_struc; -%ignore save_struc; -%ignore term_struc; +%ignore init_structs; +%ignore save_structs; +%ignore term_structs; + +%ignore sync_from_struc; %feature("compactdefaultargs") add_struc; diff --git a/swig/typeinf.i b/swig/typeinf.i index ff6cc99..5803a39 100644 --- a/swig/typeinf.i +++ b/swig/typeinf.i @@ -114,12 +114,16 @@ %ignore is_stkarg_load_t; %ignore has_delay_slot_t; %ignore gen_use_arg_types; +%ignore enable_numbered_types; + +%ignore type_pair_vec_t::add_names; // Kernel-only symbols %ignore init_til; %ignore save_til; %ignore term_til; %ignore determine_til; +%ignore sync_from_til; %ignore get_tilpath; %ignore autoload_til; %ignore get_idainfo_by_type;