Dear Angus, I am grateful to you for directing me to your Magenta components which work together with ICS. In fact it takes care of all the coding I was planning on doing.
I cannot find out the support section therefore I am writing here as you are involved in both companies. Please let me know where I should write henceforth for Magenta support. Below is my query. _____________________________________________________________ I was trying out the MagFtp component and all seems well except the Resume. Please find below the Client and Server Log. In between I unplugged the Server LAN wire so as to break the Transfer. When I said to upload again it does not Resume. FTP Client Log -------------- 12-Apr-2013 11:19:00 Source Directory: c:\temp Connecting to FTP Server: Connect/Logon to FTP Server: allan-1:21 < 220-Welcome to my Server < 220- < 220 ICS FTP Server ready. FTP Session Connected to 192.168.0.50:21 > HOST allan-1 < 504 HOST unknown or not allowed. > USER ics < 331 Password required for ics. > PASS **** < 230 User ics logged in. 230 User ics logged in. > PWD < 257 "/" is current directory. Server Start-up Directory: / Xfer Base Directory: / > FEAT < 211-Extensions supported: < HOST < SIZE < REST STREAM < MDTM < MDTM YYYYMMDDHHMMSS[+-TZ] filename < MLST size*;type*;perm*;create*;modify*; < MFMT < MD5 < XCRC "filename" start end < XMD5 "filename" start end < CLNT < SITE INDEX;ZONE;CMLSD;DMLSD < MODE Z < XCMLSD < XDMLSD < UTF8 < LANG EN* < OPTS MODE;UTF8; < AUTH TLS;SSL; < CCC < PROT C;P; < PBSZ < 211 END 211-Extensions supported: HOST SIZE REST STREAM MDTM MDTM YYYYMMDDHHMMSS[+-TZ] filename MLST size*;type*;perm*;create*;modify*; MFMT MD5 XCRC "filename" start end XMD5 "filename" start end CLNT SITE INDEX;ZONE;CMLSD;DMLSD MODE Z XCMLSD XDMLSD UTF8 LANG EN* OPTS MODE;UTF8; AUTH TLS;SSL; CCC PROT C;P; PBSZ 211 END > CLNT ICS FTP Client V7.28 < 200 Noted OK. > OPTS UTF8 ON < 200 UTF8 ON Ok. UTF8 Opts: 200 UTF8 ON Ok. Succesfully logged onto FTP Server: ics > TYPE I < 200 Type set to I. > MODE S < 200 MODE S Ok > OPTS MODE Z LEVEL 8 < 200 MODE Z LEVEL set to 8 Ok. Succesfully logged onto FTP Server: ics > SYST < 215 UNIX Type: L8 Internet Component Suite UNIX Type: L8 Internet Component Suite Checking files already on FTP Server: / > MODE Z < 200 MODE Z Ok > CWD / < 250 CWD command successful. "/" is current directory. > PWD < 257 "/" is current directory. > PASV < 227 Entering Passive Mode (192,168,0,50,64,3). > XDMLSD -R < 150 Opening data connection for directory list. ! Download size, compressed 24 bytes, Uncompressed 16bytes < 226 File sent ok compressed size 24bytes, uncompressed size 16bytes ! 24bytes received/sent in 203 milliseconds Server Returned 1 Line(s), Bytes 16 for Directory: /, Format: ANSI /*.* not found Files listed OK, total found 0 took 0 secs Target Files on FTP Server Total Files Found: 0, Total size: 0 bytes Source Files Skipped 0 Selected Total Files 1, Total size 2.00 Gbytes Started FTP Upload to: allan-1 Check Exists c:\temp\Big.Dat Uploading File 1 of 1, c:\temp\Big.Dat to /big.dat, size 2.00 Gbytes > MODE S < 200 MODE S Ok > ALLO 2149467136 < 200 ALLO OK, 45889630208 bytes available. Saved File Resume Info c:\temp\Big_Dat.ftp > PASV < 227 Entering Passive Mode (192,168,0,50,64,4). ! Upload Size 2.00G > STOR big_dat.tmp < 150 Opening data connection for big_dat.tmp. FTP Session Closed - Connection aborted (10053) Finished, files uploaded OK: 0, failed: 1, skipped: 0 Total size uploaded 0 bytes, duration 2:24, average speed 0/sec No Connection to Server, Cancelled Uploading Files (3) Task Result: Failed No Connection to Server, Cancelled Uploading Files (3) // Here I disconnected LAN wire , waited for some time and reconnected. 12-Apr-2013 11:22:05 Source Directory: c:\temp Connecting to FTP Server: Connect/Logon to FTP Server: allan-1:21 < 220-Welcome to my Server < 220- < 220 ICS FTP Server ready. FTP Session Connected to 192.168.0.50:21 > HOST allan-1 < 504 HOST unknown or not allowed. > USER ics < 331 Password required for ics. > PASS **** < 230 User ics logged in. 230 User ics logged in. > PWD < 257 "/" is current directory. Server Start-up Directory: / Xfer Base Directory: / > FEAT < 211-Extensions supported: < HOST < SIZE < REST STREAM < MDTM < MDTM YYYYMMDDHHMMSS[+-TZ] filename < MLST size*;type*;perm*;create*;modify*; < MFMT < MD5 < XCRC "filename" start end < XMD5 "filename" start end < CLNT < SITE INDEX;ZONE;CMLSD;DMLSD < MODE Z < XCMLSD < XDMLSD < UTF8 < LANG EN* < OPTS MODE;UTF8; < AUTH TLS;SSL; < CCC < PROT C;P; < PBSZ < 211 END 211-Extensions supported: HOST SIZE REST STREAM MDTM MDTM YYYYMMDDHHMMSS[+-TZ] filename MLST size*;type*;perm*;create*;modify*; MFMT MD5 XCRC "filename" start end XMD5 "filename" start end CLNT SITE INDEX;ZONE;CMLSD;DMLSD MODE Z XCMLSD XDMLSD UTF8 LANG EN* OPTS MODE;UTF8; AUTH TLS;SSL; CCC PROT C;P; PBSZ 211 END > CLNT ICS FTP Client V7.28 < 200 Noted OK. > OPTS UTF8 ON < 200 UTF8 ON Ok. UTF8 Opts: 200 UTF8 ON Ok. Succesfully logged onto FTP Server: ics > TYPE I < 200 Type set to I. > MODE S < 200 MODE S Ok > OPTS MODE Z LEVEL 8 < 200 MODE Z LEVEL set to 8 Ok. Succesfully logged onto FTP Server: ics > SYST < 215 UNIX Type: L8 Internet Component Suite UNIX Type: L8 Internet Component Suite Checking files already on FTP Server: / > MODE Z < 200 MODE Z Ok > CWD / < 250 CWD command successful. "/" is current directory. > PWD < 257 "/" is current directory. > PASV < 227 Entering Passive Mode (192,168,0,50,64,0). > XDMLSD -R < 150 Opening data connection for directory list. ! Download size, compressed 92 bytes, Uncompressed 95bytes < 226 File sent ok compressed size 92bytes, uncompressed size 95bytes ! 92bytes received/sent in 218 milliseconds Server Returned 1 Line(s), Bytes 95 for Directory: /, Format: ANSI size=706740224;type=file;perm=fdrwa;create=20130412053940;modify=20130412054359; /big_dat.tmp Files listed OK, total found 1 took 0 secs Target Files on FTP Server big_dat.tmp 706,740,224 12/04/13 11:13:59 AM / Total Files Found: 1, Total size: 674 Mbytes Source Files Skipped 0 Selected Total Files 1, Total size 2.00 Gbytes Started FTP Upload to: allan-1 Check Exists c:\temp\Big.Dat Uploading File 1 of 1, c:\temp\Big.Dat to /big.dat, size 2.00 Gbytes > MODE S < 200 MODE S Ok > MLST big_dat.tmp < size=706740224;type=file;perm=fdrwa;create=20130412053940;modify=20130412054359; big_dat.tmp < 250 END Resuming Partial File Upload from: 706,740,224 > ALLO 1442726912 < 200 ALLO OK, 45182885888 bytes available. Saved File Resume Info c:\temp\Big_Dat.ftp Resuming FTP Upload from Offset 706,740,224, Total file size 2.00 Gbytes > PASV < 227 Entering Passive Mode (192,168,0,50,64,1). > REST 706740224 < 350 REST supported. Ready to resume at byte offset 706740224. ! Upload Size 1.34G > STOR big_dat.tmp < 150 Opening data connection for big_dat.tmp. !! FTP Error: FTP component not ready FTP Session Closed !!! File Not Found On FTP Server: big_dat.tmp Finished, files uploaded OK: 0, failed: 1, skipped: 0 Total size uploaded 0 bytes, duration 0:00, average speed 0/sec No Connection to Server, Cancelled Uploading Files (3) Task Result: Failed No Connection to Server, Cancelled Uploading Files (3) FTP Server Log -------------- SslFtpServ (c) 1998-2011 F. Piette V1.15 Using: TWSocket (c) 1996-2011 Francois Piette V7.86 TFtpServer (c) 1998-2011 F. Piette V7.19 Winsock: Version 2.2 WinSock 2.0 Running ! 192.168.0.22 connected < 192.168.0.22 HOST allan-1 ! Could not find Accounts File: c:\documents and settings\allan\desktop\ftp\ftpaccounts-allan-1.ini > 192.168.0.22 504 HOST unknown or not allowed. < 192.168.0.22 USER ics ! Opening Accounts File: c:\documents and settings\allan\desktop\ftp\ftpaccounts-default.ini > 192.168.0.22 331 Password required for ics. < 192.168.0.22 PASS ics ! 192.168.0.22=ics is authenticated ! 192.168.0.22=ics Home Directory: c:\temp\ > 192.168.0.22 230 User ics logged in. < 192.168.0.22 PWD > 192.168.0.22 257 "/" is current directory. < 192.168.0.22 FEAT > 192.168.0.22 211-Extensions supported: HOST SIZE REST STREAM MDTM MDTM YYYYMMDDHHMMSS[+-TZ] filename MLST size*;type*;perm*;create*;modify*; MFMT MD5 XCRC "filename" start end XMD5 "filename" start end CLNT SITE INDEX;ZONE;CMLSD;DMLSD MODE Z XCMLSD XDMLSD UTF8 LANG EN* OPTS MODE;UTF8; AUTH TLS;SSL; CCC PROT C;P; PBSZ 211 END < 192.168.0.22 CLNT ICS FTP Client V7.28 > 192.168.0.22 200 Noted OK. < 192.168.0.22 OPTS UTF8 ON > 192.168.0.22 200 UTF8 ON Ok. < 192.168.0.22 TYPE I > 192.168.0.22 200 Type set to I. < 192.168.0.22 MODE S > 192.168.0.22 200 MODE S Ok < 192.168.0.22 OPTS MODE Z LEVEL 8 > 192.168.0.22 200 MODE Z LEVEL set to 8 Ok. < 192.168.0.22 SYST > 192.168.0.22 215 UNIX Type: L8 Internet Component Suite < 192.168.0.22 MODE Z > 192.168.0.22 200 MODE Z Ok < 192.168.0.22 CWD / > 192.168.0.22 250 CWD command successful. "/" is current directory. < 192.168.0.22 PWD > 192.168.0.22 257 "/" is current directory. < 192.168.0.22 PASV > 192.168.0.22 227 Entering Passive Mode (192,168,0,50,64,3). < 192.168.0.22 XDMLSD -R > 192.168.0.22 150 Opening data connection for directory list. > 192.168.0.22 226 File sent ok compressed size 24bytes, uncompressed size 16bytes < 192.168.0.22 MODE S > 192.168.0.22 200 MODE S Ok < 192.168.0.22 ALLO 2149467136 > 192.168.0.22 200 ALLO OK, 45889630208 bytes available. < 192.168.0.22 PASV > 192.168.0.22 227 Entering Passive Mode (192,168,0,50,64,4). < 192.168.0.22 STOR big_dat.tmp > 192.168.0.22 150 Opening data connection for big_dat.tmp. ! 192.168.0.22 Data session closed. Error #10053 > 192.168.0.22 426 Connection closed; transfer aborted. Error Connection aborted (#10053) ! 192.168.0.22 disconnected // Here I disconnected LAN wire , waited for some time and reconnected. ! 192.168.0.22 connected < 192.168.0.22 HOST allan-1 ! Could not find Accounts File: c:\documents and settings\allan\desktop\ftp\ftpaccounts-allan-1.ini > 192.168.0.22 504 HOST unknown or not allowed. < 192.168.0.22 USER ics ! Opening Accounts File: c:\documents and settings\allan\desktop\ftp\ftpaccounts-default.ini > 192.168.0.22 331 Password required for ics. < 192.168.0.22 PASS ics ! 192.168.0.22=ics is authenticated ! 192.168.0.22=ics Home Directory: c:\temp\ > 192.168.0.22 230 User ics logged in. < 192.168.0.22 PWD > 192.168.0.22 257 "/" is current directory. < 192.168.0.22 FEAT > 192.168.0.22 211-Extensions supported: HOST SIZE REST STREAM MDTM MDTM YYYYMMDDHHMMSS[+-TZ] filename MLST size*;type*;perm*;create*;modify*; MFMT MD5 XCRC "filename" start end XMD5 "filename" start end CLNT SITE INDEX;ZONE;CMLSD;DMLSD MODE Z XCMLSD XDMLSD UTF8 LANG EN* OPTS MODE;UTF8; AUTH TLS;SSL; CCC PROT C;P; PBSZ 211 END < 192.168.0.22 CLNT ICS FTP Client V7.28 > 192.168.0.22 200 Noted OK. < 192.168.0.22 OPTS UTF8 ON > 192.168.0.22 200 UTF8 ON Ok. < 192.168.0.22 TYPE I > 192.168.0.22 200 Type set to I. < 192.168.0.22 MODE S > 192.168.0.22 200 MODE S Ok < 192.168.0.22 OPTS MODE Z LEVEL 8 > 192.168.0.22 200 MODE Z LEVEL set to 8 Ok. < 192.168.0.22 SYST > 192.168.0.22 215 UNIX Type: L8 Internet Component Suite < 192.168.0.22 MODE Z > 192.168.0.22 200 MODE Z Ok < 192.168.0.22 CWD / > 192.168.0.22 250 CWD command successful. "/" is current directory. < 192.168.0.22 PWD > 192.168.0.22 257 "/" is current directory. < 192.168.0.22 PASV > 192.168.0.22 227 Entering Passive Mode (192,168,0,50,64,0). < 192.168.0.22 XDMLSD -R > 192.168.0.22 150 Opening data connection for directory list. > 192.168.0.22 226 File sent ok compressed size 92bytes, uncompressed size 95bytes < 192.168.0.22 MODE S > 192.168.0.22 200 MODE S Ok < 192.168.0.22 MLST big_dat.tmp > 192.168.0.22 250-Listing big_dat.tmp size=706740224;type=file;perm=fdrwa;create=20130412053940;modify=20130412054359; big_dat.tmp 250 END < 192.168.0.22 ALLO 1442726912 > 192.168.0.22 200 ALLO OK, 45182885888 bytes available. < 192.168.0.22 PASV > 192.168.0.22 227 Entering Passive Mode (192,168,0,50,64,1). < 192.168.0.22 REST 706740224 > 192.168.0.22 350 REST supported. Ready to resume at byte offset 706740224. < 192.168.0.22 STOR big_dat.tmp > 192.168.0.22 150 Opening data connection for big_dat.tmp. > 192.168.0.22 426 Connection closed; ABORT on Disconnect. ! 192.168.0.22 disconnected On Mon, Apr 8, 2013 at 12:37 PM, Angus Robertson - Magenta Systems Ltd < an...@magsys.co.uk> wrote: > > I am using TSslFtpClient and and need the DateTime of remote files. > > From what I understand the only way is via the Dir command. > > If so how do I parse list ? Is there fixed format ? > > The DIR command is supported by all FTP servers, and can return numerous > different listing formats, essentially the OS dir listing. > In practice, you will find only UNIX or MS-DOS listings and you have to > parse them. Not UNIX format does not have the file time for files older > than one year. > > Better FTP servers also support the MLSD command which is a standardised > format. > > Both these command list only the current directory, if you need > sub-directories you have to keep changing directories and DIR or MLSD > again. > > The ICS FTP server adds XCMLSD and XDMLSD which are similar to MLSD but > provides recursive listings for sub-directories so will list hundreds of > directories in a couple of seconds, which takes several minutes with the > older commands. > > If you want a reliable working application use the high level FTP > component TMagFtp from: > > http://www.magsys.co.uk/delphi/magxfer.asp > > which uses all the above listing techniques depending on what the server > supports using a single command BuildDirList, or SelectCopyFileList is > you only want to know which files are different to those on your local > disk, ie when updating a web site. > > Angus > > -- > To unsubscribe or change your settings for TWSocket mailing list > please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket > Visit our website at http://www.overbyte.be > -- To unsubscribe or change your settings for TWSocket mailing list please goto http://lists.elists.org/cgi-bin/mailman/listinfo/twsocket Visit our website at http://www.overbyte.be