If different options are passed to ssl:listen from later functions that also accept options, there's a chance errors will occur.
This was discovered by limiting the TLS versions for distributed Erlang to just 'tlsv1.3'. By doing so, ssl:listen was not prepared for a TLS 1.3 connection so the internal ssl gen statem callback module / functions were not set up correctly. This resulted in crashes due to tls_connection:start (a non-existent function) being set as the next state function, when it should have been something else.
If different options are passed to
ssl:listen
from later functions that also accept options, there's a chance errors will occur.This was discovered by limiting the TLS versions for distributed Erlang to just
'tlsv1.3'
. By doing so,ssl:listen
was not prepared for a TLS 1.3 connection so the internal ssl gen statem callback module / functions were not set up correctly. This resulted in crashes due totls_connection:start
(a non-existent function) being set as the next state function, when it should have been something else.Related items: