Trait x509_parser::validate::Validate
source · [−]pub trait Validate {
fn validate<W, E>(&self, warn: W, err: E) -> bool
where
W: FnMut(&str),
E: FnMut(&str);
fn validate_to_vec(&self) -> (bool, Vec<String>, Vec<String>) { ... }
}👎 Deprecated since 0.13.0:
please use X509StructureValidator instead
This is supported on crate feature
validate only.Expand description
Trait for validating item (for ex. validate X.509 structure)
Examples
Using callbacks:
use x509_parser::certificate::X509Certificate;
use x509_parser::validate::Validate;
#[cfg(feature = "validate")]
fn validate_certificate(x509: &X509Certificate<'_>) -> Result<(), &'static str> {
println!(" Subject: {}", x509.subject());
// validate and print warnings and errors to stderr
let ok = x509.validate(
|msg| {
eprintln!(" [W] {}", msg);
},
|msg| {
eprintln!(" [E] {}", msg);
},
);
print!("Structure validation status: ");
if ok {
println!("Ok");
Ok(())
} else {
println!("FAIL");
Err("validation failed")
}
}Collecting warnings and errors to Vec:
use x509_parser::certificate::X509Certificate;
use x509_parser::validate::Validate;
#[cfg(feature = "validate")]
fn validate_certificate(x509: &X509Certificate<'_>) -> Result<(), &'static str> {
println!(" Subject: {}", x509.subject());
// validate and print warnings and errors to stderr
let (ok, warnings, errors) = x509.validate_to_vec();
print!("Structure validation status: ");
if ok {
println!("Ok");
} else {
println!("FAIL");
}
for warning in &warnings {
eprintln!(" [W] {}", warning);
}
for error in &errors {
eprintln!(" [E] {}", error);
}
println!();
if !errors.is_empty() {
return Err("validation failed");
}
Ok(())
}Required methods
👎 Deprecated since 0.13.0:
please use X509StructureValidator instead
Attempts to validate current item.
Returns true if item was validated.
Call warn() if a non-fatal error was encountered, and err()
if the error is fatal. These fucntions receive a description of the error.
Provided methods
👎 Deprecated since 0.13.0:
please use X509StructureValidator instead
Attempts to validate current item, storing warning and errors in Vec.
Returns the validation result (true if validated), the list of warnings,
and the list of errors.