瀏覽代碼

r14526@catbus: nickm | 2007-08-13 14:08:37 -0400
Make voting interval configurable.


svn:r11083

Nick Mathewson 17 年之前
父節點
當前提交
33cf3ada94
共有 3 個文件被更改,包括 10 次插入3 次删除
  1. 2 0
      src/or/config.c
  2. 4 2
      src/or/dirvote.c
  3. 4 1
      src/or/or.h

+ 2 - 0
src/or/config.c

@@ -271,6 +271,8 @@ static config_var_t _option_vars[] = {
   VAR("V1AuthoritativeDirectory",BOOL, V1AuthoritativeDir,   "0"),
   VAR("V2AuthoritativeDirectory",BOOL, V2AuthoritativeDir,   "0"),
   VAR("V3AuthoritativeDirectory",BOOL, V3AuthoritativeDir,   "0"),
+  /* XXXX020 check this for sanity. */
+  VAR("V3AuthVotingInterval",INTERVAL, V3AuthVotingInterval, "1 hour"),
   VAR("VersioningAuthoritativeDirectory",BOOL,VersioningAuthoritativeDir, "0"),
   VAR("VirtualAddrNetwork",  STRING,   VirtualAddrNetwork,   "127.192.0.0/10"),
   VAR("__AllDirActionsPrivate",BOOL,   AllDirActionsPrivate, "0"),

+ 4 - 2
src/or/dirvote.c

@@ -998,10 +998,12 @@ authority_cert_dup(authority_cert_t *cert)
 void
 dirvote_get_preferred_voting_intervals(vote_timing_t *timing_out)
 {
+  or_options_t *options = get_options();
+
   tor_assert(timing_out);
 
-  /* XXXX020 make these configurable. */
-  timing_out->vote_interval = 3600;
+  timing_out->vote_interval = options->V3AuthVotingInterval;
+ /* XXXX020 make these configurable. */
   timing_out->n_intervals_valid = 3;
   timing_out->vote_delay = 300;
   timing_out->dist_delay = 300;

+ 4 - 1
src/or/or.h

@@ -2060,13 +2060,16 @@ typedef struct {
                                * support BEGIN_DIR, when possible. */
   int AllowNonRFC953Hostnames; /**< If true, we allow connections to hostnames
                                 * with weird characters. */
- /** If true, we try resolving hostnames with weird characters. */
+  /** If true, we try resolving hostnames with weird characters. */
   int ServerDNSAllowNonRFC953Hostnames;
 
   /** If true, we try to download extra-info documents (and we serve them,
    * if we are a cache).  For authorities, this is always true. */
   int DownloadExtraInfo;
 
+  /** DOCDOC */
+  int V3AuthVotingInterval;
+
 } or_options_t;
 
 /** Persistent state for an onion router, as saved to disk. */