> Following a fix: > The data-socket must effectively be stopped from "accepting" a > connection once the primary transfer command has failed. If the > data-socket is simply closed then on client-side an error is raised - > so my solution is not to call datasocket.accept on the incoming > connection - by clearing datasocket.OnSessionAvailable.
Mt testing of the FTP server unit you emailed and which you said you'd sent to Francois shows your 'fix' does not work, at least in my testing. Perhaps my test has shown up a different problem to the one you have fixed. The issue seems to be when the PASV command is sent, the server opens the data socket to listen for a connection from the client, but this does not happen if the subsequent RETV, LIST or STOR command fails to start. So the data socket remains listening when the next PASV command comes in, and is closed then, but immediately setup up again to list, before it has closed properly, which I think is why there is an erroneous response from the closed event. Clearing OnSessionAvailable has not effect, since the client never opens a session. Angus -- To unsubscribe or change your settings for TWSocket mailing list please goto http://www.elists.org/mailman/listinfo/twsocket Visit our website at http://www.overbyte.be