summaryrefslogtreecommitdiff
path: root/server/src/utilities.cpp
diff options
context:
space:
mode:
authorGluzskiy Alexandr <sss@sss.chaoslab.ru>2015-08-11 14:29:43 +0300
committerGluzskiy Alexandr <sss@sss.chaoslab.ru>2015-08-11 14:29:43 +0300
commit04edaab436dae1747270d7d10c0586a2a4c222bf (patch)
treee8c059076ec341861c734ce2efd0d8afef431a33 /server/src/utilities.cpp
parent1aaddd285d1c3ba2ba99eef006062a32c4dedafc (diff)
missed changes
Diffstat (limited to 'server/src/utilities.cpp')
-rw-r--r--server/src/utilities.cpp22
1 files changed, 22 insertions, 0 deletions
diff --git a/server/src/utilities.cpp b/server/src/utilities.cpp
index ab10e30..c8510c9 100644
--- a/server/src/utilities.cpp
+++ b/server/src/utilities.cpp
@@ -20,6 +20,10 @@
#include <boost/log/trivial.hpp>
+#include <boost/random.hpp>
+#include <boost/nondet_random.hpp>
+
+
#include "utilities.h"
#include "../../protocol/udm.pb.h"
@@ -56,3 +60,21 @@ std::shared_ptr<char*> pack_msg(server_msg *msg, int *size_)
msg->SerializeToString(&msg_buf);
return pack_data(msg_buf, size_);
}
+
+std::string random_string(int length)
+{
+ BOOST_LOG_TRIVIAL(debug)<<__FILE__<<":"<<__LINE__<<"\t"<<__func__;
+ std::string chars("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890");
+ std::string data;
+ boost::random_device rng;
+ boost::variate_generator<boost::random_device&, boost::uniform_int<>> gen(rng, boost::uniform_int<>(0, (int)chars.length()-1));
+ for(int i = 0; i < length; ++i)
+ data += chars[gen()];
+ return data;
+}
+
+std::string generate_auth_token()
+{
+ return random_string(64);
+}
+