mirror of
https://github.com/owasp-modsecurity/ModSecurity.git
synced 2025-08-13 21:36:00 +03:00
Makes m_fileName a shared pointer
This commit is contained in:
parent
14b2bd77a0
commit
343b86c2a7
@ -54,7 +54,7 @@ class Rule {
|
||||
Rule(operators::Operator *_op,
|
||||
variables::Variables *_variables,
|
||||
std::vector<actions::Action *> *_actions,
|
||||
std::string fileName,
|
||||
std::unique_ptr<std::string> fileName,
|
||||
int lineNumber);
|
||||
explicit Rule(const std::string &marker);
|
||||
virtual ~Rule();
|
||||
@ -128,7 +128,7 @@ class Rule {
|
||||
operators::Operator *m_op;
|
||||
std::unique_ptr<Rule> m_chainedRuleChild;
|
||||
Rule *m_chainedRuleParent;
|
||||
std::string m_fileName;
|
||||
std::shared_ptr<std::string> m_fileName;
|
||||
std::string m_marker;
|
||||
std::string m_rev;
|
||||
std::string m_ver;
|
||||
|
@ -104,7 +104,7 @@ class RuleMessage {
|
||||
std::string m_reference;
|
||||
std::string m_rev;
|
||||
Rule *m_rule;
|
||||
std::string m_ruleFile;
|
||||
std::shared_ptr<std::string> m_ruleFile;
|
||||
int m_ruleId;
|
||||
int m_ruleLine;
|
||||
bool m_saveMessage;
|
||||
|
@ -2318,7 +2318,7 @@ namespace yy {
|
||||
/* op */ op,
|
||||
/* variables */ v,
|
||||
/* actions */ a,
|
||||
/* file name */ *yystack_[3].location.end.filename,
|
||||
/* file name */ std::unique_ptr<std::string>(new std::string(*yystack_[3].location.end.filename)),
|
||||
/* line number */ yystack_[3].location.end.line
|
||||
));
|
||||
|
||||
@ -2341,7 +2341,7 @@ namespace yy {
|
||||
/* op */ yystack_[0].value.as < std::unique_ptr<Operator> > ().release(),
|
||||
/* variables */ v,
|
||||
/* actions */ NULL,
|
||||
/* file name */ *yystack_[2].location.end.filename,
|
||||
/* file name */ std::unique_ptr<std::string>(new std::string(*yystack_[2].location.end.filename)),
|
||||
/* line number */ yystack_[2].location.end.line
|
||||
));
|
||||
if (driver.addSecRule(std::move(rule)) == false) {
|
||||
@ -2362,7 +2362,7 @@ namespace yy {
|
||||
/* op */ NULL,
|
||||
/* variables */ NULL,
|
||||
/* actions */ a,
|
||||
/* file name */ *yystack_[1].location.end.filename,
|
||||
/* file name */ std::unique_ptr<std::string>(new std::string(*yystack_[1].location.end.filename)),
|
||||
/* line number */ yystack_[1].location.end.line
|
||||
));
|
||||
driver.addSecAction(std::move(rule));
|
||||
@ -2381,7 +2381,7 @@ namespace yy {
|
||||
std::unique_ptr<RuleScript> r(new RuleScript(
|
||||
/* path to script */ yystack_[1].value.as < std::string > (),
|
||||
/* actions */ a,
|
||||
/* file name */ *yystack_[1].location.end.filename,
|
||||
/* file name */ std::unique_ptr<std::string>(new std::string(*yystack_[1].location.end.filename)),
|
||||
/* line number */ yystack_[1].location.end.line
|
||||
));
|
||||
|
||||
|
@ -1080,7 +1080,7 @@ expression:
|
||||
/* op */ op,
|
||||
/* variables */ v,
|
||||
/* actions */ a,
|
||||
/* file name */ *@1.end.filename,
|
||||
/* file name */ std::unique_ptr<std::string>(new std::string(*@1.end.filename)),
|
||||
/* line number */ @1.end.line
|
||||
));
|
||||
|
||||
@ -1099,7 +1099,7 @@ expression:
|
||||
/* op */ $3.release(),
|
||||
/* variables */ v,
|
||||
/* actions */ NULL,
|
||||
/* file name */ *@1.end.filename,
|
||||
/* file name */ std::unique_ptr<std::string>(new std::string(*@1.end.filename)),
|
||||
/* line number */ @1.end.line
|
||||
));
|
||||
if (driver.addSecRule(std::move(rule)) == false) {
|
||||
@ -1116,7 +1116,7 @@ expression:
|
||||
/* op */ NULL,
|
||||
/* variables */ NULL,
|
||||
/* actions */ a,
|
||||
/* file name */ *@1.end.filename,
|
||||
/* file name */ std::unique_ptr<std::string>(new std::string(*@1.end.filename)),
|
||||
/* line number */ @1.end.line
|
||||
));
|
||||
driver.addSecAction(std::move(rule));
|
||||
@ -1131,7 +1131,7 @@ expression:
|
||||
std::unique_ptr<RuleScript> r(new RuleScript(
|
||||
/* path to script */ $1,
|
||||
/* actions */ a,
|
||||
/* file name */ *@1.end.filename,
|
||||
/* file name */ std::unique_ptr<std::string>(new std::string(*@1.end.filename)),
|
||||
/* line number */ @1.end.line
|
||||
));
|
||||
|
||||
|
@ -70,7 +70,7 @@ Rule::Rule(const std::string &marker)
|
||||
m_op(NULL),
|
||||
m_chainedRuleChild(nullptr),
|
||||
m_chainedRuleParent(NULL),
|
||||
m_fileName(""),
|
||||
/* m_fileName(""), */
|
||||
m_marker(marker),
|
||||
m_rev(""),
|
||||
m_ver(""),
|
||||
@ -83,7 +83,7 @@ Rule::Rule(const std::string &marker)
|
||||
Rule::Rule(Operator *_op,
|
||||
variables::Variables *_variables,
|
||||
std::vector<Action *> *actions,
|
||||
std::string fileName,
|
||||
std::unique_ptr<std::string> fileName,
|
||||
int lineNumber)
|
||||
: m_theDisruptiveAction(nullptr),
|
||||
m_logData(nullptr),
|
||||
@ -103,7 +103,7 @@ Rule::Rule(Operator *_op,
|
||||
m_op(_op),
|
||||
m_chainedRuleChild(nullptr),
|
||||
m_chainedRuleParent(NULL),
|
||||
m_fileName(fileName),
|
||||
m_fileName(std::move(fileName)),
|
||||
m_marker(""),
|
||||
m_rev(""),
|
||||
m_ver(""),
|
||||
|
@ -26,7 +26,7 @@ namespace modsecurity {
|
||||
std::string RuleMessage::_details(const RuleMessage *rm) {
|
||||
std::string msg;
|
||||
|
||||
msg.append(" [file \"" + std::string(rm->m_ruleFile) + "\"]");
|
||||
msg.append(" [file \"" + std::string(*rm->m_ruleFile.get()) + "\"]");
|
||||
msg.append(" [line \"" + std::to_string(rm->m_ruleLine) + "\"]");
|
||||
msg.append(" [id \"" + std::to_string(rm->m_ruleId) + "\"]");
|
||||
msg.append(" [rev \"" + rm->m_rev + "\"]");
|
||||
|
@ -46,9 +46,9 @@ class RuleScript : public Rule {
|
||||
public:
|
||||
RuleScript(const std::string &name,
|
||||
std::vector<Action *> *actions,
|
||||
const std::string &fileName,
|
||||
std::unique_ptr<std::string> fileName,
|
||||
int lineNumber)
|
||||
: Rule(NULL, NULL, actions, fileName, lineNumber),
|
||||
: Rule(NULL, NULL, actions, std::move(fileName), lineNumber),
|
||||
m_name(name) { }
|
||||
|
||||
bool init(std::string *err);
|
||||
|
@ -1764,7 +1764,7 @@ std::string Transaction::toJSON(int parts) {
|
||||
LOGFY_ADD("match", a.m_match.c_str());
|
||||
LOGFY_ADD("reference", a.m_reference.c_str());
|
||||
LOGFY_ADD("ruleId", std::to_string(a.m_ruleId).c_str());
|
||||
LOGFY_ADD("file", a.m_ruleFile.c_str());
|
||||
LOGFY_ADD("file", a.m_ruleFile->c_str());
|
||||
LOGFY_ADD("lineNumber", std::to_string(a.m_ruleLine).c_str());
|
||||
LOGFY_ADD("data", a.m_data.c_str());
|
||||
LOGFY_ADD("severity", std::to_string(a.m_severity).c_str());
|
||||
|
Loading…
x
Reference in New Issue
Block a user