Commit Graph

7 Commits

Author SHA1 Message Date
David Parks
4ebbc7c0c4 Bug 1462979 - Broker HttpEndRequestA for plugin process. r=jimm
Some file uploads fail (terminate early) without this function.  Its omission from the original system was unintentional.
2018-05-29 12:27:23 -07:00
David Parks
b45b6cfefa Bug 1366256 - Part 3: Broker camera CreateMutexW calls from plugin process. r=jimm
The camera is blocked by the sandbox hardening in part 1.  This intercepts and remotes the call to CreateMutexW that causes the camera to fail.
2018-03-07 16:00:53 -08:00
David Parks
5e755169aa Bug 1366256 - Part 2: Refactor EndpointHandler to make special type handling opt-in. r=jimm
Previously, all FunctionBrokers used the same global set of type marshalers to handle IPC.  The marshaling behavior is endpoint-dependent so it is done with the EndpointHandler.  This patch makes the EndpointHandler used by a specific RPC function into a template parameter to the function's FunctionBroker.  It also divides up the current special type handling into two cases -- FileDlgEndpointHandler for plugin file dialog brokering, and SslEndpointHandler for SSL communication brokering.
2018-03-13 16:38:15 -07:00
David Parks
43fa45b0cb Bug 1429643: Limit Win32 NPAPI SSL brokering to 64-bit builds; r=jimm
Uses PluginQuirks to avoid brokering in 32-bit, as Flash has its own 32-bit sandbox.
2018-01-15 19:51:34 -08:00
David Parks
2ba56a477f Bug 1382251: Part 9 - Hook functions needed for SSL communication in NPAPI process; r=jimm
Adds Win32 networking APIs to the function broker so that we can run SSL communications outside of the sandbox.
2017-11-06 10:41:21 -08:00
David Parks
5bd2f5e3cf Bug 1382251: Part 8 - Migrate some previously hooked functions to FunctionHook/Broker; r=jimm,froydnj
Moves GetWindowInfo, GetKeyState, SetCursorPos, GetSaveFileNameW and GetOpenFileNameW to the new FunctionHook and FunctionBroker systems.
2017-11-06 11:07:16 -08:00
David Parks
e2b266b377 Bug 1382251: Part 7 - Add mechanism for automatically brokering DLL functions; r=jimm
The FunctionBroker is a special kind of FunctionHook that brokers the hooked function on another process.  In the child process, it uses the FunctionBrokerChild to request that the FunctionBrokerParent run a function and return the response.  It handles most cases of parameter, return value and error marshaling on its own.  It also guarantees that requests are issued from the proper thread.
2017-11-06 10:34:47 -08:00