]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
stream: in IDS mode, call app-layer at EOF
authorVictor Julien <victor@inliniac.net>
Wed, 11 Dec 2019 19:57:07 +0000 (20:57 +0100)
committerVictor Julien <victor@inliniac.net>
Fri, 13 Dec 2019 09:21:32 +0000 (10:21 +0100)
On stream end call app-layer with empty message in IDS mode.

src/stream-tcp-reassemble.c

index 9b03d8b17d68fc7835bc5bb1638fc8a82a39c7d1..7b450db0b732af6a6bbff4b0412c47903bcb4c8e 100644 (file)
@@ -1025,7 +1025,11 @@ static int ReassembleUpdateAppLayer (ThreadVars *tv,
             continue;
         } else if (mydata == NULL || mydata_len == 0) {
             /* Possibly a gap, but no new data. */
-            return 0;
+            if ((p->flags & PKT_PSEUDO_STREAM_END) == 0 || ssn->state < TCP_CLOSED)
+                SCReturnInt(0);
+
+            mydata = NULL;
+            mydata_len = 0;
         }
         SCLogDebug("%"PRIu64" got %p/%u", p->pcap_cnt, mydata, mydata_len);
         break;