refactor: remove s2n_hmac_is_available #5104
Merged
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.
Release Summary:
Description of changes:
While working on openssl3-fips support, I noticed that s2n_hmac_is_available is deceptive.
s2n_hmac_is_available is only ever false when 1) in fips mode 2) with a libcrypto other than awslc-fips. No currently supported libcrypto fits those requirements. The logic was likely written for openssl-1.0.2-fips, but even then it was probably unnecessary give the hash md5 logic I recently removed: 8d521fc.
The method also wasn't used properly throughout the codebase. For example, s2n_cipher_suites_init assumes all hmacs are valid.
Rather than update the method, I'm just going to remove it. If we someday have a usecase for it separate from s2n_hash_is_available, we can add it back and integrate it into the library properly.
Testing:
Existing tests pass
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.