Class T_FTP (unit tcpip)

Inherits from

T_TcpIp

@\\\0000000C01*) (*@/// T_FTP = class(T_TcpIp) // RFC 959

Constructors


constructor Create(Aowner:TComponent);

@\\\0000000C1D*) (*@\\\0000000501*) (*@/// class t_ftp(t_tcpip) *) (*@/// constructor t_ftp.


Functions

procedure abort;

@\\\0000000B0B*) (*@/// procedure t_ftp.

procedure action;

@\\\0000000301*) (*@/// procedure t_ftp.

procedure changedir(const f_dir:string);

will become public once tested

@\\\0000000501*) (*@/// procedure t_ftp.


destructor Destroy;

@\\\*) (*@/// destructor t_ftp.

procedure download;

@\\\0000000501*) (*@/// procedure t_ftp.

procedure getdir(const dirname:string);

@\\\0000000406*) (*@/// procedure t_ftp.

function getdirentry:t_filedata;

@\\\0000000C01*) (*@/// function t_ftp.

procedure login;

@\\\0000000701*) (*@/// procedure t_ftp.

procedure logout;

@\\\0000000301*) (*@/// procedure t_ftp.

procedure makedir(const dirname:string);

@\\\*) (*@/// procedure t_ftp.

procedure noop;

@\\\0000000301*) (*@/// procedure t_ftp.

procedure removedir(const dirname:string);

@\\\*) (*@/// procedure t_ftp.

procedure removefile(const filename:string);

@\\\*) (*@/// procedure t_ftp.

procedure renamefile(const prior,after:string);

@\\\*) (*@/// procedure t_ftp.

procedure upload;

@\\\0000000907*) (*@/// procedure t_ftp.

function do_read:boolean;

@\\\0000000501*) (*@/// function t_ftp.

function do_write:boolean;

@\\\*) (*@/// function t_ftp.

procedure finish_download;

@\\\0000000901*) (*@/// procedure t_ftp.

procedure finish_getdir;

@\\\0000000701*) (*@/// procedure t_ftp.

procedure finish_upload;

@\\\0000000901*) (*@/// procedure t_ftp.

procedure get_datasocket;

@\\\0000000901*) (*@/// procedure t_ftp.

function read_line_comm:string;

@\\\0000000601*) (*@/// function t_ftp.

procedure response;

@\\\0000000303*) (*@/// procedure t_ftp.

procedure SendCommand(const s:string);

@\\\0000000401*) (*@/// procedure t_ftp.

procedure WndProc(var Msg : TMessage);

@\\\0000000B01*) (*@/// procedure t_ftp.

Properties

property Async : boolean


property Hostname : string


property Mode : t_ftp_mode


property Passive : boolean


property Password : string


property Port : word


property URI : string


property Username : string


property busy : boolean


property Size : integer


property status_number : integer


property status_text : string


property stream : TStream


Events

event OnActionComplete : TFTPActionCompleteProc


event OnDataReceived : TDataTransferProc


event OnTrace :


Variables

f_async_data : boolean;


f_busy : boolean;


f_comm_socket : tsocket;


f_cur_dir : TStringList;


f_cur_dir_index : integer;


f_dir_stream : TMemoryStream;


f_mode : t_ftp_mode;


f_mode_intern : t_ftp_mode;


f_onaction : TFTPActionCompleteProc;


f_ondata_got : TDataTransferProc;


f_passive : boolean;


f_password : string;


f_port : word;


f_size : integer;


f_status_nr : integer;


f_status_txt : string;


f_url : string;


f_user : string;



Constructors


constructor Create(Aowner:TComponent);

@\\\0000000C1D*) (*@\\\0000000501*) (*@/// class t_ftp(t_tcpip) *) (*@/// constructor t_ftp.Create(Aowner:TComponent);


Functions


procedure abort;

@\\\0000000B0B*) (*@/// procedure t_ftp.abort; // ABOR command


procedure action;

@\\\0000000301*) (*@/// procedure t_ftp.action;


procedure changedir(const f_dir:string);

will become public once tested

@\\\0000000501*) (*@/// procedure t_ftp.changedir(const f_dir:string); // CWD command


destructor Destroy;

@\\\*) (*@/// destructor t_ftp.Destroy;


procedure download;

@\\\0000000501*) (*@/// procedure t_ftp.download; // RETR command


procedure getdir(const dirname:string);

@\\\0000000406*) (*@/// procedure t_ftp.getdir(const dirname:string); // LIST command


function getdirentry:t_filedata;

@\\\0000000C01*) (*@/// function t_ftp.getdirentry:t_filedata;


procedure login;

@\\\0000000701*) (*@/// procedure t_ftp.login; // USER and PASS commands


procedure logout;

@\\\0000000301*) (*@/// procedure t_ftp.logout; // QUIT command


procedure makedir(const dirname:string);

@\\\*) (*@/// procedure t_ftp.makedir(const dirname:string); // MKD command


procedure noop;

@\\\0000000301*) (*@/// procedure t_ftp.noop; // NOOP command


procedure removedir(const dirname:string);

@\\\*) (*@/// procedure t_ftp.removedir(const dirname:string); // RMD command


procedure removefile(const filename:string);

@\\\*) (*@/// procedure t_ftp.removefile(const filename:string); // DELE command


procedure renamefile(const prior,after:string);

@\\\*) (*@/// procedure t_ftp.renamefile(const prior,after:string); // RNFR and RNTO commands


procedure upload;

@\\\0000000907*) (*@/// procedure t_ftp.upload; // STOR command


function do_read:boolean;

@\\\0000000501*) (*@/// function t_ftp.do_read:boolean;


function do_write:boolean;

@\\\*) (*@/// function t_ftp.do_write:boolean;


procedure finish_download;

@\\\0000000901*) (*@/// procedure t_ftp.finish_download;


procedure finish_getdir;

@\\\0000000701*) (*@/// procedure t_ftp.finish_getdir;


procedure finish_upload;

@\\\0000000901*) (*@/// procedure t_ftp.finish_upload;


procedure get_datasocket;

@\\\0000000901*) (*@/// procedure t_ftp.get_datasocket;


function read_line_comm:string;

@\\\0000000601*) (*@/// function t_ftp.read_line_comm:string;


procedure response;

@\\\0000000303*) (*@/// procedure t_ftp.response;


procedure SendCommand(const s:string);

@\\\0000000401*) (*@/// procedure t_ftp.SendCommand(const s:string);


procedure WndProc(var Msg : TMessage);

@\\\0000000B01*) (*@/// procedure t_ftp.WndProc(var Msg : TMessage);


Properties


property Async : boolean


property Hostname : string


property Mode : t_ftp_mode


property Passive : boolean


property Password : string


property Port : word


property URI : string


property Username : string


property busy : boolean


property Size : integer


property status_number : integer


property status_text : string


property stream : TStream


Events


event OnActionComplete : TFTPActionCompleteProc


event OnDataReceived : TDataTransferProc


event OnTrace :


Variables


f_async_data : boolean;


f_busy : boolean;


f_comm_socket : tsocket;


f_cur_dir : TStringList;


f_cur_dir_index : integer;


f_dir_stream : TMemoryStream;


f_mode : t_ftp_mode;


f_mode_intern : t_ftp_mode;


f_onaction : TFTPActionCompleteProc;


f_ondata_got : TDataTransferProc;


f_passive : boolean;


f_password : string;


f_port : word;


f_size : integer;


f_status_nr : integer;


f_status_txt : string;


f_url : string;


f_user : string;