cURL / Mailing Lists / curl-library / Single Mail


Re: SFTP and curl_multi_socket problem

From: Daniel Stenberg <>
Date: Tue, 24 Jun 2008 23:45:59 +0200 (CEST)

On Tue, 24 Jun 2008, Lubo? Dole?el wrote:

> I'm a developer of a download manager partially based on libcurl. It works
> just great for HTTP, HTTPS and FTP, but it doesn't work when I use SFTP.

libcurl version? libssh2 version? Running on Linux?

> I add an easy SFTP download to the multi handle and when I call
> curl_multi_socket_action(...CURL_SOCKET_TIMEOUT...), CURL calls
> socket_callback with CURL_POLL_OUT (I return 0 = ok) and *immediately* -
> during *the same* curl_multi_socket_action call - it tells me to remove the
> very socket it has just told me to add.

That sounds like a bug. Can you provide the source code to a complete example
that repeats this problem? As simple as possible of course.

> CurlPoller::socket_callback - add/mod (CURL_POLL_OUT)
> CurlPoller::socket_callback - remove

Well this log doesn't mention what file descriptor it referred to.

> Do you have an idea what could be wrong?

Set a break-point in lib/multi.c:singlesocket() and single-step through it. It
should offer some amount of clues.

Received on 2008-06-24