From: Daniel Stenberg Date: Thu, 7 Mar 2024 15:02:13 +0000 (+0100) Subject: http2: memory errors in the push callbacks are fatal X-Git-Tag: curl-8_7_0~53 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=5267bf52d811dd95faeeb414e882198e0291f974;p=thirdparty%2Fcurl.git http2: memory errors in the push callbacks are fatal Use the correct nghttp2 error code accordingly. Closes #13081 --- diff --git a/lib/http2.c b/lib/http2.c index 96868728a5..4183f08d0b 100644 --- a/lib/http2.c +++ b/lib/http2.c @@ -1417,7 +1417,7 @@ static int on_header(nghttp2_session *session, const nghttp2_frame *frame, stream->push_headers = malloc(stream->push_headers_alloc * sizeof(char *)); if(!stream->push_headers) - return NGHTTP2_ERR_TEMPORAL_CALLBACK_FAILURE; + return NGHTTP2_ERR_CALLBACK_FAILURE; stream->push_headers_used = 0; } else if(stream->push_headers_used == @@ -1427,14 +1427,14 @@ static int on_header(nghttp2_session *session, const nghttp2_frame *frame, /* this is beyond crazy many headers, bail out */ failf(data_s, "Too many PUSH_PROMISE headers"); free_push_headers(stream); - return NGHTTP2_ERR_TEMPORAL_CALLBACK_FAILURE; + return NGHTTP2_ERR_CALLBACK_FAILURE; } stream->push_headers_alloc *= 2; headp = realloc(stream->push_headers, stream->push_headers_alloc * sizeof(char *)); if(!headp) { free_push_headers(stream); - return NGHTTP2_ERR_TEMPORAL_CALLBACK_FAILURE; + return NGHTTP2_ERR_CALLBACK_FAILURE; } stream->push_headers = headp; }