1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
//! Common Vulnerability Scoring System.
//!
//! The [`cvss::v3::Base`][`v3::Base`] type provides the main functionality
//! currently implemented by this crate, namely: support for parsing, serializing,
//! and scoring `CVSS:3.0` and `CVSS:3.1` Base Metric Group vector strings
//! as described in the CVSS v3.1 Specification:
//!
//! <https://www.first.org/cvss/specification-document>
//!
//! Serde support is available through the optional `serde` Cargo feature.

// TODO(tarcieri): other CVSS versions, CVSS v3.1 Temporal and Environmental Groups

#![doc(
    html_logo_url = "https://raw.githubusercontent.com/RustSec/logos/main/rustsec-logo-lg.png",
    html_root_url = "https://docs.rs/cvss/1.0.2"
)]
#![forbid(unsafe_code)]
#![warn(missing_docs, rust_2018_idioms, unused_qualifications)]

#[macro_use]
pub mod error;
pub mod severity;

#[cfg(feature = "v3")]
pub mod v3;

pub use self::severity::Severity;

/// Prefix used by all CVSS strings
pub const PREFIX: &str = "CVSS";