Description of problem: Failed STARTTLS handshake Briefly: A connection was attempted over SMTP STARTTLS (briefly a message "gnutls_handshake: Error in the push function." is displayed, before "Could not negotiate TLS connection" and then "Segmentation fault (core dumped)" before crashing; the server advertises STARTTLS support, but actually achieving this is impossible due to tunnelling set up. Version-Release number of selected component: mutt-1.5.21-12.fc17 Additional info: libreport version: 2.0.18 abrt_version: 2.0.18 backtrace_rating: 4 cmdline: mutt crash_function: tunnel_socket_close kernel: 3.6.9-2.fc17.x86_64 truncated backtrace: :Thread no. 1 (8 frames) : #0 tunnel_socket_close at mutt_tunnel.c:134 : #1 mutt_socket_close at mutt_socket.c:81 : #2 mutt_smtp_send at smtp.c:311 : #3 send_message at send.c:1031 : #4 ci_send_message at send.c:1777 : #5 mutt_pager at pager.c:2536 : #6 mutt_display_message at commands.c:214 : #7 mutt_index_menu at curs_main.c:1201
Created attachment 662837 [details] File: backtrace
Created attachment 662838 [details] File: limits
Created attachment 662839 [details] File: cgroup
Created attachment 662840 [details] File: smolt_data
Created attachment 662841 [details] File: executable
Created attachment 662842 [details] File: maps
Created attachment 662843 [details] File: dso_list
Created attachment 662844 [details] File: proc_pid_status
Created attachment 662845 [details] File: var_log_messages
Created attachment 662846 [details] File: open_fds
The problem is essentially that mutt segfaults rather than failing gracefully (e.g. issuing a warning message and treating the message attempted to send as a postponed messaged) The impact of this is very minor, and resultant of a bespoke set up.
Thanks for the report, is that failure reproducible? I tried to reproduce it but I'm not successful. If it is, I'm wondering how conn->sockdata (mutt_tunnel.c:131) could be NULL pointer. It could be closed twice, but I don't have a clue how that could happen. If you could run mutt under GDB with checkpoint to tunnel_socket_close function and see if this function is called only once (at time it fails) or it is called twice -- then a backtrace of the first call would be really interesting.
Closing since I'm not able to do anything without further information.