#[repr(transparent)]
pub struct EchConfig(pub Vec<u8>);
Expand description
9.  SVCB/HTTPS RR parameter for ECH configuration

  The SVCB "echconfig" parameter is defined for conveying the ECH
  configuration of an alternative endpoint.  In wire format, the value
  of the parameter is an ECHConfigs vector [ECH], including the
  redundant length prefix.  In presentation format, the value is a
  single ECHConfigs encoded in Base64 [base64].  Base64 is used here to
  simplify integration with TLS server software.  To enable simpler
  parsing, this SvcParam MUST NOT contain escape sequences.

  When ECH is in use, the TLS ClientHello is divided into an
  unencrypted "outer" and an encrypted "inner" ClientHello.  The outer
  ClientHello is an implementation detail of ECH, and its contents are
  controlled by the ECHConfig in accordance with [ECH].  The inner
  ClientHello is used for establishing a connection to the service, so
  its contents may be influenced by other SVCB parameters.  For
  example, the requirements on the ProtocolNameList in Section 6.1
  apply only to the inner ClientHello.  Similarly, it is the inner
  ClientHello whose Server Name Indication identifies the desired

Tuple Fields

0: Vec<u8>

Trait Implementations

In wire format, the value of the parameter is an ECHConfigs vector (ECH), including the redundant length prefix (a 2 octet field containing the length of the SvcParamValue as an integer between 0 and 65535 in network byte order).

Returns the object in binary form

In wire format, the value of the parameter is an ECHConfigs vector (ECH), including the redundant length prefix (a 2 octet field containing the length of the SvcParamValue as an integer between 0 and 65535 in network byte order).

Returns the object in binary form

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

The debug format for EchConfig will output the value in BASE64 like Display, but will the addition of the type-name.

As the documentation states, the presentation format (what this function outputs) must be a BASE64 encoded string. trust-dns will encode to BASE64 during formatting of the internal data, and output the BASE64 value.

draft-ietf-dnsop-svcb-https-03 SVCB and HTTPS RRs for DNS, February 2021

In presentation format, the value is a
  single ECHConfigs encoded in Base64 [base64].  Base64 is used here to
  simplify integration with TLS server software.  To enable simpler
  parsing, this SvcParam MUST NOT contain escape sequences.

note while the on the wire the EchConfig has a redundant length, the RFC is not explicit about including it in the BASE64 encoded value, trust-dns will encode the data as it is stored, i.e. without the length encoding.

Feeds this value into the given Hasher. Read more

Feeds a slice of this type into the given Hasher. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

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.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

Uses borrowed data to replace owned data, usually by cloning. 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.