From 32acf504cb7588a80c719b09bc686f97fa837df7 Mon Sep 17 00:00:00 2001 From: Claudio Cambra Date: Sat, 20 May 2023 23:12:31 +0800 Subject: [PATCH] Simplify password generation in sharemodel Signed-off-by: Claudio Cambra --- src/gui/filedetails/sharemodel.cpp | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/src/gui/filedetails/sharemodel.cpp b/src/gui/filedetails/sharemodel.cpp index 03ce26f84c..1315c69d45 100644 --- a/src/gui/filedetails/sharemodel.cpp +++ b/src/gui/filedetails/sharemodel.cpp @@ -37,10 +37,15 @@ QString createRandomPassword() constexpr auto numChars = 24; QString passwd; - while(passwd.length() < numChars) { - const auto remainingChars = numChars - passwd.length(); - unsigned char unsignedCharArray[remainingChars]; - RAND_bytes(unsignedCharArray, remainingChars); + unsigned char unsignedCharArray[numChars]; + RAND_bytes(unsignedCharArray, numChars); + + for (auto i = 0; i < numChars; i++) { + auto byte = unsignedCharArray[i]; + byte %= asciiRange; + byte += asciiMin; + passwd.append(byte); + } for (auto i = 0; i < remainingChars; i++) { auto byte = unsignedCharArray[i];