build: drop Heimdal support, update docs, replace with MIT Kerberos in CI

The kerberos5 library Heimdal is one of three GSS libraries curl support.
It has a memory leak triggered by the new test in #18917 and the project
seems mostly abandoned.

Drop support and steer users to the MIT krb5 or GNU GSS libraries.

Co-authored-by: Daniel Stenberg

Ref: #18928
Closes #18928
Closes #18932
This commit is contained in:
Viktor Szakats 2025-10-08 12:03:18 +02:00
parent cd7b45a3bb
commit 8be9a26451
No known key found for this signature in database
GPG key ID: B5ABD165E2AEF201
13 changed files with 63 additions and 137 deletions

View file

@ -474,7 +474,7 @@ the parent project, ideally in the "extra" find package redirect file:
Available variables:
- `HAVE_GNUTLS_SRP`: `gnutls_srp_verifier` present in GnuTLS.
- `HAVE_GSS_C_NT_HOSTBASED_SERVICE`: `GSS_C_NT_HOSTBASED_SERVICE` present in GSS/Heimdal/Kerberos.
- `HAVE_GSS_C_NT_HOSTBASED_SERVICE`: `GSS_C_NT_HOSTBASED_SERVICE` present in GSS/Kerberos.
- `HAVE_LDAP_INIT_FD`: `ldap_init_fd` present in LDAP library.
- `HAVE_LDAP_URL_PARSE`: `ldap_url_parse` present in LDAP library.
- `HAVE_OPENSSL_SRP`: `SSL_CTX_set_srp_username` present in OpenSSL (or fork).

View file

@ -36,7 +36,6 @@ versions of libs and build tools.
- wolfSSL 3.4.6
- OpenLDAP 2.0
- MIT Kerberos 1.2.4
- Heimdal 7.1.0
- nghttp2 1.15.0
## Build tools

View file

@ -38,7 +38,6 @@ problems may have been fixed or changed somewhat since this was written.
5.2 curl-config --libs contains private details
5.3 LDFLAGS passed too late making libs linked incorrectly
5.6 Cygwin: make install installs curl-config.1 twice
5.11 configure --with-gssapi with Heimdal is ignored on macOS
5.12 flaky CI builds
5.13 long paths are not fully supported on Windows
5.15 Unicode on Windows
@ -49,7 +48,6 @@ problems may have been fixed or changed somewhat since this was written.
6.5 NTLM does not support password with Unicode 'SECTION SIGN' character
6.6 libcurl can fail to try alternatives with --proxy-any
6.7 Do not clear digest for single realm
6.8 Heimdal memory leaks
6.9 SHA-256 digest not supported in Windows SSPI builds
6.10 curl never completes Negotiate over HTTP
6.11 Negotiate on Windows fails
@ -238,12 +236,6 @@ problems may have been fixed or changed somewhat since this was written.
https://github.com/curl/curl/issues/8839
5.11 configure --with-gssapi with Heimdal is ignored on macOS
... unless you also pass --with-gssapi-libs
https://github.com/curl/curl/issues/3841
5.12 flaky CI builds
We run many CI builds for each commit and PR on github, and especially a
@ -342,13 +334,6 @@ problems may have been fixed or changed somewhat since this was written.
https://github.com/curl/curl/issues/3267
6.8 Heimdal memory leaks
Running test 2077 and 2078 with curl built to do GSS with Heimdal causes
valgrind errors (memory leak).
https://github.com/curl/curl/issues/14446
6.9 SHA-256 digest not supported in Windows SSPI builds
Windows builds of curl that have SSPI enabled use the native Windows API calls

View file

@ -496,8 +496,8 @@
4.6 GSSAPI via Windows SSPI
In addition to currently supporting the SASL GSSAPI mechanism (Kerberos V5)
via third-party GSS-API libraries, such as Heimdal or MIT Kerberos, also add
support for GSSAPI authentication via Windows SSPI.
via third-party GSS-API libraries, such as MIT Kerberos, also add support
for GSSAPI authentication via Windows SSPI.
4.7 STAT for LIST without data connection