-
Notifications
You must be signed in to change notification settings - Fork 284
chore(meshtls-rustls): Use aws-lc as the default crypto backend
#4043
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
This changes the default crypto backend from ring to aws-lc-rs. Eventually we can remove ring entirely from the dependency tree, but for now this simply changes the default. Signed-off-by: Scott Fleener <[email protected]>
This adds the cross compilation toolchain and required environment variables to the release workflows and local Dockerfile. These will end up in the dev image, but for now we can specify them manually. Signed-off-by: Scott Fleener <[email protected]>
Signed-off-by: Scott Fleener <[email protected]>
Signed-off-by: Scott Fleener <[email protected]>
linkerd/proxy/transport/Cargo.toml
Outdated
| linkerd-io = { path = "../../io" } | ||
| linkerd-stack = { path = "../../stack" } | ||
| socket2 = "0.5" | ||
| socket2 = { version = "0.5", features = ["all"] } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is this needed here? 🙇♀️ looking at the rest of this diff, i'm not sure if we need to alter our socket2 dependency.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Best as I can figure, yes. I think the old backend was enabling this feature implicitly somewhere in the dep stack, and we rely on that feature being enabled even if we didn't declare it explicitly.
This comment was marked as resolved.
This comment was marked as resolved.
Sorry, something went wrong.
|
i'm a huge fan of this change. breaking this out into (a) changing a default, followed by (b) removing alternative providers, seems like a great way to go about doing this. |
linkerd/proxy/transport/Cargo.toml
Outdated
| linkerd-io = { path = "../../io" } | ||
| linkerd-stack = { path = "../../stack" } | ||
| socket2 = "0.5" | ||
| socket2 = { version = "0.5", features = ["all"] } |
This comment was marked as resolved.
This comment was marked as resolved.
Sorry, something went wrong.
The broader ecosystem has mostly moved to
aws-lc-rsas the primaryrustlsbackend, and we should follow suit. This will also simplify the maintenance of the proxy's TLS implementation in the long term.This requires some extra configuration for successful cross-compilation, ideally we can remove this extra configuration once linkerd/dev v48 is available.
This doesn't remove
ringas a crypto backend, that can come in a follow-up at #4029