alexcrichton / alexcrichton/curl-rust

Building expects `openssl/engine.h` despite engine API being deprecated?

Ouverte
#570 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
Rust
Étoiles
1.1k
Forks
258
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

Equivalent of https://github.com/alexcrichton/ssh2-rs/issues/328

```
cargo:warning=curl/lib/vtls/openssl.c:103:10: fatal error: 'openssl/engine.h' file not found
cargo:warning= 103 | #include
cargo:warning= | ^~~~~~~~~~~~~~~~~~
cargo:warning=1 warning and 1 error generated.
```

---

Curl likewise can opt-out:

https://github.com/curl/curl/blob/curl-8_9_1/lib/vtls/openssl.c#L100-L104

```c
#if (OPENSSL_VERSION_NUMBER >= 0x0090700fL) && /* 0.9.7 or later */ \
!defined(OPENSSL_NO_ENGINE) && !defined(OPENSSL_NO_UI_CONSOLE)
#define USE_OPENSSL_ENGINE
#include
#endif
```

For Fedora 41 onwards `openssl-devel-engine` provides build compatibility for the time being. A brief overview follows:

> https://discussion.fedoraproject.org/t/f41-change-proposal-openssl-deprecate-engine-system-wide
>
> Engines are not FIPS compatible and corresponding API is deprecated since OpenSSL 3.0. The engine functionality we are aware of (`PKCS#11`, TPM) is either covered by providers or will be covered soon.
>
> We are going to prevent creating the new packages dependent on OpenSSL ENGINE API and remove ENGINE dependencies from the existing packages.
>
> OpenSSL `libcrypto.so` exports the same `ENGINE_*` symbols as for f40. Applications relying on the ENGINE API can’t be built but still work.

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.