Skip to content

Feature/opensslv3 compat#132

Open
deviance wants to merge 2 commits into
cisco:mainfrom
deviance:feature/opensslv3-compat
Open

Feature/opensslv3 compat#132
deviance wants to merge 2 commits into
cisco:mainfrom
deviance:feature/opensslv3-compat

Conversation

@deviance

Copy link
Copy Markdown

No description provided.

Aleksandr Makarov added 2 commits July 12, 2024 21:24
…r_string’

Added necessary header includes to fix 'implicit declaration' errors which occur when
using -Wimplicit-function-declaration flag.
The functions `FIPS_mode` and `FIPS_mode_set` are deprecated in OpenSSL 3.0, replaced by
`EVP_default_properties_is_fips_enabled` and `EVP_default_properties_enable_fips` respectively.

This commit introduces wrappers for these new EVP APIs to maintain compatibility with OpenSSL 3.0,
while ensuring continued support for older versions of OpenSSL.

- Implemented `is_fips_enabled` wrapper around `EVP_default_properties_is_fips_enabled`
- Implemented `enable_fips` wrapper around `EVP_default_properties_enable_fips`
- Added conditional compilation to support both new and legacy OpenSSL versions
@Taumille

Copy link
Copy Markdown

Hello, you are using est_enable_fips in the example clients however this function's prototype is in est_ossl_util.h.
This result for all the example in an implicit declaration of function :

estclient.c:1283:35: error: implicit declaration of function ‘est_enable_fips’; did you mean ‘est_enable_crl’? [-Wimplicit-function-declaration]
 1283 |                 set_fips_return = est_enable_fips(1);
      |                                   ^~~~~~~~~~~~~~~
      |                                   est_enable_crl

Since GCC14, this is now an error by default and then break the build.

Can you add :
#include "est_ossl_util.h"
in all the examples C files where you add est_enable_fips ? (I don't want to overload this repo with another 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.

2 participants