suricata
|
#include "suricata.h"
#include "suricata-common.h"
#include "decode.h"
#include "threads.h"
#include "stream-tcp-private.h"
#include "stream-tcp-reassemble.h"
#include "stream-tcp.h"
#include "stream.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-print.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 "decode-events.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 67 of file app-layer-smtp.c.
#define FILEDATA_CONTENT_INSPECT_WINDOW 4096 |
Definition at line 69 of file app-layer-smtp.c.
#define FILEDATA_CONTENT_LIMIT 100000 |
Definition at line 65 of file app-layer-smtp.c.
#define rawmsgname "rawmsg" |
Definition at line 1115 of file app-layer-smtp.c.
#define SCHEME_SUFFIX_LEN 3 |
Definition at line 310 of file app-layer-smtp.c.
#define SMTP_COMMAND_BDAT 3 |
Definition at line 95 of file app-layer-smtp.c.
#define SMTP_COMMAND_BUFFER_STEPS 5 |
Definition at line 74 of file app-layer-smtp.c.
#define SMTP_COMMAND_DATA 2 |
Definition at line 94 of file app-layer-smtp.c.
#define SMTP_COMMAND_DATA_MODE 4 |
Definition at line 100 of file app-layer-smtp.c.
#define SMTP_COMMAND_OTHER_CMD 5 |
Definition at line 102 of file app-layer-smtp.c.
#define SMTP_COMMAND_RSET 6 |
Definition at line 103 of file app-layer-smtp.c.
#define SMTP_COMMAND_STARTTLS 1 |
Definition at line 93 of file app-layer-smtp.c.
#define SMTP_DEFAULT_MAX_TX 256 |
Definition at line 105 of file app-layer-smtp.c.
#define SMTP_MPM mpm_default_matcher |
Definition at line 200 of file app-layer-smtp.c.
#define SMTP_PARSER_STATE_COMMAND_DATA_MODE 0x01 |
Definition at line 81 of file app-layer-smtp.c.
#define SMTP_PARSER_STATE_FIRST_REPLY_SEEN 0x04 |
Definition at line 83 of file app-layer-smtp.c.
#define SMTP_PARSER_STATE_PARSING_MULTILINE_REPLY 0x08 |
Definition at line 85 of file app-layer-smtp.c.
#define SMTP_PARSER_STATE_PIPELINING_SERVER 0x10 |
Definition at line 87 of file app-layer-smtp.c.
#define SMTP_RAW_EXTRACTION_DEFAULT_VALUE false |
Definition at line 72 of file app-layer-smtp.c.
typedef struct SMTPInput_ SMTPInput |
typedef struct SMTPThreadCtx_ SMTPThreadCtx |
enum SMTPCode |
Definition at line 205 of file app-layer-smtp.c.
enum SMTPFrameTypes |
Enumerator | |
---|---|
SMTP_FRAME_COMMAND_LINE | |
SMTP_FRAME_DATA | |
SMTP_FRAME_RESPONSE_LINE |
Definition at line 157 of file app-layer-smtp.c.
void RegisterSMTPParsers | ( | void | ) |
Register the SMTP Protocol parser.
Definition at line 1875 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 1930 of file app-layer-smtp.c.
Referenced by AppLayerParserDeSetup().
void SMTPParserRegisterTests | ( | void | ) |
Definition at line 4260 of file app-layer-smtp.c.
References UtRegisterTest().
void* SMTPStateAlloc | ( | void * | orig_state, |
AppProto | proto_orig | ||
) |
Definition at line 1497 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 298 of file app-layer-smtp.c.
SCEnumCharMap smtp_decoder_event_table[] |
Definition at line 127 of file app-layer-smtp.c.
SCEnumCharMap smtp_frame_table[] |
Definition at line 163 of file app-layer-smtp.c.
SCEnumCharMap smtp_reply_map[] |
Definition at line 250 of file app-layer-smtp.c.