pub enum Error {
NoEocd,
Truncated,
Zip64Unsupported,
BadOffset,
NonUtf8Name,
}Variants§
NoEocd
The end-of-central-directory record was not found.
Truncated
A structure extended past the buffer or a length was inconsistent.
Zip64Unsupported
A ZIP64 archive; not supported (rejected fail-closed).
BadOffset
A central directory entry pointed outside the archive.
NonUtf8Name
A ZIP entry name was not valid UTF-8.
Implementations§
Source§impl Error
impl Error
Sourcepub fn code(&self) -> Option<&'static str>
pub fn code(&self) -> Option<&'static str>
The registered C2PA validation status code for this error, or None
when the condition carries no status code.
Always None here, and deliberately so. Every variant is an archive
parsing failure — the bytes are not a ZIP this crate can read — which
happens before any manifest is located and so is not a validation
outcome.
A ZIP-based asset is bound with a collection data
hash, whose failures
(assertion.collectionHash.mismatch and friends) belong to whoever
computes the hash. This crate reports the byte ranges to hash and does
not hash them, so those codes are not its to emit.
Every crate in this family exposes this method, so a dispatcher handling several embedding methods can ask the same question of any of them.
Sourcepub fn is_no_manifest_located(&self) -> bool
pub fn is_no_manifest_located(&self) -> bool
Whether this error means the asset carries no provenance at all.
Always false: an unreadable archive is not the same as a readable one
carrying no manifest, which crate::read_manifest reports as
Ok(None) rather than as an error.
Trait Implementations§
Source§impl Error for Error
impl Error for Error
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()