tor

The Tor anonymity network
git clone https://git.dasho.dev/tor.git
Log | Files | Refs | README | LICENSE

commit 57c82b74b43132d34fffd6c03932555bfbf503e1
parent e5601f14ed4384e8de1030d21cc7442df48adabe
Author: Suphanat Chunhapanya <haxx.pop@gmail.com>
Date:   Fri,  7 Sep 2018 21:29:44 +0700

hs-v3: Shuffle the list of authorized clients

This commit makes it that the authorized clients in the descriptor are in
random order instead of ordered by how they were read on disk.

Fixes #27545

Signed-off-by: David Goulet <dgoulet@torproject.org>

Diffstat:
Msrc/feature/hs/hs_service.c | 5+++++
1 file changed, 5 insertions(+), 0 deletions(-)

diff --git a/src/feature/hs/hs_service.c b/src/feature/hs/hs_service.c @@ -18,6 +18,7 @@ #include "lib/crypt_ops/crypto_rand.h" #include "lib/crypt_ops/crypto_util.h" #include "lib/crypt_ops/crypto_ope.h" +#include "lib/crypt_ops/crypto_rand.h" #include "feature/dircache/directory.h" #include "core/mainloop/main.h" #include "feature/nodelist/networkstatus.h" @@ -1800,6 +1801,10 @@ build_service_desc_superencrypted(const hs_service_t *service, smartlist_add(superencrypted->clients, desc_client); } + /* Shuffle the list to prevent the client know the position in the + * config. */ + smartlist_shuffle(superencrypted->clients); + return 0; }