aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--changes/bug407513
-rw-r--r--changes/ticket407535
-rw-r--r--src/feature/dirauth/dirvote.c8
-rw-r--r--src/feature/hs/hs_metrics.h2
5 files changed, 18 insertions, 1 deletions
diff --git a/.gitignore b/.gitignore
index d3ac3bbc52..94988ed982 100644
--- a/.gitignore
+++ b/.gitignore
@@ -67,6 +67,7 @@ core.*
/stamp-h
/stamp-h.in
/stamp-h1
+/tags
/TAGS
/test-driver
/tor.sh
diff --git a/changes/bug40751 b/changes/bug40751
new file mode 100644
index 0000000000..baa5e90397
--- /dev/null
+++ b/changes/bug40751
@@ -0,0 +1,3 @@
+ o Minor bugfixes (metrics):
+ - Decrement hs_intro_established_count on introduction circuit close. Fixes
+ bug 40751; bugfix on 0.4.7.12.
diff --git a/changes/ticket40753 b/changes/ticket40753
new file mode 100644
index 0000000000..c5dc76b006
--- /dev/null
+++ b/changes/ticket40753
@@ -0,0 +1,5 @@
+ o Minor features (directory authorities):
+ - Directory authorities now include their AuthDirMaxServersPerAddr
+ config option in the consensus parameter section of their vote. Now
+ external tools can better predict how they will behave. Implements
+ ticket 40753.
diff --git a/src/feature/dirauth/dirvote.c b/src/feature/dirauth/dirvote.c
index 1bb4fd7de1..0591125d51 100644
--- a/src/feature/dirauth/dirvote.c
+++ b/src/feature/dirauth/dirvote.c
@@ -4878,6 +4878,14 @@ dirserv_generate_networkstatus_vote_obj(crypto_pk_t *private_key,
smartlist_split_string(v3_out->net_params,
paramline->value, NULL, 0, 0);
}
+
+ /* for transparency and visibility, include our current value of
+ * AuthDirMaxServersPerAddr in our consensus params. Once enough dir
+ * auths do this, external tools should be able to use that value to
+ * help understand which relays are allowed into the consensus. */
+ smartlist_add_asprintf(v3_out->net_params, "AuthDirMaxServersPerAddr=%d",
+ d_options->AuthDirMaxServersPerAddr);
+
smartlist_sort_strings(v3_out->net_params);
}
v3_out->bw_file_headers = bw_file_headers;
diff --git a/src/feature/hs/hs_metrics.h b/src/feature/hs/hs_metrics.h
index 6af3a7e7f0..2e0fa5048d 100644
--- a/src/feature/hs/hs_metrics.h
+++ b/src/feature/hs/hs_metrics.h
@@ -65,6 +65,6 @@ void hs_metrics_update_by_service(const hs_metrics_key_t key,
/** Established introduction circuit closes. This is called when
* INTRO_ESTABLISHED circuit is marked for close. */
#define hs_metrics_close_established_intro(i) \
- hs_metrics_update_by_ident(HS_METRICS_NUM_ESTABLISHED_INTRO, (i), 0, 1)
+ hs_metrics_update_by_ident(HS_METRICS_NUM_ESTABLISHED_INTRO, (i), 0, -1)
#endif /* !defined(TOR_FEATURE_HS_HS_METRICS_H) */