3.9. INFILE string

[<<<] [>>>]

curl::option CurlHandle,"INFILE","file_name"

Use this option to set the file name of the file where the source is for file upload. When you set this option the file is opened for reading, thus the file should exist and should be readable for the program. The file is opened, when the option is set and kept opened so long as the connection is "finished" or another INFILE or FILE option is specified for the connection.

You cannot use the options INTEXT and INFILE at the same time for the same connection. If you use both the latter specified will be used.

Comment on internals (if you do not understand what I am talking about, most probably you do not need to):

The underlying CURL library requests an opened file handle passed to the library and a function that performs the file writing. The ScriptBasic interface gets the name of the file, opens the file, passes the opened file pointer to the library and specifies the stadard fread function to read the file.

The pointer to the function fread is taken from the support table, thus is any preloaded module altered this before setting this option the module function will be used.

Curl optionally acepts the size of the file to report to the upload server. The implementation of this option interfacing automatically gets the size of the file specified in the option and sets the underlying option.

The file is opened calling the system function fopen via the ScriptBasic support function calling stacks. This means that if some module implements a hook function to control file access that will be taken into account the same way as it is taken into accoung in the case of the BASIC command OPEN.


[<<<] [>>>]