curl/lib/vauth
Viktor Szakats d169ad68fa
gssapi: add support for Apple GSS Framework
Add support for the native GSS Framework on Apple targets, which is
Apple's fork of Heimdal. This option allows to drop Apple's deprecated
MIT Kerberos compatibility shim "mit-krb5/1.7-prerelease".

Source code uses different headers, other than that no source changes
are necessary.

You can enable by configuring with:
autotools: `--enable-gssapi-apple`
CMake: `-DCURL_USE_GSSAPI=ON -DCURL_GSS_FLAVOR=Apple`

These options are experimental, and may receive breaking updates till
the GSS backend selection logic settles, for Apple and also for the GNU
and MIT implementation.

Version string:
```
curl 8.21.0-DEV (aarch64-apple-darwin25.4.0) libcurl/8.21.0-DEV
  OpenSSL/3.6.2 zlib/1.2.12 AppleIDN AppleGSS OpenLDAP/2.4.28/Apple
```

Also:
- drop in-source deprecation warning suppressions when using AppleGSS.
- GHA/macos: enable Apple GSS in CI jobs.

Supported by:
iOS 5.0+, iPadOS 5.0+, Mac Catalyst 13.0+, macOS 10.14+, visionOS 1.0+

Ref: https://developer.apple.com/documentation/gss
Ref: #19109

Closes #22052
2026-07-04 01:21:57 +02:00
..
cleartext.c creds: hold credentials 2026-05-12 16:05:15 +02:00
cram.c creds: hold credentials 2026-05-12 16:05:15 +02:00
digest.c lib: transfer origin and proxy handling 2026-06-12 23:52:00 +02:00
digest.h
digest_sspi.c lib: transfer origin and proxy handling 2026-06-12 23:52:00 +02:00
gsasl.c gsasl: fix potential double free 2026-05-15 11:49:06 +02:00
krb5_gssapi.c gssapi: add support for Apple GSS Framework 2026-07-04 01:21:57 +02:00
krb5_sspi.c krb5_sspi: fix error message on DecryptMessage() fail 2026-06-14 14:17:27 +02:00
ntlm.c tidy-up: drop stray comparisons with literal zero 2026-06-10 15:15:54 +02:00
ntlm_sspi.c build: enable -Wformat-signedness, fix issues found 2026-06-10 15:14:08 +02:00
oauth2.c creds: hold credentials 2026-05-12 16:05:15 +02:00
spnego_gssapi.c gssapi: add support for Apple GSS Framework 2026-07-04 01:21:57 +02:00
spnego_sspi.c tidy-up: use curlx_safefree() 2026-05-21 01:31:03 +02:00
vauth.c lib: transfer origin and proxy handling 2026-06-12 23:52:00 +02:00
vauth.h tidy-up: apply clang-format fixes 2026-05-28 00:05:47 +02:00