TlsConnection.get_channel_binding_data() segfaults
Hi,
When i call this method after successful TLS connection i receive a segfault
Thread 1 "gajim" received signal SIGFPE, Arithmetic exception.
0x00007ffff6d85fd0 in g_array_maybe_expand (array=array@entry=0x1b6f810, len=len@entry=32) at ../../../glib/garray.c:1103
Downloading source file /usr/src/glib2.0-2.76.1-1/debian/build/deb/../../../glib/garray.c
1103 max_len = MIN (G_MAXSIZE / 2 / array->elt_size, G_MAXUINT) - array->zero_terminated;
(gdb) bt
#0 0x00007ffff6d85fd0 in g_array_maybe_expand (array=array@entry=0x1b6f810, len=len@entry=32) at ../../../glib/garray.c:1103
#1 0x00007ffff6d86610 in g_array_append_vals (farray=farray@entry=0x1b6f810, data=0x2204670, len=32) at ../../../glib/garray.c:643
#2 0x00007ffff6d8668d in g_byte_array_append (array=array@entry=0x1b6f810, data=<optimized out>, len=<optimized out>)
at ../../../glib/garray.c:2995
#3 0x00007fffd30a1439 in gnutls_get_binding (gnutls=<optimized out>, data=0x1b6f810, binding=<optimized out>, error=0x7fffffffcad8)
at ../tls/gnutls/gtlsconnection-gnutls.c:1165
#4 0x00007ffff7e118b6 in ffi_call_unix64 () at ../src/x86/unix64.S:104
#5 0x00007ffff7e0e34d in ffi_call_int
(cif=cif@entry=0x245ed58, fn=<optimized out>, rvalue=<optimized out>, avalue=<optimized out>, closure=closure@entry=0x0)
at ../src/x86/ffi64.c:673
#6 0x00007ffff7e10f33 in ffi_call (cif=cif@entry=0x245ed58, fn=<optimized out>, rvalue=rvalue@entry=0x7fffffffca38, avalue=<optimized out>)
at ../src/x86/ffi64.c:710
#7 0x00007ffff6ecd356 in pygi_invoke_c_callable
(function_cache=0x245ecb0, state=<optimized out>, py_args=<optimized out>, py_kwargs=<optimized out>) at gi/pygi-invoke.c:684
#8 0x00007ffff6ecb600 in pygi_function_cache_invoke (py_kwargs=0x0, py_args=0x7fffd0c85400, function_cache=<optimized out>) at gi/pygi-cache.c:862
#9 pygi_callable_info_invoke (user_data=0x0, cache=<optimized out>, kwargs=0x0, py_args=0x7fffd0c85400, info=<optimized out>)
at gi/pygi-invoke.c:727
#10 _wrap_g_callable_info_invoke (self=<optimized out>, py_args=py_args@entry=0x7fffd0c85400, kwargs=kwargs@entry=0x0) at gi/pygi-invoke.c:764
#11 0x00007ffff6ecb835 in _callable_info_call (self=0x7fffd3fcc930, args=0x7fffd17c4f10, kwargs=0x0) at gi/pygi-info.c:548
#12 0x00000000004ea513 in _PyObject_MakeTpCall
(tstate=0xa820b8 <_PyRuntime+166328>, callable=0x7fffd3fcc930, args=<optimized out>, nargs=1, keywords=0x0) at ../Objects/call.c:214
#13 0x00000000004ff354 in _PyEval_EvalFrameDefault (tstate=<optimized out>, frame=<optimized out>, throwflag=<optimized out>)
at ../Python/ceval.c:4774
#14 0x000000000055d27c in _PyEval_EvalFrame (throwflag=0, frame=0x7ffff7fb54b0, tstate=0xa820b8 <_PyRuntime+166328>)
at ../Include/internal/pycore_ceval.h:73
#15 _PyEval_Vector
(kwnames=<optimized out>, argcount=<optimized out>, args=0x7fffffffcd90, locals=0x0, func=0x7ffff5d498a0, tstate=0xa820b8 <_PyRuntime+166328>)
at ../Python/ceval.c:6439
#16 _PyFunction_Vectorcall (kwnames=<optimized out>, nargsf=<optimized out>, stack=0x7fffffffcd90, func=0x7ffff5d498a0) at ../Objects/call.c:393
#17 _PyObject_VectorcallTstate
(tstate=0xa820b8 <_PyRuntime+166328>, callable=0x7ffff5d498a0, args=0x7fffffffcd90, nargsf=<optimized out>, kwnames=<optimized out>)