PSA9: Ok here's why you are seeing that error and how to fix it.
A TCP connection is uniquely identified by the Source IP, Source Port, Dest IP, and Dest port. If you have two transfers going at the same time between two machines, or one machine connecting to itself, it's possible ioftpd attempts to reuse a pasv port that was just released, in use, or still in TIME_WAIT and since the other end of the connection has the same IP at the just closed one windows complains.
I haven't looked to see if ioFTPD isn't reading a windows socket response correctly, or if there is just no way around this because you can't tell until you try to accept the connection (which would work with a different computer, but not the same IP). I've seen this behavior elsewhere though on other server style apps though so it's not unique to ioFTPD.
Right now the simple solution is to increase the size of the pasv port range. If you have lots of little files, quickly listing directories, or insanely fast connections this error does show up and it does go away for the most part if you use 100 pasv ports or so since that gives enough time from the closing of the port to its re-use.
|