Skip to content
  1. May 08, 2006
  2. May 04, 2006
    • Daniel Stenberg's avatar
      Roland Blom filed bug report #1481217 · e85e3054
      Daniel Stenberg authored
      (http://curl.haxx.se/bug/view.cgi?id=1481217), with follow-ups by Michele Bini
      and David Byron. libcurl previously wrongly used GetLastError() on windows to
      get error details after socket-related function calls, when it really should
      use WSAGetLastError() instead.
      
      When changing to this, the former function Curl_ourerrno() is now instead
      called Curl_sockerrno() as it is necessary to only use it to get errno from
      socket-related functions as otherwise it won't work as intended on Windows.
      e85e3054
    • Daniel Stenberg's avatar
      Mark Eichin submitted bug report #1480821 · 758f6eed
      Daniel Stenberg authored
      (http://curl.haxx.se/bug/view.cgi?id=1480821) He found and identified a
      problem with how libcurl dealt with GnuTLS and a case where gnutls returned
      GNUTLS_E_AGAIN indicating it would block. It would then return an unexpected
      return code, making Curl_ssl_send() confuse the upper layer - causing random
      28 bytes trash data to get inserted in the transfered stream.
      
      The proper fix was to make the Curl_gtls_send() function return the proper
      return codes that the callers would expect. The Curl_ossl_send() function
      already did this.
      758f6eed
  3. May 02, 2006
  4. Apr 26, 2006
  5. Apr 25, 2006
  6. Apr 21, 2006
  7. Apr 18, 2006
  8. Apr 11, 2006
  9. Apr 10, 2006
  10. Apr 05, 2006
  11. Mar 28, 2006
  12. Mar 27, 2006
  13. Mar 26, 2006
  14. Mar 21, 2006
  15. Mar 20, 2006
  16. Mar 07, 2006
  17. Mar 06, 2006
  18. Mar 04, 2006
  19. Mar 03, 2006
  20. Mar 02, 2006
  21. Feb 27, 2006
  22. Feb 23, 2006
    • Daniel Stenberg's avatar
      Lots of work and analysis by "xbx___" in bug #1431750 · 6fdbb011
      Daniel Stenberg authored
      (http://curl.haxx.se/bug/view.cgi?id=1431750) helped me identify and fix two
      different but related bugs:
      
      1) Removing an easy handle from a multi handle before the transfer is done
         could leave a connection in the connection cache for that handle that is
         in a state that isn't suitable for re-use. A subsequent re-use could then
         read from a NULL pointer and segfault.
      
      2) When an easy handle was removed from the multi handle, there could be an
         outstanding c-ares DNS name resolve request. When the response arrived,
         it caused havoc since the connection struct it "belonged" to could've
         been freed already.
      
      Now Curl_done() is called when an easy handle is removed from a multi handle
      pre-maturely (that is, before the transfer was complteted). Curl_done() also
      makes sure to cancel all (if any) outstanding c-ares requests.
      6fdbb011
  23. Feb 21, 2006
  24. Feb 19, 2006
  25. Feb 18, 2006
  26. Feb 16, 2006
  27. Feb 11, 2006
  28. Feb 07, 2006