Module ids

Module ids 

Source
Expand description

Code to abstract over the notion of relays having one or more identities.

Currently (2022), every Tor relay has exactly two identities: A legacy identity that is based on the SHA-1 hash of an RSA-1024 public key, and a modern identity that is an Ed25519 public key. This code lets us abstract over those types, and over other new types that may exist in the future.

Modulesยง

by_id ๐Ÿ”’
Define a type for a set of HasRelayIds objects that can be looked up by any of their keys.
set ๐Ÿ”’
Implement a set of RelayId.

Macrosยง

derive_deftly_driver_RelayIdType ๐Ÿ”’
impl_eq_variant ๐Ÿ”’
Expand to an implementation for PartialEq for a given key type.

Structsยง

RelayIdTypeIter
An iterator over the variants of RelayIdType

Enumsยง

RelayId
A single relay identity.
RelayIdError
An error returned while trying to parse a RelayId.
RelayIdRef
A reference to a single relay identity.
RelayIdType
The type of a relay identity.