linux: use EVP_PKEY_CTX_add1_hkdf_info only once in compat function#1073
Merged
igaw merged 3 commits intolinux-nvme:masterfrom Sep 17, 2025
Merged
linux: use EVP_PKEY_CTX_add1_hkdf_info only once in compat function#1073igaw merged 3 commits intolinux-nvme:masterfrom
igaw merged 3 commits intolinux-nvme:masterfrom
Conversation
Newer GCC complain about 'digest' being an empty argument, which is technically true, but in practice can only happen if version == 0, which we already check. So add a warning to keep GCC happy. Signed-off-by: Hannes Reinecke <[email protected]>
OpenSSL prior to 3.3.1 had an issue with EVP_PKEY_CTX_add1_hkdf_info() where it acted like a 'set1' function instead of an 'add1' as documented. Work around that by building the entire info vector outside of the OpenSSL API and only calling this function once. This is the same workaround used in commit eff0ffe ("linux: fix HKDF TLS key derivation back to OpenSSL 3.0.8"). Signed-off-by: Daniel Wagner <[email protected]>
The EVP_PKEY_CTX_add1_hkdf_info implementation had a bug in the past which made it behave like a set instead of add function. When linking against external builds warn about it. The libnvme implementation works around this problem, but it's better to have this logged during the configure step, so there is chance to debug this. Signed-off-by: Daniel Wagner <[email protected]>
Collaborator
|
Thanks for doing this! |
This file contains hidden or 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
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.
linux: use EVP_PKEY_CTX_add1_hkdf_info only once in compat function
OpenSSL prior to 3.3.1 had an issue with EVP_PKEY_CTX_add1_hkdf_info()
where it acted like a 'set1' function instead of an 'add1' as
documented. Work around that by building the entire info vector outside
of the OpenSSL API and only calling this function once.
This is the same workaround used in commit eff0ffe ("linux: fix
HKDF TLS key derivation back to OpenSSL 3.0.8").
Signed-off-by: Daniel Wagner [email protected]
Fixes: #1053