Ganesh Murthy created PROTON-1018:
-------------------------------------
Summary: Crash in pn_transport_finalize(transport.c) when logging
level set to PN_TRACE_DRV
Key: PROTON-1018
URL: https://issues.apache.org/jira/browse/PROTON-1018
Project: Qpid Proton
Issue Type: Bug
Components: proton-c
Affects Versions: 0.10
Reporter: Ganesh Murthy
Priority: Minor
When the logging level is set to PN_TRACE_DRV, the pn_ssl_free(transport) call
( inside the pn_transport_finalize(void *object)) logs messages.
But the transport's context is prematurely freed and the logging framework that
uses this context ends up crashing.
Following is the backtrace from the qdrouter application-
(gdb) bt
#0 0x00007ffff7bc05ab in qd_transport_tracer (transport=0x7fffe4011710,
message=0x7fffe403b720 "SSL socket freed.") at
/home/gmurthy/opensource/dispatch/src/server.c:74
#1 0x00007ffff7972932 in ssl_vlog (ap=0x7fffe9b0b2f8, fmt=0x7ffff7978aad "SSL
socket freed.", transport=<optimized out>) at
/home/gmurthy/opensource/qpid-proton/proton-c/src/ssl/openssl.c:160
#2 ssl_log (transport=<optimized out>, fmt=fmt@entry=0x7ffff7978aad "SSL
socket freed.") at
/home/gmurthy/opensource/qpid-proton/proton-c/src/ssl/openssl.c:171
#3 0x00007ffff797474c in pn_ssl_free (transport=<optimized out>) at
/home/gmurthy/opensource/qpid-proton/proton-c/src/ssl/openssl.c:793
#4 0x00007ffff7961ff4 in pn_transport_finalize (object=0x7fffe4011710) at
/home/gmurthy/opensource/qpid-proton/proton-c/src/transport/transport.c:616
#5 0x00007ffff7952c28 in pn_class_decref (clazz=0x7ffff7b885c0 <clazz>,
object=0x7fffe4011710) at
/home/gmurthy/opensource/qpid-proton/proton-c/src/object/object.c:97
#6 0x00007ffff7960890 in pn_event_finalize (event=0x7fffe400dbc0) at
/home/gmurthy/opensource/qpid-proton/proton-c/src/events/event.c:212
#7 pn_event_finalize_cast (object=0x7fffe400dbc0) at
/home/gmurthy/opensource/qpid-proton/proton-c/src/events/event.c:257
#8 0x00007ffff7952c28 in pn_class_decref (clazz=0x7ffff7b884c0 <clazz>,
object=0x7fffe400dbc0) at
/home/gmurthy/opensource/qpid-proton/proton-c/src/object/object.c:97
#9 0x00007ffff7952e62 in pn_decref (object=<optimized out>) at
/home/gmurthy/opensource/qpid-proton/proton-c/src/object/object.c:255
#10 0x00007ffff7960a42 in pn_collector_pop
(collector=collector@entry=0x7fffe40052f0) at
/home/gmurthy/opensource/qpid-proton/proton-c/src/events/event.c:189
#11 0x00007ffff7960ac8 in pn_collector_drain (collector=0x7fffe40052f0) at
/home/gmurthy/opensource/qpid-proton/proton-c/src/events/event.c:56
#12 pn_collector_release (collector=0x7fffe40052f0) at
/home/gmurthy/opensource/qpid-proton/proton-c/src/events/event.c:118
#13 0x00007ffff7960ae9 in pn_collector_free (collector=0x7fffe40052f0) at
/home/gmurthy/opensource/qpid-proton/proton-c/src/events/event.c:109
#14 0x00007ffff7bc28f4 in thread_run (arg=0x80b060) at
/home/gmurthy/opensource/dispatch/src/server.c:720
#15 0x00007ffff772552a in start_thread () from /lib64/libpthread.so.0
#16 0x00007ffff6c8722d in clone () from /lib64/libc.so.6
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)