-
-
Notifications
You must be signed in to change notification settings - Fork 66
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: added hedley safeguards to many internal C functions #999
Merged
Conversation
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
started the refactoring of many internal C functions
more safety checks upgraded to use hedley
hedley malloc should not be used to optimize new buffers that are returned as already pushed to Lua's stack
lauxlibs are now moved into zen_octet.h and removed from anything that already includes it.
the curve is set at build time and its name is saves in a define
impose a static safety at build time on all octet* pointers returned by o_arg to control they are not overwritten by any caller. This prepares for the optimization on memory and computation that will avoid duplication of memory of all args passed to functions, keeping them read-only.
this introduces a memory reference counter on octet operations as o_new/o_alloc and o_free/o_destroy to allow the safe re-use of pointers passed as o_arg to functions. No need to change code that uses o_free - its use is still recommended.
following hedley adoption, this commit starts fixing several warnings issued at build time, which should be taken rather seriously
do not write over const octets passed as arguments
this helps in a lot of cases while designing algos that use zcash compression, which is otherwise hard to distinguish from octets
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.