diff --git a/src/data_transfer.cpp b/src/data_transfer.cpp index faa4e55986426f2ce28dd260d394a4f71fa72c6f..d3124cb15e2e5c2b5fa06b14f143ab4e9a0c5c40 100644 --- a/src/data_transfer.cpp +++ b/src/data_transfer.cpp @@ -39,13 +39,16 @@ #include <atomic> #include <cstdlib> // mkstemp +#include <opendht/rng.h> + namespace ring { static DRing::DataTransferId generateUID() { - static DRing::DataTransferId lastId = 0; - return lastId++; + thread_local dht::crypto::random_device rd; + std::uniform_int_distribution<DRing::DataTransferId> dist; + return dist(rd); } //==============================================================================