pub enum RejectReason {
Show 19 variants
HeadersMissing,
IntegrityTokenInvalid,
CreatedTooOld,
CreatedTooFarInFuture,
Replayed,
JwksUnavailable,
NonceStoreUnavailable,
BodyReadTimeout,
ClientDisconnected,
BodyReadFailed,
DeviceIntegrityFailed,
SignatureInvalid,
SignatureInputMalformed,
SignatureMalformed,
ComponentMissing,
AlgMismatch,
NonceInvalid,
SignatureBaseIncomplete,
BodyTooLarge,
}Expand description
The reason a request was refused.
The value is API: it reaches the client in the error body and tags the rejection metric, and
clients decide whether to retry on it. The names and statuses match go-sonic’s canonical
request middleware so that clients see one taxonomy across services. Adding a reason is
additive; renaming one breaks clients that already shipped.
Variants§
HeadersMissing
Integrity-Token, Signature-Input or Signature is absent.
IntegrityTokenInvalid
The integrity token did not verify. A refreshed token may succeed.
CreatedTooOld
created is older than the maximum age. Signing again may succeed.
CreatedTooFarInFuture
created is too far in the future. The client clock needs fixing before a retry helps.
Replayed
This exact request was already accepted.
The Attestation Gateway keys could not be obtained. Ours, not the client’s.
The replay store could not be reached. Ours, not the client’s.
BodyReadTimeout
The body did not arrive in time.
ClientDisconnected
The client went away while sending the body.
BodyReadFailed
The body could not be read for another reason.
DeviceIntegrityFailed
The Attestation Gateway judged the device untrustworthy. Retrying cannot help.
SignatureInvalid
The request signature does not verify under the attested key.
SignatureInputMalformed
Signature-Input violates Structured Fields or the profile. A client bug.
SignatureMalformed
Signature violates Structured Fields or the profile. A client bug.
ComponentMissing
A required component is not covered. A client bug.
AlgMismatch
alg does not match the attested platform.
NonceInvalid
The nonce is not canonical base64 of at least 16 bytes. A client bug.
SignatureBaseIncomplete
A covered component cannot be resolved. A client bug.
BodyTooLarge
The body exceeds the size limit.
Implementations§
Source§impl RejectReason
impl RejectReason
Trait Implementations§
Source§impl Clone for RejectReason
impl Clone for RejectReason
impl Copy for RejectReason
Source§impl Debug for RejectReason
impl Debug for RejectReason
Source§impl Display for RejectReason
impl Display for RejectReason
impl Eq for RejectReason
Source§impl From<RejectReason> for Rejection
impl From<RejectReason> for Rejection
Source§fn from(reason: RejectReason) -> Self
fn from(reason: RejectReason) -> Self
Source§impl Hash for RejectReason
impl Hash for RejectReason
Source§impl PartialEq for RejectReason
impl PartialEq for RejectReason
impl StructuralPartialEq for RejectReason
Auto Trait Implementations§
impl Freeze for RejectReason
impl RefUnwindSafe for RejectReason
impl Send for RejectReason
impl Sync for RejectReason
impl Unpin for RejectReason
impl UnsafeUnpin for RejectReason
impl UnwindSafe for RejectReason
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.