-
Notifications
You must be signed in to change notification settings - Fork 127
Use bindgen to automatically generate boring-sys #11
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
Conversation
Fixes #10 |
This is awesome, thanks! Can we keep |
The Windows CI issue is due to KyleMayes/clang-sys#121 Should be good now! |
This ensures that all the Rust functions, types and constants always match the actual BoringSSL definitions. It also removes quite a lot of manually maintained code, as well as the need for systest. The value for `SslOptions::ALL`, for example, was wrong. On current BoringSSL versions, this is a no-op, and is set to `0`. Clearing it does nothing. So, the `clear_ctx_options` test, that passed by accident, was adjusted to use a different option. The `libc` crate is not required, as we only use it for types that are already defined in the standard library. It was removed from `boring-sys`. The same can be done to other crates later.
|
Put 1.70 in there (for instance if you want to pin against OnceLock stabilizing) and it will actually test 1.7 as it appears github auto converts this to a float? Putting in quotes seems to do the right thing here
This ensures that all the Rust functions, types and constants always match the actual BoringSSL definitions.
It also removes quite a lot of manually maintained code, as well as the need for
systest
.The value for
SslOptions::ALL
, for example, was wrong. On current BoringSSL versions, this is a no-op, and is set to0
.Clearing it does nothing. So, the
clear_ctx_options
test, that passed by accident, was adjusted to use a different option.The
libc
crate is not required, as we only use it for types that are already defined in the standard library. It was removed fromboring-sys
. The same can be done to other crates later.