SSL_set_session: check for NULL after allocating s->kssl_ctx->client_princ
[openssl.git] / ssl / ssl_sess.c
index 3bac2dbc6939643a15e7d4976654f5980f83bf19..a85f2792ce2bb8c73507a3490e88f3c0da92e012 100644 (file)
@@ -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';