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.
Created by
brew bump
Created with
brew bump-formula-pr
.release notes
A new
rustls_crypto_provider
type has been added to representrustls::CryptoProvider
instances.rustls_crypto_provider_default()
.aws-lc-rs
, (DEFINE_AWS_LC_RS
is true), thenrustls_aws_lc_rs_crypto_provider()
can be used to retrieve theaws-lc-rs
provider.ring
, (DEFINE_RING
is true), thenrustls_ring_crypto_provider()
can be used to retrieve theaws-lc-rs
provider.rustls_crypto_provider
can be retrieved withrustls_crypto_provider_ciphersuites_len()
andrustls_crypto_provider_ciphersuites_get()
.rustls_default_crypto_provider_ciphersuites_len()
andrustls_default_crypto_provider_ciphersuites_get()
.rustls_crypto_provider
usingrustls_crypto_provider_random()
, or the process-wide default provider usingrustls_default_crypto_provider_random()
.A new
RUSTLS_RESULT_NO_DEFAULT_CRYPTO_PROVIDER
rustls_result
was added to indicate when an operation that requires a process-wide default crypto provider fails because no provider has been installed as the default, or the default was not implicit based on supported provider.A new
rustls_crypto_provider_builder
type has been added to customize, or install, a crypto provider.rustls_crypto_provider_builder_new_from_default
will construct a builder based on the current process-wide default.rustls_crypto_provider_builder_new_with_base
will construct a builder based on a specifiedrustls_crypto_provider
.rustls_crypto_provider_builder_set_cipher_suites()
.rustls_crypto_provider_builder_build_as_default()
, if it has not already been done.rustls_crypto_provider
instance built withrustls_crypto_provider_builder_build()
.A new
rustls_signing_key
type has been added to represent a private key that has been parsed by arustls_crypto_provider
and is ready to use for cryptographic operations.rustls_crypto_provider_load_key()
to load asigning_key
from a buffer of PEM data using arustls_crypto_provider
.rustls_certified_key_build_with_signing_key()
to build arustls_certified_key
with a PEM cert chain and arustls_signing_key
.New
rustls_web_pki_client_cert_verifier_builder_new_with_provider()
andrustls_web_pki_server_cert_verifier_builder_new_with_provider()
functions have been added to constructrustls_client_cert_verifier
orrustls_server_cert_verifier
instances that use a specifiedrustls_crypto_provider
.Support for constructing a
rustls_server_cert_verifier
that uses the platform operating system's native certificate verification functionality was added. See therustls-platform-verifier
crate docs for more information on supported platforms.rustls_platform_server_cert_verifier()
to construct a platform verifier that uses the default crypto provider.rustls_platform_server_cert_verifier_with_provider()
to construct a platform verifier that uses the specifiedrustls_crypto_provider
.rustls_server_cert_verifier
can be used with arustls_client_config_builder
withrustls_client_config_builder_set_server_verifier()
.A new
rustls_supported_ciphersuite_protocol_version()
function was added for getting therustls_tls_version
IANA registered protocol version identifier supported by a givenrustls_supported_ciphersuite
.When using
aws-lc-rs
as the crypto provider, NIST P-521 signatures are now supported.Changed
rustls_server_config_builder_new()
,rustls_client_config_builder_new()
,rustls_web_pki_client_cert_verifier_builder_new()
, andrustls_web_pki_server_cert_verifier_builder_new()
, andrustls_certified_key_build
functions now use the process default crypto provider instead of being hardcoded to usering
.rustls_server_config_builder_new_custom()
andrustls_client_config_builder_new_custom()
no longer take custom ciphersuites as an argument. Instead they require providing arustls_crypto_provider
.rustls_crypto_provider_builder
andrustls_crypto_provider_builder_set_cipher_suites()
.rustls_server_config_builder_build()
andrustls_client_config_builder_build()
now use out-parameters for therustls_server_config
orrustls_client_config
, and return arustls_result
. This allows returning an error if the build operation fails because a suitable crypto provider was not available.rustls_client_config_builder_build()
now returns aRUSTLS_RESULT_NO_SERVER_CERT_VERIFIER
rustls_result
error if a server certificate verifier was not set instead of falling back to a verifier that would fail all certificate validation attempts.The
NoneVerifier
used if arustls_client_config
is constructed by arustls_client_config_builder
without a verifier configured has been changed to return an unknown issuer error instead of a bad signature error when asked to verify a server certificate.Error specificity for revoked certificates was improved.
Removed
ALL_CIPHER_SUITES
andDEFAULT_CIPHER_SUITES
constants and associated functions (rustls_all_ciphersuites_len()
,rustls_all_ciphersuites_get_entry()
,rustls_default_ciphersuites_len()
andrustls_default_ciphersuites_get_entry()
) have been removed. Ciphersuite support is dictated by therustls_crypto_provider
.rustls_default_supported_ciphersuites()
to retrieve arustls_supported_ciphersuites
for the defaultrustls_crypto_provider
.rustls_crypto_provider_ciphersuites()
to retrieve arustls_supported_ciphersuites
for a givenrustls_crypto_provider
.rustls_supported_ciphersuites_len()
andrustls_supported_ciphersuites_get()
to iterate therustls_supported_ciphersuites
.What's Changed
rustls-platform-verifier
binding by @amesgen in Addrustls-platform-verifier
binding rustls/rustls-ffi#419rustls_version()
integration test by @cpu inrustls_version()
integration test rustls/rustls-ffi#434UnknownRevocationStatus
by @ctz in Add missing errorUnknownRevocationStatus
rustls/rustls-ffi#449New Contributors
Full Changelog: rustls/rustls-ffi@v0.13.0...v0.14.0