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

Rust bindings callbacks aren't Send + Sync #4131

Closed
maddeleine opened this issue Aug 2, 2023 · 0 comments · Fixed by #4289
Closed

Rust bindings callbacks aren't Send + Sync #4131

maddeleine opened this issue Aug 2, 2023 · 0 comments · Fixed by #4289

Comments

@maddeleine
Copy link
Contributor

maddeleine commented Aug 2, 2023

Security issue notifications

If you discover a potential security issue in s2n we ask that you notify
AWS Security via our vulnerability reporting page. Please do not create a public github issue.

Problem:

None of our callbacks are of type Send + Sync. This is a problem because config implements Send + Sync, which means that it can be mutated and sent across threads safely. And configs own those callbacks. So basically the callbacks are not thread-safe when they should be.

Solution:

We probably need to change all the callbacks to be Send + Sync. I think this is a breaking change. Essentially what this means is that people who pull in this change will have to rewrite their callbacks to be thread-safe, which is good, but it will be annoying for them.

Requirements / Acceptance Criteria:

Might want to look into if they need to be 'static as well. Also is there a programmatic way of checking that anything on the config is send + sync?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants