Commit Graph

353 Commits

Author SHA1 Message Date
Arnaud Diederen 2c8a324acd Merge remote-tracking branch 'refs/remotes/origin/master' 2015-09-01 12:05:25 +02:00
Arnaud Diederen 68ef53af7f build.py: use argparse to provide 1) better/more options, 2) help about those options
build.py: was still referencing README.txt, which has been renamed to README.md
2015-09-01 12:03:52 +02:00
Arnaud Diederen 3f61ff5286 build.py: use argparse to provide 1) better/more options, 2) help about those options
build.py: was still referencing README.txt, which has been renamed to README.md
2015-09-01 11:59:51 +02:00
Arnaud Diederen 13f4254ccc Revert "build.py: use argparse to provide 1) better/more options, 2) help about those options"
This reverts commit 02e130299d.
2015-09-01 11:56:33 +02:00
Arnaud Diederen 02e130299d build.py: use argparse to provide 1) better/more options, 2) help about those options
build.py: was still referencing README.txt, which has been renamed to README.md
2015-09-01 11:54:07 +02:00
Arnaud Diederen 1b78d937fc Moved idapython/src/RELEASES/* -> idapython/bin/* 2015-07-09 15:23:59 +02:00
Arnaud Diederen 035ed6834b Merge pull request #6 from aundro/master
Let's make the octocat happy with a nice 'CONTRIBUTING.md' page.
2015-07-09 15:13:13 +02:00
Arnaud Diederen 7df4dcc8e6 Let's make the octocat happy with a nice 'CONTRIBUTING.md' page. 2015-07-09 15:12:05 +02:00
Arnaud Diederen 36f76b9192 Merge pull request #5 from aundro/master
Refresh README.md so it better reflects the current situation.
2015-07-08 17:13:55 +02:00
Arnaud Diederen 23e9335164 Refresh README.md so it better reflects the current situation (e.g., removed code.google.com references.) 2015-07-08 17:12:20 +02:00
Arnaud Diederen 846d9c60c0 Merge pull request #4 from aundro/master
README.txt -> README.md
2015-07-08 17:01:36 +02:00
Arnaud Diederen 8d1ba993cd README.txt -> README.md 2015-07-08 10:06:12 +02:00
Elias Bachaalany a2c4f50f31 Merge pull request #1 from aundro/ida68
IDA Pro 6.8 support
build-1.7.2
2015-04-20 22:30:05 -07:00
Arnaud Diederen f9f3ccb63b IDA Pro 6.8 support
What's new: https://www.hex-rays.com/products/ida/6.8/index.shtml
2015-04-20 14:26:30 +02:00
Elias Bachaalany 2fa1f9a64b - added previous releases
binaries + sources
build-1.7.1
2015-03-14 13:31:51 -07:00
elias.bachaalany@gmail.com 081b988a03 fix: python processor modules were not working 2015-03-02 15:54:20 +00:00
elias.bachaalany@gmail.com 3e9ea5f503 minor mod: turned off build debug flag 2015-02-08 03:07:57 +00:00
elias.bachaalany@gmail.com bbf628d3a3 IDA Pro 6.7 support 2015-02-08 02:59:53 +00:00
elias.bachaalany@gmail.com 49dcdc5ed3 added idautils.IsBatchMode() 2014-11-21 22:12:14 +00:00
elias.bachaalany@gmail.com 960a670de9 minor mods 2014-07-28 18:11:34 +00:00
elias.bachaalany@gmail.com fbb5bfabd6 IDA Pro 6.6 support
What's new:
- added the decompiler bindings
- Expose simpleline_t type to IDAPython. That lets the user to set the bgcolor & text for each line in the decompilation.
- Wrapped new functions from the IDA SDK

Various fixes:
for non-code locations, idc.GetOpnd() would create instructions instead of returning empty result
- idb_event::area_cmt_changed was never received in IDB_Hooks (and descendants)
- idb_event::ti_changed, and idb_event::op_ti_changed notifications were not accessible in IDAPython
- op_t.value was truncated to 32 bits under IDA64.
- print_tinfo() wouldn't return a valid string.
- readsel2() was not usable.
- read_selection() was buggy for 64-bit programs.
- StructMembers() considered holes in structures, and didn't properly iterate through the whole structure definition.
- There was no way to call calc_switch_cases() from IDAPython.
- when using multi-select/multi-edit choosers, erroneous event codes could be sent at beginning & end of batch deletion of lines.
- When, in a PluginForm#OnCreate, the layout of IDA was requested to change (for example by starting a debugging session), that PluginForm could be deleted and create an access violation.
- tinfo_t objects created from IDAPython could cause an assertion failure at exit time.
- Usage of IDAPython's DropdownListControl was broken.
2014-07-04 22:02:42 +00:00
elias.bachaalany@gmail.com 1c6752de40 - Fixed idaapi.read_selection() 2014-04-08 00:11:43 +00:00
elias.bachaalany@gmail.com 866e631dc7 Added IDA Pro 6.1 SP1 changes (thanks to Arnaud from Hex-Rays) 2014-02-04 02:31:52 +00:00
elias.bachaalany@gmail.com 78c79f85b9 IDA Pro 6.5 support
What's new:
- Proper multi-threaded support 
- Better PyObject reference counting with ref_t and newref_t helper classes
- Improved the pywraps/deployment script
- Added IDAViewWrapper class and example
- Added idc.GetDisasmEx()
- Added idc.AddSegEx()
- Added idc.GetLocalTinfo()
- Added idc.ApplyType()
- Updated type information implementation
- Introduced the idaapi.require() - see http://www.hexblog.com/?p=749
- set REMOVE_CWD_SYS_PATH=1 by default in python.cfg (remove current directory from the import search path).

Various bugfixes:
- fixed various memory leaks
- asklong/askaddr/asksel (and corresponding idc.py functions) were returning results truncated to 32 bits in IDA64
- fix wrong documentation for idc.SizeOf
- GetFloat/GetDouble functions did not take into account endianness of the processor
- idaapi.NO_PROCESS was not defined, and was causing GetProcessPid() to fail
- idc.py: insert escape characters to string parameter when call Eval()
- idc.SaveFile/savefile were always overwriting an existing file instead of writing only the new data
- PluginForm.Close() wasn't passing its arguments to the delegate function, resulting in an error.
2013-12-30 01:34:23 +00:00
elias.bachaalany@gmail.com c88a77e809 Contributed by EiNSTeiN_:
- added support for 'long' addresses 
- updated copyright notice in hexrays.i
- added methods to remove or insert elements in the qlist<cinsn_t> list
- added support for ctree_visitor_t / ctree_parentee_t / cfunc_parentee_t / user_lvar_visitor_t
- updated vds3 sample
- added vds4 and vds7 python samples (ported from their C++ counter parts)
2013-07-16 23:09:33 +00:00
elias.bachaalany@gmail.com 7eb6d04c6e Contributed by EiNSTeiN_:
- Fixed compilation error on Linux
- Minor bugfix in hexrays.i
- Added two more samples: vds3.py and vds_xrefs.py
2013-07-05 23:12:04 +00:00
elias.bachaalany@gmail.com db58b31711 - Experimental: integrated Hex-Rays Decompiler bindings that were contributed by EiNSTeiN:
https://github.com/EiNSTeiN-/hexrays-python
- Added '--with-hexrays' switch to the build script so it wrap Hex-Rays Decompiler API
- Added one Hex-Rays decompiler sample: vds1.py
2013-07-03 01:40:54 +00:00
elias.bachaalany@gmail.com ce06fdd7d2 Added VS2012 solution files 2013-06-28 22:32:32 +00:00
elias.bachaalany@gmail.com 4e295155bb Fixed compilation bugs:
- Fixed small mismatch between SWIG define and CL defines (/DNO_OBSOLETE_FUNCS)
- Use print_type2() instead of the deprecated function print_type()
2013-06-28 01:32:56 +00:00
elias.bachaalany@gmail.com 21cd5a95eb - applied patchs for IDA 6.4 SP from Hex-Rays
- fixed idc.CommentEx()
- minor mods
2013-03-08 19:33:51 +00:00
elias.bachaalany@gmail.com 223e4a5268 Applied patches from Hex-Rays:
- added MakeYword
- wrap obsolete IDA API functions too, so that old scripts continue to work
- added debugger trace related functions in idc.py
BUGFIX: IDAPython would fail with a cryptic error message if there was no free space on the current disk
BUGFIX: site-packages directory was missing from sys.path
BUGFIX: functions for working with additional lines (LineA/LineB etc) were broken
BUGFIX: GetFixup* functions from idc.py were broken
BUGFIX: IDA could not start if another python27.dll was present in PATH and importing site.py for that Python installation failed
BUGFIX: SaveBase() was broken
BUGFIX: IDAPython would fail with a cryptic error message if there was no free space on the current disk
BUGFIX: IDAPython: site-packages directory was missing from sys.path
BUGFIX: IDAPython: functions for working with additional lines (LineA/LineB etc) were broken
BUGFIX: IDAPython: GetFixup* functions from idc.py were broken
BUGFIX: IDAPython: IDA could not start if another python27.dll was present in PATH and importing site.py for that Python installation failed
BUGFIX: IDAPython: SaveBase() was broken
BUGFIX: Dbg/Idp hooks automatically unhook when hook object is not referenced anymore

note: these patches are already applied in IDAPython that comes with IDA Pro 6.4
2013-03-06 07:44:10 +00:00
elias.bachaalany 69d5c83d28 - IDA Pro 6.3 support
- The Functions() generator function now accepts function tail start parameter
- Added into idc.py: DbgRead/DbgWrite/SetTargetAssembler and stack pointer related functions
- Wrapped more type info related functions
2012-06-24 20:49:11 +00:00
elias.bachaalany@gmail.com 4d21b10dc4 removed dead code 2012-04-04 07:45:15 +00:00
skochinsky@gmail.com 0282e67982 IDAPython 1.5.4
- fix for Python autorun script vulnerability reported by Greg MacManus
- remove current directory from sys.path during initialization
2012-03-26 13:39:09 +00:00
elias.bachaalany@gmail.com 06f0ff19d5 bugfixes:
- op_t.is_reg() was buggy
- build.py: build.py was putting duplicate files into the .zip
- added backed wrapped version of get_ascii_contents()
- misc changes...
2011-12-02 15:42:36 +00:00
elias.bachaalany@gmail.com 930d7cbcd4 added PyWraps sources. This will facilitate deployment, development and debugging of IDAPython additions 2011-12-02 15:40:11 +00:00
skochinsky@gmail.com 1258fab948 IDAPython 1.5.3
- IDA Pro 6.2 support
- added set_idc_func_ex(): it is now possible to add new IDC functions using Python
- added visit_patched_bytes() (see ex_patch.py)
- added support for the multiline text input control in the Form class
- added support for the editable/readonly dropdown list control in the Form class
- added execute_sync() to register a function call into the UI message queue
- added execute_ui_requests() / check ex_uirequests.py
- added add_hotkey() / del_hotkey() to bind Python methods to hotkeys
- added register_timer()/unregister_timer(). Check ex_timer.py
- added the IDC (Arrays) netnode manipulation layer into idc.py
- added idautils.Structs() and StructMembers() generator functions
- removed the "Run Python Statement" menu item. IDA now has a unified dialog. 
  Use RunPlugin("python", 0) to invoke it manually.
- better error messages for script plugins, loaders and processor modules
- bugfix: Dbg_Hooks.dbg_run_to() was receiving wrong input
- bugfix: A few Enum related functions were not properly working in idc.py
- bugfix: GetIdaDirectory() and GetProcessName() were broken in idc.py
- bugfix: idaapi.get_item_head() / idc.ItemHead() were not working
2011-10-14 14:24:38 +00:00
elias.bachaalany@gmail.com 96cd02db6c - fixed idc.ItemHead()
- update some IDC functions documentation
2011-08-08 15:42:25 +00:00
elias.bachaalany@gmail.com 7bd77d534c vuln bugfix: check for swig_runtime_dataN.py was not done properly (MSVR-11-0084)
The bug is due to the following faulty line: http://code.google.com/p/idapython/source/browse/tags/build-1.5.1/swig/idaapi.i#611
2011-07-27 08:51:29 +00:00
elias.bachaalany@gmail.com 8413f9f791 - GetIdaDirectory() was broken
- some function comments were wrong
- other fixes
2011-07-04 13:19:36 +00:00
elias.bachaalany f5ec434bf7 IDAPython 1.5.2
- added ui_term/ui_save/ui_saved/ui_get_ea_hint UI notifications
- added ph_get_operand_info() to retrieve operand information while debugging
- added PteDump.py script
- some code refactoring
- bugfix: idaapi.netnode.getblob() was limited to MAXSPECSIZE
- bugfix: idc.GetString()/idaapi.get_ascii_contents()/idautils.Strings() were limited to MAXSTR string length
- bugfix: idaapi.del_menu_item() was failing to delete some menu items
- bugfix: dbg_bpt was called instead of dbg_trace for a DBG_Hooks class implementation (old bug from 0.9.x)
- bugfix: Form.GetControlValue() was not working with numeric controls
- bugfix: SetBptCnd() was broken
- bugfix: idaapi.get_func_cmt() was memory leaking
2011-06-10 15:21:21 +00:00
elias.bachaalany 88aa875c55 bugfixes:
- ph_get_operand_info() would crash IDA sometimes
- idc.SetBptCond() was broken
- idc.GetFunctionCmt() was memory leaking
- Form.GetFieldValue() was failing for numeric controls
- Exceptions originating from the director classes will be displayed

And other minor mods...
2011-06-10 14:54:03 +00:00
elias.bachaalany c29e1ef2da - added ph_get_operand_info() 2011-05-23 15:54:27 +00:00
elias.bachaalany 2327aada40 bugfix: dbg_bpt was called instead of dbg_trace for a DBG_Hooks class implementation
(old bug from version < 1.0)
2011-05-23 13:01:22 +00:00
elias.bachaalany 7e63ea0747 - bugfix: idaapi.del_menu_item() was failing to delete some menu items 2011-05-19 15:06:49 +00:00
elias.bachaalany a12974b66c - bugfix: idc.GetString()/idaapi.get_ascii_contents()/idautils.Strings() were limited to MAXSTR string length
- minor mods
2011-05-19 15:06:31 +00:00
elias.bachaalany c94f5c10bb bugfix: IDAPython: get_blob() was returning a buffer with at most MAXSPECSIZE bytes 2011-05-19 15:03:01 +00:00
elias.bachaalany a52b90c771 bugfix: Previous implementation set_script_timeout() was causing the script wait dialog box to open and never close upon the invocation of callbacks (add_menu_item callback or other callbacks) that take longer than the timeout value. 2011-05-09 10:29:08 +00:00
elias.bachaalany 7179b2c654 - Choose2.Show(modal=True) was broken 2011-05-09 10:22:44 +00:00
elias.bachaalany 50b66d0264 - added VirusTotal script. Check http://www.hexblog.com/?p=324 2011-05-09 10:21:32 +00:00