pub struct Database {
pub classes: Vec<String>,
pub mtu: Vec<(String, Vec<u16>)>,
pub ua_os: Vec<(String, Option<String>)>,
pub tcp_request: FingerprintCollection<TcpObservation, Signature, TcpIndexKey>,
pub tcp_response: FingerprintCollection<TcpObservation, Signature, TcpIndexKey>,
pub http_request: FingerprintCollection<HttpRequestObservation, Signature, HttpIndexKey>,
pub http_response: FingerprintCollection<HttpResponseObservation, Signature, HttpIndexKey>,
}
Expand description
Represents the database used by P0f
to store signatures and associated metadata.
The database contains signatures for analyzing TCP and HTTP traffic, as well as
other metadata such as MTU mappings and user agent-to-operating system mappings.
Fields§
§classes: Vec<String>
§mtu: Vec<(String, Vec<u16>)>
§ua_os: Vec<(String, Option<String>)>
§tcp_request: FingerprintCollection<TcpObservation, Signature, TcpIndexKey>
§tcp_response: FingerprintCollection<TcpObservation, Signature, TcpIndexKey>
§http_request: FingerprintCollection<HttpRequestObservation, Signature, HttpIndexKey>
§http_response: FingerprintCollection<HttpResponseObservation, Signature, HttpIndexKey>
Implementations§
Source§impl Database
impl Database
Sourcepub fn load_default() -> Result<Self, DatabaseError>
pub fn load_default() -> Result<Self, DatabaseError>
Creates a default instance of the Database
by parsing an embedded configuration file.
This file (config/p0f.fp
relative to the crate root) is expected to define the default
signatures and mappings used for analysis.
§Errors
Returns HuginnNetError::MissConfiguration
if the embedded default fingerprint file
cannot be parsed. This indicates a critical issue with the bundled fingerprint data
or the parser itself.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Database
impl RefUnwindSafe for Database
impl Send for Database
impl Sync for Database
impl Unpin for Database
impl UnwindSafe for Database
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more