Skip to content
  • Gergely Nagy's avatar
    SSL: protocol version can be specified more precisely · ad34a2d5
    Gergely Nagy authored
    CURL_SSLVERSION_TLSv1_0, CURL_SSLVERSION_TLSv1_1,
    CURL_SSLVERSION_TLSv1_2 enum values are added to force exact TLS version
    (CURL_SSLVERSION_TLSv1 means TLS 1.x).
    
    axTLS:
    axTLS only supports TLS 1.0 and 1.1 but it cannot be set that only one
    of these should be used, so we don't allow the new enum values.
    
    darwinssl:
    Added support for the new enum values.
    
    SChannel:
    Added support for the new enum values.
    
    CyaSSL:
    Added support for the new enum values.
    Bug: The original CURL_SSLVERSION_TLSv1 value enables only TLS 1.0 (it
    did the same before this commit), because CyaSSL cannot be configured to
    use TLS 1.0-1.2.
    
    GSKit:
    GSKit doesn't seem to support TLS 1.1 and TLS 1.2, so we do not allow
    those values.
    Bugfix: There was a typo that caused wrong SSL versions to be passed to
    GSKit.
    
    NSS:
    TLS minor version cannot be set, so we don't allow the new enum values.
    
    QsoSSL:
    TLS minor version cannot be set, so we don't allow the new enum values.
    
    OpenSSL:
    Added support for the new enum values.
    Bugfix: The original CURL_SSLVERSION_TLSv1 value enabled only TLS 1.0,
    now it enables 1.0-1.2.
    
    Command-line tool:
    Added command line options for the new values.
    ad34a2d5