]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
http2: null check during upgrade
authorPhilippe Antoine <contact@catenacyber.fr>
Mon, 23 Aug 2021 13:03:51 +0000 (15:03 +0200)
committerVictor Julien <victor@inliniac.net>
Sat, 9 Oct 2021 11:15:36 +0000 (13:15 +0200)
src/app-layer-http2.c

index 76e742c075fdf7c9cf5e2660c5bc5e87da907da7..22bd55eab7c531fb8a1616cec8a50e22f70b0c40 100644 (file)
@@ -81,9 +81,13 @@ void HTTP2MimicHttp1Request(void *alstate_orig, void *h2s)
         // may happen if we only got the reply, not the HTTP1 request
         return;
     }
-
+    // else
     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));
+    if (h1tx->request_uri != NULL) {
+        // A request line without spaces gets interpreted as a request_method
+        // and has request_uri=NULL
+        rs_http2_tx_set_uri(h2s, bstr_ptr(h1tx->request_uri), bstr_len(h1tx->request_uri));
+    }
     size_t nbheaders = htp_table_size(h1tx->request_headers);
     for (size_t i = 0; i < nbheaders; i++) {
         htp_header_t *h = htp_table_get_index(h1tx->request_headers, i, NULL);