cURL / Mailing Lists / curl-library / Single Mail

curl-library

Re: Graceful switch from PASV to PORT on failure (like 502)

From: Daniel Stenberg <daniel_at_haxx.se>
Date: Sat, 21 Jul 2007 23:55:52 +0200 (CEST)

On Fri, 20 Jul 2007, Daniel Cater wrote:

> OK, I'll look into that after I've got it working. Although, I don't see
> much of a problem with changing behaviour from "PASV, 502, QUIT" to "PASV,
> 502, PORT". Are people relying on PASV failures causing the connection to
> close?

The ones who care of course rely on the errors and re-try, but I would guess
that most users use one of the methods and stay with that since today's
networks often makes it impossible to just pick any of these at will.

> The application outputs and Wireshark traces for each follow. I used
> "(ip.src == 172.17.224.55 && ip.dst == 172.17.110.43) || (ip.src ==
> 172.17.110.43 && ip.dst == 172.17.224.55)" to filter out unwanted traffic.

Using DEBUGFUNCTION (curl --trace-ascii) makes nicer traces...

> Interesting points to note: The PORT command is never actually sent in
> my patched version. After the NLST command is sent, the server sends a
> 150 and then tries to open a data connection to the _control_ port

Then I figure you need to fire up your debugger and see why it doesn't send
off the PORT command?

-- 
  Commercial curl and libcurl Technical Support: http://haxx.se/curl.html
Received on 2007-07-22