diff --git a/ssl/ssl_sess.c b/ssl/ssl_sess.c index 3bac2dbc6939643a15e7d4976654f5980f83bf19..a85f2792ce2bb8c73507a3490e88f3c0da92e012 100644 --- a/ssl/ssl_sess.c +++ b/ssl/ssl_sess.c @@ -792,6 +792,11 @@ int SSL_set_session(SSL *s, SSL_SESSION *session) session->krb5_client_princ_len > 0) { s->kssl_ctx->client_princ = (char *)OPENSSL_malloc(session->krb5_client_princ_len + 1); + if (s->kssl_ctx->client_princ == NULL) + { + SSLerr(SSL_F_SSL_SET_SESSION, ERR_R_MALLOC_FAILURE); + return(0); + } memcpy(s->kssl_ctx->client_princ,session->krb5_client_princ, session->krb5_client_princ_len); s->kssl_ctx->client_princ[session->krb5_client_princ_len] = '\0';