forked from capstone-engine/capstone
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
4 changed files
with
20 additions
and
50 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,48 +0,0 @@ | ||
1. API change | ||
|
||
Version 2.1 changes the API cs_close() from (prototype): | ||
|
||
cs_err cs_close(csh handle); | ||
|
||
to: | ||
|
||
cs_err cs_close(csh *handle); | ||
|
||
|
||
Therefore, all C code written on top of Capstone must be fixed accordingly, | ||
from something like: | ||
|
||
|
||
csh handle; | ||
//.... | ||
cs_close(handle); // <-- cs_close() used to take handle as argument. | ||
|
||
to: | ||
|
||
csh handle; | ||
//.... | ||
cs_close(&handle); // <-- cs_close() now takes pointer to handle as argument. | ||
|
||
|
||
Internally, this change is to invalidate @handle, making sure it cannot be | ||
mistakenly used after the handle is closed. | ||
|
||
|
||
NOTE: this change is on C interface only. All the bindings Python, Java or | ||
bindings made by community such as C#, Go, Ruby & Vala should hide this change | ||
behind their API. For this reason, code using these bindings still work exactly | ||
like before and do not need to have any modification. | ||
|
||
|
||
2. Upgrade bindings | ||
|
||
Version 2.1 makes some changes to Java & Python bindings, like adding some new | ||
instructions (affecting *_const.py & *_const.java). While this does not break | ||
API compatibility (i.e users do not need to modify their program written with | ||
prior version 2.0), they must upgrade these bindings and must not use the old | ||
bindings from prior versions. | ||
|
||
We cannot emphasize this enough: When upgrading to the new engine, always | ||
upgrade to the bindings coming with the same core. If do not follow this | ||
principle, applications can silently break without any clear evidence, | ||
making it very hard to debug sometimes. | ||
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -6,6 +6,6 @@ PKG_MAJOR = 2 | |
PKG_MINOR = 1 | ||
|
||
# version bugfix level. Example: PKG_EXTRA = 1 | ||
PKG_EXTRA = | ||
PKG_EXTRA = 1 | ||
|
||
|