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: infinite "easy_transfer function" wait loop

From: Ray Satiro via curl-library <curl-library_at_lists.haxx.se>
Date: Mon, 7 Feb 2022 13:57:09 -0500

On 2/7/2022 8:16 AM, Lilia Boneva via curl-library wrote:
> The infinite loop problem showed again (after ~20hours running program in debug).
>
>
>
> The html used is 1.1 default version (not sure how to use html/2
> libraries). The environment is single threaded static lib Win32 Visual
> C++ 2019.
>
>
>
> I tried to debug, but unfortunately am new to curl and do not know what
> to look. So I made a video on how execution goes through "easy_transfer
> function" and subfuncs (https://drive.google.com/file/d/1kdMSBS9fZPBW4WoMJ4qgHIeB01h46d4V/view?usp=sharing). The google drive file is ~1GB - tried to make it high res (if too long I will convert it to smaller res and send again).
>
>
>
> Any idea how to catch the problem when debuging next time is welcome -
> what data to look, what structure to write down or what to log.
>
>
>
>
> If you someone can give me link to how to use html/2 library to try if problem exists I will be grateful.
> Also is it possible to use "Easy" interface instead of "multy" interface? (Now call goes through multi_wait)
> Also during debug I saw USE_WINSOCK is used. Is it possible not to use WinSock ?


The file you linked to is inaccessible. HTTP/2 will be harder to debug
so stay with 1.1 for now. There might be 3rd party Windows sockets
libraries but since nobody uses them with curl they might cause other
problems. Keep using winsock.

There is not enough information here to say this is a curl problem. Can
you show us the code you are using? Do you have a minimal self contained
example that can be used to reproduce on a public website like
httpbin.org for example? Please review the documentation for the multi
interface [1] and multi- prefixed examples [2].


[1]: https://curl.se/libcurl/c/libcurl-multi.html
[2]: https://curl.se/libcurl/c/example.html

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