Commit Graph

216 Commits

Author SHA1 Message Date
mio
c84dbac9a8 Rename build dir for python bindings 2022-01-18 20:15:28 +01:00
mio
28e791a37f Add debug tracing feature
It's disabled by default, use -DUNICORN_TRACER=on to enable it
2022-01-18 19:35:43 +01:00
06be6fdc24 Merge pull request #1537 from gerph/clear-pending-hook-exception-before-emulation
Clear Python pending hook exception before we enter the emulation.
2022-01-15 22:13:24 +01:00
dfb0446137 Update bindings 2022-01-15 20:56:24 +01:00
Charles Ferguson
1ba59ed70a Clear Python pending hook exception before we enter the emulation.
The pending exception hook is set when the hook raised an exception
and wants to report it outside the emulation loop. However, it is
never cleared back to None. This means that after an exception is
raised in a hook, all subsequent execution (even if successful) will
raise the exception.

This change clears the exception before we start another emulation,
which should ensure that if we have _hook_exception set, it really
is from hooks in this emulation run.
2022-01-15 17:45:45 +00:00
c671efe798 Update bindings 2022-01-05 22:00:59 +01:00
c4b4189857 Update bindings 2022-01-04 21:12:52 +01:00
3184d3fcdf Update python bindings 2021-12-22 20:46:14 +01:00
10d88e89a5 Fix uc_version and bump again 2021-11-25 18:19:46 +01:00
9a4d5d0be8 Bump bindings version to 2.0.0-rc5 2021-11-25 14:29:41 +01:00
mid-kid
2d665aa752 Accomodate for setting a different CMAKE_GENERATOR in the environment.
This makes sure the right build utility is called, depending on the
value of the CMAKE_GENERATOR environment.
2021-11-13 13:34:11 +01:00
0714fb5760 Bump bindings version 2021-11-09 00:23:19 +01:00
9abbba173c Update python bindings 2021-11-07 21:00:05 +01:00
923b4ad3cc Update python bindings 2021-11-04 21:47:30 +01:00
b9c0066a47 Format and naming 2021-11-04 20:04:57 +01:00
db90f39ac6 Generate bindings 2021-11-04 20:01:19 +01:00
Bet4
aaf340d9e4 Merge branch 'dev' into patch 2021-11-02 18:36:22 +08:00
090686f8ed uc_ctl proposal (#1473)
* Add uc_ctl

* Add comments

* Slightly changed for bindings generation

* Generate bindings
2021-10-30 10:45:32 +08:00
9e1443013b Fix gen_const 2021-10-26 13:10:59 +02:00
e695686c15 Remove AFL Integration by reverting 2021-10-26 11:22:21 +02:00
17963ff4aa Update python bindings for afl 2021-10-25 01:27:51 +02:00
f08b7d6b5b Make gen_const work and updates constants 2021-10-25 00:57:32 +02:00
insane-shane
47ecfc1b2c Handle exceptions raised in Python hook functions (#1387) 2021-10-12 08:35:52 +08:00
mio
8f7ecfe48b Support configure threads by environment variable 2021-10-10 23:46:22 +02:00
ad3c0a5b32 Bump python bindings version 2021-10-06 12:37:13 +02:00
mio
2474f9513b Sync docs from wiki and remove cmake.sh 2021-10-05 15:26:13 +02:00
mio
5668fd9c42 Set zip_safe and is_pure to False and trigger another build 2021-10-05 15:11:59 +02:00
mio
59deed7484 Simply the setup.py 2021-10-05 14:46:04 +02:00
mio
aff9c9dc48 Clean debug print and make it compatible with python3.5 2021-10-05 13:48:26 +02:00
mio
e1204d8977 Specify the content type 2021-10-04 18:09:44 +02:00
chfl4gs
e571dc278a PyPI publishing 2021-10-04 22:22:41 +08:00
Nguyen Anh Quynh
e8bd7ca087 bindings: update X86 register constants 2021-10-04 19:41:41 +08:00
mio
ebb468d042 Fix msvc build 2021-10-04 10:44:30 +02:00
Nguyen Anh Quynh
aaaea14214 import Unicorn2 2021-10-03 22:14:44 +08:00
Nguyen Anh Quynh
2874435d2f bump version to 1.0.3 2021-05-16 21:38:08 +08:00
insane-shane
4f9a6cfcf3 Handle exceptions raised in Python hook functions (#1387) 2021-04-26 00:35:56 +08:00
w4kfu-synacktiv
21ec6e8f83 Add ARM BE8 support (#1369)
Co-authored-by: w4kfu <gw4kfu@gmail.com>
2021-03-31 21:22:35 +08:00
lazymio
1044403d38 Implement uc_context_free (#1336)
* Implement uc_context_free

* Use uc_context_free for python bindings

* Format code

* Simplify code

* Move next,context inside while loop

* Add my name to CREDITS.TXT
2020-09-24 22:28:55 +08:00
lazymio
4441394258 Fix context saving (#1335)
* Fix context size

* Make UcContext convertible to bytes and picklable

Fix when updaing context

* Test context pickling

* Fix double free when the context is pickled from bytes
2020-09-24 00:53:23 +08:00
☃ Stephen Shkardoon ☃
b1459f7554 Fix failing test caused by removal of UC_ERR_TIMEOUT (#1305)
Caused by fbef45b18f.
Now the code assumes if it completes without an error, it was
successful.
2020-09-21 10:37:38 +08:00
chfl4gs
c03f50f76a Fixing installation on cygwin, Travis-ci cache adjustment (#1322)
* Adding Travis-CI cmake static

* fix 64-bit fstenv (#1300)

* fix 64-bit fstenv

* fix fstenv

* safe_zip to false and travis adjustment

* Fixed zip_safe and cygwin setup

Co-authored-by: liangjs <761232680@qq.com>
2020-09-10 10:01:13 +08:00
Nguyen Anh Quynh
564ae2b14a python: correct a comment on hooking on sample_arm64.py. fix #1292 2020-06-10 17:56:01 +08:00
chfl4gs
9288b4a845 adding pypi workflow (#1280)
* adding pypi workflow

* PyPI distribution packages workflow
2020-06-06 12:53:31 +08:00
Nguyen Anh Quynh
2e0f753e6f save cpu->jmp_env in saving context, so uc_emu_start() can be reentrant. also improved Python binding on handling context 2020-06-05 20:12:44 +08:00
Nguyen Anh Quynh
99be837364 python: add long description to setup.py 2020-05-29 11:56:24 +08:00
Nguyen Anh Quynh
fbef45b18f remove UC_ERR_TIMEOUT, so timeout on uc_emu_start() is not considered error. added UC_QUERY_TIMEOUT to query exit reason 2020-05-24 23:54:45 +08:00
Nguyen Anh Quynh
cf3451c37a bindings: update ARM64 registers 2020-05-10 21:51:14 +08:00
Dominik Maier
625399774c X64 base regs (#1166)
* x86: setup FS & GS base

* Fixed base register writes for x64, removed then for x16/x32 (the don't exist there?)

* FS reg comes before GS so the base regs do so, too

* added shebang to const_generator.py

* Added base regs to and added 'all' support to const_generator

Co-authored-by: naq <aquynh@gmail.com>
2020-05-05 08:34:51 +08:00
Pedro Tammela
18aa2627f7 fix binding install on python2 (#1231) 2020-04-24 17:15:12 +08:00
Saagar Jha
d69ebfa55c Make it easier to link against libunicorn on macOS (#1195)
Adding @rpath to the install name to make it possible to link against
the library without modifying it with install_name_tool. Copying both
the versioned and unversioned dylibs simplifies linking.
2020-02-12 14:16:34 +08:00