gskit: remove

We remove support for building curl with gskit.

 - This is a niche TLS library, only running on some IBM systems
 - no regular curl contributors use this backend
 - no CI builds use or verify this backend
 - gskit, or the curl adaption for it, lacks many modern TLS features
   making it an inferior solution
 - build breakages in this code take weeks or more to get detected
 - fixing gskit code is mostly done "flying blind"

This removal has been advertized in DEPRECATED in Jan 2, 2023 and it has
been mentioned on the curl-library mailing list.

It could be brought back, this is not a ban. Given proper effort and
will, gskit support is welcome back into the curl TLS backend family.

Closes #11460
This commit is contained in:
Daniel Stenberg 2023-08-07 13:02:32 +02:00
parent 08b9f246f4
commit 78d6232f1f
No known key found for this signature in database
GPG key ID: 5CC908FDB71E12C2
33 changed files with 35 additions and 1995 deletions

View file

@ -38,7 +38,7 @@ typedef enum {
CURLSSLBACKEND_OPENSSL = 1, /* or one of its forks */
CURLSSLBACKEND_GNUTLS = 2,
CURLSSLBACKEND_NSS = 3,
CURLSSLBACKEND_GSKIT = 5,
CURLSSLBACKEND_GSKIT = 5, /* deprecated */
CURLSSLBACKEND_POLARSSL = 6, /* deprecated */
CURLSSLBACKEND_WOLFSSL = 7,
CURLSSLBACKEND_SCHANNEL = 8,

View file

@ -50,7 +50,7 @@ specific backend at first use. If no selection is done by the program using
libcurl, this variable's selection will be used. Setting a name that is not a
built-in alternative will make libcurl stay with the default.
SSL backend names (case-insensitive): BearSSL, GnuTLS, gskit, mbedTLS,
SSL backend names (case-insensitive): BearSSL, GnuTLS, mbedTLS,
nss, OpenSSL, rustls, Schannel, Secure-Transport, wolfSSL
.IP HOME
When the netrc feature is used (\fICURLOPT_NETRC(3)\fP), this variable is

View file

@ -75,7 +75,7 @@ if(curl) {
}
.fi
.SH AVAILABILITY
This option is only working in libcurl built with OpenSSL, Schannel, GSKit or
This option is only working in libcurl built with OpenSSL, Schannel or
Secure Transport support. Schannel support added in 7.50.0. Secure Transport
support added in 7.79.0.

View file

@ -63,8 +63,8 @@ if(curl) {
}
.fi
.SH AVAILABILITY
Added in 7.34.0. Deprecated since 7.48.0 and supported OpenSSL, GnuTLS,
NSS and gskit only up until this version was released.
Added in 7.34.0. Deprecated since 7.48.0 and supported OpenSSL, GnuTLS, and
NSS only up until this version was released.
.SH RETURN VALUE
Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
.SH "SEE ALSO"

View file

@ -57,18 +57,15 @@ struct curl_tlssessioninfo {
The \fIbackend\fP struct member is one of the defines in the CURLSSLBACKEND_*
series: CURLSSLBACKEND_NONE (when built without TLS support),
CURLSSLBACKEND_WOLFSSL, CURLSSLBACKEND_SECURETRANSPORT, CURLSSLBACKEND_GNUTLS,
CURLSSLBACKEND_GSKIT, CURLSSLBACKEND_MBEDTLS, CURLSSLBACKEND_NSS,
CURLSSLBACKEND_OPENSSL, CURLSSLBACKEND_SCHANNEL or
CURLSSLBACKEND_MESALINK. (Note that the OpenSSL forks are all reported as just
OpenSSL here.)
CURLSSLBACKEND_MBEDTLS, CURLSSLBACKEND_NSS, CURLSSLBACKEND_OPENSSL,
CURLSSLBACKEND_SCHANNEL or CURLSSLBACKEND_MESALINK. (Note that the OpenSSL
forks are all reported as just OpenSSL here.)
The \fIinternals\fP struct member will point to a TLS library specific pointer
for the active ("in use") SSL connection, with the following underlying types:
.RS
.IP GnuTLS
\fBgnutls_session_t\fP
.IP gskit
\fBgsk_handle\fP
.IP NSS
\fBPRFileDesc *\fP
.IP OpenSSL

View file

@ -74,7 +74,7 @@ if(curl) {
}
.fi
.SH AVAILABILITY
This option is supported by the OpenSSL, GnuTLS, Schannel, GSKit and Secure
This option is supported by the OpenSSL, GnuTLS, Schannel and Secure
Transport backends. Schannel support added in 7.50.0. Secure Transport support
added in 7.79.0.
.SH RETURN VALUE

View file

@ -102,8 +102,6 @@ PEM/DER support:
7.39.0: OpenSSL, GnuTLS
7.39.0-7.48.0,7.58.1+: GSKit
7.43.0: wolfSSL
7.47.0: mbedTLS

View file

@ -98,7 +98,7 @@ footer:
.SH AVAILABILITY
PEM/DER support:
7.52.0: GSKit, GnuTLS, OpenSSL, mbedTLS, wolfSSL
7.52.0: GnuTLS, OpenSSL, mbedTLS, wolfSSL
sha256 support: