url: add CURLOPT_SSL_VERIFYSTATUS option

This option can be used to enable/disable certificate status verification using
the "Certificate Status Request" TLS extension defined in RFC6066 section 8.

This also adds the CURLE_SSL_INVALIDCERTSTATUS error, to be used when the
certificate status verification fails, and the Curl_ssl_cert_status_request()
function, used to check whether the SSL backend supports the status_request
extension.
This commit is contained in:
Alessandro Ghedini 2014-06-16 13:20:47 +02:00 committed by Daniel Stenberg
parent 5e113a18c5
commit 3af90a6e19
8 changed files with 89 additions and 1 deletions

View file

@ -523,6 +523,7 @@ typedef enum {
session will be queued */
CURLE_SSL_PINNEDPUBKEYNOTMATCH, /* 90 - specified pinned public key did not
match */
CURLE_SSL_INVALIDCERTSTATUS, /* 91 - invalid certificate status */
CURL_LAST /* never use! */
} CURLcode;
@ -1622,6 +1623,9 @@ typedef enum {
/* Path to Unix domain socket */
CINIT(UNIX_SOCKET_PATH, OBJECTPOINT, 231),
/* Set if we should verify the certificate status. */
CINIT(SSL_VERIFYSTATUS, LONG, 232),
CURLOPT_LASTENTRY /* the last unused */
} CURLoption;