summaryrefslogtreecommitdiff
path: root/utilities.cpp
diff options
context:
space:
mode:
authorGluzskiy Alexandr <sss123next@list.ru>2010-10-27 06:31:24 +0300
committerGluzskiy Alexandr <sss123next@list.ru>2010-10-27 06:31:24 +0300
commitc7417593521a2a96442e97508354e32f502bd931 (patch)
treee0041648790fa8aa07215eccc40e5f2714d9e97a /utilities.cpp
parentfea62665b2057d0be6bdffbb04e986d3b1792da4 (diff)
random key generation
Diffstat (limited to 'utilities.cpp')
-rw-r--r--utilities.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/utilities.cpp b/utilities.cpp
index e857d5d..8b52ce2 100644
--- a/utilities.cpp
+++ b/utilities.cpp
@@ -938,4 +938,15 @@ wstring toUTF16(string str) //convert as much as possible
utf8::replace_invalid(str.begin(), str.end(), back_inserter(tmpstr));
utf8::utf8to16(tmpstr.begin(), tmpstr.end(), back_inserter(ustr));
return ustr;
+}
+
+string get_random(int length)
+{
+ string chars("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890");
+ string data;
+ boost::random_device rng;
+ boost::variate_generator<boost::random_device&, boost::uniform_int<>> gen(rng, boost::uniform_int<>(0, chars.length()-1));
+ for(int i = 0; i < length; ++i)
+ data += chars[gen()];
+ return data;
} \ No newline at end of file