mirror of
https://github.com/openappsec/attachment.git
synced 2025-09-30 11:44:29 +03:00
Add docket support
This commit is contained in:
@@ -29,7 +29,7 @@ struct DebugConfig
|
||||
|
||||
std::string client;
|
||||
std::string server;
|
||||
uint port = 0;
|
||||
unsigned int port = 0;
|
||||
std::string method;
|
||||
std::string host;
|
||||
std::string uri;
|
||||
@@ -45,21 +45,21 @@ public:
|
||||
|
||||
bool operator==(const HttpAttachmentConfiguration &other) const;
|
||||
|
||||
uint getNumericalValue(const std::string &key) const;
|
||||
unsigned int getNumericalValue(const std::string &key) const;
|
||||
const std::string & getStringValue(const std::string &key) const;
|
||||
const std::vector<std::string> & getExcludeSources() const { return exclude_sources; }
|
||||
const DebugConfig & getDebugContext() const { return dbg; }
|
||||
|
||||
void setNumericalValue(const std::string &key, uint value) { numerical_values[key] = value; }
|
||||
void setNumericalValue(const std::string &key, unsigned int value) { numerical_values[key] = value; }
|
||||
void setStringValue(const std::string &key, const std::string &value) { string_values[key] = value; }
|
||||
void setExcludeSources(const std::vector<std::string> &new_sources) { exclude_sources = new_sources; }
|
||||
void setDebugContext(const DebugConfig &_dbg) { dbg = _dbg; }
|
||||
|
||||
private:
|
||||
void loadNumericalValue(cereal::JSONInputArchive &archive, const std::string &name, uint default_value);
|
||||
void loadNumericalValue(cereal::JSONInputArchive &archive, const std::string &name, unsigned int default_value);
|
||||
|
||||
DebugConfig dbg;
|
||||
std::map<std::string, uint> numerical_values;
|
||||
std::map<std::string, unsigned int> numerical_values;
|
||||
std::map<std::string, std::string> string_values;
|
||||
std::vector<std::string> exclude_sources;
|
||||
std::string empty;
|
||||
|
@@ -64,6 +64,7 @@ typedef enum ngx_http_chunk_type
|
||||
RESPONSE_END,
|
||||
CONTENT_LENGTH,
|
||||
METRIC_DATA_FROM_PLUGIN,
|
||||
HOLD_DATA,
|
||||
|
||||
COUNT
|
||||
} ngx_http_chunk_type_e;
|
||||
@@ -85,6 +86,7 @@ typedef enum ngx_http_plugin_metric_type
|
||||
IRRELEVANT_VERDICTS_COUNT,
|
||||
RECONF_VERDICTS_COUNT,
|
||||
INSPECT_VERDICTS_COUNT,
|
||||
HOLD_VERDICTS_COUNT,
|
||||
AVERAGE_OVERALL_PPROCESSING_TIME_UNTIL_VERDICT,
|
||||
MAX_OVERALL_PPROCESSING_TIME_UNTIL_VERDICT,
|
||||
MIN_OVERALL_PPROCESSING_TIME_UNTIL_VERDICT,
|
||||
@@ -103,6 +105,7 @@ typedef enum ngx_http_plugin_metric_type
|
||||
MIN_REQ_BODY_SIZE_UPON_TIMEOUT,
|
||||
RES_HEADER_THREAD_TIMEOUT,
|
||||
RES_BODY_THREAD_TIMEOUT,
|
||||
HOLD_THREAD_TIMEOUT,
|
||||
AVERAGE_RES_BODY_SIZE_UPON_TIMEOUT,
|
||||
MAX_RES_BODY_SIZE_UPON_TIMEOUT,
|
||||
MIN_RES_BODY_SIZE_UPON_TIMEOUT,
|
||||
@@ -139,7 +142,8 @@ typedef enum ngx_http_cp_verdict
|
||||
TRAFFIC_VERDICT_DROP,
|
||||
TRAFFIC_VERDICT_INJECT,
|
||||
TRAFFIC_VERDICT_IRRELEVANT,
|
||||
TRAFFIC_VERDICT_RECONF
|
||||
TRAFFIC_VERDICT_RECONF,
|
||||
TRAFFIC_VERDICT_WAIT
|
||||
} ngx_http_cp_verdict_e;
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
@@ -33,12 +33,15 @@ ngx_http_inspection_mode_e getInspectionMode();
|
||||
unsigned int getNumOfNginxIpcElements();
|
||||
unsigned int getKeepAliveIntervalMsec();
|
||||
unsigned int getDbgLevel();
|
||||
int isDebugContext(c_str client, c_str server, unsigned int port, c_str method, c_str host , c_str uri);
|
||||
int isDebugContext(c_str client, c_str server, unsigned int port, c_str method, c_str host, c_str uri);
|
||||
c_str getStaticResourcesPath();
|
||||
|
||||
int isFailOpenMode();
|
||||
unsigned int getFailOpenTimeout();
|
||||
|
||||
int isFailOpenHoldMode();
|
||||
unsigned int getFailOpenHoldTimeout();
|
||||
|
||||
unsigned int getMaxSessionsPerMinute();
|
||||
int isFailOpenOnSessionLimit();
|
||||
|
||||
@@ -52,6 +55,8 @@ unsigned int getResProccessingTimeout();
|
||||
unsigned int getResHeaderThreadTimeout();
|
||||
unsigned int getResBodyThreadTimeout();
|
||||
|
||||
unsigned int getWaitingForVerdictThreadTimeout();
|
||||
|
||||
int isIPAddress(c_str ip_str);
|
||||
int isSkipSource(c_str ip_str);
|
||||
|
||||
|
Reference in New Issue
Block a user