summaryrefslogtreecommitdiff
path: root/src/managers/TokenManager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/managers/TokenManager.cpp')
-rw-r--r--src/managers/TokenManager.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/managers/TokenManager.cpp b/src/managers/TokenManager.cpp
index 8f7929ee..89db3256 100644
--- a/src/managers/TokenManager.cpp
+++ b/src/managers/TokenManager.cpp
@@ -10,7 +10,7 @@ std::string CUUIDToken::getUUID() {
return uuid;
}
-std::string CTokenManager::registerNewToken(std::any data, std::chrono::system_clock::duration expires) {
+std::string CTokenManager::getRandomUUID() {
std::string uuid;
do {
uuid_t uuid_;
@@ -20,6 +20,12 @@ std::string CTokenManager::registerNewToken(std::any data, std::chrono::system_c
(uint16_t)uuid_[9], (uint16_t)uuid_[10], (uint16_t)uuid_[11], (uint16_t)uuid_[12], (uint16_t)uuid_[13], (uint16_t)uuid_[14], (uint16_t)uuid_[15]);
} while (m_mTokens.contains(uuid));
+ return uuid;
+}
+
+std::string CTokenManager::registerNewToken(std::any data, std::chrono::system_clock::duration expires) {
+ std::string uuid = getRandomUUID();
+
m_mTokens[uuid] = std::make_shared<CUUIDToken>(uuid, data, expires);
return uuid;
}