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

Modify ossl_init_thread_start api to support freeing thread data without per-key destructor #558

Open
4 tasks
Tracked by #24357
nhorman opened this issue May 14, 2024 · 3 comments
Open
4 tasks
Tracked by #24357

Comments

@nhorman
Copy link
Contributor

nhorman commented May 14, 2024

#552 is meant to investigate manners in which ossl_init_thread_start deletes per thread data in an in-appropriate manner. This task tracks the implementation of the output of that task. To be updated when a consensus is reached there. Current proposal is:

  • ossl_init_thread_start should be cloned to ossl_init_thread_start_ex to accept an additional parameter *data, which holds a pointer to thread local data - cloning is to preserve (allbeit broken) ABI for existing providers
  • THREAD_EVENT_HANDLER should be expanded to hold a pointer to (1) above
  • OSSL_thread_stop_handler_fn should accept a second parameter data to pass (1) to the callback
  • init_thread_stop should call (3) with the extra parameter stored in (2)
@t8m
Copy link
Member

t8m commented May 14, 2024

Should this be transferred to openssl/project?

@nhorman
Copy link
Contributor Author

nhorman commented May 14, 2024

It certainly could be, but I'm not sure I see a significant value in doing so, unless there just some book keeping value there

@mattcaswell
Copy link
Member

It does not belong in this repo IMO and should be transferred

@nhorman nhorman transferred this issue from openssl/openssl May 14, 2024
@nhorman nhorman changed the title Implement proposal from #552 when consensus reached Modify ossl_init_thread_start api to support freeing thread data without per-key destructor May 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Backlog
Development

No branches or pull requests

3 participants