diff options
author | Nick Mathewson <nickm@torproject.org> | 2016-07-01 15:29:05 -0400 |
---|---|---|
committer | Nick Mathewson <nickm@torproject.org> | 2016-07-01 15:29:05 -0400 |
commit | aaa31290431ea2cd1d1e8498dbe271eb53d2389d (patch) | |
tree | d7ff38ffee26c5ab4571f089e8cf06d9e687a14c /src/or/or.h | |
parent | 738a8c655a1f8067b330b132164fa8879ef102c3 (diff) | |
parent | 36e201dffc5d57d92113e1e68ad4b6a0a7b3471e (diff) | |
download | tor-aaa31290431ea2cd1d1e8498dbe271eb53d2389d.tar.gz tor-aaa31290431ea2cd1d1e8498dbe271eb53d2389d.zip |
Merge remote-tracking branch 'dgoulet/ticket16943_029_05-squashed'
Trivial Conflicts:
src/or/or.h
src/or/routerparse.c
Diffstat (limited to 'src/or/or.h')
-rw-r--r-- | src/or/or.h | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/or/or.h b/src/or/or.h index a1a0810e4b..ed799b98ff 100644 --- a/src/or/or.h +++ b/src/or/or.h @@ -2523,6 +2523,18 @@ typedef struct networkstatus_voter_info_t { smartlist_t *sigs; } networkstatus_voter_info_t; +typedef struct networkstatus_sr_info_t { + /* Indicate if the dirauth partitipates in the SR protocol with its vote. + * This is tied to the SR flag in the vote. */ + unsigned int participate:1; + /* Both vote and consensus: Current and previous SRV. If list is empty, + * this means none were found in either the consensus or vote. */ + struct sr_srv_t *previous_srv; + struct sr_srv_t *current_srv; + /* Vote only: List of commitments. */ + smartlist_t *commits; +} networkstatus_sr_info_t; + /** Enumerates the possible seriousness values of a networkstatus document. */ typedef enum { NS_TYPE_VOTE, @@ -2605,6 +2617,9 @@ typedef struct networkstatus_t { /** If present, a map from descriptor digest to elements of * routerstatus_list. */ digestmap_t *desc_digest_map; + + /** Contains the shared random protocol data from a vote or consensus. */ + networkstatus_sr_info_t sr_info; } networkstatus_t; /** A set of signatures for a networkstatus consensus. Unless otherwise @@ -4503,6 +4518,12 @@ typedef struct { * lifetime of this Tor process. */ uint64_t MaxUnparseableDescSizeToLog; + + /** Bool (default: 1): Switch for the shared random protocol. Only + * relevant to a directory authority. If off, the authority won't + * participate in the protocol. If on (default), a flag is added to the + * vote indicating participation. */ + int AuthDirSharedRandomness; } or_options_t; /** Persistent state for an onion router, as saved to disk. */ |