Hello Arran, latest version from git, backtrace: Opening new proxy socket 'proxy (0.0.0.0, 0) -> home_server (195.113.187.22, 2083)' Trying SSL to port 2083 Requiring Server certificate Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 0x7fffeecd4700 (LWP 3123)] radlog_request (type=type@entry=L_DBG, lvl=lvl@entry=L_DBG_LVL_2, request=request@entry=0x0, msg=0x444af2 "%s: %s") at src/main/log.c:705 705 if (request->log.func == NULL) return; (gdb) backtrace #0 radlog_request (type=type@entry=L_DBG, lvl=lvl@entry=L_DBG_LVL_2, request=request@entry=0x0, msg=0x444af2 "%s: %s") at src/main/log.c:705 #1 0x00000000004333ee in cbtls_info (s=0x9d04b0, where=<optimized out>, ret=1) at src/main/cb.c:66 #2 0x00007ffff713ff70 in ?? () from /usr/lib/x86_64-linux-gnu/libssl.so.1.0.0 #3 0x00000000004362a0 in tls_new_client_session (conf=0x8424d0, fd=17) at src/main/tls.c:162 #4 0x000000000041a443 in proxy_new_listener (home=0x83f610, src_port=src_port@entry=0) at src/main/listen.c:2664 #5 0x000000000042b4b2 in insert_into_proxy_hash (request=request@entry=0x911cf0) at src/main/process.c:2006 #6 0x000000000042e360 in request_proxy (request=request@entry=0x911cf0, retransmit=retransmit@entry=0) at src/main/process.c:2709 #7 0x000000000042de4b in request_running (action=1, request=0x911cf0) at src/main/process.c:1429 #8 request_running (request=0x911cf0, action=<optimized out>) at src/main/process.c:1369 #9 0x0000000000427d2e in request_handler_thread (arg=0x8d6c70) at src/main/threads.c:685 #10 0x00007ffff66ceb50 in start_thread () from /lib/x86_64-linux-gnu/libpthread.so.0 #11 0x00007ffff5f9b0ed in clone () from /lib/x86_64-linux-gnu/libc.so.6 #12 0x0000000000000000 in ?? () (gdb) Best regards Polish On Mon, 26 May 2014, Arran Cudbard-Bell wrote:
On 26 May 2014, at 20:03, Polish <pavel.polacek@ujep.cz> wrote:
Hello,
I tried 3.0.4 rc0 radius/tls function. FR segfault during new tls connection to server.
136 ssn->ctx = conf->ctx; (gdb) 138 SSL_CTX_set_mode(ssn->ctx, SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER | SSL_MODE_AUTO_RETRY); (gdb) 140 ssn->ssl = SSL_new(ssn->ctx); (gdb) 147 SSL_set_msg_callback(ssn->ssl, cbtls_msg); (gdb) 140 ssn->ssl = SSL_new(ssn->ctx); (gdb) 147 SSL_set_msg_callback(ssn->ssl, cbtls_msg); (gdb) 148 SSL_set_msg_callback_arg(ssn->ssl, ssn); (gdb) 149 SSL_set_info_callback(ssn->ssl, cbtls_info); (gdb) 154 DEBUG2("Requiring Server certificate"); (gdb) Requiring Server certificate 157 SSL_set_verify(ssn->ssl, verify_mode, cbtls_verify); (gdb) 159 SSL_set_ex_data(ssn->ssl, FR_TLS_EX_INDEX_CONF, (void *)conf); (gdb) 160 SSL_set_ex_data(ssn->ssl, FR_TLS_EX_INDEX_SSN, (void *)ssn); (gdb) 161 SSL_set_fd(ssn->ssl, fd); (gdb) 162 if (SSL_connect(ssn->ssl) <= 0) { (gdb)
Program received signal SIGSEGV, Segmentation fault. radlog_request (type=type@entry=L_DBG, lvl=lvl@entry=L_DBG_LVL_2, request=request@entry=0x0, msg=0x444852 "%s: %s") at src/main/log.c:701 701 if (request->log.func == NULL) return; (gdb) [Thread 0x7fffeecd4700 (LWP 32743) exited] [Thread 0x7fffef4d5700 (LWP 32742) exited] [Thread 0x7fffefcd6700 (LWP 32741) exited] [Thread 0x7ffff04d7700 (LWP 32740) exited] [Thread 0x7ffff0cd8700 (LWP 32739) exited]
Program terminated with signal SIGSEGV, Segmentation fault. The program no longer exists.
Could you try with the latest v3.0.x HEAD and provide the backtrace please.
Nothing in the area of code you've included calls radlog_request.
-Arran
Arran Cudbard-Bell <a.cudbardb@freeradius.org> FreeRADIUS Development Team
FD31 3077 42EC 7FCD 32FE 5EE2 56CF 27F9 30A8 CAA2