assertion failed: (priv->handshake_context) in verify_certificate_cb() at ../tls/gnutls/gtlsconnection-gnutls.c:1949
Downstream bug report:
https://bugzilla.redhat.com/show_bug.cgi?id=1752785
This begun to show with glib2-2.60.7-1, glib-networking-2.60.3-1, but also with a Flatpak version (see the duplicate bug of the upstream bug).
As the assertions is hit in a dedicated thread of glib-networking I doubt there's an issue in the application itself. I'd be happy if you can prove otherwise.
Thread 1 (Thread 0x7faee7fff700 (LWP 15469)):
#0 0x00007faf1afbce35 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50
set = {__val = {0, 140389260467600, 140389260467772, 140390049021859, 0, 140389260460160, 0, 32, 2064, 140389260460064, 2048, 140389260460064, 129, 140390049030984, 3, 140389596004352}}
pid = <optimized out>
tid = <optimized out>
#1 0x00007faf1afa7895 in __GI_abort () at abort.c:79
save_stage = 1
act = {__sigaction_handler = {sa_handler = 0x94, sa_sigaction = 0x94}, sa_mask = {__val = {140390052397315, 140385301037104, 140385301037056, 0, 124, 140389260503328, 140390052599008, 140390052620991, 140387784065024, 140389260503328, 15430741750537197824, 0, 140389260503328, 140389260503328, 125, 140389193344336}}, sa_flags = -181964432, sa_restorer = 0x7faef5277170 <__FUNCTION__.31950>}
sigs = {__val = {32, 0 <repeats 15 times>}}
#2 0x00007faf1b2e6b53 in g_assertion_message (domain=<optimized out>, file=<optimized out>, line=<optimized out>, func=0x7faef5277170 <__FUNCTION__.31950> "verify_certificate_cb", message=<optimized out>) at ../glib/gtestutils.c:2878
lstr = "1949\000\177\000\000\000\031\217\325\335\001%\326\206\v\000\000\000\000\000\000Jh'\365\256\177\000"
s = 0x7faeec00a920 "\360\066"
#3 0x00007faf1b3426df in g_assertion_message_expr (domain=domain@entry=0x7faef527607b "GLib-Net", file=file@entry=0x7faef5276940 "../tls/gnutls/gtlsconnection-gnutls.c", line=line@entry=1949, func=func@entry=0x7faef5277170 <__FUNCTION__.31950> "verify_certificate_cb", expr=expr@entry=0x7faef527684a "priv->handshake_context") at ../glib/gtestutils.c:2904
s = 0x7faeec026030 "assertion failed: (priv->handshake_context)"
#4 0x00007faef526fbfe in verify_certificate_cb (session=<optimized out>) at ../tls/gnutls/gtlsconnection-gnutls.c:1949
__FUNCTION__ = "verify_certificate_cb"
gnutls = 0x7faeb0008560 [GTlsClientConnectionGnutls]
priv = 0x7faeb00083f0
accepted = <optimized out>
__FUNCTION__ = "verify_certificate_cb"
#5 0x00007faef526fbfe in verify_certificate_cb (session=<optimized out>) at ../tls/gnutls/gtlsconnection-gnutls.c:1934
gnutls = 0x7faeb0008560 [GTlsClientConnectionGnutls]
priv = 0x7faeb00083f0
accepted = <optimized out>
__FUNCTION__ = "verify_certificate_cb"
#6 0x00007faef50bbcf1 in _gnutls_run_verify_callback (side=2, session=0x7faeb0009000) at handshake.c:2847
cred = 0x7faeb005ce20
ret = 0
type = <optimized out>
__func__ = "_gnutls_run_verify_callback"
__func__ = "_gnutls_run_verify_callback"
#7 0x00007faef50bbcf1 in _gnutls_run_verify_callback (session=session@entry=0x7faeb0009000, side=side@entry=2) at handshake.c:2813
__func__ = "_gnutls_run_verify_callback"
#8 0x00007faef50b3fe9 in _gnutls13_handshake_client (session=session@entry=0x7faeb0009000) at handshake-tls13.c:147
ret = <optimized out>
__func__ = "_gnutls13_handshake_client"
#9 0x00007faef50bf58d in handshake_client (session=0x7faeb0009000) at handshake.c:2936
ret = <optimized out>
ver = <optimized out>
__func__ = "handshake_client"
vers = 0x7faef522f960 <sup_versions+160>
ret = <optimized out>
__func__ = "gnutls_handshake"
#10 0x00007faef50bf58d in gnutls_handshake (session=0x7faeb0009000) at handshake.c:2724
vers = 0x7faef522f960 <sup_versions+160>
ret = <optimized out>
__func__ = "gnutls_handshake"
#11 0x00007faef526f4d7 in handshake_thread (task=0x7faed0004ef0 [GTask], object=0x7faeb0008560, task_data=<optimized out>, cancellable=<optimized out>) at ../tls/gnutls/gtlsconnection-gnutls.c:2061
gnutls = 0x7faeb0008560 [GTlsClientConnectionGnutls]
priv = 0x7faeb00083f0
error = 0x0
ret = <optimized out>
start_time = <optimized out>
timeout = <optimized out>
__FUNCTION__ = "handshake_thread"
#12 0x00007faf1b4fa8d7 in g_task_thread_pool_thread (thread_data=0x7faed0004ef0, pool_data=<optimized out>) at ../gio/gtask.c:1404
task = 0x7faed0004ef0 [GTask]
#13 0x00007faf1b343ef4 in g_thread_pool_thread_proxy (data=<optimized out>) at ../glib/gthreadpool.c:308
task = 0x7faed0004ef0
pool = <optimized out>
#14 0x00007faf1b3434c2 in g_thread_proxy (data=0x7faeec0250a0) at ../glib/gthread.c:805
thread = 0x7faeec0250a0
__FUNCTION__ = "g_thread_proxy"
#15 0x00007faf1b2b14c0 in start_thread (arg=<optimized out>) at pthread_create.c:479
ret = <optimized out>
pd = <optimized out>
unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140389193348864, -8009870548656169166, 140736688547998, 140736688547999, 140736688548144, 140389193346112, 8037507872260382514, 8036972029813088050}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}}
not_first_call = <optimized out>
#16 0x00007faf1b081553 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95