pub enum Component {
Method,
Scheme,
Authority,
Path,
Query,
ContentDigest,
IntegrityToken,
}Expand description
A covered component of the signature base.
These are the only components the profile resolves, and a request must cover all of them. Resolving nothing else keeps unsigned headers from ever reaching the signature base.
Variants§
Method
@method: the request method.
Scheme
@scheme: the scheme the client dialled, taken from server configuration.
Authority
@authority: the host the client dialled, taken from server configuration.
Path
@path: the percent-encoded request path, / when empty.
Query
@query: the raw query prefixed with ?, or ? alone when absent.
ContentDigest
content-digest: RFC 9530 SHA-256 digest of the raw body bytes.
IntegrityToken
integrity-token: the exact Integrity-Token header value.
Implementations§
Source§impl Component
impl Component
Sourcepub const fn identifier(self) -> &'static str
pub const fn identifier(self) -> &'static str
The RFC 9421 component identifier, as it appears in Signature-Input.
Sourcepub fn from_identifier(identifier: &str) -> Option<Self>
pub fn from_identifier(identifier: &str) -> Option<Self>
Resolves an identifier. Matching is exact: RFC 9421 field names are lowercase.
Trait Implementations§
impl Copy for Component
impl Eq for Component
impl StructuralPartialEq for Component
Auto Trait Implementations§
impl Freeze for Component
impl RefUnwindSafe for Component
impl Send for Component
impl Sync for Component
impl Unpin for Component
impl UnsafeUnpin for Component
impl UnwindSafe for Component
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.