suricata
|
#include "suricata.h"
#include "suricata-common.h"
#include "decode.h"
#include "stream-tcp.h"
#include "app-layer.h"
#include "app-layer-detect-proto.h"
#include "app-layer-protos.h"
#include "app-layer-parser.h"
#include "app-layer-frames.h"
#include "app-layer-smtp.h"
#include "util-enum.h"
#include "util-mpm.h"
#include "util-debug.h"
#include "util-byte.h"
#include "util-unittest.h"
#include "util-unittest-helper.h"
#include "util-memcmp.h"
#include "flow-util.h"
#include "detect-engine.h"
#include "detect-engine-state.h"
#include "detect-engine-build.h"
#include "detect-parse.h"
#include "conf.h"
#include "util-mem.h"
#include "util-misc.h"
#include "util-validate.h"
#include "detect-engine-alert.h"
Go to the source code of this file.
Data Structures | |
struct | SMTPInput_ |
struct | SMTPLine_ |
struct | SMTPThreadCtx_ |
Macros | |
#define | FILEDATA_CONTENT_LIMIT 100000 |
#define | FILEDATA_CONTENT_INSPECT_MIN_SIZE 32768 |
#define | FILEDATA_CONTENT_INSPECT_WINDOW 4096 |
#define | SMTP_RAW_EXTRACTION_DEFAULT_VALUE false |
#define | SMTP_COMMAND_BUFFER_STEPS 5 |
#define | SMTP_PARSER_STATE_COMMAND_DATA_MODE 0x01 |
#define | SMTP_PARSER_STATE_FIRST_REPLY_SEEN 0x04 |
#define | SMTP_PARSER_STATE_PARSING_MULTILINE_REPLY 0x08 |
#define | SMTP_PARSER_STATE_PIPELINING_SERVER 0x10 |
#define | SMTP_COMMAND_STARTTLS 1 |
#define | SMTP_COMMAND_DATA 2 |
#define | SMTP_COMMAND_BDAT 3 |
#define | SMTP_COMMAND_DATA_MODE 4 |
#define | SMTP_COMMAND_OTHER_CMD 5 |
#define | SMTP_COMMAND_RSET 6 |
#define | SMTP_DEFAULT_MAX_TX 256 |
#define | SMTP_MPM mpm_default_matcher |
#define | SCHEME_SUFFIX_LEN 3 |
#define | rawmsgname "rawmsg" |
Typedefs | |
typedef struct SMTPInput_ | SMTPInput |
typedef struct SMTPLine_ | SMTPLine |
typedef struct SMTPThreadCtx_ | SMTPThreadCtx |
Functions | |
void * | SMTPStateAlloc (void *orig_state, AppProto proto_orig) |
void | RegisterSMTPParsers (void) |
Register the SMTP Protocol parser. More... | |
void | SMTPParserCleanup (void) |
Free memory allocated for global SMTP parser state. More... | |
void | SMTPParserRegisterTests (void) |
Variables | |
SCEnumCharMap | smtp_decoder_event_table [] |
SCEnumCharMap | smtp_frame_table [] |
SCEnumCharMap | smtp_reply_map [] |
SMTPConfig | smtp_config |
Definition in file app-layer-smtp.c.
#define FILEDATA_CONTENT_INSPECT_MIN_SIZE 32768 |
Definition at line 61 of file app-layer-smtp.c.
#define FILEDATA_CONTENT_INSPECT_WINDOW 4096 |
Definition at line 63 of file app-layer-smtp.c.
#define FILEDATA_CONTENT_LIMIT 100000 |
Definition at line 59 of file app-layer-smtp.c.
#define rawmsgname "rawmsg" |
Definition at line 1109 of file app-layer-smtp.c.
#define SCHEME_SUFFIX_LEN 3 |
Definition at line 304 of file app-layer-smtp.c.
#define SMTP_COMMAND_BDAT 3 |
Definition at line 89 of file app-layer-smtp.c.
#define SMTP_COMMAND_BUFFER_STEPS 5 |
Definition at line 68 of file app-layer-smtp.c.
#define SMTP_COMMAND_DATA 2 |
Definition at line 88 of file app-layer-smtp.c.
#define SMTP_COMMAND_DATA_MODE 4 |
Definition at line 94 of file app-layer-smtp.c.
#define SMTP_COMMAND_OTHER_CMD 5 |
Definition at line 96 of file app-layer-smtp.c.
#define SMTP_COMMAND_RSET 6 |
Definition at line 97 of file app-layer-smtp.c.
#define SMTP_COMMAND_STARTTLS 1 |
Definition at line 87 of file app-layer-smtp.c.
#define SMTP_DEFAULT_MAX_TX 256 |
Definition at line 99 of file app-layer-smtp.c.
#define SMTP_MPM mpm_default_matcher |
Definition at line 194 of file app-layer-smtp.c.
#define SMTP_PARSER_STATE_COMMAND_DATA_MODE 0x01 |
Definition at line 75 of file app-layer-smtp.c.
#define SMTP_PARSER_STATE_FIRST_REPLY_SEEN 0x04 |
Definition at line 77 of file app-layer-smtp.c.
#define SMTP_PARSER_STATE_PARSING_MULTILINE_REPLY 0x08 |
Definition at line 79 of file app-layer-smtp.c.
#define SMTP_PARSER_STATE_PIPELINING_SERVER 0x10 |
Definition at line 81 of file app-layer-smtp.c.
#define SMTP_RAW_EXTRACTION_DEFAULT_VALUE false |
Definition at line 66 of file app-layer-smtp.c.
typedef struct SMTPInput_ SMTPInput |
typedef struct SMTPThreadCtx_ SMTPThreadCtx |
enum SMTPCode |
Definition at line 199 of file app-layer-smtp.c.
enum SMTPFrameTypes |
Enumerator | |
---|---|
SMTP_FRAME_COMMAND_LINE | |
SMTP_FRAME_DATA | |
SMTP_FRAME_RESPONSE_LINE |
Definition at line 151 of file app-layer-smtp.c.
void RegisterSMTPParsers | ( | void | ) |
Register the SMTP Protocol parser.
Definition at line 1862 of file app-layer-smtp.c.
References ALPROTO_SMTP, AppLayerProtoDetectConfProtoDetectionEnabled(), and AppLayerProtoDetectRegisterProtocol().
void SMTPParserCleanup | ( | void | ) |
Free memory allocated for global SMTP parser state.
Definition at line 1917 of file app-layer-smtp.c.
Referenced by AppLayerParserDeSetup().
void SMTPParserRegisterTests | ( | void | ) |
Definition at line 4247 of file app-layer-smtp.c.
References UtRegisterTest().
void* SMTPStateAlloc | ( | void * | orig_state, |
AppProto | proto_orig | ||
) |
Definition at line 1491 of file app-layer-smtp.c.
References SMTPState_::cmds, SMTPState_::cmds_buffer_len, SCCalloc, SCFree, SCMalloc, SMTP_COMMAND_BUFFER_STEPS, TAILQ_INIT, and unlikely.
SMTPConfig smtp_config |
Definition at line 292 of file app-layer-smtp.c.
SCEnumCharMap smtp_decoder_event_table[] |
Definition at line 121 of file app-layer-smtp.c.
SCEnumCharMap smtp_frame_table[] |
Definition at line 157 of file app-layer-smtp.c.
SCEnumCharMap smtp_reply_map[] |
Definition at line 244 of file app-layer-smtp.c.