Platforms to show: All Mac Windows Linux Cross-Platform

Back to CURLMBS class.

Previous items Next items

CURLMBS.OptionHeaderOptions as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 18.2 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
Pass in a bitmask of "header options".

(Read and Write property)

See also HEADEROPT option in CURL manual.

CURLMBS.OptionHTTPAuth as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
Which http authentication to use.

Pass an integer as parameter, which is set to a bitmask, to tell libCURL what authentication method(s) you want it to use. The available bits are listed below. If more than one bit is set, libCURL will first query the site to see what authentication methods it supports and then pick the best one you allow it to use. For some methods, this will induce an extra network round-trip. Set the actual name and password with the UserPassword option. (Added in 7.10.6)

kAuthBASIC = 1

HTTP Basic authentication. This is the default choice, and the only method that is in wide-spread use and supported virtually everywhere. This is sending the user name and password over the network in plain text, easily captured by others.

kAuthDIGEST = 2

HTTP Digest authentication. Digest authentication is defined in RFC2617 and is a more secure way to do authentication over public networks than the regular old-fashioned Basic method.

kAuthGSSNEGOTIATE = 4

HTTP GSS-Negotiate authentication. The GSS-Negotiate (also known as plain "Negotiate") method was designed by Microsoft and is used in their web applications. It is primarily meant as a support for Kerberos5 authentication but may be also used along with another authentication methods. For more information see IETF draft draft-brezak-spnego-http-04.txt.

You need to build libCURL with a suitable GSS-API library for this to work.

kAuthNTLM = 8

HTTP NTLM authentication. A proprietary protocol invented and used by Microsoft. It uses a challenge-response and hash concept similar to Digest, to prevent the password from being eavesdropped.

You need to build libCURL with OpenSSL support for this option to work, or build libCURL on Windows.

kAuthANY = &hFFFFFFFF

This is a convenience macro that sets all bits and thus makes libCURL pick any it finds suitable. libCURL will automatically select the one it finds most secure.

kAuthANYSAFE = &hFFFFFFFE

This is a convenience macro that sets all bits except Basic and thus makes libCURL pick any it finds suitable. libCURL will automatically select the one it finds most secure.

The Lasterror property is set. 0 for success.
You can set this value and later you can read it, but you cannot read the default value.
(Read and Write property)

See also HTTPAUTH option in CURL manual.

CURLMBS.OptionHTTPContentDecoding as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
Pass a long to tell libCURL how to act on content decoding.

If set to zero, content decoding will be disabled. If set to 1 it is enabled. Note however that libCURL has no default content decoding but requires you to use OptionEncoding for that. (added in 7.16.2)
(Read and Write property)

See also HTTP_CONTENT_DECODING option in CURL manual.

CURLMBS.OptionHTTPProxyTunnel as Boolean

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
Set the parameter to true to get the library to tunnel all operations through a given HTTP proxy.

There is a big difference between using a proxy and to tunnel through it. If you don't know what this means, you probably don't want this tunneling option.

The Lasterror property is set. 0 for success.
You can set this value and later you can read it, but you cannot read the default value.
(Read and Write property)

See also HTTPPROXYTUNNEL option in CURL manual.

CURLMBS.OptionHTTPTransferDecoding as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
Pass an integer to tell libCURL how to act on transfer decoding.

If set to zero, transfer decoding will be disabled, if set to 1 it is enabled (default). libCURL does chunked transfer decoding by default unless this option is set to zero. (added in 7.16.2)
(Read and Write property)

See also HTTP_TRANSFER_DECODING option in CURL manual.

CURLMBS.OptionHTTPVersion as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
Set to one of the values described below.

They force libCURL to use the specific HTTP versions. This is not sensible to do unless you have a good reason.

kHTTP_VERSION_NONE = 0

We don't care about what version the library uses. libCURL will use whatever it thinks fit.

kHTTP_VERSION_1_0 = 1

Enforce HTTP 1.0 requests.

kHTTP_VERSION_1_1 = 2

Enforce HTTP 1.1 requests.

The Lasterror property is set. 0 for success.
You can set this value and later you can read it, but you cannot read the default value.
(Read and Write property)

See also HTTP_VERSION option in CURL manual.

CURLMBS.OptionIgnoreContentLength as Boolean

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
Whether to ignore the Content-Length header.

This is useful for Apache 1.x (and similar servers) which will report incorrect content length for files over 2 gigabytes. If this option is used, CURL will not be able to accurately report progress, and will simply stop the download when the server ends the connection. (added in 7.14.1)
(Read and Write property)

See also IGNORE_CONTENT_LENGTH option in CURL manual.

CURLMBS.OptionInFileSize as Int64

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
When uploading a file to a remote site, this option should be used to tell libCURL what the expected size of the infile is.

Note that this option does not limit how much data libCURL will actually send, as that is controlled entirely by what the read event returns.

The Lasterror property is set. 0 for success.
You can set this value and later you can read it, but you cannot read the default value.
(Read and Write property)

See also INFILESIZE option in CURL manual.

CURLMBS.OptionInFileSizeLarge as Int64   Deprecated

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
This item is deprecated and should no longer be used. You can use OptionInFileSize instead.
When uploading a file to a remote site, this option should be used to tell libCURL what the expected size of the infile is.

This value should be passed as a CURL_off_t. (Added in 7.11.0)

Note that this option does not limit how much data libCURL will actually send, as that is controlled entirely by what the read event returns.

The Lasterror property is set. 0 for success.
You can set this value and later you can read it, but you cannot read the default value.
(Read and Write property)

CURLMBS.OptionInterface as String

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
This set the interface name to use as outgoing network interface.

The name can be an interface name, an IP address or a host name.

The Lasterror property is set. 0 for success.
You can set this value and later you can read it, but you cannot read the default value.
(Read and Write property)

See also INTERFACE option in CURL manual.

CURLMBS.OptionIPResolve as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
Allows an application to select what kind of IP addresses to use when resolving host names.
Example
Var c as new CURLMBS
c.OptionIPResolve = c.kIPRESOLVE_V4

This is only interesting when using host names that resolve addresses using more than one version of IP. The allowed values are:

kIPRESOLVE_WHATEVER = 0

Default, resolves addresses to all IP versions that your system allows.

kIPRESOLVE_V4 = 1

Resolve to ipv4 addresses.

kIPRESOLVE_V6 = 2

Resolve to ipv6 addresses.

The Lasterror property is set. 0 for success.
You can set this value and later you can read it, but you cannot read the default value.
(Read and Write property)

See also IPRESOLVE option in CURL manual.

CURLMBS.OptionIssuerCert as String

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 10.0 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
A string naming a file holding a CA certificate in PEM format.

If the option is set, an additional check against the peer certificate is performed to verify the issuer is indeed the one associated with the certificate provided by the option. This additional check is useful in multi-level PKI where one needs to enforce that the peer certificate is from a specific branch of the tree.

This option makes sense only when used in combination with the OptionSSLVerifyPeer option. Otherwise, the result of the check is not considered as failure.

A specific error code (CURLE_SSL_ISSUER_ERROR) is defined with the option, which is returned if the setup of the SSL/TLS session has failed due to a mismatch with the issuer of peer certificate (OptionSSLVerifyPeer has to be set too for the check to fail). (Added in 7.19.0)

Starting with version 18.0 the plugin will always use UTF-8 encoding for file path on Linux and macOS. For macOS we also do the unicode character normalization for file names for you.
(Read and Write property)

See also ISSUERCERT option in CURL manual.

CURLMBS.OptionIssuerCertBlob as String

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 20.3 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
Set issuer SSL certificate from memory blob.

Pass data, which contains binary data of a CA certificate in PEM format. If the option is set, an additional check against the peer certificate is performed to verify the issuer is indeed the one associated with the certificate provided by the option. This additional check is useful in multi-level PKI where one needs to enforce that the peer certificate is from a specific branch of the tree.

This option should be used in combination with the OptionSSLVerifyPeer option. Otherwise, the result of the check is not considered as failure.

A specific error code (CURLE_SSL_ISSUER_ERROR) is defined with the option, which is returned if the setup of the SSL/TLS session has failed due to a mismatch with the issuer of peer certificate (OptionSSLVerifyPeer has to be set too for the check to fail).

This option is an alternative to OptionIssuerCert which instead expects a file name as input.
(Read and Write property)

See also ISSUERCERT_BLOB option in CURL manual.

CURLMBS.OptionKeepSendingOnError as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 18.2 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
Whether to keep sending on error.

Continue to send data if the server responds early with an HTTP status code >= 300
(Read and Write property)

See also KEEP_SENDING_ON_ERROR option in CURL manual.

CURLMBS.OptionKeyPassword as String

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 15.2 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
Set passphrase to private key.

It will be used as the password required to use the OptionSSLKey or OptionSSHPrivateKeyfile private key. You never needed a pass phrase to load a certificate but you need one to load your private key.
(Read and Write property)

See also KEYPASSWD option in CURL manual.

CURLMBS.OptionKRB4Level as String   Deprecated

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
This item is deprecated and should no longer be used. You can use OptionKRBLevel instead.
Set the krb4 security level, this also enables krb4 awareness.

This is a string, 'clear', 'safe', 'confidential' or 'private'. If the string is set but doesn't match one of these, 'private' will be used. Set the string to "" to disable kerberos4. The kerberos support only works for FTP.

The Lasterror property is set. 0 for success.
You can set this value and later you can read it, but you cannot read the default value.
(Read and Write property)

CURLMBS.OptionKRBLevel as String

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 15.2 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
FTP kerberos security level.

Set the kerberos security level for FTP; this also enables kerberos awareness. This is a string that should match one of the following: 'clear', 'safe', 'confidential' or 'private'. If the string is set but doesn't match one of these, 'private' will be used. Set the string to NULL to disable kerberos support for FTP.
(Read and Write property)

See also KRBLEVEL option in CURL manual.

CURLMBS.OptionLocalPort as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
This sets the local port number of the socket used for connection.

This can be used in combination with OptionInterface and you are recommended to use OptionLocalPortRange as well when this is set. Note that port numbers are only valid 1 - 65535. (Added in 7.15.2)
(Read and Write property)

See also LOCALPORT option in CURL manual.

CURLMBS.OptionLocalPortRange as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
This is the number of attempts libCURL should do to find a working local port number.

It starts with the given OptionLocalPort and adds one to the number for each retry. Setting this value to 1 or below will make libCURL do only one try for exact port number. Note that port numbers by nature is a scarce resource that will be busy at times so setting this value to something too low might cause unnecessary connection setup failures. (Added in 7.15.2)
(Read and Write property)

See also LOCALPORTRANGE option in CURL manual.

CURLMBS.OptionLoginOptions as String

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 15.4 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
Login options string to use for the transfer.

For more information about the login options please see RFC 2384, RFC5092 and IETF draft draft-earhart-url-smtp-00.txt

CURLOPT_LOGIN_OPTIONS can be used to set protocol specific login options, such as the preferred authentication mechanism via "AUTH=NTLM" or "AUTH=*", and should be used in conjunction with the OptionUserName option.
Only IMAP, POP3 and SMTP support login options.
(Read and Write property)

See also LOGIN_OPTIONS option in CURL manual.

CURLMBS.OptionLowSpeedLimit as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
This property contains the transfer speed in bytes per second that the transfer should be below during OptionLowSpeedTime seconds for the library to consider it too slow and abort.

The Lasterror property is set. 0 for success.
You can set this value and later you can read it, but you cannot read the default value.
(Read and Write property)

See also LOW_SPEED_LIMIT option in CURL manual.

CURLMBS.OptionLowSpeedTime as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
This property contains the time in seconds that the transfer should be below the OptionLowSpeedLimit for the library to consider it too slow and abort.

The Lasterror property is set. 0 for success.
You can set this value and later you can read it, but you cannot read the default value.
(Read and Write property)

See also LOW_SPEED_TIME option in CURL manual.

CURLMBS.OptionMailAuth as String

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 12.4 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
This string will be used to specify the authentication address (identity) of a submitted message that is being relayed to another server.

This optional parameter allows co-operating agents in a trusted environment to communicate the authentication of individual messages and should only be used by the application program, using libCURL, if the application is itself a mail server acting in such an environment. If the application is operating as such and the AUTH address is not known or is invalid, then an empty string should be used for this parameter.

Unlike OptionMailFrom and SetOptionMailRecipients, the address should not be specified within a pair of angled brackets (<>). However, if an empty string is used then a pair of brackets will be sent by libCURL as required by RFC 2554.
(Read and Write property)

See also MAIL_AUTH option in CURL manual.

CURLMBS.OptionMailFrom as String

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 11.0 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
A string that will be used to specify the sender address in a mail when sending an SMTP mail with libCURL.

(Read and Write property)

See also MAIL_FROM option in CURL manual.

CURLMBS.OptionMaxAgeConn as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 19.2 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
The maximum age the connection should have in seconds.

Older connections are not reused, but discarded.
(Read and Write property)

See also MAXAGE_CONN option in CURL manual.

CURLMBS.OptionMaxConnects as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
The set number will be the persistent connection cache size.

The set amount will be the maximum amount of simultaneously open connections that libCURL may cache. Default is 5, and there isn't much point in changing this value unless you are perfectly aware of how this work and changes libCURL's behaviour. This concerns connection using any of the protocols that support persistent connections.

When reaching the maximum limit, CURL closes the oldest one in the cache to prevent the number of open connections to increase.

If you already have performed transfers with this CURL handle, setting a smaller MAXCONNECTS than before may cause open connections to get closed unnecessarily.

The Lasterror property is set. 0 for success.
You can set this value and later you can read it, but you cannot read the default value.
(Read and Write property)

See also MAXCONNECTS option in CURL manual.

CURLMBS.OptionMaxFileSize as Int64

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
This allows you to specify the maximum size (in bytes) of a file to download.

If the file requested is larger than this value, the transfer will not start and kError_FILESIZE_EXCEEDED will be returned.

The file size is not always known prior to download, and for such files this option has no effect even if the file transfer ends up being larger than this given limit. This concerns both FTP and HTTP transfers.

The Lasterror property is set. 0 for success.
You can set this value and later you can read it, but you cannot read the default value.
(Read and Write property)

See also MAXFILESIZE option in CURL manual.

CURLMBS.OptionMaxFileSizeLarge as Int64   Deprecated

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
This item is deprecated and should no longer be used. You can use OptionMaxFileSize instead.
This allows you to specify the maximum size (in bytes) of a file to download.

If the file requested is larger than this value, the transfer will not start and kError_FILESIZE_EXCEEDED will be returned. (Added in 7.11.0)

The file size is not always known prior to download, and for such files this option has no effect even if the file transfer ends up being larger than this given limit. This concerns both FTP and HTTP transfers.

The Lasterror property is set. 0 for success.
You can set this value and later you can read it, but you cannot read the default value.
(Read and Write property)

CURLMBS.OptionMaxLifeTimeConnection as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 22.4 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
Sets maximum lifetime (since creation) allowed for reusing a connection.

Pass a number as parameter containing maxlifetime - the maximum time in seconds, since the creation of the connection, that you allow an existing connection to have to be considered for reuse for this request.

libcurl features a connection cache that holds previously used connections. When a new request is to be done, it will consider any connection that matches for reuse. The MaxLifeTimeConnection limit prevents libcurl from trying too old connections for reuse. This can be used for client-side load balancing. If a connection is found in the cache that is older than this set maxlifetime, it will instead be closed once any in-progress transfers complete.

If set to 0, this behavior is disabled: all connections are eligible for reuse.
(Read and Write property)

CURLMBS.OptionMaxRecvSpeed as Int64

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 15.2 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
Defines the maximum download speed.

If a download exceeds this speed (counted in bytes per second) on cumulative average during the transfer, the transfer will pause to keep the average rate less than or equal to the parameter value. Defaults to unlimited speed. (Added in 7.15.5)
(Read and Write property)

See also MAX_RECV_SPEED option in CURL manual.

CURLMBS.OptionMaxRecvSpeedLarge as Int64   Deprecated

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
This item is deprecated and should no longer be used. You can use OptionMaxRecvSpeed instead.
Defines the maximum download speed.

If a download exceeds this speed (counted in bytes per second) on cumulative average during the transfer, the transfer will pause to keep the average rate less than or equal to the parameter value. Defaults to unlimited speed. (Added in 7.15.5)
(Read and Write property)

CURLMBS.OptionMaxRedirs as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
The set number will be the redirection limit.
Example
Var c as new CURLMBS

c.OptionFollowLocation = true
c.OptionMaxRedirs = 3

If that many redirections have been followed, the next redirect will cause an error (kError_TOO_MANY_REDIRECTS). This option only makes sense if the CURLOPT_FOLLOWLOCATION is used at the same time. Added in 7.15.1: Setting the limit to 0 will make libCURL refuse any redirect. Set it to -1 for an infinite number of redirects (which is the default)

The Lasterror property is set. 0 for success.
You can set this value and later you can read it, but you cannot read the default value.
(Read and Write property)

See also MAXREDIRS option in CURL manual.

CURLMBS.OptionMaxSendSpeed as Int64

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 15.2 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
Defines the maximum upload speed.

If an upload exceeds this speed on cumulative average during the transfer, the transfer will pause to keep the average rate less than or equal to the parameter value. Defaults to unlimited speed. (Added in 7.15.5)
Value is in bytes per second.
Useful if you have a limited pipe and you'd like your transfer not to use your entire bandwidth.
Slowing down the transfer speed is also useful for lowering CPU consumption during transfers.
(Read and Write property)

See also MAX_SEND_SPEED option in CURL manual.

CURLMBS.OptionMaxSendSpeedLarge as Int64   Deprecated

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
This item is deprecated and should no longer be used. You can use OptionMaxSendSpeed instead.
Defines the maximum upload speed.

If an upload exceeds this speed on cumulative average during the transfer, the transfer will pause to keep the average rate less than or equal to the parameter value. Defaults to unlimited speed. (Added in 7.15.5)
Value is in bytes per second.
Useful if you have a limited pipe and you'd like your transfer not to use your entire bandwidth.
Slowing down the transfer speed is also useful for lowering CPU consumption during transfers.
(Read and Write property)

CURLMBS.OptionMimeOptions as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 22.4 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
Set MIME option flags.

Pass a number that holds a bitmask of CURLMIMEOPT constants. Each bit is a Boolean flag used while encoding a MIME tree or multipart form data.

Available bits are:

CURLMIMEOPT_FORMESCAPE = 1

Tells libcurl to escape multipart form field and file names using the backslash-escaping algorithm rather than percent-encoding (HTTP only).

Backslash-escaping consists in preceding backslashes and double quotes with a backslash. Percent encoding maps all occurrences of double quote, carriage return and line feed to %22, %0D and %0A respectively.

Before version 7.81.0, percent-encoding was never applied.

HTTP browsers used to do backslash-escaping in the past but have over time transitioned to use percent-encoding. This option allows to address server-side applications that have not yet have been converted.

As an example, consider field or file name strange\name"kind. When the containing multipart form is sent, this is normally transmitted as strange\name%22kind. When this option is set, it is sent as strange\\name\"kind.
(Read and Write property)

See also MIME_OPTIONS option in CURL manual.

CURLMBS.OptionNetRC as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
Controls usage of netrc file.

This parameter controls the preference of libCURL between using user names and passwords from your ~/.netrc file, relative to user names and passwords in the URL supplied with OptionURL.

libCURL uses a user name (and supplied or prompted password) supplied with OptionUsername and OptionPassword in preference to any of the options controlled by this parameter.

An integer, set to one of the values described below.

kNETRC_OPTIONAL = 1

The use of your ~/.netrc file is optional, and information in the URL is to be preferred. The file will be scanned with the host and user name (to find the password only) or with the host only, to find the first user name and password after that machine, which ever information is not specified in the URL.

Undefined values of the option will have this effect.

kNETRC_IGNORED = 0

The library will ignore the file and use only the information in the URL.

This is the default.

kNETRC_REQUIRED = 2

This value tells the library that use of the file is required, to ignore the information in the URL, and to search the file with the host only.

Only machine name, user name and password are taken into account (init macros and similar things aren't supported).

libCURL does not verify that the file has the correct properties set (as the standard Unix ftp client does). It should only be readable by user.

The Lasterror property is set. 0 for success.
You can set this value and later you can read it, but you cannot read the default value.
(Read and Write property)

See also NETRC option in CURL manual.

CURLMBS.OptionNetRCFile as String

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
A string containing the full path name to the file you want libCURL to use as .netrc file.

If this option is omitted, and OptionNETRC is set, libCURL will attempt to find the a .netrc file in the current user's home directory. (Added in 7.10.9)

The Lasterror property is set. 0 for success.
You can set this value and later you can read it, but you cannot read the default value.

Starting with version 18.0 the plugin will always use UTF-8 encoding for file path on Linux and macOS. For macOS we also do the unicode character normalization for file names for you.
(Read and Write property)

See also NETRC_FILE option in CURL manual.

CURLMBS.OptionNewDirectoryPerms as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 10.0 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
An integer, containing the value of the permissions that will be assigned to newly created directories on the remote server.

The default value is 0755, but any valid value can be used. The only protocols that can use this are sftp://, scp://, and file://. (Added in 7.16.4)
Value must be octal, so use &o prefix for number.
(Read and Write property)

See also NEW_DIRECTORY_PERMS option in CURL manual.

CURLMBS.OptionNewFilePerms as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 10.0 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
An integer, containing the value of the permissions that will be assigned to newly created files on the remote server.

The default value is &o0644, but any valid value can be used. The only protocols that can use this are sftp://, scp://, and file://. (Added in 7.16.4)
Be aware that you normally specify this in octal values. So use the &o prefix in Xojo.
(Read and Write property)

See also NEW_FILE_PERMS option in CURL manual.

CURLMBS.OptionNoBody as Boolean

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ❌ No Desktop, Console & Web
True tells the library to not include the body-part in the output.

This is only relevant for protocols that have separate header and body parts. On HTTP(S) servers, this will make libCURL do a HEAD request.

To change request to GET, you should use OptionGet. Change request to POST with OptionPost etc.

The Lasterror property is set. 0 for success.
You can set this value and later you can read it, but you cannot read the default value.
(Read and Write property)

See also NOBODY option in CURL manual.

Previous items Next items

The items on this page are in the following plugins: MBS CURL Plugin.


The biggest plugin in space...