suricata
flow-bypass.c File Reference
#include "suricata-common.h"
#include "tm-threads.h"
#include "flow.h"
#include "flow-bypass.h"
#include "flow-private.h"
#include "util-ebpf.h"
Include dependency graph for flow-bypass.c:

Go to the source code of this file.

Data Structures

struct  BypassedFlowManagerThreadData_
 
struct  BypassedCheckFuncItem_
 
struct  BypassedUpdateFuncItem_
 

Macros

#define FLOW_BYPASS_DELAY   10
 
#define BYPASSFUNCMAX   4
 

Typedefs

typedef struct BypassedFlowManagerThreadData_ BypassedFlowManagerThreadData
 
typedef struct BypassedCheckFuncItem_ BypassedCheckFuncItem
 
typedef struct BypassedUpdateFuncItem_ BypassedUpdateFuncItem
 

Functions

int BypassedFlowManagerRegisterCheckFunc (BypassedCheckFunc CheckFunc, BypassedCheckFuncInit CheckFuncInit, void *data)
 
int BypassedFlowManagerRegisterUpdateFunc (BypassedUpdateFunc UpdateFunc, void *data)
 
void BypassedFlowManagerThreadSpawn ()
 spawn the flow bypass manager thread More...
 
void BypassedFlowUpdate (Flow *f, Packet *p)
 
void TmModuleBypassedFlowManagerRegister (void)
 

Variables

int g_bypassed_func_max_index = 0
 
BypassedCheckFuncItem bypassedfunclist [BYPASSFUNCMAX]
 
int g_bypassed_update_max_index = 0
 
BypassedUpdateFuncItem updatefunclist [BYPASSFUNCMAX]
 

Detailed Description

Macro Definition Documentation

#define BYPASSFUNCMAX   4
#define FLOW_BYPASS_DELAY   10

Definition at line 33 of file flow-bypass.c.

Typedef Documentation

Function Documentation

int BypassedFlowManagerRegisterCheckFunc ( BypassedCheckFunc  CheckFunc,
BypassedCheckFuncInit  CheckFuncInit,
void *  data 
)

Definition at line 143 of file flow-bypass.c.

References BYPASSFUNCMAX, BypassedCheckFuncItem_::data, BypassedCheckFuncItem_::Func, BypassedCheckFuncItem_::FuncInit, and g_bypassed_func_max_index.

Referenced by RunModeIdsAFPRegister().

Here is the caller graph for this function:

int BypassedFlowManagerRegisterUpdateFunc ( BypassedUpdateFunc  UpdateFunc,
void *  data 
)

Definition at line 158 of file flow-bypass.c.

References BYPASSFUNCMAX, BypassedUpdateFuncItem_::data, BypassedUpdateFuncItem_::Func, and g_bypassed_update_max_index.

Referenced by RunModeIdsAFPRegister().

Here is the caller graph for this function:

void BypassedFlowManagerThreadSpawn ( void  )

spawn the flow bypass manager thread

Definition at line 176 of file flow-bypass.c.

References BUG_ON, thread_name_flow_bypass, TM_ECODE_OK, TmThreadCreateMgmtThreadByName(), and TmThreadSpawn().

Referenced by RunModeDispatch().

Here is the call graph for this function:

Here is the caller graph for this function:

void BypassedFlowUpdate ( Flow f,
Packet p 
)

Definition at line 199 of file flow-bypass.c.

References g_bypassed_update_max_index.

Referenced by FlowHandlePacketUpdate().

Here is the caller graph for this function:

void TmModuleBypassedFlowManagerRegister ( void  )

Variable Documentation

Definition at line 50 of file flow-bypass.c.

int g_bypassed_func_max_index = 0

Definition at line 49 of file flow-bypass.c.

Referenced by BypassedFlowManagerRegisterCheckFunc().

int g_bypassed_update_max_index = 0

Definition at line 57 of file flow-bypass.c.

Referenced by BypassedFlowManagerRegisterUpdateFunc(), and BypassedFlowUpdate().

Definition at line 58 of file flow-bypass.c.