diff options
author | Nick Mathewson <nickm@torproject.org> | 2008-05-12 02:14:01 +0000 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2008-05-12 02:14:01 +0000 |
commit | f3f6ecef48b019fe18fac371b64c3f3466ef3388 (patch) | |
tree | 29075075ca19e72f6e593c31ca0db4092ba5741b /src/or/or.h | |
parent | b7a80920e26f53e354975a7252e3a1f33ef9192b (diff) | |
download | tor-f3f6ecef48b019fe18fac371b64c3f3466ef3388.tar.gz tor-f3f6ecef48b019fe18fac371b64c3f3466ef3388.zip |
r19690@catbus: nickm | 2008-05-11 22:13:31 -0400
Implement a proposal to let a directory authority migrate its identity key without ceasing to sign consensuses.
svn:r14584
Diffstat (limited to 'src/or/or.h')
-rw-r--r-- | src/or/or.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/or/or.h b/src/or/or.h index 592cef764a..4153b76a37 100644 --- a/src/or/or.h +++ b/src/or/or.h @@ -1461,6 +1461,7 @@ typedef struct networkstatus_voter_info_t { uint16_t or_port; /**< OR port of this voter */ char *contact; /**< Contact information for this voter. */ char vote_digest[DIGEST_LEN]; /**< Digest of this voter's vote, as signed. */ + char legacy_id_digest[DIGEST_LEN]; /**< From vote only. DOCDOC */ /* Nothing from here on is signed. */ char signing_key_digest[DIGEST_LEN]; /**< Declared digest of signing key @@ -2339,6 +2340,10 @@ typedef struct { /** The number of intervals we think a consensus should be valid. */ int V3AuthNIntervalsValid; + /** Should advertise and sign consensuses with a legacy key, for key + * migration purposes? */ + int V3AuthUseLegacyKey; + /** File to check for a consensus networkstatus, if we don't have one * cached. */ char *FallbackNetworkstatusFile; @@ -3772,6 +3777,8 @@ crypto_pk_env_t *get_identity_key(void); int identity_key_is_set(void); authority_cert_t *get_my_v3_authority_cert(void); crypto_pk_env_t *get_my_v3_authority_signing_key(void); +authority_cert_t *get_my_v3_legacy_cert(void); +crypto_pk_env_t *get_my_v3_legacy_signing_key(void); void dup_onion_keys(crypto_pk_env_t **key, crypto_pk_env_t **last); void rotate_onion_key(void); crypto_pk_env_t *init_key_from_file(const char *fname, int generate, |