pub enum Protocol {
    Reserved,
    TLS,
    Email,
    DNSSec,
    IPSec,
    Other(u8),
    All,
}
Available on crate feature dnssec only.
Expand description

RFC 2535, Domain Name System Security Extensions, March 1999

3.1.3 The Protocol Octet

   It is anticipated that keys stored in DNS will be used in conjunction
   with a variety of Internet protocols.  It is intended that the
   protocol octet and possibly some of the currently unused (must be
   zero) bits in the KEY RR flags as specified in the future will be
   used to indicate a key's validity for different protocols.

   The following values of the Protocol Octet are reserved as indicated:

        VALUE   Protocol

          0      -reserved
          1     TLS
          2     email
          3     dnssec
          4     IPSEC
         5-254   - available for assignment by IANA
         255     All

   In more detail:
        1 is reserved for use in connection with TLS.
        2 is reserved for use in connection with email.
        3 is used for DNS security.  The protocol field SHOULD be set to
          this value for zone keys and other keys used in DNS security.
          Implementations that can determine that a key is a DNS
          security key by the fact that flags label it a zone key or the
          signatory flag field is non-zero are NOT REQUIRED to check the
          protocol field.
        4 is reserved to refer to the Oakley/IPSEC [RFC 2401] protocol
          and indicates that this key is valid for use in conjunction
          with that security standard.  This key could be used in
          connection with secured communication on behalf of an end
          entity or user whose name is the owner name of the KEY RR if
          the entity or user flag bits are set.  The presence of a KEY
          resource with this protocol value is an assertion that the
          host speaks Oakley/IPSEC.
        255 indicates that the key can be used in connection with any
          protocol for which KEY RR protocol octet values have been
          defined.  The use of this value is discouraged and the use of
          different keys for different protocols is encouraged.

RFC3445, Limiting the KEY Resource Record (RR), December 2002

All Protocol Octet values except DNSSEC (3) are eliminated

Variants

Reserved

👎Deprecated:

Deprecated by RFC3445

Not in use

TLS

👎Deprecated:

Deprecated by RFC3445

Reserved for use with TLS

Email

👎Deprecated:

Deprecated by RFC3445

Reserved for use with email

DNSSec

Reserved for use with DNSSec (Trust-DNS only supports DNSKEY with DNSSec)

IPSec

👎Deprecated:

Deprecated by RFC3445

Reserved to refer to the Oakley/IPSEC

Other(u8)

👎Deprecated:

Deprecated by RFC3445

Undefined

All

👎Deprecated:

Deprecated by RFC3445

the key can be used in connection with any protocol

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Returns the “default value” for a type. Read more

Deserialize this value from the given Serde deserializer. Read more

Converts to this type from the input type.

Converts to this type from the input type.

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 !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more

Serialize this value into the given Serde serializer. Read more

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

Compare self to key and return true if they are equal.

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

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

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

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more