Skip to content
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

Bump up version of the libipp-crypto dependency #37940

Merged
merged 1 commit into from
Jan 23, 2025

Conversation

krinkinmu
Copy link
Contributor

@krinkinmu krinkinmu commented Jan 9, 2025

Commit Message: Update version of libipp-crypto dependency

Additional Description:

The currently used version of libipp-crypto library has an issue when we build it using fresh versions of LLVM toolchain (specifically I tried 18). clang-14, that is currently used, is somewhat old-ish (the latest official release is from mid 2022) and in #37911 I'm looking and making changes that will make it possible to build Envoy with newer versions of LLVM toolchain.

Now, when it comes to libipp-crypto library, the version Envoy currently uses internally defines a __INLINE macro. Identifiers that start with two underscores are typically reserved for compilers, standard library and similar use cases, but it didn't cause problems with the older version of LLVM toolchain. However, on LLVM-18 some system headers that libipp-crypto relies on also define __INLINE macro (and then undefine it) which causes conflicts and results in a compilation failure.

The issue has been addressed upstream and to fix it in Envoy we just need to switch to a newer version of libipp-crypto to include intel/cryptography-primitives@ea7cd15 (and does not contain intel/cryptography-primitives@7d6ac34). This change bumps up the version of the libipp-crypto to a recent release that contains the fix

Risk Level: Low
Testing:

In addition to newer clang versions I also did test that --define=boringssl=fips builds work with existing clang version (clang-14, --config=docker-clang and --config=docker-clang-libc++), plus checked that the --config=docker-gcc still builds. I tested both regular envoy and contrib versions, though this dependency is only used by contrib. For the functional tests I rely on the tests that will be run automatically by GitHub.

Docs Changes: n/a
Release Notes: n/a
Platform Specific Features: n/a

Related to #37911
+cc @phlax @mathetake

Fix #37628

Signed-off-by: Mikhail Krinkin <[email protected]>
Signed-off-by: Mikhail Krinkin <[email protected]>
@repokitteh-read-only repokitteh-read-only bot added the deps Approval required for changes to Envoy's external dependencies label Jan 9, 2025
Copy link

CC @envoyproxy/dependency-shepherds: Your approval is needed for changes made to (bazel/.*repos.*\.bzl)|(bazel/dependency_imports\.bzl)|(api/bazel/.*\.bzl)|(.*/requirements\.txt)|(.*\.patch).
envoyproxy/dependency-shepherds assignee is @moderation

🐱

Caused by: #37940 was opened by krinkinmu.

see: more, trace.

@moderation
Copy link
Contributor

/lgtm deps

@repokitteh-read-only repokitteh-read-only bot removed the deps Approval required for changes to Envoy's external dependencies label Jan 11, 2025
@krinkinmu
Copy link
Contributor Author

Hi, @giantcroc and @soulxu,

can you please take a look and, if you don't have concern, approve?

Thank you!

@jmarantz
Copy link
Contributor

/wait (for @giantcroc and @soulxu)

@krinkinmu
Copy link
Contributor Author

Hi @giantcroc,

a friendly ping, just in case it fell through the cracks.
When you have a chance could you please take a look at this PR?

Thank you!

@phlax
Copy link
Member

phlax commented Jan 23, 2025

lets push this through - if there is any issue we can revisit

Copy link
Member

@phlax phlax left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm, thanks @krinkinmu

@phlax phlax merged commit 2e16a9e into envoyproxy:main Jan 23, 2025
25 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Newer release available com_github_intel_ipp_crypto_crypto_mb: v1.0.1 (current: ippcp_2021.11.1)
4 participants