Enum SupportedGroup
pub enum SupportedGroup {
Show 56 variants
SECT163K1,
SECT163R1,
SECT163R2,
SECT193R1,
SECT193R2,
SECT233K1,
SECT233R1,
SECT239K1,
SECT283K1,
SECT283R1,
SECT409K1,
SECT409R1,
SECT571K1,
SECT571R1,
SECP160K1,
SECP160R1,
SECP160R2,
SECP192K1,
SECP192R1,
SECP224K1,
SECP224R1,
SECP256K1,
SECP256R1,
SECP384R1,
SECP521R1,
BRAINPOOLP256R1,
BRAINPOOLP384R1,
BRAINPOOLP512R1,
X25519,
X448,
BRAINPOOLP256R1TLS13,
BRAINPOOLP384R1TLS13,
BRAINPOOLP512R1TLS13,
GC256A,
GC256B,
GC256C,
GC256D,
GC512A,
GC512B,
GC512C,
CURVESM2,
FFDHE2048,
FFDHE3072,
FFDHE4096,
FFDHE6144,
FFDHE8192,
MLKEM1024,
X25519MLKEM768,
X25519KYBER768DRAFT00,
X25519KYBER512DRAFT00,
X25519KYBER768DRAFT00OLD,
P256R1KYBER768DRAFT00,
SECP256R1KYBER768DRAFT00,
ARBITRARY_EXPLICIT_PRIME_CURVES,
ARBITRARY_EXPLICIT_CHAR2_CURVES,
Unknown(u16),
}tls only.Expand description
The SupportedGroup TLS protocol enum. Values in this enum are taken
from the various RFCs covering TLS, and are listed by IANA.
The Unknown item is used when processing unrecognised ordinals.
Variants§
SECT163K1
SECT163R1
SECT163R2
SECT193R1
SECT193R2
SECT233K1
SECT233R1
SECT239K1
SECT283K1
SECT283R1
SECT409K1
SECT409R1
SECT571K1
SECT571R1
SECP160K1
SECP160R1
SECP160R2
SECP192K1
SECP192R1
SECP224K1
SECP224R1
SECP256K1
SECP256R1
SECP384R1
SECP521R1
BRAINPOOLP256R1
BRAINPOOLP384R1
BRAINPOOLP512R1
X25519
X448
BRAINPOOLP256R1TLS13
BRAINPOOLP384R1TLS13
BRAINPOOLP512R1TLS13
GC256A
GC256B
GC256C
GC256D
GC512A
GC512B
GC512C
CURVESM2
FFDHE2048
FFDHE3072
FFDHE4096
FFDHE6144
FFDHE8192
MLKEM1024
X25519MLKEM768
X25519KYBER768DRAFT00
X25519KYBER512DRAFT00
X25519KYBER768DRAFT00OLD
P256R1KYBER768DRAFT00
SECP256R1KYBER768DRAFT00
ARBITRARY_EXPLICIT_PRIME_CURVES
ARBITRARY_EXPLICIT_CHAR2_CURVES
Unknown(u16)
Retains an unrecognized numeric value.
Implementations§
§impl SupportedGroup
impl SupportedGroup
pub fn variant_name(&self) -> Cow<'static, str>
Available on crate feature boring only.
pub fn variant_name(&self) -> Cow<'static, str>
boring only.Return this value’s variant name, or its decimal number when the value is unknown.
Known values borrow their 'static mnemonic, and
Self::Unknown values render their numeric value. Unlike
Display and Debug the result is a bare, stable label,
suitable for log fields, metrics, and telemetry.
§impl SupportedGroup
impl SupportedGroup
§impl SupportedGroup
impl SupportedGroup
Available on crate feature boring only.
boring only.Encoded client key-share length for groups modeled here.
This describes the key_exchange bytes, excluding the group and vector
length. None means the encoding is not modeled; it does not establish
backend support. GREASE has no algorithm-defined length.
Classical encodings follow RFC 8446 section 4.2.8; X25519MLKEM768 follows RFC 10024 section 4.1.
Trait Implementations§
§impl Clone for SupportedGroup
impl Clone for SupportedGroup
§fn clone(&self) -> SupportedGroup
fn clone(&self) -> SupportedGroup
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for SupportedGroup
§impl Debug for SupportedGroup
impl Debug for SupportedGroup
§impl<'de> Deserialize<'de> for SupportedGroup
impl<'de> Deserialize<'de> for SupportedGroup
§fn deserialize<D>(
deserializer: D,
) -> Result<SupportedGroup, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
fn deserialize<D>(
deserializer: D,
) -> Result<SupportedGroup, <D as Deserializer<'de>>::Error>where
D: Deserializer<'de>,
§impl Display for SupportedGroup
impl Display for SupportedGroup
impl Eq for SupportedGroup
§impl From<SupportedGroup> for u16
impl From<SupportedGroup> for u16
§fn from(value: SupportedGroup) -> u16
fn from(value: SupportedGroup) -> u16
§impl From<u16> for SupportedGroup
impl From<u16> for SupportedGroup
§fn from(x: u16) -> SupportedGroup
fn from(x: u16) -> SupportedGroup
§impl Hash for SupportedGroup
impl Hash for SupportedGroup
§impl LowerHex for SupportedGroup
impl LowerHex for SupportedGroup
§impl Ord for SupportedGroup
impl Ord for SupportedGroup
§fn cmp(&self, other: &SupportedGroup) -> Ordering
fn cmp(&self, other: &SupportedGroup) -> Ordering
Compare by numeric value, then distinguish colliding variants.
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
1.21.0 (const: unstable) · Source§fn min(self, other: Self) -> Selfwhere
Self: Sized,
fn min(self, other: Self) -> Selfwhere
Self: Sized,
§impl PartialEq for SupportedGroup
impl PartialEq for SupportedGroup
§impl PartialOrd for SupportedGroup
impl PartialOrd for SupportedGroup
§impl RamaTryFrom<SslCurve, RamaTlsBoringCrateMarker> for SupportedGroup
impl RamaTryFrom<SslCurve, RamaTlsBoringCrateMarker> for SupportedGroup
type Error = SslCurve
fn rama_try_from( value: SslCurve, ) -> Result<SupportedGroup, <SupportedGroup as RamaTryFrom<SslCurve, RamaTlsBoringCrateMarker>>::Error>
§impl RamaTryFrom<SupportedGroup, RamaTlsBoringCrateMarker> for SslCurve
impl RamaTryFrom<SupportedGroup, RamaTlsBoringCrateMarker> for SslCurve
type Error = SupportedGroup
fn rama_try_from( value: SupportedGroup, ) -> Result<SslCurve, <SslCurve as RamaTryFrom<SupportedGroup, RamaTlsBoringCrateMarker>>::Error>
§impl Serialize for SupportedGroup
impl Serialize for SupportedGroup
§fn serialize<S>(
&self,
serializer: S,
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
fn serialize<S>(
&self,
serializer: S,
) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>where
S: Serializer,
impl StructuralPartialEq for SupportedGroup
Auto Trait Implementations§
impl Freeze for SupportedGroup
impl RefUnwindSafe for SupportedGroup
impl Send for SupportedGroup
impl Sync for SupportedGroup
impl Unpin for SupportedGroup
impl UnsafeUnpin for SupportedGroup
impl UnwindSafe for SupportedGroup
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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,
§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a rama_grpc::Request§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§fn and<P, B, E>(self, other: P) -> And<T, P>
fn and<P, B, E>(self, other: P) -> And<T, P>
Policy that returns Action::Follow only if self and other return
Action::Follow. Read more§impl<T, U> RamaTryFrom<T> for Uwhere
U: TryFrom<T>,
impl<T, U> RamaTryFrom<T> for Uwhere
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
fn rama_try_from(value: T) -> Result<U, <U as RamaTryFrom<T>>::Error>
§impl<T, U, CrateMarker> RamaTryInto<U, CrateMarker> for Twhere
U: RamaTryFrom<T, CrateMarker>,
impl<T, U, CrateMarker> RamaTryInto<U, CrateMarker> for Twhere
U: RamaTryFrom<T, CrateMarker>,
type Error = <U as RamaTryFrom<T, CrateMarker>>::Error
fn rama_try_into(self) -> Result<U, <U as RamaTryFrom<T, CrateMarker>>::Error>
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
§impl<T> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.