commit 5dcc6bef1ec69248ff82d111ff64d61ee71f1f11 Author: Nick Mathewson nickm@torproject.org Date: Wed Jun 21 16:44:28 2017 -0400
Add GETINFO targets to determine whether md/desc fetching is enabled
Closes ticket 22684. --- changes/ticket22684 | 5 +++++ src/or/control.c | 10 ++++++++++ 2 files changed, 15 insertions(+)
diff --git a/changes/ticket22684 b/changes/ticket22684 new file mode 100644 index 0000000..f1d9d21 --- /dev/null +++ b/changes/ticket22684 @@ -0,0 +1,5 @@ + o Minor features (control): + - Add GETINFO desc/download-enabled and md/download-enabled, to + inform the controller whether try to download router descriptors + and microdescriptors respectively. Closes ticket 22684. + diff --git a/src/or/control.c b/src/or/control.c index b971725..5c15944 100644 --- a/src/or/control.c +++ b/src/or/control.c @@ -1919,6 +1919,9 @@ getinfo_helper_dir(control_connection_t *control_conn, "instead of desc/name/*."; return 0; } + } else if (!strcmp(question, "desc/download-enabled")) { + int r = we_fetch_router_descriptors(get_options()); + tor_asprintf(answer, "%d", !!r); } else if (!strcmp(question, "desc/all-recent")) { routerlist_t *routerlist = router_get_routerlist(); smartlist_t *sl = smartlist_new(); @@ -2004,6 +2007,9 @@ getinfo_helper_dir(control_connection_t *control_conn, if (md && md->body) { *answer = tor_strndup(md->body, md->bodylen); } + } else if (!strcmp(question, "md/download-enabled")) { + int r = we_fetch_microdescriptors(get_options()); + tor_asprintf(answer, "%d", !!r); } else if (!strcmpstart(question, "desc-annotations/id/")) { const routerinfo_t *ri = NULL; const node_t *node = @@ -3026,9 +3032,13 @@ static const getinfo_item_t getinfo_items[] = { PREFIX("desc/name/", dir, "Router descriptors by nickname."), ITEM("desc/all-recent", dir, "All non-expired, non-superseded router descriptors."), + ITEM("desc/download-enabled", dir, + "Do we try to download router descriptors?"), ITEM("desc/all-recent-extrainfo-hack", dir, NULL), /* Hack. */ PREFIX("md/id/", dir, "Microdescriptors by ID"), PREFIX("md/name/", dir, "Microdescriptors by name"), + ITEM("md/download-enabled", dir, + "Do we try to download microdescriptors?"), PREFIX("extra-info/digest/", dir, "Extra-info documents by digest."), PREFIX("hs/client/desc/id", dir, "Hidden Service descriptor in client's cache by onion."),
tor-commits@lists.torproject.org