Actually, the FTP protocol can have problems with aborting download transfers.
When uploading data: when abort is requested, client simply stops reading form input stream and the operation is aborted.
When downloading data: client sends
RETR filename command and starts reading data from server. When abort is requested, client sends
ABOR command to the server. Now, in ideal case, the server accepts the
ABOR command and aborts the transfer. However, some servers doesn't handle
ABOR command well and the transfer is aborted after couple of time (or never).
This is, how abort process looks in our test environment:
13:11:02.292 Info Info: Aborting operation.
13:11:02.294 Debug Info: Aborting downloading data connection.
13:11:02.297 Info Info: Aborting download.
13:11:02.299 Info Command: ABOR
13:11:02.300 Info Response: 426 Connection closed; transfer aborted.
13:11:02.302 Info Response: 226 ABOR command successful
13:11:02.303 Debug Info: Closing data connection.
13:11:02.305 Error Info: Rebex.Net.FtpException: The operation was aborted.
Please note the timing. Whole abort operation took 15 ms.
I tried the
FtpWinFormClient sample against FileZilla Server and it works as expected.
Please, look into log window. Locate
Command: ABOR line and look how the server handles it. If it looks like the log above, the
Abort should not block the connection.
If you have troubles reading the log, you can post it here or send it to email@example.com for analysis.