suricata
flow-timeout.c File Reference
#include "suricata-common.h"
#include "suricata.h"
#include "decode.h"
#include "conf.h"
#include "threadvars.h"
#include "tm-threads.h"
#include "runmodes.h"
#include "util-random.h"
#include "util-time.h"
#include "flow.h"
#include "flow-queue.h"
#include "flow-hash.h"
#include "flow-util.h"
#include "flow-var.h"
#include "flow-private.h"
#include "flow-manager.h"
#include "flow-timeout.h"
#include "pkt-var.h"
#include "host.h"
#include "stream-tcp-private.h"
#include "stream-tcp-reassemble.h"
#include "stream-tcp.h"
#include "util-unittest.h"
#include "util-unittest-helper.h"
#include "util-byte.h"
#include "util-debug.h"
#include "util-privs.h"
#include "util-datalink.h"
#include "detect.h"
#include "detect-engine-state.h"
#include "stream.h"
#include "app-layer-parser.h"
#include "app-layer.h"
#include "util-profiling.h"
Include dependency graph for flow-timeout.c:

Go to the source code of this file.

Functions

PacketFlowForceReassemblyPseudoPacketGet (int direction, Flow *f, const TcpSession *ssn)
 
int FlowForceReassemblyNeedReassembly (Flow *f)
 Check if a flow needs forced reassembly, or any other processing. More...
 
void FlowForceReassemblyForFlow (Flow *f)
 
void FlowForceReassembly (void)
 Force reassembly for all the flows that have unprocessed segments. More...
 

Detailed Description

Function Documentation

◆ FlowForceReassembly()

void FlowForceReassembly ( void  )

Force reassembly for all the flows that have unprocessed segments.

Definition at line 418 of file flow-timeout.c.

Referenced by PostRunDeinit().

Here is the caller graph for this function:

◆ FlowForceReassemblyForFlow()

void FlowForceReassemblyForFlow ( Flow f)

Definition at line 345 of file flow-timeout.c.

References Flow_::flags, FLOW_DIR_REVERSED, Flow_::thread_id, and TmThreadsInjectFlowById().

Here is the call graph for this function:

◆ FlowForceReassemblyNeedReassembly()

int FlowForceReassemblyNeedReassembly ( Flow f)

Check if a flow needs forced reassembly, or any other processing.

Parameters
fLOCKED flow
Return values
0no
1yes

Definition at line 287 of file flow-timeout.c.

References Flow_::alparser, Flow_::alproto, ALPROTO_UNKNOWN, Flow_::alstate, AppLayerParserGetTransactionActive(), AppLayerParserGetTxCnt(), Flow_::ffr_tc, Flow_::ffr_ts, Flow_::protoctx, SCReturnInt, TcpSession_::state, STREAM_HAS_UNPROCESSED_SEGMENTS_NEED_ONLY_DETECTION, STREAM_HAS_UNPROCESSED_SEGMENTS_NONE, StreamNeedsReassembly(), TCP_CLOSED, and TCP_ESTABLISHED.

Here is the call graph for this function:

◆ FlowForceReassemblyPseudoPacketGet()

Packet* FlowForceReassemblyPseudoPacketGet ( int  direction,
Flow f,
const TcpSession ssn 
)

Definition at line 266 of file flow-timeout.c.

References PACKET_PROFILING_START, PacketPoolGetPacket(), and PacketPoolWait().

Here is the call graph for this function: