-
Notifications
You must be signed in to change notification settings - Fork 83
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
Check &self/&mut self #9
Comments
I checked over every instance of We could start assuming these functions are actually const and then avoid having to take |
Yes that's what I was thinking |
Sounds good to me. Some of these will require some digging to figure out if it is actually safe or not (for instance it appears |
128: MbedTLS Reference counted instead of lifetimes r=jethrogb a=AdrianCX Moving from referene counting allows simpler move to native-tls / hyper. Arc Changes: - Each Config/Context/... will hold Arcs towards items it holds pointers to. - This forces objects to live as long as needed, once no longer used they get destroyed by reference counting. This allows passing the objects to multiple threads without worrying about lifetime. I've also added notes why classes are Sync where used. Let me know if I missed any classes. Usage example of an intermediate mbed-hyper integration is at: - https://github.com/fortanix/rust-mbedtls/tree/acruceru/wip-mbed-hyper-v2/mbedtls-hyper/examples/integrations There I added a crate to wrap hyper - similar to native-tls. (that will be moved to native-tls layer soon) That crate can be considered an integration test that I will raise a separate PR for. Edit: Changes after initial review: - Added forward_mbedtls_calloc / forward_mbedtls_free functions so we can pass certificates to and from mbedtls without allocator mismatches/corruptions. - Switched to MbedtlsList<Certificate> and Certificate. A MbedtlsBox is pending for this PR as well. - Fixed most comments. Still pending: - Update define! macros - Add MbedtlsBox<Certificate> Fixes #1 Partial progress on #3 Fixes #4 Fixes #8 Partially addresses #9 Co-authored-by: Adrian Cruceru <adrian.cruceru@fortanix.com>
128: MbedTLS Reference counted instead of lifetimes r=jethrogb a=AdrianCX Moving from referene counting allows simpler move to native-tls / hyper. Arc Changes: - Each Config/Context/... will hold Arcs towards items it holds pointers to. - This forces objects to live as long as needed, once no longer used they get destroyed by reference counting. This allows passing the objects to multiple threads without worrying about lifetime. I've also added notes why classes are Sync where used. Let me know if I missed any classes. Usage example of an intermediate mbed-hyper integration is at: - https://github.com/fortanix/rust-mbedtls/tree/acruceru/wip-mbed-hyper-v2/mbedtls-hyper/examples/integrations There I added a crate to wrap hyper - similar to native-tls. (that will be moved to native-tls layer soon) That crate can be considered an integration test that I will raise a separate PR for. Edit: Changes after initial review: - Added forward_mbedtls_calloc / forward_mbedtls_free functions so we can pass certificates to and from mbedtls without allocator mismatches/corruptions. - Switched to MbedtlsList<Certificate> and Certificate. A MbedtlsBox is pending for this PR as well. - Fixed most comments. Still pending: - Update define! macros - Add MbedtlsBox<Certificate> Fixes #1 Partial progress on #3 Fixes #4 Fixes #8 Partially addresses #9 Co-authored-by: Adrian Cruceru <adrian.cruceru@fortanix.com> Co-authored-by: Jethro Beekman <jethro@fortanix.com>
Map CloseNotify to EOF
There's a lot of
*mut
pointer usage in the MbedTLS C API but perhaps some of those usages should be*const
, especially with regards to callbacks.The text was updated successfully, but these errors were encountered: