GNOME Bugzilla – Bug 702033
unknown SSL read leak
Last modified: 2015-04-21 16:12:49 UTC
==21714== 74,048 bytes in 4 blocks are definitely lost in loss record 6,984 of 7,013 ==21714== at 0x4A08121: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==21714== by 0x3F8242784D: ??? (in /usr/lib64/libgnutls.so.28.19.0) ==21714== by 0x3F82428B0D: ??? (in /usr/lib64/libgnutls.so.28.19.0) ==21714== by 0x3F824230B8: ??? (in /usr/lib64/libgnutls.so.28.19.0) ==21714== by 0x3F82424995: _gnutls_recv_int (in /usr/lib64/libgnutls.so.28.19.0) ==21714== by 0x3F82424E74: gnutls_record_recv (in /usr/lib64/libgnutls.so.28.19.0) ==21714== by 0x16E30932: ??? (in /usr/lib64/gio/modules/libgiognutls.so) ==21714== by 0x3CFD057CCD: g_input_stream_read (ginputstream.c:204) ==21714== by 0x3CFD057CCD: g_input_stream_read (ginputstream.c:204) ==21714== by 0x3D038457E0: read_internal (soup-body-input-stream.c:132) ==21714== by 0x3CFD057CCD: g_input_stream_read (ginputstream.c:204) ==21714== by 0x3D0385E501: io_read (soup-message-io.c:638) Going to need a higher value of --num-callers to catch this one, but at 74KB lost it's worth filing now to ensure I don't forget it.
==26472== 37,024 bytes in 2 blocks are definitely lost in loss record 7,102 of 7,159 ==26472== at 0x4A08121: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==26472== by 0x3F8242784D: ??? (in /usr/lib64/libgnutls.so.28.19.0) ==26472== by 0x3F82428B0D: ??? (in /usr/lib64/libgnutls.so.28.19.0) ==26472== by 0x3F824230B8: ??? (in /usr/lib64/libgnutls.so.28.19.0) ==26472== by 0x3F82424995: _gnutls_recv_int (in /usr/lib64/libgnutls.so.28.19.0) ==26472== by 0x3F82424E74: gnutls_record_recv (in /usr/lib64/libgnutls.so.28.19.0) ==26472== by 0x16E30932: ??? (in /usr/lib64/gio/modules/libgiognutls.so) ==26472== by 0x3CFD057CCD: g_input_stream_read (ginputstream.c:204) ==26472== by 0x3CFD057CCD: g_input_stream_read (ginputstream.c:204) ==26472== by 0x3D038457E0: read_internal (soup-body-input-stream.c:132) ==26472== by 0x3CFD057CCD: g_input_stream_read (ginputstream.c:204) ==26472== by 0x3D0385E501: io_read (soup-message-io.c:638) ==26472== by 0x3D0385E92A: io_run_until (soup-message-io.c:856) ==26472== by 0x3D0385F257: io_run (soup-message-io.c:919) ==26472== by 0x3D0385C31B: soup_message_send_request (soup-message-client-io.c:161) ==26472== by 0x3D0386BF7B: soup_session_process_queue_item (soup-session.c:1819) ==26472== by 0x3D0386C5ED: soup_session_real_send_message (soup-session.c:2045) ==26472== by 0xF94C0DE: send_and_handle_redirection (e-cal-backend-caldav.c:1044) ==26472== by 0xF950C9F: synchronize_cache (e-cal-backend-caldav.c:1294) ==26472== by 0xF9523CD: caldav_synch_slave_loop (e-cal-backend-caldav.c:2513)
At last... ==5484== 74,048 bytes in 4 blocks are definitely lost in loss record 7,091 of 7,107 ==5484== at 0x4A08121: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==5484== by 0x3F8242784D: _mbuffer_alloc (gnutls_mbuffers.c:287) ==5484== by 0x3F82428B0D: _gnutls_io_read_buffered (gnutls_buffers.c:272) ==5484== by 0x3F824230B8: _gnutls_recv_in_buffers (gnutls_record.c:997) ==5484== by 0x3F82424995: _gnutls_recv_int (gnutls_record.c:1348) ==5484== by 0x3F82424E74: gnutls_record_recv (gnutls_record.c:1511) ==5484== by 0x19499932: ??? (in /usr/lib64/gio/modules/libgiognutls.so) ==5484== by 0x6524E5D: g_input_stream_read (ginputstream.c:204) ==5484== by 0x6524E5D: g_input_stream_read (ginputstream.c:204) ==5484== by 0x3D038457E0: read_internal (soup-body-input-stream.c:132) ==5484== by 0x6524E5D: g_input_stream_read (ginputstream.c:204) ==5484== by 0x3D0385E501: io_read (soup-message-io.c:638) ==5484== by 0x3D0385E92A: io_run_until (soup-message-io.c:856) ==5484== by 0x3D0385F257: io_run (soup-message-io.c:919) ==5484== by 0x3D0385C31B: soup_message_send_request (soup-message-client-io.c:161) ==5484== by 0x3D0386BF7B: soup_session_process_queue_item (soup-session.c:1819) ==5484== by 0x3D0386C5ED: soup_session_real_send_message (soup-session.c:2045) ==5484== by 0x117810DE: send_and_handle_redirection (e-cal-backend-caldav.c:1044) ==5484== by 0x11781347: caldav_server_open_calendar (e-cal-backend-caldav.c:1139) ==5484== by 0x117815A1: open_calendar (e-cal-backend-caldav.c:2837)
These seem to be more gnutl/GLib/libsoup related, from my point of view. Dan, could you have a look, please?
Is anything else showing up leaked? That memory is internal to the gnutls_session, so if the session (or the GTlsConnectionGnutls) isn't also getting leaked, then this would seem to be a gnutls bug.
I do not see this leak in git master, which is pretty much the same as 3.16.1 (even this is related to the gnutls version), thus I'm closing it.