cURL

curl's project page on SourceForge.net

Sponsors:
Haxx

cURL > Mailing List > Monthly Index > Single Mail

curl-tracker Archives

[curl:bugs] #1355 Socket callback with CURL_POLL_REMOVE is too late

From: Daniel Stenberg <bagder_at_users.sf.net>
Date: Tue, 08 Apr 2014 07:31:34 +0000

- **assigned_to**: Daniel Stenberg
- **Comment**:

Thanks for your report.

I understand what you want, but I'm not convinced this is what is guaranteed by this function. It informs you about changes to which sockets to wait for and what to wait actions for those sockets, it does not guarantee that it tells you before it closes them. (and it never did)

So, I'm not at all convinced this is truly a "bug".

Changing the code to actually do the callback before the socket is closed could be a worthy exercise still, but not swiftly done I'd say.

A work-around could perhaps be to use the CURLOPT_CLOSESOCKETFUNCTION.

---
** [bugs:#1355] Socket callback with CURL_POLL_REMOVE is too late**
**Status:** open
**Created:** Mon Apr 07, 2014 10:08 PM UTC by Constantin Baranov
**Last Updated:** Mon Apr 07, 2014 10:08 PM UTC
**Owner:** Daniel Stenberg
Sometimes curl closes a socket before notifying user via SOCKETFUNCTION. I caught this in a case when I want to terminate a transfer in the middle of downloading.
See attached source. I'd expect fcntl() don't fail. If it doesn't work (i.e. doesn't report fcntl error), change the URL to a bigger resource.
I'd like to let curl close its sockets, but I need to get CURL_POLL_REMOVE message when socket is still alive. Otherwise my network reactor goes crazy.
---
Sent from sourceforge.net because curl-tracker@cool.haxx.se is subscribed to https://sourceforge.net/p/curl/bugs/
To unsubscribe from further messages, a project admin can change settings at https://sourceforge.net/p/curl/admin/bugs/options.  Or, if this is a mailing list, you can unsubscribe from the mailing list.
Received on 2014-04-08

These mail archives are generated by hypermail.

donate! Page updated March 21, 2014.
web site info

File upload with ASP.NET