|
suricata
|

Go to the source code of this file.
Macros | |
| #define | DETECT_TBLSIZE_STEP 256 |
| #define | SIGMATCH_NOOPT (1UL << (0)) |
| #define | SIGMATCH_IPONLY_COMPAT (1UL << (1)) |
| #define | SIGMATCH_DEONLY_COMPAT (1UL << (2)) |
| #define | SIGMATCH_OPTIONAL_OPT (1UL << (3)) |
| #define | SIGMATCH_QUOTES_OPTIONAL (1UL << (4)) |
| #define | SIGMATCH_QUOTES_MANDATORY (1UL << (5)) |
| #define | SIGMATCH_HANDLE_NEGATION (1UL << (6)) |
| #define | SIGMATCH_INFO_CONTENT_MODIFIER (1UL << (7)) |
| #define | SIGMATCH_INFO_STICKY_BUFFER (1UL << (8)) |
| #define | SIGMATCH_INFO_DEPRECATED (1UL << (9)) |
| #define | SIGMATCH_STRICT_PARSING (1UL << (10)) |
| #define | SIGMATCH_SUPPORT_FIREWALL (1UL << (11)) |
| #define | SIGMATCH_SUPPORT_DIR (1UL << (12)) |
| #define | SIGMATCH_INFO_MULTI_BUFFER (1UL << (13)) |
| #define | SIGMATCH_INFO_UINT8 (1UL << (14)) |
| #define | SIGMATCH_INFO_UINT16 (1UL << (15)) |
| #define | SIGMATCH_INFO_UINT32 (1UL << (16)) |
| #define | SIGMATCH_INFO_UINT64 (1UL << (17)) |
| #define | SIGMATCH_INFO_MULTI_UINT (1UL << (18)) |
| #define | SIGMATCH_INFO_ENUM_UINT (1UL << (19)) |
| #define | SIGMATCH_INFO_BITFLAGS_UINT (1UL << (20)) |
Functions | |
| int | SigTableList (const char *keyword) |
| void | SigTableCleanup (void) |
| void | SigTableInit (void) |
| void | SigTableSetup (void) |
| int | SCSigTablePreRegister (void(*KeywordsRegister)(void)) |
| void | SigTableRegisterTests (void) |
| bool | SCSigTableHasKeyword (const char *keyword) |
| Check if a keyword exists. More... | |
| void | SCDetectHelperKeywordSetCleanCString (uint16_t id) |
Variables | |
| int | DETECT_TBLSIZE |
| int | DETECT_TBLSIZE_IDX |
Definition in file detect-engine-register.h.
| #define DETECT_TBLSIZE_STEP 256 |
Definition at line 303 of file detect-engine-register.h.
| #define SIGMATCH_DEONLY_COMPAT (1UL << (2)) |
sigmatch is compatible with a decode event only rule
Definition at line 311 of file detect-engine-register.h.
| #define SIGMATCH_HANDLE_NEGATION (1UL << (6)) |
negation parsing is handled by the rule parser. Signature::init_data::negated will be set to true or false prior to calling the keyword parser. Exclamation mark is stripped from the input to the keyword parser.
Definition at line 325 of file detect-engine-register.h.
| #define SIGMATCH_INFO_BITFLAGS_UINT (1UL << (20)) |
keyword is an uint with bitflags
Definition at line 353 of file detect-engine-register.h.
| #define SIGMATCH_INFO_CONTENT_MODIFIER (1UL << (7)) |
keyword is a content modifier
Definition at line 327 of file detect-engine-register.h.
| #define SIGMATCH_INFO_DEPRECATED (1UL << (9)) |
keyword is deprecated: used to suggest an alternative
Definition at line 331 of file detect-engine-register.h.
| #define SIGMATCH_INFO_ENUM_UINT (1UL << (19)) |
keyword is an uint with enumeration stringer
Definition at line 351 of file detect-engine-register.h.
| #define SIGMATCH_INFO_MULTI_BUFFER (1UL << (13)) |
keyword is a multi buffer
Definition at line 339 of file detect-engine-register.h.
| #define SIGMATCH_INFO_MULTI_UINT (1UL << (18)) |
keyword is a multi uint
Definition at line 349 of file detect-engine-register.h.
| #define SIGMATCH_INFO_STICKY_BUFFER (1UL << (8)) |
keyword is a sticky buffer
Definition at line 329 of file detect-engine-register.h.
| #define SIGMATCH_INFO_UINT16 (1UL << (15)) |
keyword is a unsigned 16-bit integer
Definition at line 343 of file detect-engine-register.h.
| #define SIGMATCH_INFO_UINT32 (1UL << (16)) |
keyword is a unsigned 32-bit integer
Definition at line 345 of file detect-engine-register.h.
| #define SIGMATCH_INFO_UINT64 (1UL << (17)) |
keyword is a unsigned 64-bit integer
Definition at line 347 of file detect-engine-register.h.
| #define SIGMATCH_INFO_UINT8 (1UL << (14)) |
keyword is a unsigned 8-bit integer
Definition at line 341 of file detect-engine-register.h.
| #define SIGMATCH_IPONLY_COMPAT (1UL << (1)) |
sigmatch is compatible with a ip only rule
Definition at line 309 of file detect-engine-register.h.
| #define SIGMATCH_NOOPT (1UL << (0)) |
sigmatch has no options, so the parser shouldn't expect any
Definition at line 307 of file detect-engine-register.h.
| #define SIGMATCH_OPTIONAL_OPT (1UL << (3)) |
sigmatch may have options, so the parser should be ready to deal with both cases
Definition at line 314 of file detect-engine-register.h.
| #define SIGMATCH_QUOTES_MANDATORY (1UL << (5)) |
input MUST be wrapped in double quotes. They will be stripped before input data is passed to keyword parser. Missing double quotes lead to error and signature invalidation.
Definition at line 321 of file detect-engine-register.h.
| #define SIGMATCH_QUOTES_OPTIONAL (1UL << (4)) |
input may be wrapped in double quotes. They will be stripped before input data is passed to keyword parser
Definition at line 317 of file detect-engine-register.h.
| #define SIGMATCH_STRICT_PARSING (1UL << (10)) |
strict parsing is enabled
Definition at line 333 of file detect-engine-register.h.
| #define SIGMATCH_SUPPORT_DIR (1UL << (12)) |
keyword supporting setting an optional direction
Definition at line 337 of file detect-engine-register.h.
| #define SIGMATCH_SUPPORT_FIREWALL (1UL << (11)) |
keyword supported by firewall rules
Definition at line 335 of file detect-engine-register.h.
| enum DetectKeywordId |
Definition at line 27 of file detect-engine-register.h.
| void SCDetectHelperKeywordSetCleanCString | ( | uint16_t | id | ) |
Definition at line 467 of file detect-engine-register.c.
References SigTableElmt_::Cleanup, and sigmatch_table.
| bool SCSigTableHasKeyword | ( | const char * | keyword | ) |
Check if a keyword exists.
Definition at line 368 of file detect-engine-register.c.
References DETECT_TBLSIZE, name, SigTableElmt_::name, and sigmatch_table.
| int SCSigTablePreRegister | ( | void(*)(void) | KeywordsRegister | ) |
Definition at line 496 of file detect-engine-register.c.
| void SigTableCleanup | ( | void | ) |
Definition at line 472 of file detect-engine-register.c.
References SigTableElmt_::Cleanup, DETECT_TBLSIZE, SCFree, and sigmatch_table.
Referenced by GlobalsDestroy().

| void SigTableInit | ( | void | ) |
Definition at line 512 of file detect-engine-register.c.
References DETECT_TBLSIZE, DETECT_TBLSIZE_STATIC, DETECT_TBLSIZE_STEP, FatalError, SCCalloc, and sigmatch_table.
Referenced by ListKeywords(), LLVMFuzzerTestOneInput(), PostConfLoadedSetup(), and RunUnittests().

| int SigTableList | ( | const char * | keyword | ) |
Definition at line 385 of file detect-engine-register.c.
References DETECT_TBLSIZE, name, SigTableElmt_::name, and sigmatch_table.
Referenced by ListKeywords().

| void SigTableRegisterTests | ( | void | ) |
Definition at line 770 of file detect-engine-register.c.
References coverage_unittests, DETECT_TBLSIZE, g_ut_covered, g_ut_modules, name, SigTableElmt_::RegisterTests, SCLogDebug, SCLogWarning, and sigmatch_table.
| void SigTableSetup | ( | void | ) |
Definition at line 524 of file detect-engine-register.c.
References DetectAckRegister(), DetectAppLayerEventRegister(), DetectAppLayerProtocolRegister(), DetectAppLayerStateRegister(), DetectAsn1Register(), DetectBase64DataRegister(), DetectBase64DecodeRegister(), DetectBsizeRegister(), DetectBypassRegister(), DetectByteExtractRegister(), DetectBytejumpRegister(), DetectBytemathRegister(), DetectBytetestRegister(), DetectClasstypeRegister(), DetectConfigRegister(), DetectContentRegister(), DetectCsumRegister(), DetectDatarepRegister(), DetectDatasetRegister(), DetectDepthRegister(), DetectDetectionFilterRegister(), DetectDistanceRegister(), DetectDNP3Register(), DetectDnsNameRegister(), DetectDnsResponseRegister(), DetectDsizeRegister(), DetectEngineEventRegister(), DetectEntropyRegister(), DetectEtherhdrRegister(), DetectFastPatternRegister(), DetectFiledataRegister(), DetectFilemagicRegister(), DetectFileMd5Register(), DetectFilenameRegister(), DetectFileSha1Register(), DetectFileSha256Register(), DetectFilesizeRegister(), DetectFilestoreRegister(), DetectFlagsRegister(), DetectFlowAgeRegister(), DetectFlowbitsRegister(), DetectFlowBytesRegister(), DetectFlowBytesToClientRegister(), DetectFlowBytesToServerRegister(), DetectFlowElephantRegister(), DetectFlowintRegister(), DetectFlowPktsRegister(), DetectFlowPktsToClientRegister(), DetectFlowPktsToServerRegister(), DetectFlowRegister(), DetectFlowvarRegister(), DetectFragBitsRegister(), DetectFragOffsetRegister(), DetectFrameRegister(), DetectFtpbounceRegister(), DetectFtpCommandDataRegister(), DetectFtpCommandRegister(), DetectFtpCompletionCodeRegister(), DetectFtpdataRegister(), DetectFtpDynamicPortRegister(), DetectFtpModeRegister(), DetectFtpReplyReceivedRegister(), DetectFtpReplyRegister(), DetectGeoipRegister(), DetectGidRegister(), DetectHostbitsRegister(), DetectHttp2Register(), DetectHttpClientBodyRegister(), DetectHttpCookieRegister(), DetectHttpHeaderNamesRegister(), DetectHttpHeaderRegister(), DetectHttpHeadersRegister(), DetectHttpHHRegister(), DetectHttpMethodRegister(), DetectHttpProtocolRegister(), DetectHttpRawHeaderRegister(), DetectHttpRequestHeaderRegister(), DetectHttpRequestLineRegister(), DetectHttpResponseHeaderRegister(), DetectHttpResponseLineRegister(), DetectHttpServerBodyRegister(), DetectHttpStartRegister(), DetectHttpStatCodeRegister(), DetectHttpStatMsgRegister(), DetectHttpUARegister(), DetectHttpUriRegister(), DetectIcmpIdRegister(), DetectIcmpSeqRegister(), DetectIcmpv4HdrRegister(), DetectICMPv6hdrRegister(), DetectICMPv6mtuRegister(), DetectICodeRegister(), DetectIdRegister(), DetectIGMPHdrRegister(), DetectIGMPTypeRegister(), DetectIPAddrBufferRegister(), DetectIpOptsRegister(), DetectIPProtoRegister(), DetectIPRepRegister(), DetectIpv4hdrRegister(), DetectIpv6hdrRegister(), DetectIsdataatRegister(), DetectITypeRegister(), DetectJa4HashRegister(), DetectKrb5CNameRegister(), DetectKrb5ErrCodeRegister(), DetectKrb5SNameRegister(), DetectKrb5TicketEncryptionRegister(), DetectL3ProtoRegister(), DetectLuaRegister(), DetectMarkRegister(), DetectMetadataRegister(), DetectModbusRegister(), DetectMsgRegister(), DetectNfsVersionRegister(), DetectNoalertRegister(), DetectNocaseRegister(), DetectOffsetRegister(), DetectPcreRegister(), DetectPktDataRegister(), DetectPktvarRegister(), DetectPrefilterRegister(), DetectPriorityRegister(), DetectRawbytesRegister(), DetectReferenceRegister(), DetectRegisterAppLayerHookLists(), DetectReplaceRegister(), DetectRequiresRegister(), DetectRevRegister(), DetectRpcRegister(), DetectSameipRegister(), DetectSeqRegister(), DetectSidRegister(), DetectSipMethodRegister(), DetectSipUriRegister(), DetectSslStateRegister(), DetectSslVersionRegister(), DetectStreamSizeRegister(), DetectTagRegister(), DetectTargetRegister(), DetectTcphdrRegister(), DetectTcpmssRegister(), DetectTcpWscaleRegister(), DetectTemplateRegister(), DetectThresholdRegister(), DetectTlsAlpnRegister(), DetectTlsCertChainLenRegister(), DetectTlsCertsRegister(), DetectTlsFingerprintRegister(), DetectTlsIssuerRegister(), DetectTlsJa3HashRegister(), DetectTlsJa3SHashRegister(), DetectTlsJa3SStringRegister(), DetectTlsJa3StringRegister(), DetectTlsRandomRegister(), DetectTlsRegister(), DetectTlsSerialRegister(), DetectTlsSniRegister(), DetectTlsSubjectAltNameRegister(), DetectTlsSubjectRegister(), DetectTlsValidityRegister(), DetectTlsVersionRegister(), DetectTosRegister(), DetectTransformLuaxformRegister(), DetectTransformPcrexformRegister(), DetectTtlRegister(), DetectUdphdrRegister(), DetectUricontentRegister(), DetectUrilenRegister(), DetectWindowRegister(), DetectWithinRegister(), and DetectXbitsRegister().
Referenced by ListKeywords(), LLVMFuzzerTestOneInput(), and RunUnittests().

| int DETECT_TBLSIZE |
Definition at line 263 of file detect-engine-register.c.
Referenced by PrefilterSetupRuleGroup(), SCDetectHelperNewKeywordId(), SCProfilingKeywordThreadSetup(), SCProfilingKeywordUpdateCounter(), SCSigTableHasKeyword(), SigMatchStrictEnabled(), SigTableApplyStrictCommandLineOption(), SigTableCleanup(), SigTableInit(), SigTableList(), and SigTableRegisterTests().
| int DETECT_TBLSIZE_IDX |
Definition at line 264 of file detect-engine-register.c.
Referenced by SCDetectHelperNewKeywordId().