retdec
processing.h
Go to the documentation of this file.
1 
7 #ifndef PAT2YARA_PROCESSING_H
8 #define PAT2YARA_PROCESSING_H
9 
10 #include <memory>
11 #include <string>
12 #include <vector>
13 
14 // Forward declarations.
15 namespace yaramod
16 {
17 
18  class YaraFileBuilder;
19  class YaraFile;
20  class Rule;
21 
22 } // namespace yaramod
23 
28 {
29  public:
30  std::size_t maxSize = 0;
31  std::size_t minSize = 0;
32  std::size_t minPure = 0;
33 
34  bool ignoreNops = false;
35  std::size_t nopOpcode = 0x00;
36 
37  bool isDelphi = false;
38 
39  bool logOn = false;
40  std::vector<std::string> input;
41 
42  bool validate(std::string &error);
43 };
44 
46  yaramod::YaraFileBuilder &fileBuilder,
47  yaramod::YaraFileBuilder &logBuilder,
48  const ProcessingOptions &options);
49 
50 #endif
Definition: symbol_pattern.h:17
void processFiles(yaramod::YaraFileBuilder &fileBuilder, yaramod::YaraFileBuilder &logBuilder, const ProcessingOptions &options)
Definition: processing.h:28
std::size_t minSize
Lower rule size limit.
Definition: processing.h:31
bool isDelphi
Delphi specific functions off/on.
Definition: processing.h:37
bool logOn
Log-file on/off.
Definition: processing.h:39
bool validate(std::string &error)
Definition: processing.cpp:123
std::vector< std::string > input
Input files.
Definition: processing.h:40
std::size_t maxSize
Upper rule size limit.
Definition: processing.h:30
std::size_t nopOpcode
Opcode of NOP instruction.
Definition: processing.h:35
std::size_t minPure
Pure information limit.
Definition: processing.h:32
bool ignoreNops
Do not count NOPs to (pure) size.
Definition: processing.h:34