summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Mathewson <nickm@torproject.org>2017-09-04 12:24:05 -0400
committerNick Mathewson <nickm@torproject.org>2017-09-04 12:24:05 -0400
commit109cfebca540c80d176cde54e672e72ab8908139 (patch)
tree38934f809878f8aa25673b25647e7851489f549d
parent85688dc33ddc80233fa6c883a589fb4ba9377a5d (diff)
parent0850ae50490419b3d071a18462253148ea29e62c (diff)
downloadtor-109cfebca540c80d176cde54e672e72ab8908139.tar.gz
tor-109cfebca540c80d176cde54e672e72ab8908139.zip
Merge remote-tracking branch 'dgoulet/bug23327_032_01'
-rw-r--r--src/or/hs_client.c8
-rw-r--r--src/or/hs_client.h2
-rw-r--r--src/or/hs_common.c2
3 files changed, 12 insertions, 0 deletions
diff --git a/src/or/hs_client.c b/src/or/hs_client.c
index 99be058eb7..19e20c0e8d 100644
--- a/src/or/hs_client.c
+++ b/src/or/hs_client.c
@@ -1251,3 +1251,11 @@ hs_client_reextend_intro_circuit(origin_circuit_t *circ)
return ret;
}
+/* Release all the storage held by the client subsystem. */
+void
+hs_client_free_all(void)
+{
+ /* Purge the hidden service request cache. */
+ hs_purge_last_hid_serv_requests();
+}
+
diff --git a/src/or/hs_client.h b/src/or/hs_client.h
index 8ed0501c91..86784f52c3 100644
--- a/src/or/hs_client.h
+++ b/src/or/hs_client.h
@@ -46,5 +46,7 @@ extend_info_t *hs_client_get_random_intro_from_edge(
int hs_client_reextend_intro_circuit(origin_circuit_t *circ);
+void hs_client_free_all(void);
+
#endif /* TOR_HS_CLIENT_H */
diff --git a/src/or/hs_common.c b/src/or/hs_common.c
index 7d10754cde..5ea44b97e7 100644
--- a/src/or/hs_common.c
+++ b/src/or/hs_common.c
@@ -19,6 +19,7 @@
#include "nodelist.h"
#include "hs_cache.h"
#include "hs_common.h"
+#include "hs_client.h"
#include "hs_ident.h"
#include "hs_service.h"
#include "policies.h"
@@ -1704,6 +1705,7 @@ hs_free_all(void)
hs_circuitmap_free_all();
hs_service_free_all();
hs_cache_free_all();
+ hs_client_free_all();
}
/* For the given origin circuit circ, decrement the number of rendezvous