Dnia 2024-03-21, o godz. 14:08:36
Aleksander Mazur via curl-library <curl-library@lists.haxx.se> napisaƂ(a):

> The app keeps re-using the same 3 easy handles and one multi handle, created
> once at the beginning. Two of them may talk to the same server (one is
> switched between different servers).

I didn't mention that the app uses yet another easy handle for sending e-mails
(smtps://...).
Valgrind found following error:

==101562== ERROR SUMMARY: 2 errors from 1 contexts (suppressed: 0 from 0)
==101562== 
==101562== 2 errors in context 1 of 1:
==101562== Invalid read of size 8
==101562==    at 0x4983659: http2_data_done (http2.c:278)
==101562==    by 0x49881E8: cf_h2_cntrl (http2.c:2513)
==101562==    by 0x4963D13: Curl_conn_cf_cntrl (cfilters.c:501)
==101562==    by 0x4963F38: cf_cntrl_all (cfilters.c:551)
==101562==    by 0x4963FCF: Curl_conn_ev_data_detach (cfilters.c:568)
==101562==    by 0x4993D85: Curl_detach_connection (multi.c:973)
==101562==    by 0x49B2DC3: extract_if_dead (url.c:828)
==101562==    by 0x49B2E1E: call_extract_if_dead (url.c:854)
==101562==    by 0x496572C: Curl_conncache_foreach (conncache.c:332)
==101562==    by 0x49B3009: prune_dead_connections (url.c:883)
==101562==    by 0x49B772C: create_conn (url.c:3635)
==101562==    by 0x49B7D0D: Curl_connect (url.c:3873)
==101562==  Address 0x84f9f88 is 8 bytes after a block of size 64 alloc'd
==101562==    at 0x4849E60: calloc (vg_replace_malloc.c:1595)
==101562==    by 0x498F348: curl_dbg_calloc (memdebug.c:175)
==101562==    by 0x49A98A9: smtp_init (smtp.c:1318)
==101562==    by 0x49AA0AE: smtp_setup_connection (smtp.c:1660)
==101562==    by 0x49B4DA2: setup_connection_internals (url.c:2042)
==101562==    by 0x49B7682: create_conn (url.c:3580)
==101562==    by 0x49B7D0D: Curl_connect (url.c:3873)
==101562==    by 0x4995B9E: multi_runsingle (multi.c:2002)
==101562==    by 0x49975B7: curl_multi_perform (multi.c:2780)
==101562==    by 0x41A599: main (main.c:221)

(using vanilla curl 8.6.0)

So it looks like an easy handle set up by smtp handler is then passed via
cfilters to http2 code (?)

-- 
Aleksander Mazur
-- 
Unsubscribe: https://lists.haxx.se/mailman/listinfo/curl-library
Etiquette:   https://curl.se/mail/etiquette.html

Reply via email to