+ /*
+ * If the initialization failed, and the ssl_sni setting was changed, we
+ * need to revert ssl_sni back to the previous setting to match the SSL
+ * configuration left in place. Log a WARNING to alert the user.
+ */
+ if (SSL_hosts->sni_enabled != ssl_sni)
+ {
Won't this cause a different crash without a null check for SSL_hosts?
Also, this seems to be a partial revert only affecting new sessions,
still leaving existing sessions with an incorrect value, that won't be
confusing?