Versions in this module Expand all Collapse all v3 v3.0.5 Oct 2, 2023 v3.0.4 Aug 10, 2023 Changes in this version + type Action interface + Evaluate func(RuleMetadata, TransactionState) + Init func(RuleMetadata, string) error + Type func() ActionType + type ActionType int + const ActionTypeData + const ActionTypeDisruptive + const ActionTypeFlow + const ActionTypeMetadata + const ActionTypeNondisruptive + type AuditLog interface + Messages func() []AuditLogMessage + Parts func() types.AuditLogParts + Transaction func() AuditLogTransaction + type AuditLogConfig struct + Dir string + DirMode fs.FileMode + FileMode fs.FileMode + Formatter AuditLogFormatter + Target string + type AuditLogFormatter interface + Format func(AuditLog) ([]byte, error) + MIME func() string + type AuditLogMessage interface + Actionset func() string + Data func() AuditLogMessageData + Message func() string + type AuditLogMessageData interface + Accuracy func() int + Data func() string + File func() string + ID func() int + Line func() int + Maturity func() int + Msg func() string + Raw func() string + Rev func() string + Severity func() types.RuleSeverity + Tags func() []string + Ver func() string + type AuditLogTransaction interface + ClientIP func() string + ClientPort func() int + HasRequest func() bool + HasResponse func() bool + HostIP func() string + HostPort func() int + ID func() string + Producer func() AuditLogTransactionProducer + Request func() AuditLogTransactionRequest + Response func() AuditLogTransactionResponse + ServerID func() string + Timestamp func() string + UnixTimestamp func() int64 + type AuditLogTransactionProducer interface + Connector func() string + RuleEngine func() string + Rulesets func() []string + Server func() string + Stopwatch func() string + Version func() string + type AuditLogTransactionRequest interface + Body func() string + Files func() []AuditLogTransactionRequestFiles + HTTPVersion func() string + Headers func() map[string][]string + Method func() string + Protocol func() string + URI func() string + type AuditLogTransactionRequestFiles interface + Mime func() string + Name func() string + Size func() int64 + type AuditLogTransactionResponse interface + Body func() string + Headers func() map[string][]string + Protocol func() string + Status func() int + type AuditLogWriter interface + Close func() error + Init func(AuditLogConfig) error + Write func(AuditLog) error + type BodyProcessor interface + ProcessRequest func(reader io.Reader, variables TransactionVariables, options BodyProcessorOptions) error + ProcessResponse func(reader io.Reader, variables TransactionVariables, options BodyProcessorOptions) error + type BodyProcessorOptions struct + DirMode fs.FileMode + FileMode fs.FileMode + Mime string + StoragePath string + type Operator interface + Evaluate func(TransactionState, string) bool + type OperatorFactory func(options OperatorOptions) (Operator, error) + type OperatorOptions struct + Arguments string + Datasets map[string][]string + Path []string + Root fs.FS + type Rule interface + Evaluate func(state TransactionState) []types.MatchData + type RuleMetadata interface + ID func() int + ParentID func() int + Status func() int + type TransactionState interface + CaptureField func(idx int, value string) + Capturing func() bool + Collection func(idx variables.RuleVariable) collection.Collection + DebugLogger func() debuglog.Logger + ID func() string + Interrupt func(interruption *types.Interruption) + LastPhase func() types.RulePhase + Variables func() TransactionVariables + type TransactionVariables interface + All func(f func(v variables.RuleVariable, col collection.Collection) bool) + Args func() collection.Keyed + ArgsCombinedSize func() collection.Collection + ArgsGet func() collection.Map + ArgsGetNames func() collection.Collection + ArgsNames func() collection.Collection + ArgsPath func() collection.Map + ArgsPost func() collection.Map + ArgsPostNames func() collection.Collection + Duration func() collection.Single + Env func() collection.Map + Files func() collection.Map + FilesCombinedSize func() collection.Single + FilesNames func() collection.Map + FilesSizes func() collection.Map + FilesTmpContent func() collection.Map + FilesTmpNames func() collection.Map + FullRequestLength func() collection.Single + Geo func() collection.Map + HighestSeverity func() collection.Single + InboundDataError func() collection.Single + MatchedVar func() collection.Single + MatchedVarName func() collection.Single + MatchedVars func() collection.Map + MatchedVarsNames func() collection.Collection + MultipartDataAfter func() collection.Single + MultipartFilename func() collection.Map + MultipartName func() collection.Map + MultipartPartHeaders func() collection.Map + OutboundDataError func() collection.Single + QueryString func() collection.Single + RemoteAddr func() collection.Single + RemoteHost func() collection.Single + RemotePort func() collection.Single + RequestBasename func() collection.Single + RequestBody func() collection.Single + RequestBodyError func() collection.Single + RequestBodyErrorMsg func() collection.Single + RequestBodyLength func() collection.Single + RequestBodyProcessor func() collection.Single + RequestBodyProcessorError func() collection.Single + RequestBodyProcessorErrorMsg func() collection.Single + RequestCookies func() collection.Map + RequestCookiesNames func() collection.Collection + RequestFilename func() collection.Single + RequestHeaders func() collection.Map + RequestHeadersNames func() collection.Collection + RequestLine func() collection.Single + RequestMethod func() collection.Single + RequestProtocol func() collection.Single + RequestURI func() collection.Single + RequestURIRaw func() collection.Single + RequestXML func() collection.Map + ResponseArgs func() collection.Map + ResponseBody func() collection.Single + ResponseBodyProcessor func() collection.Single + ResponseContentLength func() collection.Single + ResponseContentType func() collection.Single + ResponseHeaders func() collection.Map + ResponseHeadersNames func() collection.Collection + ResponseProtocol func() collection.Single + ResponseStatus func() collection.Single + ResponseXML func() collection.Map + Rule func() collection.Map + ServerAddr func() collection.Single + ServerName func() collection.Single + ServerPort func() collection.Single + StatusLine func() collection.Single + TX func() collection.Map + UniqueID func() collection.Single + UrlencodedError func() collection.Single + XML func() collection.Map + type Transformation = func(input string) (string, bool, error)