get rid of OpenSSLDie
[openssl.git] / ssl / ssl_sess.c
index 8bfc382bb65cc293cdf94062ac4d9ba007c64486..ca1a7427be1116e5317a25aaadd46a8abcb6655d 100644 (file)
@@ -251,7 +251,12 @@ int ssl_get_new_session(SSL *s, int session)
                ss->session_id_length=0;
                }
 
-       die(s->sid_ctx_length <= sizeof ss->sid_ctx);
+       if (s->sid_ctx_length > sizeof ss->sid_ctx)
+               {
+               SSLerr(SSL_F_SSL_GET_NEW_SESSION, ERR_R_INTERNAL_ERROR);
+               SSL_SESSION_free(ss);
+               return 0;
+               }
        memcpy(ss->sid_ctx,s->sid_ctx,s->sid_ctx_length);
        ss->sid_ctx_length=s->sid_ctx_length;
        s->session=ss;