]> git.ipfire.org Git - thirdparty/suricata.git/commitdiff
flow: on timeout, consider reverse flows for pseudo packets
authorVictor Julien <victor@inliniac.net>
Wed, 20 Mar 2019 15:38:56 +0000 (16:38 +0100)
committerVictor Julien <victor@inliniac.net>
Thu, 21 Mar 2019 18:19:04 +0000 (19:19 +0100)
src/flow-timeout.c

index 5c34d6fc5ed9b0d647cec8845d5ddedf3ebc56d8..4fde34b952cddef5889d6023e3f8b948a1e93cdb 100644 (file)
@@ -104,6 +104,9 @@ static inline Packet *FlowForceReassemblyPseudoPacketSetup(Packet *p,
     p->payload = NULL;
     p->payload_len = 0;
 
+    /* apply reversed flow logic after setting direction to the packet */
+    direction ^= ((f->flags & FLOW_DIR_REVERSED) != 0);
+
     if (FLOW_IS_IPV4(f)) {
         if (direction == 0) {
             FLOW_COPY_IPV4_ADDR_TO_PACKET(&f->src, &p->src);