From 7945e1cb2c5ce3956caa4320accca9bbc773f284 Mon Sep 17 00:00:00 2001 From: Dario Sassi Date: Mon, 25 Jan 2021 08:04:27 +0000 Subject: [PATCH] EgtLock : - corretta generazione licenze per versioni inferiori a 22. --- KeyProc.cpp | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/KeyProc.cpp b/KeyProc.cpp index be60572..1f5aa50 100644 --- a/KeyProc.cpp +++ b/KeyProc.cpp @@ -39,12 +39,17 @@ MakeKey( int nProd, int nVer, int nLev, int nExpDays, const string& sScramKey, string& sKey) { // sistemazioni per nuova versione mensile valide fino alla 2806 - // ( 2201->22, 2202->23 ... 2212->33, 2301->34, 2302->35 ... 2312->45) - if ( nVer > 22 && nVer < 100) + // ( 16->16, 19->19, 21->21, 22->22, 2201->22, 2202->23 ... 2212->33, 2301->34, 2302->35 ... 2312->45) + int nVerNew ; + if ( nVer >= 1 && nVer <= 22) + nVerNew = nVer ; + else if ( nVer >= 2201) { + int nVerY = ( nVer >= 100 ? nVer / 100 : nVer) ; + int nVerM = ( nVer >= 100 ? Clamp( nVer % 100 - 1, 0, 11) : 0) ; + nVerNew = Clamp( 22 + 12 * ( nVerY - 22) + nVerM, 0, 99) ; + } + else return false ; - int nVerY = ( nVer >= 100 ? nVer / 100 : nVer) ; - int nVerM = ( nVer >= 100 ? Clamp( nVer % 100 - 1, 0, 11) : 0) ; - int nVerNew = Clamp( 22 + 12 * ( nVerY - 22) + nVerM, 0, 99) ; // inizializzo parte pseudorandom srand( nVerNew + nLev) ; // preparo la stringa da criptare