Topics
All
MacOS
(Only)
Windows
(Only)
Linux
(Only, Not)
iOS
(Only, Not)
Components
Crossplatform Mac & Win
Server
Client
Old
Deprecated
Guides
Examples
Videos
New in version:
9.3
9.4
9.5
10.0
10.1
10.2
10.3
10.4
10.5
10.6
Statistic
FMM
Blog
CURL.SetOptionSSLVersion
Sets which version of SSL/TLS to attempt to use.
| Component | Version | macOS | Windows | Linux | Server | FileMaker iOS SDK |
| CURL | 2.5 | Yes | Yes | Yes | Yes | Yes |
Parameters
| Parameter | Description | Example |
|---|---|---|
| curl | The CURL session handle. | $curl |
| Value | Pass number from 0 to 7. | 0 |
Result
Returns "OK" on success.
Description
Sets which version of SSL/TLS to attempt to use.The SSL and TLS versions have typically developed from the most insecure version to be more and more secure in this order through history: SSL v2, SSLv3, TLS v1.0, TLS v1.1, TLS v1.2 and the most recent TLS v1.3.
Use one of the available defines for this purpose. The available options are:
| Default | 0 | The default acceptable version range. The minimum acceptable version is by default TLS v1.0 since 7.39.0 (unless the TLS library has a stricter rule). |
| TLSv1 | 1 | TLS v1.0 or later |
| SSLv2 | 2 | SSL v2 (but not SSLv3) |
| SSLv3 | 3 | SSL v3 (but not SSLv2) |
| TLSv1.0 | 4 | TLS v1.0 or later (Added in 7.34.0) |
| TLSv1.1 | 5 | TLS v1.1 or later (Added in 7.34.0) |
| TLSv1.2 | 6 | TLS v1.2 or later (Added in 7.34.0) |
| TLSv1.3 | 7 | TLS v1.3 or later (Added in 7.52.0) |
See also kSSLVersion* constants.
The maximum TLS version can be set by using one of the CURL_SSLVERSION_MAX_ macros below. It is also possible to OR one of the CURL_SSLVERSION_ macros with one of the CURL_SSLVERSION_MAX_ macros.
| Default | 65536 | The flag defines the maximum supported TLS version by libcurl, or the default value from the SSL library is used. libcurl will use a sensible default maximum, which was TLS v1.2 up to before 7.61.0 and is TLS v1.3 since then - assuming the TLS library support it. (Added in 7.54.0) |
| Max TLSv1.0 | 262144 | The flag defines maximum supported TLS version as TLS v1.0. (Added in 7.54.0) |
| Max TLSv1.1 | 327680 | The flag defines maximum supported TLS version as TLS v1.1. (Added in 7.54.0) |
| Max TLSv1.2 | 393216 | The flag defines maximum supported TLS version as TLS v1.2. (Added in 7.54.0) |
| Max TLSv1.3 | 458752 | The flag defines maximum supported TLS version as TLS v1.3. (Added in 7.54.0) |
Please note that MBS Plugin does not yet support TLS v1.3 now, but may in future.
See also SSLVERSION option in CURL manual.
Examples
SMTP via SSL without TLS:
$r = MBS( "CURL.SetOptionSSLVersion"; $curl; 3 )
$r = MBS( "CURL.SetOptionPort"; $curl; 25 )
Set to use TLSv1.2:
Set Variable [$r; MBS( "CURL.SetOptionUseSSL"; $curl; 3 ) ]
Set Variable [$r; MBS( "CURL.SetOptionSSLVersion"; $curl; 6 ) ]
Do FTPS by using FTP and upgrade to TLS:
# Start new session
Set Variable [ $curl ; Value: MBS("CURL.New") ]
# Set URL to load (HTTP, HTTPS, FTP, FTPS, SFTP, etc.)
Set Variable [ $result ; Value: MBS("CURL.SetOptionURL"; $curl; "ftp://ftp.christians-software.de/") ]
Set Variable [ $result ; Value: MBS("CURL.SetOptionUserName"; $curl; "12144-test") ]
Set Variable [ $result ; Value: MBS("CURL.SetOptionPassword"; $curl; "qr\"8km3%Eu\"7") ]
Set Variable [ $result ; Value: MBS("CURL.SetOptionConnectionTimeout"; $curl; 10) ]
Set Variable [ $result ; Value: MBS("CURL.SetOptionSSLVersion"; $curl; 1) // want TLS v1.0 or better ]
Set Variable [ $result ; Value: MBS("CURL.SetOptionUseSSL"; $curl; 3) // require SSL ]
# RUN now
Set Field [ CURL Test::Result ; MBS("CURL.Perform"; $curl) ]
# Check result
Set Field [ CURL Test::Text ; MBS("CURL.GetResultAsText"; $curl; "UTF8") ]
Set Field [ CURL Test::debug ; MBS("CURL.GetDebugAsText"; $curl) ]
# Cleanup
Set Variable [ $result ; Value: MBS("CURL.Release"; $curl) ]
See also
- CURL.SetOptionHTTPVersion
- CURL.SetOptionSSLCert
- CURL.SetOptionSSLCertType
- CURL.SetOptionSSLCipherList
- CURL.SetOptionSSLKey
- CURL.SetOptionSSLKeyBlob
- CURL.SetOptionSSLOptions
- CURL.SetOptionSSLVerifyHost
- CURL.SetOptionUserName
- CURL.SetOptionUseSSL
Example Databases
- CURL/Email/Batch Emailer
- CURL/Email/Build and send Email
- CURL/Email/Build and send HTML Email with inline graphic
- CURL/Email/IMAP Email List
- CURL/Email/IMAP Email Upload
- CURL/Email/IMAP Email
- CURL/Email/List IMAP folders
Blog Entries
- Using Apple's Global Service Exchange web service in FileMaker
- Email Script for FileMaker
- Upload email to Sent folder via IMAP
- Using Apple's Global Service Exchange web service in FileMaker
- Sending emails in FileMaker with MBS Plugin
Created 18th August 2014, last changed 19th April 2020
CURL.SetOptionSSLVerifyStatus - CURL.SetOptionServiceName
Feedback: Report problem or ask question.
Links
MBS Xojo Plugins