I've not looked at the patch that supports concurrent data connections
on a single passive port, but I've some serious doubts as to if it is
even  legitimate to have such support and if we can gracefully handle
such scenario. Here is an example scenario -

1. Client A has more than one session (for this example let us say
two) open with the FTP server.
2. Session 1 issues PASV command.
3. Server replies back asking to connect on port 2000.
4. About the same time, Session 2 issues PASV command
5. Server replies back asking to connect on port 2000.
6. Both session 1 and session 2 connect to port 2000 almost at the same time.
7. How do we distinguish which data connection belongs to which
control session?

Would we possibly be sending/receiving incorrect data on session 1/2?

I apologize if I'm missing something here, but please correct me if I'm wrong.


Regards,
Sai Pullabhotla





On Thu, Mar 25, 2010 at 8:14 AM, Niklas Gustavsson <nik...@protocol7.com> wrote:
> On Thu, Mar 25, 2010 at 2:09 PM, Sai Pullabhotla
> <sai.pullabho...@jmethods.com> wrote:
>> Or even better, since the current version is not
>> supposed to be used with too little passive ports than the number of
>> concurrent clients, should we error out right way with 4XX message
>> indicating a data connection could not be opened?
>
> I think this makes a lot of sense for the 1.0.x branch. For 1.1.x, the
> plan is to merge in the existing patch to enable concurrent data
> connections on the same passive port.
>
> /niklas
>

Reply via email to