malware_modeler/lib.rs
1// SPDX-License-Identifier: Apache-2.0
2
3#![doc = include_str!("../readme.md")]
4#![deny(clippy::all)]
5//#![deny(clippy::cargo)]
6#![deny(clippy::pedantic)]
7#![allow(clippy::doc_markdown)] // Clippy has issues with some names in the research list
8#![deny(missing_docs)]
9#![forbid(unsafe_code)]
10
11/// Data structures and logic for storing training/inference data
12pub mod dataset;
13
14/// File type detection and types
15pub mod ftype;
16
17/// Data structure and logic for training a model and calculating predictions
18pub mod model;
19
20/// N-gramming logic and data structures
21pub mod ngram;
22
23mod serde;
24
25/// Tests for similarity between files
26pub mod similarity;
27
28/// Malware Modeler version
29pub const VERSION: &str = concat!(
30 "v",
31 env!("CARGO_PKG_VERSION"),
32 "-",
33 env!("VERGEN_GIT_SHA"),
34 " ",
35 env!("VERGEN_BUILD_DATE")
36);
37
38/// Maximum recursion depth when walking a directory structure
39pub const MAX_RECURSION_DEPTH: usize = 10;
40
41/// Convenience type for vector of bytes
42pub type Bytes = Vec<u8>;