From: Philippe Antoine Date: Thu, 22 Apr 2021 07:41:30 +0000 (+0200) Subject: http2: only mimic http1 request if there is one X-Git-Tag: suricata-6.0.3~31 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fpull%2F6186%2Fhead;p=thirdparty%2Fsuricata.git http2: only mimic http1 request if there is one That may not be the case in midstream/async configurations (cherry picked from commit d00b755b647a69eb4d4a10adb57be45fd4d14c7d) --- diff --git a/src/app-layer-http2.c b/src/app-layer-http2.c index 8576697780..6285be9dd9 100644 --- a/src/app-layer-http2.c +++ b/src/app-layer-http2.c @@ -77,6 +77,10 @@ void HTTP2MimicHttp1Request(void *alstate_orig, void *h2s) if (h2s == NULL || h1tx == NULL) { return; } + if (h1tx->request_method == NULL) { + // may happen if we only got the reply, not the HTTP1 request + return; + } rs_http2_tx_set_method(h2s, bstr_ptr(h1tx->request_method), bstr_len(h1tx->request_method)); rs_http2_tx_set_uri(h2s, bstr_ptr(h1tx->request_uri), bstr_len(h1tx->request_uri));