#include "snort.h"
#include "detect.h"
#include "debug.h"
#include "util.h"
#include "tag.h"
#include "rules.h"
#include "pcrm.h"
#include "fpcreate.h"
#include "fpdetect.h"
#include "mpse.h"
#include "bitop.h"
#include "perf-event.h"
#include "sfthreshold.h"
#include "event_queue.h"
#include "inline.h"
#include "sp_pattern_match.h"
#include "spp_frag3.h"
Go to the source code of this file.
Defines | |
#define | MAX_EVENT_MATCH 100 |
#define | FPSW |
Functions | |
static INLINE int | fpEvalOTN (OptTreeNode *List, Packet *p) |
static INLINE int | fpEvalRTN (RuleTreeNode *rtn, Packet *p, int check_ports) |
static INLINE int | fpEvalHeader (PORT_GROUP *port_group, Packet *p, int check_ports) |
static INLINE int | fpEvalRTNSW (RuleTreeNode *rtn, OptTreeNode *otn, Packet *p, int check_ports) |
static INLINE int | fpEvalHeaderIp (Packet *p, int ip_proto) |
static INLINE int | fpEvalHeaderIcmp (Packet *p) |
static INLINE int | fpEvalHeaderTcp (Packet *p) |
static INLINE int | fpEvalHeaderUdp (Packet *p) |
static INLINE int | fpEvalHeaderSW (PORT_GROUP *port_group, Packet *p, int check_ports) |
static int | otnx_match (void *id, int index, void *data) |
static INLINE int | fpAddMatch (OTNX_MATCH_DATA *omd, OTNX *otnx, int pLen) |
static INLINE int | fpAddSessionAlert (Packet *p, OTNX *otnx) |
static INLINE int | fpSessionAlerted (Packet *p, OTNX *otnx) |
int | OtnXMatchDataInitialize () |
int | fpSetDetectionOptions (FPDETECT *detect_options) |
int | fpLogEvent (RuleTreeNode *rtn, OptTreeNode *otn, Packet *p) |
static INLINE void | InitMatchInfo (OTNX_MATCH_DATA *o) |
static INLINE int | fpFinalSelectEvent (OTNX_MATCH_DATA *o, Packet *p) |
int | fpEvalPacket (Packet *p) |
Variables | |
static FPDETECT * | fpDetect |
PV | pv |
int | active_dynamic_nodes |
u_int16_t | event_id |
char | check_tags_flag |
OptTreeNode * | otn_tmp |
u_int8_t | DecodeBuffer [DECODE_BLEN] |
u_int8_t * | doe_ptr |
static OTNX_MATCH_DATA | omd |
|
Definition at line 72 of file fpdetect.c. |
|
Definition at line 62 of file fpdetect.c. Referenced by fpAddMatch(). |
|
Definition at line 410 of file fpdetect.c. References _RuleListNode::evalIndex, MATCH_INFO::iMatchCount, MATCH_INFO::iMatchIndex, MATCH_INFO::iMatchMaxLen, _RuleTreeNode::listhead, MATCH_INFO::MatchArray, OTNX_MATCH_DATA::matchInfo, MAX_EVENT_MATCH, _FPDETECT::max_queue_events, _otnx_::otn, _OptTreeNode::rtn, and _ListHead::ruleListNode. Referenced by fpEvalHeaderSW(), and otnx_match(). |
|
Definition at line 921 of file fpdetect.c. References _Session::alert_count, _Session::alert_gid, _Session::alert_sid, _SigInfo::generator, _SigInfo::id, MAX_SESSION_ALERTS, _otnx_::otn, _OptTreeNode::sigInfo, and _Packet::ssnptr. Referenced by fpFinalSelectEvent(). |
|
Definition at line 996 of file fpdetect.c. References doe_ptr, fpEvalOTN(), fpEvalRTN(), fpLogEvent(), NULL, _otnx_::otn, PORT_GROUP::pgHead, PORT_GROUP::pgHeadNC, _rule_node_::rnNext, _rule_node_::rnRuleData, and _otnx_::rtn. Referenced by fpEvalHeaderIcmp(), and fpEvalHeaderIp(). |
|
Definition at line 1404 of file fpdetect.c. References fpEvalHeader(), fpEvalHeaderSW(), fpFinalSelectEvent(), _Packet::icmph, InitMatchInfo(), prmFindRuleGroupIcmp(), and _ICMPHdr::type. Referenced by fpEvalPacket(). |
|
Definition at line 1457 of file fpdetect.c. References fpEvalHeader(), fpEvalHeaderSW(), fpFinalSelectEvent(), InitMatchInfo(), and prmFindRuleGroupIp(). Referenced by fpEvalPacket(). |
|
|
Definition at line 1342 of file fpdetect.c. References _Packet::dp, fpEvalHeaderSW(), fpFinalSelectEvent(), InitMatchInfo(), prmFindRuleGroupTcp(), and _Packet::sp. Referenced by fpEvalPacket(). |
|
Definition at line 1280 of file fpdetect.c. References _Packet::dp, fpEvalHeaderSW(), fpFinalSelectEvent(), InitMatchInfo(), prmFindRuleGroupUdp(), and _Packet::sp. Referenced by fpEvalPacket(). |
|
|
Definition at line 1533 of file fpdetect.c. References DEBUG_DETECT, DEBUG_WRAP, fpEvalHeaderIcmp(), fpEvalHeaderIp(), fpEvalHeaderTcp(), fpEvalHeaderUdp(), _Packet::icmph, _IPHdr::ip_proto, _Packet::iph, NULL, _Packet::tcph, and _Packet::udph. Referenced by Detect(). |
|
Definition at line 579 of file fpdetect.c. References active_dynamic_nodes, _RuleTreeNode::active_flag, BIDIRECTIONAL, DEBUG_DETECT, DEBUG_WRAP, _Packet::dp, EXCEPT_DST_PORT, _RuleTreeNode::flags, _RuleTreeNode::head_node_number, _RuleTreeNode::ldp, NULL, RULE_DYNAMIC, _RuleTreeNode::rule_func, _RuleFpList::RuleHeadFunc, and _RuleTreeNode::type. Referenced by fpEvalHeader(), and fpEvalHeaderSW(). |
|
Definition at line 655 of file fpdetect.c. References active_dynamic_nodes, _RuleTreeNode::active_flag, BIDIRECTIONAL, DEBUG_DETECT, DEBUG_WRAP, doe_ptr, _Packet::dp, EXCEPT_DST_PORT, _RuleTreeNode::flags, fpEvalOTN(), _RuleTreeNode::head_node_number, _RuleTreeNode::ldp, NULL, RULE_DYNAMIC, _RuleTreeNode::rule_func, _RuleFpList::RuleHeadFunc, and _RuleTreeNode::type. Referenced by otnx_match(). |
|
Definition at line 842 of file fpdetect.c. References _SigInfo::class_id, fpAddFragAlert(), fpAddSessionAlert(), fpFragAlerted(), fpSessionAlerted(), _Packet::fragtracker, _SigInfo::generator, _SigInfo::id, MATCH_INFO::iMatchCount, OTNX_MATCH_DATA::iMatchInfoArraySize, MATCH_INFO::MatchArray, OTNX_MATCH_DATA::matchInfo, _SigInfo::message, NULL, _otnx_::otn, _SigInfo::priority, _SigInfo::rev, _OptTreeNode::sigInfo, SnortEventqAdd(), and _Packet::ssnptr. Referenced by fpEvalHeaderIcmp(), fpEvalHeaderIp(), fpEvalHeaderTcp(), and fpEvalHeaderUdp(). |
|
|
Definition at line 963 of file fpdetect.c. References _Session::alert_gid, _Session::alert_sid, _SigInfo::generator, _SigInfo::id, _otnx_::otn, PKT_REBUILT_STREAM, and _OptTreeNode::sigInfo. Referenced by fpFinalSelectEvent(). |
|
Definition at line 188 of file fpdetect.c. Referenced by fpInitDetectionEngine(). |
|
Definition at line 371 of file fpdetect.c. References MATCH_INFO::iMatchCount, MATCH_INFO::iMatchIndex, OTNX_MATCH_DATA::iMatchInfoArraySize, MATCH_INFO::iMatchMaxLen, and OTNX_MATCH_DATA::matchInfo. Referenced by fpEvalHeaderIcmp(), fpEvalHeaderIp(), fpEvalHeaderTcp(), and fpEvalHeaderUdp(). |
|
|
Definition at line 160 of file fpdetect.c. References FatalError(), OTNX_MATCH_DATA::iMatchInfoArraySize, OTNX_MATCH_DATA::matchInfo, and _progvars::num_rule_types. Referenced by SnortMain(). |
|
|
|
|
|
|
|
Definition at line 72 of file sp_pattern_match.c. |
|
|
|
Definition at line 86 of file fpdetect.c. |
|
Definition at line 157 of file fpdetect.c. |
|
|
|