Merge branch 'develop' into wip-cppcheck271-part2

This commit is contained in:
g. economou
2024-05-17 11:08:09 +03:00
committed by GitHub
211 changed files with 3167 additions and 2125 deletions

View File

@@ -66,32 +66,32 @@ public:
explicit EngineChimera(ch_database_t *db, CompileCHStats cs);
~EngineChimera();
std::unique_ptr<EngineContext> makeContext() const;
std::unique_ptr<EngineContext> makeContext() const override;
void scan(const char *data, unsigned int len, unsigned int id,
ResultEntry &result, EngineContext &ectx) const;
ResultEntry &result, EngineContext &ectx) const override;
void scan_vectored(const char *const *data, const unsigned int *len,
unsigned int count, unsigned int streamId,
ResultEntry &result, EngineContext &ectx) const;
ResultEntry &result, EngineContext &ectx) const override;
std::unique_ptr<EngineStream> streamOpen(EngineContext &ectx,
unsigned id) const;
unsigned id) const override;
void streamClose(std::unique_ptr<EngineStream> stream,
ResultEntry &result) const;
ResultEntry &result) const override;
void streamCompressExpand(EngineStream &stream,
std::vector<char> &temp) const;
std::vector<char> &temp) const override;
void streamScan(EngineStream &stream, const char *data, unsigned int len,
unsigned int id, ResultEntry &result) const;
unsigned int id, ResultEntry &result) const override;
void printStats() const;
void printStats() const override;
void printCsvStats() const;
void printCsvStats() const override;
void sqlStats(SqlDB &db) const;
void sqlStats(SqlDB &db) const override;
private:
ch_database_t *db;

View File

@@ -132,7 +132,7 @@ void EngineHyperscan::scan(const char *data, unsigned int len, unsigned int id,
ResultEntry &result, EngineContext &ectx) const {
assert(data);
EngineHSContext &ctx = static_cast<EngineHSContext &>(ectx);
const EngineHSContext &ctx = static_cast<EngineHSContext &>(ectx);
ScanHSContext sc(id, result, nullptr);
auto callback = echo_matches ? onMatchEcho : onMatch;
hs_error_t rv = hs_scan(db, data, len, 0, ctx.scratch, callback, &sc);
@@ -150,7 +150,7 @@ void EngineHyperscan::scan_vectored(const char *const *data,
assert(data);
assert(len);
EngineHSContext &ctx = static_cast<EngineHSContext &>(ectx);
const EngineHSContext &ctx = static_cast<EngineHSContext &>(ectx);
ScanHSContext sc(streamId, result, nullptr);
auto callback = echo_matches ? onMatchEcho : onMatch;
hs_error_t rv =
@@ -198,8 +198,8 @@ void EngineHyperscan::streamScan(EngineStream &stream, const char *data,
ResultEntry &result) const {
assert(data);
auto &s = static_cast<EngineHSStream &>(stream);
EngineHSContext &ctx = *s.ctx;
const auto &s = static_cast<EngineHSStream &>(stream);
const EngineHSContext &ctx = *s.ctx;
ScanHSContext sc(id, result, &s);
auto callback = echo_matches ? onMatchEcho : onMatch;
@@ -215,7 +215,7 @@ void EngineHyperscan::streamScan(EngineStream &stream, const char *data,
void EngineHyperscan::streamCompressExpand(EngineStream &stream,
vector<char> &temp) const {
size_t used = 0;
auto &s = static_cast<EngineHSStream &>(stream);
const auto &s = static_cast<EngineHSStream &>(stream);
hs_error_t err = hs_compress_stream(s.id, temp.data(), temp.size(),
&used);
if (err == HS_INSUFFICIENT_SPACE) {
@@ -248,7 +248,7 @@ void EngineHyperscan::printStats() const {
printf("Signature set: %s\n", compile_stats.sigs_name.c_str());
}
printf("Signatures: %s\n", compile_stats.signatures.c_str());
printf("Hyperscan info: %s\n", compile_stats.db_info.c_str());
printf("Vectorscan info: %s\n", compile_stats.db_info.c_str());
printf("Expression count: %'zu\n", compile_stats.expressionCount);
printf("Bytecode size: %'zu bytes\n", compile_stats.compiledSize);
printf("Database CRC: 0x%x\n", compile_stats.crc32);
@@ -456,7 +456,7 @@ buildEngineHyperscan(const ExpressionMap &expressions, ScanMode scan_mode,
if (err == HS_COMPILER_ERROR) {
if (compile_err->expression >= 0) {
printf("Compile error for signature #%u: %s\n",
printf("Compile error for signature #%d: %s\n",
compile_err->expression, compile_err->message);
} else {
printf("Compile error: %s\n", compile_err->message);

View File

@@ -75,32 +75,32 @@ public:
explicit EngineHyperscan(hs_database_t *db, CompileHSStats cs);
~EngineHyperscan();
std::unique_ptr<EngineContext> makeContext() const;
std::unique_ptr<EngineContext> makeContext() const override;
void scan(const char *data, unsigned int len, unsigned int id,
ResultEntry &result, EngineContext &ectx) const;
ResultEntry &result, EngineContext &ectx) const override;
void scan_vectored(const char *const *data, const unsigned int *len,
unsigned int count, unsigned int streamId,
ResultEntry &result, EngineContext &ectx) const;
ResultEntry &result, EngineContext &ectx) const override;
std::unique_ptr<EngineStream> streamOpen(EngineContext &ectx,
unsigned id) const;
unsigned id) const override;
void streamClose(std::unique_ptr<EngineStream> stream,
ResultEntry &result) const;
ResultEntry &result) const override;
void streamCompressExpand(EngineStream &stream,
std::vector<char> &temp) const;
std::vector<char> &temp) const override;
void streamScan(EngineStream &stream, const char *data, unsigned int len,
unsigned int id, ResultEntry &result) const;
unsigned int id, ResultEntry &result) const override;
void printStats() const;
void printStats() const override;
void printCsvStats() const;
void printCsvStats() const override;
void sqlStats(SqlDB &db) const;
void sqlStats(SqlDB &db) const override;
private:
hs_database_t *db;

View File

@@ -74,32 +74,32 @@ public:
CompilePCREStats cs, int capture_cnt_in);
~EnginePCRE();
std::unique_ptr<EngineContext> makeContext() const;
std::unique_ptr<EngineContext> makeContext() const override;
void scan(const char *data, unsigned int len, unsigned int id,
ResultEntry &result, EngineContext &ectx) const;
ResultEntry &result, EngineContext &ectx) const override;
void scan_vectored(const char *const *data, const unsigned int *len,
unsigned int count, unsigned int streamId,
ResultEntry &result, EngineContext &ectx) const;
ResultEntry &result, EngineContext &ectx) const override;
std::unique_ptr<EngineStream> streamOpen(EngineContext &ectx,
unsigned id) const;
unsigned id) const override;
void streamClose(std::unique_ptr<EngineStream> stream,
ResultEntry &result) const;
ResultEntry &result) const override;
void streamCompressExpand(EngineStream &stream,
std::vector<char> &temp) const;
std::vector<char> &temp) const override;
void streamScan(EngineStream &stream, const char *data, unsigned int len,
unsigned int id, ResultEntry &result) const;
unsigned int id, ResultEntry &result) const override;
void printStats() const;
void printStats() const override;
void printCsvStats() const;
void printCsvStats() const override;
void sqlStats(SqlDB &db) const;
void sqlStats(SqlDB &db) const override;
private:
std::vector<std::unique_ptr<PcreDB>> dbs;

View File

@@ -183,7 +183,7 @@ long gethugepagesize(void) {
hpage_size = -1;
} else {
/* convert from kb to bytes */
hpage_size = 1024 * hpage_kb;
hpage_size = 1024L * hpage_kb;
}
return hpage_size;

View File

@@ -227,7 +227,7 @@ struct BenchmarkSigs {
/** Process command-line arguments. Prints usage and exits on error. */
static
void processArgs(int argc, char *argv[], vector<BenchmarkSigs> &sigSets,
UNUSED unique_ptr<Grey> &grey) {
UNUSED const unique_ptr<Grey> &grey) {
const char options[] = "-b:c:Cd:e:E:G:hHi:n:No:p:PsS:Vw:z:"
#if defined(HAVE_DECL_PTHREAD_SETAFFINITY_NP)
"T:" // add the thread flag
@@ -465,7 +465,7 @@ void processArgs(int argc, char *argv[], vector<BenchmarkSigs> &sigSets,
/** Start the global timer. */
static
void startTotalTimer(ThreadContext *ctx) {
void startTotalTimer(const ThreadContext *ctx) {
if (ctx->num != 0) {
return; // only runs in the first thread
}
@@ -474,7 +474,7 @@ void startTotalTimer(ThreadContext *ctx) {
/** Stop the global timer and calculate totals. */
static
void stopTotalTimer(ThreadContext *ctx) {
void stopTotalTimer(const ThreadContext *ctx) {
if (ctx->num != 0) {
return; // only runs in the first thread
}
@@ -1013,9 +1013,9 @@ int HS_CDECL main(int argc, char *argv[]) {
if (sigSets.empty()) {
SignatureSet sigs;
sigs.reserve(exprMapTemplate.size());
for (auto i : exprMapTemplate | map_keys) {
sigs.push_back(i);
}
const auto &i = exprMapTemplate | map_keys;
std::copy(begin(i), end(i), std::back_inserter(sigs));
sigSets.emplace_back(exprPath, std::move(sigs));
}

View File

@@ -97,12 +97,12 @@ unsigned int countFailures = 0;
class ParsedExpr {
public:
ParsedExpr(string regex_in, unsigned int flags_in, hs_expr_ext ext_in)
ParsedExpr(string regex_in, unsigned int flags_in, const hs_expr_ext& ext_in)
: regex(regex_in), flags(flags_in), ext(ext_in) {}
~ParsedExpr() {}
string regex;
unsigned int flags;
hs_expr_ext ext;
const hs_expr_ext& ext;
};
typedef map<unsigned int, ParsedExpr> ExprExtMap;
@@ -491,7 +491,7 @@ void usage() {
}
static
void processArgs(int argc, char *argv[], UNUSED unique_ptr<Grey> &grey) {
void processArgs(int argc, char *argv[], UNUSED const unique_ptr<Grey> &grey) {
const char options[] = "e:E:s:z:hHLNV8G:T:BC";
bool signatureSet = false;
int literalFlag = 0;