flow: overwrite p::flowflags on first set

pull/1342/head
Victor Julien 11 years ago
parent 34e1de6970
commit cf58ecb084

@ -232,6 +232,8 @@ static inline int FlowUpdateSeenFlag(const Packet *p)
* *
* \param f locked flow * \param f locked flow
* \param p packet * \param p packet
*
* \note overwrites p::flowflags
*/ */
void FlowHandlePacketUpdate(Flow *f, Packet *p) void FlowHandlePacketUpdate(Flow *f, Packet *p)
{ {
@ -247,14 +249,14 @@ void FlowHandlePacketUpdate(Flow *f, Packet *p)
} }
f->todstpktcnt++; f->todstpktcnt++;
f->todstbytecnt += GET_PKT_LEN(p); f->todstbytecnt += GET_PKT_LEN(p);
p->flowflags |= FLOW_PKT_TOSERVER; p->flowflags = FLOW_PKT_TOSERVER;
} else { } else {
if (FlowUpdateSeenFlag(p)) { if (FlowUpdateSeenFlag(p)) {
f->flags |= FLOW_TO_SRC_SEEN; f->flags |= FLOW_TO_SRC_SEEN;
} }
f->tosrcpktcnt++; f->tosrcpktcnt++;
f->tosrcbytecnt += GET_PKT_LEN(p); f->tosrcbytecnt += GET_PKT_LEN(p);
p->flowflags |= FLOW_PKT_TOCLIENT; p->flowflags = FLOW_PKT_TOCLIENT;
} }
if ((f->flags & (FLOW_TO_DST_SEEN|FLOW_TO_SRC_SEEN)) == (FLOW_TO_DST_SEEN|FLOW_TO_SRC_SEEN)) { if ((f->flags & (FLOW_TO_DST_SEEN|FLOW_TO_SRC_SEEN)) == (FLOW_TO_DST_SEEN|FLOW_TO_SRC_SEEN)) {

Loading…
Cancel
Save