From cabb00fc78ef865b91338ff7db1882fa43e329dc Mon Sep 17 00:00:00 2001 From: binarymaster Date: Fri, 17 Jun 2016 22:11:05 +0300 Subject: [PATCH] INI: Add support for new builds (fix #123) 10.0.14366.0 x86/x64 10.0.14367.0 x86/x64 --- README.md | 2 + res/rdpwrap-ini-kb.txt | 106 +++++++++++++++++++++++++++++++++++++++++ res/rdpwrap.ini | 90 ++++++++++++++++++++++++++++++++++ technical.txt | 5 ++ 4 files changed, 203 insertions(+) diff --git a/README.md b/README.md index dfc69bf..3ca5591 100644 --- a/README.md +++ b/README.md @@ -199,6 +199,8 @@ Change log:
10.0.14332.1001 (Windows 10 RS1 Release 160422-1940)
10.0.14342.1000 (Windows 10 RS1 Release 160506-1708)
10.0.14352.1002 (Windows 10 RS1 Release 160522-1930)
+• 10.0.14366.0 (Windows 10 RS1 Release 160610-1700)
+• 10.0.14367.0 (Windows 10 RS1 Release 160613-1700)

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 9dfecfa..519d9a9 100644 --- a/res/rdpwrap-ini-kb.txt +++ b/res/rdpwrap-ini-kb.txt @@ -1819,6 +1819,66 @@ SLInitHook.x64=1 SLInitOffset.x64=CDB0 SLInitFunc.x64=New_CSLQuery_Initialize +[10.0.14366.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A9088 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FB01 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=34F65 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=21DE4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=316E9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1A855 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=4793E +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CCE0 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14367.0] +; Patch CEnforcementCore::GetInstanceOfTSLicense +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A9088 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FB01 +LocalOnlyCode.x64=jmpshort +; Patch CSessionArbitrationHelper::IsSingleSessionPerUserEnabled +SingleUserPatch.x86=1 +SingleUserOffset.x86=34F65 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=21DE4 +SingleUserCode.x64=Zero +; Patch CDefPolicy::Query +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=316E9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1A855 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +; Hook CSLQuery::Initialize +SLInitHook.x86=1 +SLInitOffset.x86=4793E +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CCE0 +SLInitFunc.x64=New_CSLQuery_Initialize + [SLInit] ; Is server bServerSku=1 @@ -1845,6 +1905,14 @@ bInitialized=1 ; 4. It will be comparsion with CSLQuery::bServerSku constant ; 5. Now it's easy to find other constants +; Strings to find other values: +; CSLQuery::GetMaxUserSessions +; CSLQuery::IsAppServerInstalled failed: +; CSLQuery::AreRemoteConnectionsAllowed f +; CSLQuery::IsMultimonAllowed +; CSLQuery::GetMaxDebugSessions +; CSLQuery::IsFUSEnabled + bFUSEnabled.x86 =A22A8 lMaxUserSessions.x86 =A22AC bAppServerAllowed.x86 =A22B0 @@ -2272,3 +2340,41 @@ bRemoteConnAllowed.x64=E8464 bMultimonAllowed.x64 =E8468 ulMaxDebugSessions.x64=E846C bFUSEnabled.x64 =E8470 + +[10.0.14366.0-SLInit] +bInitialized.x86 =C4F68 +bServerSku.x86 =C4F6C +lMaxUserSessions.x86 =C4F70 +bAppServerAllowed.x86 =C4F74 +bRemoteConnAllowed.x86=C4F78 +bMultimonAllowed.x86 =C4F7C +ulMaxDebugSessions.x86=C4F80 +bFUSEnabled.x86 =C4F84 + +bServerSku.x64 =E93E0 +lMaxUserSessions.x64 =E93E4 +bAppServerAllowed.x64 =E93E8 +bInitialized.x64 =EA480 +bRemoteConnAllowed.x64=EA484 +bMultimonAllowed.x64 =EA488 +ulMaxDebugSessions.x64=EA48C +bFUSEnabled.x64 =EA490 + +[10.0.14367.0-SLInit] +bInitialized.x86 =C4F68 +bServerSku.x86 =C4F6C +lMaxUserSessions.x86 =C4F70 +bAppServerAllowed.x86 =C4F74 +bRemoteConnAllowed.x86=C4F78 +bMultimonAllowed.x86 =C4F7C +ulMaxDebugSessions.x86=C4F80 +bFUSEnabled.x86 =C4F84 + +bServerSku.x64 =E93E0 +lMaxUserSessions.x64 =E93E4 +bAppServerAllowed.x64 =E93E8 +bInitialized.x64 =EA480 +bRemoteConnAllowed.x64=EA484 +bMultimonAllowed.x64 =EA488 +ulMaxDebugSessions.x64=EA48C +bFUSEnabled.x64 =EA490 diff --git a/res/rdpwrap.ini b/res/rdpwrap.ini index baf54cb..051c4b4 100644 --- a/res/rdpwrap.ini +++ b/res/rdpwrap.ini @@ -895,6 +895,58 @@ SLInitHook.x64=1 SLInitOffset.x64=CDB0 SLInitFunc.x64=New_CSLQuery_Initialize +[10.0.14366.0] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A9088 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FB01 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=34F65 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=21DE4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=316E9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1A855 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=4793E +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CCE0 +SLInitFunc.x64=New_CSLQuery_Initialize + +[10.0.14367.0] +LocalOnlyPatch.x86=1 +LocalOnlyOffset.x86=A9088 +LocalOnlyCode.x86=jmpshort +LocalOnlyPatch.x64=1 +LocalOnlyOffset.x64=8FB01 +LocalOnlyCode.x64=jmpshort +SingleUserPatch.x86=1 +SingleUserOffset.x86=34F65 +SingleUserCode.x86=nop +SingleUserPatch.x64=1 +SingleUserOffset.x64=21DE4 +SingleUserCode.x64=Zero +DefPolicyPatch.x86=1 +DefPolicyOffset.x86=316E9 +DefPolicyCode.x86=CDefPolicy_Query_eax_ecx +DefPolicyPatch.x64=1 +DefPolicyOffset.x64=1A855 +DefPolicyCode.x64=CDefPolicy_Query_eax_rcx +SLInitHook.x86=1 +SLInitOffset.x86=4793E +SLInitFunc.x86=New_CSLQuery_Initialize +SLInitHook.x64=1 +SLInitOffset.x64=CCE0 +SLInitFunc.x64=New_CSLQuery_Initialize + [SLInit] bServerSku=1 bRemoteConnAllowed=1 @@ -1332,3 +1384,41 @@ bRemoteConnAllowed.x64=E8464 bMultimonAllowed.x64 =E8468 ulMaxDebugSessions.x64=E846C bFUSEnabled.x64 =E8470 + +[10.0.14366.0-SLInit] +bInitialized.x86 =C4F68 +bServerSku.x86 =C4F6C +lMaxUserSessions.x86 =C4F70 +bAppServerAllowed.x86 =C4F74 +bRemoteConnAllowed.x86=C4F78 +bMultimonAllowed.x86 =C4F7C +ulMaxDebugSessions.x86=C4F80 +bFUSEnabled.x86 =C4F84 + +bServerSku.x64 =E93E0 +lMaxUserSessions.x64 =E93E4 +bAppServerAllowed.x64 =E93E8 +bInitialized.x64 =EA480 +bRemoteConnAllowed.x64=EA484 +bMultimonAllowed.x64 =EA488 +ulMaxDebugSessions.x64=EA48C +bFUSEnabled.x64 =EA490 + +[10.0.14367.0-SLInit] +bInitialized.x86 =C4F68 +bServerSku.x86 =C4F6C +lMaxUserSessions.x86 =C4F70 +bAppServerAllowed.x86 =C4F74 +bRemoteConnAllowed.x86=C4F78 +bMultimonAllowed.x86 =C4F7C +ulMaxDebugSessions.x86=C4F80 +bFUSEnabled.x86 =C4F84 + +bServerSku.x64 =E93E0 +lMaxUserSessions.x64 =E93E4 +bAppServerAllowed.x64 =E93E8 +bInitialized.x64 =EA480 +bRemoteConnAllowed.x64=EA484 +bMultimonAllowed.x64 =EA488 +ulMaxDebugSessions.x64=EA48C +bFUSEnabled.x64 =EA490 diff --git a/technical.txt b/technical.txt index a109695..f3f8455 100644 --- a/technical.txt +++ b/technical.txt @@ -76,11 +76,16 @@ Terminal Services supported versions 10.0.14332.1001 (Windows 10 rs1_release.160422-1940) [init hook + extended patch] 10.0.14342.1000 (Windows 10 rs1_release.160506-1708) [init hook + extended patch] 10.0.14352.1002 (Windows 10 rs1_release.160522-1930) [init hook + extended patch] +10.0.14366.0 (Windows 10 rs1_release.160610-1700) [init hook + extended patch] +10.0.14367.0 (Windows 10 rs1_release.160613-1700) [init hook + extended patch] Source code changelog (rdpwrap library): 2016.06.17 : - fixed issue with termsrv.dll 10.0.14352.1002 +- added support for termsrv.dll 10.0.14366.0 +- added support for termsrv.dll 10.0.14367.0 + 2016.05.30 : - added support for termsrv.dll 10.0.14352.1002