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

Use non-deprecated APIs when building against openssl 3 #334

Closed
wants to merge 146 commits into from

Conversation

snargit
Copy link
Contributor

@snargit snargit commented May 16, 2022

Use non-deprecated APIs when building against openssl 3. These changes are a like-for-like replacement of the low-level API calls with the equivalent higher-level ones per the openssl porting guidelines. All the new code is behind #ifdefs so builds against older versions of openssl should be identical to the current code.

The only place I've not updated is the engine-specific key loading code in openssl/app.c as there's no direct replacement for this due to the complete deprecation of all the engine APIs in favour of the new provider design.

Tests are all passing, but there are still some compiler warnings related to size_t usage on 64-bit builds as the configure script seems to incorrectly assume that size_t is not available for 64-bit due to an explicit length check (size != 4 bytes -> no size_t).

@lsh123
Copy link
Owner

lsh123 commented May 16, 2022

Thanks a lot for creating this PR! I will review it this week (it's pretty big so I will need a couple days).

Aleksey

@lsh123
Copy link
Owner

lsh123 commented May 16, 2022

I "forked" this PR into my own PR where I will make changes as I go:

#336

I already removed the Engine for OpenSSL 3.0 for now

lsh123 added a commit that referenced this pull request May 17, 2022
@lsh123
Copy link
Owner

lsh123 commented May 17, 2022

Thanks a lot for your PR! I merged my PR #336 just now. It includes everything you had plus:

  • disabled Engine's for now, need to think how to handle it better;
  • fixed the size_t errors (I have longer term plans to address it too);
  • many small improvements mostly around error handling.

I will close this PR.

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

Successfully merging this pull request may close these issues.

None yet

2 participants