Commit graph

226 commits

Author SHA1 Message Date
Ehsan Akhgari
e5e885ae31 Bug 1521000 - Part 2: Adjust our clang-format rules to include spaces after the hash for nested preprocessor directives r=sylvestre
# ignore-this-changeset

--HG--
extra : amend_source : 7221c8d15a765df71171099468e7c7faa648f37c
extra : histedit_source : a0cce6015636202bff09e35a13f72e03257a7695
2019-01-18 10:16:18 +01:00
Tooru Fujisawa
7983faeb5d Bug 1511393 - Use c-basic-offset: 2 in Emacs mode line for C/C++ code. r=nbp 2018-12-01 04:52:05 +09:00
Benjamin Bouvier
a7f1d173a0 Bug 1511383: Update vim modelines after clang-format; r=sylvestre
- modify line wrap up to 80 chars; (tw=80)
- modify size of tab to 2 chars everywhere; (sts=2, sw=2)

--HG--
extra : rebase_source : 7eedce0311b340c9a5a1265dc42d3121cc0f32a0
extra : amend_source : 9cb4ffdd5005f5c4c14172390dd00b04b2066cd7
2018-11-30 16:39:55 +01:00
Sylvestre Ledru
265e672179 Bug 1511181 - Reformat everything to the Google coding style r=ehsan a=clang-format
# ignore-this-changeset

--HG--
extra : amend_source : 4d301d3b0b8711c4692392aa76088ba7fd7d1022
2018-11-30 11:46:48 +01:00
David Parks
564c9860a3 Bug 1488439: Part 2 - Patch GetFileAttributesW for appdata parent folders in sandboxed plugin process (r=bobowen,jmathies)
Flash analyzes the parents of the path to its appdata folder on Windows using GetFileAttributesW.  If it runs into an error, it makes some internal decisions that cause it to break DRM video.  Our new sandbox hardening causes GetFileAttributesW to return an error for some components of the path.  This patch alters the behavior of GetFileAttributesW so that it always reports FILE_ATTRIBUTE_DIRECTORY for any path that both 1) would otherwise return an error and 2) is an ancestor of the appdata folder.  This may not always be 100% accurate (for instance, if the folder is a reparse point) but restores video functionality.

Depends on D7532

Differential Revision: https://phabricator.services.mozilla.com/D7533

--HG--
extra : moz-landing-system : lando
2018-10-12 22:36:56 +00:00
Coroiu Cristina
4224edc453 Backed out 2 changesets (bug 1488439) for build bustage at /build/src/dom/plugins/ipc/PluginProcessParent.cpp on a CLOSED TREE
Backed out changeset 74b2087ee696 (bug 1488439)
Backed out changeset 85575fc37555 (bug 1488439)
2018-10-12 21:00:41 +03:00
David Parks
a9f44e7927 Bug 1488439: Part 2 - Patch GetFileAttributesW for appdata parent folders in sandboxed plugin process (r=bobowen,jmathies)
Flash analyzes the parents of the path to its appdata folder on Windows using GetFileAttributesW.  If it runs into an error, it makes some internal decisions that cause it to break DRM video.  Our new sandbox hardening causes GetFileAttributesW to return an error for some components of the path.  This patch alters the behavior of GetFileAttributesW so that it always reports FILE_ATTRIBUTE_DIRECTORY for any path that both 1) would otherwise return an error and 2) is an ancestor of the appdata folder.  This may not always be 100% accurate (for instance, if the folder is a reparse point) but restores video functionality.

Depends on D7532

Differential Revision: https://phabricator.services.mozilla.com/D7533

--HG--
extra : moz-landing-system : lando
2018-10-12 17:41:29 +00:00
David Parks
6a029ee77d Bug 1449388 - Send NPNVaudioDeviceStateChanged to plugins when any Windows audio device changes state. r=jimm
This message allows plugins to detect when any audio devices change state, even when running inside of our plugin sandbox.
2018-06-13 13:12:54 -07:00
Chris Peterson
2afd829d0f Bug 1469769 - Part 6: Replace non-failing NS_NOTREACHED with MOZ_ASSERT_UNREACHABLE. r=froydnj
This patch is an automatic replacement of s/NS_NOTREACHED/MOZ_ASSERT_UNREACHABLE/. Reindenting long lines and whitespace fixups follow in patch 6b.

MozReview-Commit-ID: 5UQVHElSpCr

--HG--
extra : rebase_source : 4c1b2fc32b269342f07639266b64941e2270e9c4
extra : source : 907543f6eae716f23a6de52b1ffb1c82908d158a
2018-06-17 22:43:11 -07:00
Chris Peterson
634a84b050 Bug 1467452 - Back out f5f49315fec2 to restore getJavaEnv/getJavaPeer NPAPIs to fix Flash crash. r=jimm
Flash still calls these NPAPIs to initialize some ancient LiveConnect code.

--HG--
extra : rebase_source : 74a6a89e52595aa871d508bf13485b2ba7d404e8
2018-06-20 12:42:39 -07:00
Emilio Cobos Álvarez
fffb25b74f Bug 1465585: Switch from mozilla::Move to std::move. r=froydnj
This was done automatically replacing:

  s/mozilla::Move/std::move/
  s/ Move(/ std::move(/
  s/(Move(/(std::move(/

Removing the 'using mozilla::Move;' lines.

And then with a few manual fixups, see the bug for the split series..

MozReview-Commit-ID: Jxze3adipUh
2018-06-01 10:45:27 +02:00
Chris Peterson
d64b13a882 Bug 1461243 - Part 6: Stub out obsolete NPAPI APIs _getJavaEnv and _getJavaPeer. r=jimm
MozReview-Commit-ID: JkroiRAqzqg

--HG--
extra : rebase_source : 52cc13aec25d9dd5bc958347fc69b480c9b1d553
extra : intermediate-source : 53f9104261ba0b492d066fbdc3c106bfc216ede9
extra : source : 2ac3387ef82e725ea5200cb814ee466fedcda8bf
extra : histedit_source : 931f721ab33b38efe68cb91e7ab0410818813c31
2018-02-20 01:47:57 -08:00
Haik Aftandilian
331dda9367 Bug 1444291 - Part 3 - Add read access to the Mac Flash sandbox, support sandbox levels r=Alex_Gaynor
Replace the boolean pref "security.sandbox.mac.flash.enabled"
with "dom.ipc.plugins.sandbox-level.flash" to support sandbox
levels and be consistent with the Windows pref name.

Adds filesystem read access to the sandbox using sandbox extensions
granted by the file dialog machinery (level 1).

Add support for level 2 which blocks read access.

Allow the sandbox to be disabled with MOZ_DISABLE_NPAPI_SANDBOX.


MozReview-Commit-ID: 4rfobEoxQpF

--HG--
extra : rebase_source : 05dc54b46063967e959bc3fced21c61e5463de48
2018-03-15 20:23:19 -07:00
Coroiu Cristina
62bb56ad86 Backed out 3 changesets (bug 1444291) for bustage at build/src/dom/plugins/ipc/PluginProcessChild.cpp
Backed out changeset 48a9c2131347 (bug 1444291)
Backed out changeset dfc31b6c9f53 (bug 1444291)
Backed out changeset 8ee3e65465ed (bug 1444291)
2018-03-16 03:07:35 +02:00
Haik Aftandilian
3aaa8d9f78 Bug 1444291 - Part 3 - Add read access to the Mac Flash sandbox, support sandbox levels r=Alex_Gaynor
Replace the boolean pref "security.sandbox.mac.flash.enabled"
with "dom.ipc.plugins.sandbox-level.flash" to support sandbox
levels and be consistent with the Windows pref name.

Adds filesystem read access to the sandbox using sandbox extensions
granted by the file dialog machinery (level 1).

Add support for level 2 which blocks read access.

Allow the sandbox to be disabled with MOZ_DISABLE_NPAPI_SANDBOX.


MozReview-Commit-ID: 4rfobEoxQpF

--HG--
extra : rebase_source : 87f2f00867c4522ae3102abbc44fd05db63c7ec7
2018-03-13 15:38:11 -07:00
Haik Aftandilian
c90be35636 Bug 1436566 - [Mac] Land disabled-by-default sandboxing for the Flash NPAPI plugin process. r=Alex_Gaynor,jimm
MozReview-Commit-ID: Es0GbMLKvH5

--HG--
extra : rebase_source : 991f20ac25735508d790947991f59214fb06e54f
2018-02-12 15:46:31 -08:00
David Parks
cc15f3d517 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
93bbbac8e4 Bug 1382251: Part 6 - Start/stop new top-level brokering actors on their own threads; r=jld
The FunctionBroker actors allow the NPAPI process (child) to run methods on the main process (parent).  Both the parent and the child run dedicated threads for this task -- this is a top-level protocol.
2017-11-06 10:29:15 -08:00
David Parks
154fa0eb0a Bug 1430586 - Make sure the NPObjectData map still exists before use. r=jimm
The shutdown path has a way to free the sObjectMap before all plugin references to it have been executed.  It does this by scheduling a DeferNPObjectReleaseRunnable, then shutting down the plugin with PluginInstanceChild::Destroy.  This patch keeps the runnable from failing in that case.
2018-01-23 12:56:06 -08:00
Gabriele Svelto
0750d2d41a Bug 1402519 - Remove MOZ_CRASHREPORTER directives from dom; r=peterv
MozReview-Commit-ID: 4G2C9y6csvc

--HG--
extra : rebase_source : f0259c59c263b677a3a44751219dcb54378d72bc
2017-10-10 12:43:09 +02:00
shindli
fb855aa7ba Backed out 16 changesets (bug 1402519) for conflicts during merge r=backout on a CLOSED TREE
Backed out changeset 07fcf163241a (bug 1402519)
Backed out changeset c6d2ad45d8e2 (bug 1402519)
Backed out changeset 8a3caca61294 (bug 1402519)
Backed out changeset 01425eae2c48 (bug 1402519)
Backed out changeset cf298d3815de (bug 1402519)
Backed out changeset e1964f4389cd (bug 1402519)
Backed out changeset f405337f3569 (bug 1402519)
Backed out changeset a76356fd3359 (bug 1402519)
Backed out changeset d3bb350d1c34 (bug 1402519)
Backed out changeset 9d3bfd9f932c (bug 1402519)
Backed out changeset e3dd6e5b073f (bug 1402519)
Backed out changeset e801b0c00134 (bug 1402519)
Backed out changeset 8a4139fa5dca (bug 1402519)
Backed out changeset 8d01c14ac1ca (bug 1402519)
Backed out changeset 24e0dcd01898 (bug 1402519)
Backed out changeset f8fdf450613f (bug 1402519)
2017-11-23 00:11:44 +02:00
Gabriele Svelto
13bba6b3c4 Bug 1402519 - Remove MOZ_CRASHREPORTER directives from dom; r=peterv
MozReview-Commit-ID: 4G2C9y6csvc

--HG--
extra : rebase_source : 989a11eaed6641a17ab27ae10b7fea6277cec534
2017-10-10 12:43:09 +02:00
Marco Castelluccio
59f513cbed Bug 1413845 - Remove PluginPRLibrary as it is unused. r=jimm
--HG--
extra : rebase_source : 0eae0844e68ec1f1227c327903369d3ededa4058
2017-11-02 11:03:24 +01:00
Chris Peterson
1df202b177 Bug 1412048 - Replace NS_RUNTIMEABORT("...") with MOZ_CRASH("..."). r=froydnj
And remove unreachable code after MOZ_CRASH().

MozReview-Commit-ID: 6ShBtPRKYlF

--HG--
extra : rebase_source : 0fe45a59411bda663828336e2686707b550144ae
extra : source : 8473fd7333d2abe1ea1cc176510c292a5b34df45
2017-10-24 23:30:31 -07:00
Sylvestre Ledru
d60d69e2cb Bug 1411001 - Remove the +x permissions on cpp & h files r=froydnj
MozReview-Commit-ID: DjDkL20wRg0

--HG--
extra : rebase_source : a343d83d1f4e97e4ba56d0f57fec93079df0b5ea
2017-10-23 20:59:55 +02:00
Tom Ritter
f49999833d Bug 1406380 Fix -Wreorder warnings r=njn
MozReview-Commit-ID: 7Zh2pvAMpXR

--HG--
extra : rebase_source : 5052112ad66a66cd2974c4140c3fd430dcaa3adc
2017-10-09 01:36:36 -05:00
Benjamin Smedberg
ce00e2cd37 Bug 1352567 - Remove plugin IPC code to support stream types other than NP_NORMAL (seekable and/or file streams), r=jimm
MozReview-Commit-ID: FWl2gcpKy6D
2017-10-02 14:54:22 -07:00
Nicholas Nethercote
78f521a734 Bug 1352573 (part 2) - Remove NPN_PluginThreadAsyncCall() and related machinery. r=bsmedberg.
* * *
[mq]: rm-checkGCRace

--HG--
extra : rebase_source : 4b9316ee05c1f62e80b20c7f9ab03bd8f33d4658
2017-08-03 22:12:51 +10:00
David Parks
d986d4b92e Bug 1388903 - Part 2: Remove PrintDlg Window Parentage in NPAPI Process. r=jimm
By intercepting the call to PrintDlgW and zeroing out the parent window privided by the caller, we allow the call to run in the NPAPI sandbox.
2017-08-29 15:59:34 -07:00
Sylvestre Ledru
7c0ae251cd Bug 1381253 - Remove redundant control flow declarations rs=ehsan
MozReview-Commit-ID: FFxP4aMCbOL

--HG--
extra : amend_source : 3aec108430b11048f47ffe19d5da7ac5034770a9
2017-07-15 19:03:04 +02:00
dan1bh
de45c53ef7 Bug 1352559 - Remove support for plugin-provided streams; NPN_NewStream, PPluginStream and other supporting machinery, r=bsmedberg
Removed API List:
* NPN_NewStream
* NPN_Write
* NPN_DestroyStream
* nsNPAPIStreamWrapper
* nsPluginStreamToFile
* PPluginStream.ipdl

MozReview-Commit-ID: 61dKGct3qGW

--HG--
extra : source : 999aa7b6683d7f0cf481f8dd0e8a9ba3dade4a05
extra : intermediate-source : cb1548354e0cf582dca6b0ab0d27712d01a4c819
2017-07-11 14:27:25 -04:00
Nicholas Nethercote
7f215371c0 Backed out changeset cb1548354e0c (bug 1352559, part 3) for causing *many* crashes in Nightly. r=backout 2017-07-17 09:41:29 +10:00
dan1bh
b62787e960 Bug 1352559 - Remove support for plugin-provided streams; NPN_NewStream, PPluginStream and other supporting machinery, r=bsmedberg
Removed API List:
* NPN_NewStream
* NPN_Write
* NPN_DestroyStream
* nsNPAPIStreamWrapper
* nsPluginStreamToFile
* PPluginStream.ipdl

MozReview-Commit-ID: 61dKGct3qGW

--HG--
extra : rebase_source : 1567d89d0735ca23c964a0c6691f9a117305641f
extra : source : 999aa7b6683d7f0cf481f8dd0e8a9ba3dade4a05
2017-07-11 14:27:25 -04:00
Sebastian Hengst
849284daf4 Backed out changeset 999aa7b6683d (bug 1352559) 2017-07-12 19:10:50 +02:00
dan1bh
88039d6fa3 Bug 1352559 - Remove support for plugin-provided streams; NPN_NewStream, PPluginStream and other supporting machinery, r=bsmedberg
Removed API List:
* NPN_NewStream
* NPN_Write
* NPN_DestroyStream
* nsNPAPIStreamWrapper
* nsPluginStreamToFile
* PPluginStream.ipdl

MozReview-Commit-ID: 61dKGct3qGW

--HG--
extra : rebase_source : 0e9be256f97be62efe376a3f70d579859592901f
2017-07-11 14:27:25 -04:00
Sylvestre Ledru
4e9cf83ee8 Bug 1378712 - Remove all trailing whitespaces r=Ehsan
MozReview-Commit-ID: Kdz2xtTF9EG

--HG--
extra : rebase_source : 7235b3802f25bab29a8c6ba40a181a722f3df0ce
2017-07-06 14:00:35 +02:00
Nicholas Nethercote
fd1653bcc9 Bug 1352575 (part 9) - Remove AsyncNP_Initialize. r=jimm.
--HG--
extra : rebase_source : c9924774a5f32291a889868d790ed46a104e88a4
2017-04-18 16:56:44 +10:00
Nicholas Nethercote
b3ddc9836a Bug 1352575 (part 6) - Remove AsyncNPP_New. r=jimm.
And related code.

--HG--
extra : rebase_source : 55e76551a0555dda6acf6b07ba792afc48a1c0aa
2017-04-18 16:56:43 +10:00
Markus Stange
e2336b07a8 Bug 1330185 - Use a top-level PProfiler protocol to control the profiler in other processes. r=billm,njn
MozReview-Commit-ID: EROfGuYQ6a0

--HG--
extra : rebase_source : be0aa1b9c7963882e8e7d47964f2da5b670ab10a
extra : intermediate-source : e6f368f2d8741f2a9655b288d49b59fbbd6b90b7
extra : source : 51cdc2541486d5ddf2d385ec0459a9ec38b8775b
2017-05-30 15:06:14 -04:00
David Parks
3b7d1c27e9 Bug 1367806 - Fix ref counting of tasks for remoted Win32 methods in plugin processes. r=jimm
We were using the task after we .forget() it.
2017-05-26 13:19:54 -07:00
David Parks
f2774deb20 Bug 1363290 - Part 3: Proxy win32's SetCursorPos for plugins in chrome process. r=jimm, r=jed
SetCursorPos is used by Flash's relative cursor motion behavior.  It is blocked by the plugin sandbox.  This patch allows it to run by proxying it on the main process.

--HG--
extra : histedit_source : 85515d398c0c107c2258185c0591a943b26e724a
2017-05-16 14:47:09 -07:00
David Parks
9dac5ced13 Bug 1363290 - Part 1: Refactor PluginModuleChild's GetFileNameTask to extract PluginThreadTask. r=jimm
The extracted PluginThreadTask will also be used to hook the Win32 SetCursorPos method.
2017-05-16 14:39:59 -07:00
Phil Ringnalda
6368ef89e2 Backed out 5 changesets (bug 1330185, bug 1330184) for leaking an nsTArray_base from the plugin process on Win8
Backed out changeset e6f368f2d874 (bug 1330185)
Backed out changeset 2b8d50fcb20f (bug 1330184)
Backed out changeset dbe452a9eebb (bug 1330184)
Backed out changeset e13b9e798e16 (bug 1330184)
Backed out changeset 52489c7eadaf (bug 1330184)

MozReview-Commit-ID: 8L20BZ5E3t2
2017-05-22 19:45:35 -07:00
Markus Stange
9bf6b534a2 Bug 1330185 - Use a top-level PProfiler protocol to control the profiler in other processes. r=njn, r=billm
MozReview-Commit-ID: EROfGuYQ6a0

--HG--
extra : rebase_source : 3495ccc7700703cc587f571dfc12e46a682c29a2
extra : source : 51cdc2541486d5ddf2d385ec0459a9ec38b8775b
2017-05-22 13:47:02 -04:00
Markus Stange
42b5d166ec Back out bug 1330184 and bug 1330185 because of test failures.
MozReview-Commit-ID: ILD4mevlSU6
2017-05-21 15:11:15 -04:00
Markus Stange
b5fdcd479d Bug 1330185 - Use a top-level PProfiler protocol to control the profiler in other processes. r=njn, r=billm
MozReview-Commit-ID: EROfGuYQ6a0

--HG--
extra : rebase_source : de266bda4fc2d6532ff45a6d548b13cd0b4f7206
extra : histedit_source : ad5c4e140c068f17c51d5085fd88ac691e50ab4f
2017-05-21 14:06:50 -04:00
Lie Ryan
9db89db495 Bug 1352572 - Return NPERR_GENERIC_ERROR if plugin calls NPN_PostURLNotify(file=true); r=bsmedberg
NPN_PostURLNotify(file=true) is no longer supported in NPAPI.

MozReview-Commit-ID: 12JlYduC7R8

--HG--
extra : rebase_source : dc9bd752f74b727d003c1371211095bc6656b8d3
2017-05-06 07:27:08 +00:00
Lie Ryan
bdde925f5b Bug 1352572 - Return an NPERR_GENERIC_ERROR if plugin tries to call NPN_PostURL(file=true); r=bsmedberg
NPN_PostURL(file=true) is no longer supported in NPAPI.

MozReview-Commit-ID: IyLJSj4bKRR

--HG--
extra : rebase_source : f684a634c649eb3bae4f802f43fe810d3d88f96b
2017-04-08 16:48:47 +00:00
Nicholas Nethercote
ea25e62e3c Bug 1360471 (part 4) - Use a bitfield to represent profiler features. r=mstange.
Currently the profiler mostly uses an array of strings to represent which
features are available and in use. This patch changes the profiler core to use
a uint32_t bitfield, which is a much simpler and faster representation.
(nsProfiler and the profiler add-on still use the array of strings, alas.) The
new ProfilerFeature type defines the values in the bitfield.

One side-effect of this change is that profiler_feature_active() now can be
used to query all features. Previously it was just a subset.

Another side-effect is that profiler_get_available_features() no longer incorrectly
indicates support for Java and stack-walking when they aren't supported. (The
handling of task tracer support is unchanged, because the old code handled it
correctly.)
2017-05-01 14:23:34 +10:00
Nicholas Nethercote
cc78872f8c Bug 1360471 (part 3) - Rename various "thread name filters" identifiers as "filters". r=mstange.
The new names are more concise and matches common usage elsewhere (e.g.
profiler_start() arguments).

This patch is similar to bug 1358074 part 5.
2017-05-01 13:42:53 +10:00