From ff3df89647fa34e815ebc0150fd7181c5da1d33e Mon Sep 17 00:00:00 2001 From: binarymaster Date: Thu, 28 Jan 2016 20:52:46 +0300 Subject: [PATCH] INI: Add support for 10.0.14251.1000 --- README.md | 1 + res/rdpwrap-ini-kb.txt | 55 +++++++++++++++++++++++++++++++++++++++++- res/rdpwrap.ini | 47 +++++++++++++++++++++++++++++++++++- technical.txt | 4 +++ 4 files changed, 105 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 7e74150..adfac2c 100644 --- a/README.md +++ b/README.md @@ -189,6 +189,7 @@ Change log:
10.0.10586.0 (Windows 10 TH2 Release 151029-1700)
10.0.11082.1000 (Windows 10 RS1 Release 151210-2021)
10.0.11102.1000 (Windows 10 RS1 Release 160113-1800)
+• 10.0.14251.1000 (Windows 10 RS1 Release 160124-1059)

Confirmed working on:
• Windows Vista Starter (x86 - Service Pack 1 and higher)
diff --git a/res/rdpwrap-ini-kb.txt b/res/rdpwrap-ini-kb.txt index 6fc8849..43d9545 100644 --- a/res/rdpwrap-ini-kb.txt +++ b/res/rdpwrap-ini-kb.txt @@ -1,6 +1,6 @@ [Main] ; Last updated date -Updated=2016-01-26 +Updated=2016-01-28 ; Address to log file (RDP Wrapper will write it, if exists) LogFile=\rdpwrap.txt ; Hook SLPolicy API on Windows NT 6.0 @@ -850,6 +850,10 @@ SLPolicyFunc.x64=New_Win8SL ; 2. All xrefs will point to this function ; 3. Go to function beginning and check ; CODE XREF string, it will point to GetInstanceOfTSLicense function ; 4. Follow CODE XREF, switch to graph view, the next block below is to patch +; Another way: +; 1. Search text: CEnforcementCore::GetInstanceOfTSLicense FAILED - License type me +; 2. All xrefs will point to GetInstanceOfTSLicense +; 3. Follow xref, the previous block above is to patch ; Patch CEnforcementCore::GetInstanceOfTSLicense ; .text:1008A604 call ?IsLicenseTypeLocalOnly@CSLQuery@@SGJAAU_GUID@@PAH@Z ; CSLQuery::IsLicenseTypeLocalOnly(_GUID &,int *) @@ -1526,6 +1530,36 @@ SLInitHook.x64=1 SLInitOffset.x64=D160 SLInitFunc.x64=New_CSLQuery_Initialize +[10.0.14251.1000] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A5D58 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=95CD1 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=35A85 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=2A9C4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=30159 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1B5D5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=44FD2 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=D160 +SLInitFunc.x64=New_CSLQuery_Initialize + [SLInit] ; Is server bServerSku=1 @@ -1797,3 +1831,22 @@ bFUSEnabled.x64 =F2440 bServerSku.x64 =F244C lMaxUserSessions.x64 =F2450 bAppServerAllowed.x64 =F2454 + +[10.0.14251.1000-SLInit] +bInitialized.x86 =C1F5C +bServerSku.x86 =C1F60 +lMaxUserSessions.x86 =C1F64 +bAppServerAllowed.x86 =C1F68 +bRemoteConnAllowed.x86=C1F6C +bMultimonAllowed.x86 =C1F70 +ulMaxDebugSessions.x86=C1F74 +bFUSEnabled.x86 =C1F78 + +bInitialized.x64 =F2430 +bRemoteConnAllowed.x64=F2434 +bMultimonAllowed.x64 =F2438 +ulMaxDebugSessions.x64=F243C +bFUSEnabled.x64 =F2440 +bServerSku.x64 =F244C +lMaxUserSessions.x64 =F2450 +bAppServerAllowed.x64 =F2454 diff --git a/res/rdpwrap.ini b/res/rdpwrap.ini index ca39278..6a3d7f3 100644 --- a/res/rdpwrap.ini +++ b/res/rdpwrap.ini @@ -2,7 +2,7 @@ ; Do not modify without special knowledge [Main] -Updated=2016-01-26 +Updated=2016-01-28 LogFile=\rdpwrap.txt SLPolicyHookNT60=1 SLPolicyHookNT61=1 @@ -647,6 +647,32 @@ SLInitHook.x64=1 SLInitOffset.x64=D160 SLInitFunc.x64=New_CSLQuery_Initialize +[10.0.14251.1000] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A5D58 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=95CD1 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=35A85 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=2A9C4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=30159 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1B5D5 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=44FD2 +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=D160 +SLInitFunc.x64=New_CSLQuery_Initialize + [SLInit] bServerSku=1 bRemoteConnAllowed=1 @@ -903,3 +929,22 @@ bFUSEnabled.x64 =F2440 bServerSku.x64 =F244C lMaxUserSessions.x64 =F2450 bAppServerAllowed.x64 =F2454 + +[10.0.14251.1000-SLInit] +bInitialized.x86 =C1F5C +bServerSku.x86 =C1F60 +lMaxUserSessions.x86 =C1F64 +bAppServerAllowed.x86 =C1F68 +bRemoteConnAllowed.x86=C1F6C +bMultimonAllowed.x86 =C1F70 +ulMaxDebugSessions.x86=C1F74 +bFUSEnabled.x86 =C1F78 + +bInitialized.x64 =F2430 +bRemoteConnAllowed.x64=F2434 +bMultimonAllowed.x64 =F2438 +ulMaxDebugSessions.x64=F243C +bFUSEnabled.x64 =F2440 +bServerSku.x64 =F244C +lMaxUserSessions.x64 =F2450 +bAppServerAllowed.x64 =F2454 diff --git a/technical.txt b/technical.txt index a7b37ca..1160def 100644 --- a/technical.txt +++ b/technical.txt @@ -66,12 +66,16 @@ Terminal Services supported versions 10.0.10586.0 (Windows 10 th2_release.151029-1700) [init hook + extended patch] 10.0.11082.1000 (Windows 10 rs1_release.151210-2021) [init hook + extended patch] 10.0.11102.1000 (Windows 10 rs1_release.160113-1800) [init hook + extended patch] +10.0.14251.1000 (Windows 10 rs1_release.160124-1059) [init hook + extended patch] Known failures 6.0.6000.16386 (Windows Vista RTM x86, crashes on logon attempt) Source code changelog (rdpwrap library): +2016.01.28 : +- added support for termsrv.dll 10.0.14251.1000 + 2016.01.26 : - added support for termsrv.dll 10.0.11102.1000