curl / Mailing Lists / curl-library / Single Mail
Buy commercial curl support from WolfSSL. We help you work out your issues, debug your libcurl applications, use the API, port to new platforms, add new features and more. With a team lead by the curl founder himself.

Re: Curl 7.64.1 crash on MacOS.

From: Ray Satiro via curl-library <curl-library_at_lists.haxx.se>
Date: Thu, 27 Jan 2022 17:59:13 -0500

On 1/27/2022 12:45 PM, Frank Spano via curl-library wrote:
> Our program is sending ~800 requests per minute, and experiencing
> crashes every ~5 minutes. We verified that every CurlEasy handle is
> allocated/deallocated properly (no nullptr after allocation, no double
> frees happening). When encountering the crash while running in a
> debugger, we found a nullptr in a linked list - we assume this is
> CurlMulti’s linked list of CurlEasy handles. As we checked that no
> curl handles were null when allocated, it seems like there’s memory
> corruption for that to show up in one of the linked lists. Since
> installing and building with curl 7.80.1, we’re experiencing no issues
> - the program is no longer crashing. Our issue was resolved, but we
> would like to know why this was happening - is this a known bug? We
> were unable to find anyone experiencing the issue, but given that this
> is the default version on macOS Big Sur currently, it may be affecting
> other people as well. 


You can bisect the issue. [1] Our bisect instructions are only for the
curl tool but you can of course do the same for libcurl. Link to the
uninstalled libcurl or install it to a temporary directory, do not use
the traditional install directories. Make sure to build a version you
know is good and a version you know is bad, to confirm the issue was
actually fixed. Check curl_version() to make sure your app is actually
using the version built during bisect. You may need rpath or whatever
its Mac equivalent. As Daniel mentioned this is going to take you some
time considering what you described, likely a lot more than the half
hour we ballpark it at in the doc. If you figure it out please let us
know, it is always helpful to share the information in case anyone else
has the same problem.


[1]: https://github.com/curl/curl/wiki/how-to-git-bisect



-- 
Unsubscribe: https://lists.haxx.se/listinfo/curl-library
Etiquette:   https://curl.haxx.se/mail/etiquette.html
Received on 2022-01-27