proto-detect: set flags in packet direction for UDP

pull/6810/head
Victor Julien 4 years ago
parent 449cc82943
commit ca29d33c69

@ -125,20 +125,21 @@ void AppLayerIncTxCounter(ThreadVars *tv, Flow *f, uint64_t step)
* so in this case we set a flag in the flow so that the first
* packet in the correct direction can be tagged.
*
* For IPS things are much simpler, and we don't use the flow
* flag. We just tag the packet directly. */
* For IPS we update packet and flow. */
static inline void FlagPacketFlow(Packet *p, Flow *f, uint8_t flags)
{
if (EngineModeIsIPS()) {
if (p->proto != IPPROTO_TCP || EngineModeIsIPS()) {
if (flags & STREAM_TOSERVER) {
if (p->flowflags & FLOW_PKT_TOSERVER) {
p->flags |= PKT_PROTO_DETECT_TS_DONE;
f->flags |= FLOW_PROTO_DETECT_TS_DONE;
} else {
f->flags |= FLOW_PROTO_DETECT_TS_DONE;
}
} else {
if (p->flowflags & FLOW_PKT_TOCLIENT) {
p->flags |= PKT_PROTO_DETECT_TC_DONE;
f->flags |= FLOW_PROTO_DETECT_TC_DONE;
} else {
f->flags |= FLOW_PROTO_DETECT_TC_DONE;
}

Loading…
Cancel
Save