From 6249163e0cd249b1c6f43646b75568dc6fc7d35f Mon Sep 17 00:00:00 2001 From: simonmicro Date: Tue, 28 May 2024 23:00:25 +0200 Subject: [PATCH] Use ReleaseDate instead of MinDate Made InvalidWinBuild/NCountPolicy optional Signed-off-by: simonmicro --- py-kms/pykms_Client.py | 2 +- py-kms/pykms_PidGenerator.py | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/py-kms/pykms_Client.py b/py-kms/pykms_Client.py index d2fe1b52..142b316a 100644 --- a/py-kms/pykms_Client.py +++ b/py-kms/pykms_Client.py @@ -184,7 +184,7 @@ def client_update(): if sName == name + 'Enterprise' or \ sName == name[:6] + 'ProfessionalPlus' + name[6:]: clt_config['KMSClientSkuID'] = skuitem['Id'] - clt_config['RequiredClientCount'] = int(kmsitem['NCountPolicy']) + clt_config['RequiredClientCount'] = int(kmsitem.get('NCountPolicy', 25)) # if not given default to 25 clt_config['KMSProtocolMajorVersion'] = int(float(kmsitem['DefaultKmsProtocol'])) clt_config['KMSProtocolMinorVersion'] = 0 clt_config['KMSClientLicenseStatus'] = 2 diff --git a/py-kms/pykms_PidGenerator.py b/py-kms/pykms_PidGenerator.py index bf84187d..0bb130d0 100644 --- a/py-kms/pykms_PidGenerator.py +++ b/py-kms/pykms_PidGenerator.py @@ -20,7 +20,7 @@ def epidGenerator(kmsId, version, lcid): for csvlkitem in csvlkitems: try: if kmsId in [ uuid.UUID(kmsitem) for kmsitem in csvlkitem['Activate'] ]: - pkeys.append( (csvlkitem['GroupId'], csvlkitem['MinKeyId'], csvlkitem['MaxKeyId'], csvlkitem['InvalidWinBuild']) ) + pkeys.append( (csvlkitem['GroupId'], csvlkitem['MinKeyId'], csvlkitem['MaxKeyId'], csvlkitem.get('InvalidWinBuild', '[]')) ) else: # fallback to Windows Server 2019 parameters. pkeys.append( ('206', '551000000', '570999999', '[0,1,2]') ) @@ -40,10 +40,11 @@ def epidGenerator(kmsId, version, lcid): hosts.append(winbuild) except KeyError: # fallback to Windows Server 2019 parameters. - hosts.append( {'BuildNumber':'17763', 'PlatformId':'3612', 'MinDate':'02/10/2018'} ) + hosts.append( {'BuildNumber':'17763', 'PlatformId':'3612', 'ReleaseDate':'2018-02-10T00:00:00Z'} ) host = random.choice(hosts) - BuildNumber, PlatformId, MinDate = host['BuildNumber'], host['PlatformId'], host['MinDate'] + + BuildNumber, PlatformId, ReleaseDate = host['BuildNumber'], host['PlatformId'], host['ReleaseDate'] # Generate Part 3 and Part 4: Product Key ID productKeyID = random.randint(MinKeyId, MaxKeyId) @@ -55,7 +56,7 @@ def epidGenerator(kmsId, version, lcid): languageCode = lcid # (C# CultureInfo.InstalledUICulture.LCID) # Generate Part 8: KMS Host Activation Date - d = datetime.datetime.strptime(MinDate, "%d/%m/%Y") + d = datetime.datetime.fromisoformat(ReleaseDate) minTime = datetime.date(d.year, d.month, d.day) # Generate Year and Day Number