Граф коммитов

41 Коммитов

Автор SHA1 Сообщение Дата
David Parks 81628820f6 Bug 1284897 - Add opcodes to nsWindowsDllInterceptor for GetSaveFileNameW, GetOpenFileNameW and ImmReleaseContext. r=aklotz
This includes a near-jump CALL instruction in x64, which expands to a far-jump CALL with a 64-bit address as inline data. This requires us to abandon the method where we memcpy the code block into the trampoline and, instead, build the trampoline function as we go.

--HG--
extra : rebase_source : 7f90ce5ba1a82dff731aff1ac17117c684b7b2cf
2017-01-20 16:03:44 -08:00
Sebastian Hengst 1c6c3bfb07 Backed out changeset a176abd99d2b (bug 1284897) for "Unknown sync IPC message PPluginModule::GetFileName"; needs review from an IPC peer now. r=backout on a CLOSED TREE 2017-02-21 23:15:11 +01:00
Sebastian Hengst 5400f1a2d3 Backed out changeset 4e81ec8850dc (bug 1284897) 2017-02-21 23:13:34 +01:00
David Parks 258144b97c Bug 1284897 - Add missing hooked methods to TestDllInterceptor. r=aklotz
Added ASSERTions to nsWindowsDllInterceptor in case of a failed detour hook, with an exception for the RET opcode that appears in ImmReleaseContext. Added documentation about TestDllInterceptor.

--HG--
extra : rebase_source : 48a38a09a1feb63600e12eba997a83f646cd1595
extra : histedit_source : 566cec5c47c400402e2e4dfa0cdc6d53d82b0815
2017-02-07 12:00:45 -08:00
David Parks ad89b9cf9b Bug 1284897 - Add opcodes to nsWindowsDllInterceptor for GetSaveFileNameW, GetOpenFileNameW and ImmReleaseContext. r=aklotz
This includes a near-jump CALL instruction in x64, which expands to a far-jump CALL with a 64-bit address as inline data. This requires us to abandon the method where we memcpy the code block into the trampoline and, instead, build the trampoline function as we go.

--HG--
extra : rebase_source : f0362c4b8200ba3d05191fdd45c5783dccd444bc
extra : histedit_source : 3018adf0c7d5849f87adc5e5459acf9f0e56301c
2017-01-20 16:03:44 -08:00
Phil Ringnalda 87ae1a50e4 Backed out 5 changesets (bug 1284897) for mozilla::SandboxPermissions::RemovePermissionsForProcess crashes
Backed out changeset 19b2fcee13a9 (bug 1284897)
Backed out changeset a5171791437f (bug 1284897)
Backed out changeset 3ea8b8a18515 (bug 1284897)
Backed out changeset 21497a4e3bde (bug 1284897)
Backed out changeset 12e17d5f0fa9 (bug 1284897)
2017-02-16 22:14:15 -08:00
David Parks cb9c91b2bb Bug 1284897 - Add missing hooked methods to TestDllInterceptor. r=aklotz
Added ASSERTions to nsWindowsDllInterceptor in case of a failed detour hook, with an exception for the RET opcode that appears in ImmReleaseContext. Added documentation about TestDllInterceptor.
2017-02-07 12:00:45 -08:00
David Parks e1341ab02e Bug 1284897 - Add opcodes to nsWindowsDllInterceptor for GetSaveFileNameW, GetOpenFileNameW and ImmReleaseContext. r=aklotz
This includes a near-jump CALL instruction in x64, which expands to a far-jump CALL with a 64-bit address as inline data. This requires us to abandon the method where we memcpy the code block into the trampoline and, instead, build the trampoline function as we go.
2017-01-20 16:03:44 -08:00
David Major 65625866dd Bug 1335896 - Shrink maxPatchedFns in WindowsDllInterceptor. r=aklotz
MozReview-Commit-ID: HLHC2l9ElA0
2017-02-10 14:20:43 +13:00
Aaron Klotz 9a3cf49632 Bug 1314183: Ensure that nsWindowsDllInterceptor does not accept RIP-relative displacements on amd64; r=dmajor
MozReview-Commit-ID: DNf3h9UiRkG

--HG--
extra : rebase_source : 5357b972f72ca10579c6a8ba4a73b61ea84870bb
2016-11-02 10:42:07 -06:00
Aaron Klotz d4a8a0d706 Bug 1310056: Part 2 - Additional DLL interceptor enhancements; r=m_kato
MozReview-Commit-ID: 6fFbGjqTHzg
2016-10-25 17:57:16 -06:00
Aaron Klotz bb3855e88a Bug 1310056: Part 1 - DllInterceptor improvements to support InSendMessageEx; r=m_kato
MozReview-Commit-ID: 2I1AHqKGfQi
2016-10-13 15:04:48 -06:00
Aaron Klotz b785d4851f Bug 1218473: Add check for presence of NVIDIA Optimus drivers to WindowsNopSpacePatcher; r=ehsan
MozReview-Commit-ID: 7WhWWbRHOw7
2016-10-13 17:10:52 -06:00
Aaron Klotz 25ab6720e1 Bug 1240848: Adds additional instructions to x64 detour patcher and prevents register clobbering in jmp from trampoline; r=ehsan
MozReview-Commit-ID: 7DCQZc9eoQI
2016-10-13 14:56:23 -06:00
Aaron Klotz dc65cea470 Bug 1240977: DLL interceptor improvements for Windows 10 x64 ntdll APIs; r=ehsan
MozReview-Commit-ID: rM8XWK5y2n
2016-10-13 15:15:22 -06:00
Makoto Kato 893f6698da Bug 1180684 - Part 1. Analyze MOV with GS. r=aklotz
Allow MOV with GS prefix on x64.  Windows 10 uses this opcode on GetKeyState().

MozReview-Commit-ID: CqDSxmWdkiH

--HG--
extra : rebase_source : aa83b2b4c141730eb89f29cad61af79e66cb7a71
2016-09-07 16:15:58 +09:00
Ryan VanderMeulen d05085d0b5 Backed out changeset e135879cff29 (bug 1218473) to fix various Windows startup issues being experienced by some users. a=sledru
--HG--
extra : source : fd105431c25d9c6b4a265c80bfc1208ff468ea03
extra : intermediate-source : 02156c26b928dfdb8076fd09c32ba7ca311ff360
2016-02-11 13:35:48 -05:00
Carsten "Tomcat" Book b1fb989ae0 Backed out changeset 6e4e5e584c32 (bug 1240848) for causing bug 1241921 to reappear 2016-02-11 15:12:51 +01:00
Aaron Klotz 33ea2e8a9e Bug 1240848: Adds additional instructions to x64 detour patcher and prevents register clobbering in jmp from trampoline; r=ehsan
--HG--
extra : rebase_source : c9604e99a0741213676227cfc7f915236c6e67ee
extra : amend_source : 7f2bbe6e661ab4dffc045d24489bf40d0409b093
2016-02-03 16:21:17 -07:00
Ryan VanderMeulen 3b54dc9561 Backed out changeset 9f34b95fa1d0 (bug 1240977) and changeset a786af9186eb (bug 1240848) for suspicion of causing the topcrashes in bug 1241921. a=topcrash 2016-01-22 18:27:10 -05:00
Aaron Klotz 096c338869 Bug 1240977 - DLL interceptor improvements for Windows 10 x64 ntdll APIs; r=ehsan 2016-01-20 10:44:17 -07:00
Aaron Klotz 5c9b0e3676 Bug 1240848: Adds additional instructions to x64 detour patcher; r=ehsan
--HG--
extra : rebase_source : 7c050d496e5cf09343dece8a8bb12551eafc7928
extra : amend_source : 68d46effe9b2b7925eff419b14492f399c55b667
2016-01-19 15:14:24 -07:00
Aaron Klotz 007abcfb31 Bug 1218473: Add check for presence of NVIDIA Optimus drivers to WindowsNopSpacePatcher; r=ehsan
--HG--
extra : rebase_source : 69a2905a9cb631b3f66418d46dcfc6fbd189baaa
2016-01-06 12:54:48 -07:00
Makoto Kato 41219d5981 Bug 1208944 - Part 4. nsWindowsDllInterceptor supports IMM32 API hook. r=ehsan 2015-12-29 22:57:38 +09:00
Sebastian Hengst e082884d78 Backed out 15 changesets (bug 1208944) for failing tests M(2,5) on OSX. r=backout
Backed out changeset c29de223de2f (bug 1208944)
Backed out changeset 3d99da255be1 (bug 1209844)
Backed out changeset 3c915942af38 (bug 1209844)
Backed out changeset 759b425b5503 (bug 1208944)
Backed out changeset bf73cf8f0fda (bug 1208944)
Backed out changeset 0e337d912b7d (bug 1208944)
Backed out changeset 31c47f2980b5 (bug 1208944)
Backed out changeset 3e0d70a6e809 (bug 1208944)
Backed out changeset 7685dcb63e5f (bug 1208944)
Backed out changeset 3c2b9372dd36 (bug 1208944)
Backed out changeset 18160d306493 (bug 1208944)
Backed out changeset 4974e397b655 (bug 1208944)
Backed out changeset fde7e439844d (bug 1208944)
Backed out changeset 4213a355fbdc (bug 1208944)
Backed out changeset 33cfddbbf5f2 (bug 1208944)
2015-12-29 17:42:02 +01:00
Makoto Kato a4309e941a Bug 1208944 - Part 4. nsWindowsDllInterceptor supports IMM32 API hook. r=ehsan 2015-12-29 22:57:38 +09:00
Phil Ringnalda 2ad5117d1a Back out a25efba616ac (bug 1218473) on suspicion of causing Windows 8 shutdown crashes "with exit code 3221225477" 2015-11-29 12:38:30 -08:00
Aaron Klotz 9162a0feda Bug 1218473: Add check for presence of NVIDIA Optimus drivers to WindowsNopSpacePatcher; r=ehsan
--HG--
extra : rebase_source : f179d1f950faccf71415c9a694160bc65d014fbb
2015-11-27 13:01:23 -07:00
David Major 1415ae55cb Bug 1201205 part 2: Restore protection on the nop space separately from the function. r=m_kato
--HG--
extra : rebase_source : c3b5d44c04b41dc4133e9f3f50a0394c964ac673
2015-09-04 14:24:05 -04:00
David Major 2f23a1b1e6 Bug 1201205 part 1: Add an AutoVirtualProtect helper class to make the next patch easier. r=m_kato
--HG--
extra : rebase_source : c32b1cd483bdbfe09760fcb7c0a36cecf3b9940c
2015-09-04 14:23:33 -04:00
David Major 789b31656d Bug 1192844: Accept 0xCC padding in WindowsDllDetourPatcher::CreateTrampoline. r=m_kato
--HG--
extra : rebase_source : 6711e475036ea3fe98bb054b79e10ad8d54692fb
2015-08-12 13:10:04 -04:00
Andrew McCreight 1e0f87e27d Bug 1151541, part 2 - Fix mode lines in xpcom/. r=froydnj 2015-04-09 10:25:05 -07:00
Makoto Kato 9b07a3a0af Bug 1131436 - WindowsDllInterceptor is always failure with --disable-optimize and --enable-debug. r=dmajor 2015-02-12 15:07:57 +09:00
Makoto Kato e9788e3d05 Bug 1121829 - Support redirection of kernel32.dll for hooking function. r=dmajor 2015-01-16 23:07:09 +09:00
Makoto Kato 276b9dd00e Bug 1112709 - CreateFileW isn't hooking properly on Windows 8/8.1. r=ehsan 2014-12-24 13:23:36 +09:00
David Major ff75043656 Bug 1103830: Support 0x40 prefix byte (plain REX). r=m_kato
--HG--
extra : rebase_source : affded50f428e9295b2eda4b311ebd0c2677a138
2014-11-26 15:41:21 +13:00
Birunthan Mohanathas 1368df8aae Bug 1046841 - Convert xpcom/build/ to Gecko style. r=froydnj 2014-08-13 11:45:37 -07:00
David Major 8eac9bd50c Bug 1018477: Fix R/M check in x86 detour code. r=m_kato 2014-06-03 16:47:43 +12:00
Aaron Klotz 4ebf28f26c Bug 972577: Consolidate IOInterposer initialization code; r=froydnj,BenWa,jimm
--HG--
rename : tools/profiler/IOInterposer.cpp => xpcom/build/IOInterposer.cpp
rename : tools/profiler/IOInterposer.h => xpcom/build/IOInterposer.h
rename : tools/profiler/NSPRInterposer.cpp => xpcom/build/NSPRInterposer.cpp
rename : tools/profiler/NSPRInterposer.h => xpcom/build/NSPRInterposer.h
rename : toolkit/xre/nsWindowsDllInterceptor.h => xpcom/build/nsWindowsDllInterceptor.h
2014-03-14 16:35:01 -06:00
Wes Kocher a20307b017 Backed out changeset 2bdd2d042847 (bug 972577) for non-unified bustage on a CLOSED TREE
--HG--
rename : xpcom/build/nsWindowsDllInterceptor.h => toolkit/xre/nsWindowsDllInterceptor.h
rename : xpcom/build/IOInterposer.cpp => tools/profiler/IOInterposer.cpp
rename : xpcom/build/IOInterposer.h => tools/profiler/IOInterposer.h
rename : xpcom/build/NSPRInterposer.cpp => tools/profiler/NSPRInterposer.cpp
rename : xpcom/build/NSPRInterposer.h => tools/profiler/NSPRInterposer.h
2014-03-14 15:27:21 -07:00
Aaron Klotz ae4aa8bc28 Bug 972577: Consolidate IOInterposer initialization code; r=froydnj,BenWa,jimm
--HG--
rename : tools/profiler/IOInterposer.cpp => xpcom/build/IOInterposer.cpp
rename : tools/profiler/IOInterposer.h => xpcom/build/IOInterposer.h
rename : tools/profiler/NSPRInterposer.cpp => xpcom/build/NSPRInterposer.cpp
rename : tools/profiler/NSPRInterposer.h => xpcom/build/NSPRInterposer.h
rename : toolkit/xre/nsWindowsDllInterceptor.h => xpcom/build/nsWindowsDllInterceptor.h
2014-03-14 13:47:24 -06:00