42#define KEYWORD_NAME "ftp.mode"
43#define KEYWORD_DOC "ftp-keywords.html#ftp-mode"
44#define BUFFER_NAME "ftp.mode"
45#define BUFFER_DESC "ftp mode"
47static int g_ftp_mode_buffer_id = 0;
70 const DetectFtpModeData *ftpmoded = (
const DetectFtpModeData *)
m;
81 SCFTPFreeModeData(ptr);
92static DetectFtpModeData *DetectFtpModeParse(
const char *optstr)
94 DetectFtpModeData *ftpmoded = SCFTPParseMode(optstr);
108 DetectFtpModeData *ftpmoded = DetectFtpModeParse(
str);
109 if (ftpmoded == NULL)
113 g_ftp_mode_buffer_id) == NULL) {
114 DetectFtpModeFree(
de_ctx, ftpmoded);
void DetectBufferTypeSetDescriptionByName(const char *name, const char *desc)
void DetectAppLayerInspectEngineRegister(const char *name, AppProto alproto, uint32_t dir, int progress, InspectEngineFuncPtr Callback, InspectionBufferGetDataPtr GetData)
Registers an app inspection engine.
int DetectBufferTypeGetByName(const char *name)
uint8_t DetectEngineInspectGenericList(DetectEngineCtx *de_ctx, DetectEngineThreadCtx *det_ctx, const struct DetectEngineAppInspectionEngine_ *engine, const Signature *s, Flow *f, uint8_t flags, void *alstate, void *txv, uint64_t tx_id)
Do the content inspection & validation for a signature.
void DetectFtpModeRegister(void)
int SCDetectSignatureSetAppProto(Signature *s, AppProto alproto)
SigMatch * SCSigMatchAppendSMToList(DetectEngineCtx *de_ctx, Signature *s, uint16_t type, SigMatchCtx *ctx, const int list)
Append a SigMatch to the list type.
SigTableElmt * sigmatch_table
#define SIG_FLAG_TOCLIENT
#define SIG_FLAG_TOSERVER
main detection engine ctx
FtpCommandInfo command_descriptor
FtpRequestCommand command_code
Used to start a pointer to SigMatch context Should never be dereferenced without casting to something...
int(* Setup)(DetectEngineCtx *, Signature *, const char *)
void(* Free)(DetectEngineCtx *, void *)
int(* AppLayerTxMatch)(DetectEngineThreadCtx *, Flow *, uint8_t flags, void *alstate, void *txv, const Signature *, const SigMatchCtx *)
#define SCLogError(...)
Macro used to log ERROR messages.