Platforms to show: All Mac Windows Linux Cross-Platform

Back to CURLSMBS class.

Previous items Next items

CURLSMBS.OptionKeyPassword as String

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 15.2 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
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.

CURLSMBS.OptionKRB4Level as String   Deprecated

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
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)

CURLSMBS.OptionKRBLevel as String

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 15.2 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
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.

CURLSMBS.OptionLocalPort as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
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.

CURLSMBS.OptionLocalPortRange as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
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.

CURLSMBS.OptionLoginOptions as String

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 15.4 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
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.

CURLSMBS.OptionLowSpeedLimit as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
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.

CURLSMBS.OptionLowSpeedTime as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
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.

CURLSMBS.OptionMailAuth as String

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 12.4 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
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.

CURLSMBS.OptionMailFrom as String

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 11.0 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
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)

Some examples using this property:

See also MAIL_FROM option in CURL manual.

CURLSMBS.OptionMaxAgeConn as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 19.2 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
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.

CURLSMBS.OptionMaxConnects as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
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.

CURLSMBS.OptionMaxFileSize as Int64

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
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.

CURLSMBS.OptionMaxFileSizeLarge as Int64   Deprecated

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
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)

CURLSMBS.OptionMaxLifeTimeConnection as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 22.4 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
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)

CURLSMBS.OptionMaxRecvSpeed as Int64

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 15.2 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
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.

CURLSMBS.OptionMaxRecvSpeedLarge as Int64   Deprecated

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
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)

CURLSMBS.OptionMaxRedirs as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
The set number will be the redirection limit.
Example
Var c as new CURLSMBS

c.OptionFollowLocation = 1
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)

Some examples using this property:

See also MAXREDIRS option in CURL manual.

CURLSMBS.OptionMaxSendSpeed as Int64

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 15.2 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
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)

Some examples using this property:

See also MAX_SEND_SPEED option in CURL manual.

CURLSMBS.OptionMaxSendSpeedLarge as Int64   Deprecated

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
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)

CURLSMBS.OptionMimeOptions as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 22.4 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
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.

CURLSMBS.OptionNetRC as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
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.

CURLSMBS.OptionNetRCFile as String

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
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.

CURLSMBS.OptionNewDirectoryPerms as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 10.0 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
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.

CURLSMBS.OptionNewFilePerms as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 10.0 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
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.

CURLSMBS.OptionNoBody as Boolean

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
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)

Some examples using this property:

See also NOBODY option in CURL manual.

CURLSMBS.OptionNoProxy as String

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 10.0 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
A string with a comma- separated list of hosts which do not use a proxy, if one is specified.

The only wildcard is a single * character, which matches all hosts, and effectively disables the proxy. Each name in this list is matched as either a domain which contains the hostname, or the hostname itself. For example, local.com would match local.com, local.com:80, and www.local.com, but not www.notlocal.com. (Added in 7.19.4)
(Read and Write property)

See also NOPROXY option in CURL manual.

CURLSMBS.OptionNoSignal as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 13.1 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Whether to not use signals.

If it is true, libCURL will not use any functions that install signal handlers or any functions that cause signals to be sent to the process. This option is mainly here to allow multi-threaded unix applications to still set/use all timeout options etc, without risking getting signals. (Added in 7.10)

If this option is set and libCURL has been built with the standard name resolver, timeouts will not occur while the name resolve takes place. Consider building libCURL with c-ares support to enable asynchronous DNS lookups, which enables nice timeouts for name resolves without signals.

Setting OptionNoSignal to true makes libCURL NOT ask the system to ignore SIGPIPE signals, which otherwise are sent by the system when trying to send data to a socket which is closed in the other end. libCURL makes an effort to never cause such SIGPIPEs to trigger, but some operating systems have no way to avoid them and even on those that have there are some corner cases when they may still happen, contrary to our desire. In addition, using CURLAUTH_NTLM_WB authentication could cause a SIGCHLD signal to be raised.
(Read and Write property)

See also NOSIGNAL option in CURL manual.

CURLSMBS.OptionPassword as String

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 10.0 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
The password to use for the transfer.

The OptionPassword option should be used in conjunction with the OptionUsername option.
(Read and Write property)

Some examples using this property:

See also PASSWORD option in CURL manual.

CURLSMBS.OptionPathAsIs as Boolean

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 18.2 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Pass path as it is and do not resolve dots.

Do not squash dot-dot sequences.
(Read and Write property)

See also PATH_AS_IS option in CURL manual.

CURLSMBS.OptionPinnedPublicKey as String

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 18.2 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
The public key in DER form used to validate the peer public key.

Native path to key file.
This option is used only if SSLVerifyPeer is true.
(Read and Write property)

See also PINNEDPUBLICKEY option in CURL manual.

CURLSMBS.OptionPipeWait as Boolean

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 18.2 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Wait/don't wait for pipe/mutex to clarify.

(Read and Write property)

See also PIPEWAIT option in CURL manual.

CURLSMBS.OptionPort as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
The remote port number to connect to, instead of the one specified in the URL or the default port for the used protocol.

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)

Some examples using this property:

See also PORT option in CURL manual.

CURLSMBS.OptionPost as Boolean

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
A boolean parameter tells the library to do a regular HTTP post.

This will also make the library use the a "Content-Type: application/x-www-form-urlencoded" header. (This is by far the most commonly used POST method).

Use the OptionPostFields option to specify what data to post.

Optionally, you can provide data to POST using the Read event but then you must make sure to not set OptionPostFields to anything but "". When providing data with an event, you must transmit it using chunked transfer-encoding.

You can override the default POST Content-Type: header by setting your own with OptionHTTPHeader.

Using POST with HTTP 1.1 implies the use of a "Expect: 100-continue" header. You can disable this header with OptionHTTPHeader as usual.

If you use POST to a HTTP 1.1 server, you can send data without knowing the size before starting the POST if you use chunked encoding. You enable this by adding a header like "Transfer-Encoding: chunked" with OptionHTTPHeader. With HTTP 1.0 or without chunked transfer, you must specify the size in the request.

When setting CURLOPT_POST to a non-zero value, it will automatically set OptionNoBody to 0 (since 7.14.1).

If you issue a POST request and then want to make a HEAD or GET using the same re-used handle, you must explictly set the new request type using OptionNoBody or OptionGet or similar.

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)

Some examples using this property:

See also POST option in CURL manual.

CURLSMBS.OptionPostFields as String

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
A string which should be the full data to post in an HTTP POST operation.
Example
Var xml as string // XML or JSON to send as payload
Var c as new CURLSMBS

c.OptionFollowLocation = 1
c.OptionMaxRedirs = 3
c.OptionPostFields = xml
c.OptionUserAgent = "Test App"
c.OptionPost = true

// for SOAP use right content type
c.SetOptionHTTPHeader array("Content-Type: application/soap+xml; charset=utf-8")

You must make sure that the data is formatted the way you want the server to receive it. libCURL will not convert or encode it for you. Most web servers will assume this data to be url-encoded. Take note.

This POST is a normal application/x-www-form-urlencoded kind (and libCURL will set that Content-Type by default when this option is used), which is the most commonly used one by HTML forms. See also the OptionPost. Using OptionPostFields implies OptionPost.

Using POST with HTTP 1.1 implies the use of a "Expect: 100-continue" header. You can disable this header with CURLOPT_HTTPHEADER as usual.

To make multipart/formdata posts (aka rfc1867-posts), check out the OptionPost 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)

Some examples using this property:

See also COPYPOSTFIELDS option in CURL manual.

CURLSMBS.OptionPostFieldSize as Int64

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
The size of the post data.

Optional you can set the size of your post data.
If you specify a postfield string, this size will be set automatically.

If you specify a size and no postfield string, the Read event will request data.
(Read and Write property)

See also POSTFIELDSIZE option in CURL manual.

CURLSMBS.OptionPostFieldSizeLarge as Int64   Deprecated

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 9.8 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
This item is deprecated and should no longer be used. You can use OptionPostFieldSize instead.
The size of the post data. (64 bit version)

Optional you can set the size of your post data.
If you specify a postfield string, this size will be set automatically.

If you specify a size and no postfield string, the Read event will request data.
(Read and Write property)

CURLSMBS.OptionPostRedir as Integer

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 10.0 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
A bitmask to control how libCURL acts on redirects after POSTs that get a 301 or 302 response back.

A parameter with bit 0 set (value CURL_REDIR_POST_301=1) tells the library to respect RFC 2616/10.3.2 and not convert POST requests into GET requests when following a 301 redirection. Setting bit 1 (value CURL_REDIR_POST_302=2) makes libCURL maintain the request method after a 302 redirect. CURL_REDIR_POST_ALL is a convenience define that sets both bits.

The non-RFC behaviour is ubiquitous in web browsers, so the library does the conversion by default to maintain consistency. However, a server may require a POST to remain a POST after such a redirection. This option is meaningful only when setting OptionFollowLocation. (Added in 7.17.1) (This option was known as CURLOPT_POST301 up to 7.19.0 as it only supported the 301 way before then)
(Read and Write property)

See also POSTREDIR option in CURL manual.

CURLSMBS.OptionPreProxy as String

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 18.2 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Name of pre proxy to use.

(Read and Write property)

See also PRE_PROXY option in CURL manual.

CURLSMBS.OptionProtocols as Integer   Deprecated

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 10.0 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
This item is deprecated and should no longer be used. You can use OptionProtocolsString instead.
A bitmask of kProtocol* constants.

If used, this bitmask limits what protocols libCURL may use in the transfer. This allows you to have a libCURL built to support a wide range of protocols but still limit specific transfers to only be allowed to use a subset of them. By default libCURL will accept all protocols it supports. See also OptionRedirProtocols. (Added in 7.19.4)
(Read and Write property)

CURLSMBS.OptionProtocolsString as String

Type Topic Plugin Version macOS Windows Linux iOS Targets
property CURL MBS CURL Plugin 22.4 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
The protocols allowed-
Example
Var c as new CURLSMBS
c.OptionProtocolsString = "http,tftp,sftp"

Pass a string that holds a comma-separated list of case insensitive protocol names (URL schemes) to allow in the transfer. This option allows applications to use libcurl built to support a wide range of protocols but still limit specific transfers to only be allowed to use a subset of them. By default, libcurl accepts all protocols it was built with support for. See also OptionReditProtocolsString.

If trying to set a non-existing protocol or if no matching protocol at all is set, it returns error.

These are the available protocols:

DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTMPE, RTMPS, RTMPT, RTMPTE, RTMPTS, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET, TFTP

You can set "ALL" as a short-cut to enable all protocols. Note that by setting all, you may enable protocols that were not supported the day you write this but are introduced in a future libcurl version.

CURLVersionMBS class can be used to get a list of all supported protocols in the current libcurl. GetInfoProtocol function is the recommended way to figure out the protocol used in a previous transfer.
(Read and Write property)

Previous items Next items

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


The biggest plugin in space...