pub enum MacaroonError {
    InitializationError,
    CryptoError(&'static str),
    IncompleteMacaroon(&'static str),
    IncompleteCaveat(&'static str),
    DeserializationError(String),
    CaveatNotSatisfied(String),
    DischargeNotUsed,
    InvalidSignature,
}
Expand description

Represents all of the errors that can arise when creating, deserializing, or verifying macaroons.

Variants

InitializationError

Only raised by the initialize() function, when there is a problem initializing the lower-level crypto library

CryptoError(&'static str)

Represents a runtime error in the lower-level cryptographic library, or situations like zero-length ciphertext.

IncompleteMacaroon(&'static str)

Can occur when constructing or deserializing a Macaroon and expected fields are not present.

IncompleteCaveat(&'static str)

Can occur when constructing or deserializing Caveat and expected fields are not present.

DeserializationError(String)

Represents a broad category of issues when parsing a macaroon token in any format.

CaveatNotSatisfied(String)

Arises when verifying a Macaroon, when it has any caveat not satisfied by any “exact” or “general” satisfiers configured on the Verifier. Indicates a failure to authenticate the macaroon.

DischargeNotUsed

Arises when verifying a Macaroon, with a set of discharges configured on the verifier, and one or more are not used during the verification process. Indicates a failure to authenticate the macaroon.

InvalidSignature

Arises when verifying a Macaroon, and the signature does not match what is expected. Indicates a failure to authenticate the macaroon.

Trait Implementations

Formats the value using the given formatter. Read more
Formats the value using the given formatter. Read more
The lower-level source of this error, if any. Read more
👎Deprecated since 1.42.0: use the Display impl or to_string()
👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type based access to context intended for error reports. Read more
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.
Converts to this type from the input type.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

🔬This is a nightly-only experimental API. (provide_any)
Data providers should implement this method to provide all values they are able to provide by using demand. Read more
Converts the given value to a String. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.