Commit graph

167 commits

Author SHA1 Message Date
CanadaHonk
40a377c3dc Bug 1819280 - [websocket] Enforce full subprotocol char checks r=valentin
Enforce all subprotocol character checks as per RFC 6455 with a new method.
(See bug for full check details.)

Differential Revision: https://phabricator.services.mozilla.com/D171219
2023-03-08 07:34:26 +00:00
Norisz Fay
cdf729cb6b Backed out changeset ed459cc665d8 (bug 1819280) for causing websocket wpt failures CLOSED TREE 2023-03-06 18:17:22 +02:00
CanadaHonk
6c2b59679e Bug 1819280 - [websocket] Enforce full subprotocol char checks r=valentin
Enforce all subprotocol character checks as per RFC 6455 with a new method.
(See bug for full check details.)

Differential Revision: https://phabricator.services.mozilla.com/D171219
2023-03-06 12:10:59 +00:00
Nika Layzell
9d6bb19c23 Bug 1809753 - Part 4: Remove unnecessary GetMainThreadEventTarget, r=mccr8
This method always returned GetMainThreadSerialEventTarget(). This patch
switches all callers over to use that method instead.

We can't easily switch all calls to be calls to NS_GetMainThread(), as there is
no version of that method returning a bare nsIThread* instance.

I didn't introduce one, as we may want to add a lock around mMainThread in the
future, which would require removing nsThreadManager::GetMainThreadWeak. As
this method only returns nsISerialEventTarget, it method could remain
implemented, however, by returning a statically allocated fake event target
which forwards dispatches (and QIs to nsIThread) to the real main thread.

Differential Revision: https://phabricator.services.mozilla.com/D166608
2023-01-16 23:14:12 +00:00
Sandor Molnar
41b78439d0 Backed out 6 changesets (bug 1809752, bug 1809753) for causing perma failures in browser/components/firefoxview/tests/browser/browser_feature_callout_position.js
Backed out changeset ea05784d74c4 (bug 1809753)
Backed out changeset 7c9b20eebcc8 (bug 1809753)
Backed out changeset d0267ac2256d (bug 1809753)
Backed out changeset aa9f2971bd6f (bug 1809753)
Backed out changeset f0d9fcfaa6f8 (bug 1809752)
Backed out changeset 6d58c799cffe (bug 1809752)
2023-01-17 03:19:24 +02:00
Nika Layzell
f7772bb6ae Bug 1809753 - Part 4: Remove unnecessary GetMainThreadEventTarget, r=mccr8
This method always returned GetMainThreadSerialEventTarget(). This patch
switches all callers over to use that method instead.

We can't easily switch all calls to be calls to NS_GetMainThread(), as there is
no version of that method returning a bare nsIThread* instance.

I didn't introduce one, as we may want to add a lock around mMainThread in the
future, which would require removing nsThreadManager::GetMainThreadWeak. As
this method only returns nsISerialEventTarget, it method could remain
implemented, however, by returning a statically allocated fake event target
which forwards dispatches (and QIs to nsIThread) to the real main thread.

Differential Revision: https://phabricator.services.mozilla.com/D166608
2023-01-16 23:14:12 +00:00
Tom Schuster
f16796574a Bug 1800890 r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D162827
2022-11-30 08:53:26 +00:00
Kershaw Chang
91bf2e8950 Bug 1793868 - Use the scheme of document's principal as the initial value of |isSecure|, r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D158749
2022-10-06 11:14:55 +00:00
Kershaw Chang
cc6c147f88 Bug 1760580 - P1: Make nsIRequest support to store canceled reason, r=necko-reviewers,valentin
Differential Revision: https://phabricator.services.mozilla.com/D156070
2022-09-08 09:11:18 +00:00
Andrew Creskey
d97f212992 Bug 1748005 - Getting Uncaught DOMException: The operation is insecure while opening Websocket using 'wss' protocol r=smaug
Use the 'IsSecure' field from windowContexts where possible to determine WebSockets mixed content behaviour.

Differential Revision: https://phabricator.services.mozilla.com/D153105
2022-08-26 12:23:36 +00:00
Fabrice Desré
c50cb528fc Bug 1761040 - Prefix thread safety macros with MOZ_ r=geckoview-reviewers,media-playback-reviewers,alwu,jesup,m_kato
Differential Revision: https://phabricator.services.mozilla.com/D152575
2022-08-03 16:39:41 +00:00
Andreea Pavel
3ccd75af8d Backed out changeset b9d2965591b9 (bug 1761040) for landing with wrong author CLOSED TREE DONTBUILD 2022-08-03 18:55:00 +03:00
Andreea Pavel
fdb7cb2ecd Bug 1761040 - Prefix thread safety macros with MOZ_ r=geckoview-reviewers,media-playback-reviewers,alwu,jesup,m_kato
Differential Revision: https://phabricator.services.mozilla.com/D152575
2022-08-03 15:27:43 +00:00
Andreea Pavel
89d63c91e6 Backed out changeset a907159a482f (bug 1761040) for causing build bustages on a CLOSED TREE 2022-08-02 04:59:08 +03:00
Fabrice Desré
0f4ac7ad97 Bug 1761040 - Prefix thread safety macros with MOZ_ r=geckoview-reviewers,media-playback-reviewers,alwu,jesup,m_kato
Differential Revision: https://phabricator.services.mozilla.com/D152575
2022-08-02 00:49:41 +00:00
Emilio Cobos Álvarez
42b7f1a58c Bug 1780788 - Use abstract strings as in-arguments for ipdl. r=nika,necko-reviewers,media-playback-reviewers,alwu,dragana
This prevents copies and avoids the hack we have to avoid this, which
right now is using nsDependent{C,}String.

Non-virtual actors can still use `nsString` if they need to on the
receiving end.

Differential Revision: https://phabricator.services.mozilla.com/D152519
2022-07-25 20:19:48 +00:00
Kagami Sascha Rosylight
8209aad0db Bug 1767997 - Apply readability-make-member-function-const on dom/network r=andi
Differential Revision: https://phabricator.services.mozilla.com/D145625
2022-05-13 05:35:25 +00:00
Kagami Sascha Rosylight
cb9dcf1864 Bug 1768189 - Part 42: Apply modernize-concat-nested-namespaces to dom/webgpu/RenderBundle.h ... r=andi
Depends on D145777

Differential Revision: https://phabricator.services.mozilla.com/D145778
2022-05-09 20:41:19 +00:00
Nika Layzell
5b2ada26c5 Bug 1738103 - Part 4: Add XPCOM support for shutdown tasks, r=necko-reviewers,KrisWright
Tasks registered with shutdown tasks are called when the target
nsISerialEventTarget is about to be destroyed.

Differential Revision: https://phabricator.services.mozilla.com/D129840
2022-03-23 22:22:04 +00:00
Randell Jesup
879af5cbf3 Bug 1207753 - WebSocket thread-safety annotations r=necko-reviewers,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D130593
2022-03-23 14:59:58 +00:00
Randell Jesup
fcaf70841e Bug 1207753 - Add MOZ_UNANNOTATED to all Mutexes/Monitors r=nika,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D140849
2022-03-16 18:47:08 +00:00
Noemi Erli
2390d257e6 Backed out changeset 12a59e5a50bf (bug 1207753) for causing build bustage CLOSED TREE 2022-03-16 18:32:51 +02:00
Randell Jesup
4b033a5256 Bug 1207753 - Add MOZ_UNANNOTATED to all Mutexes/Monitors r=nika,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D140849
2022-03-16 16:16:14 +00:00
Butkovits Atila
927ad62c6a Backed out changeset a68ee4b09f92 (bug 1207753) for causing Hazard bustages. CLOSED TREE 2022-03-16 14:38:14 +02:00
Randell Jesup
7d4b5fae04 Bug 1207753 - Add MOZ_UNANNOTATED to all Mutexes/Monitors r=nika,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D140849
2022-03-16 12:01:14 +00:00
Sylvestre Ledru
98949ee751 Bug 1754767 - Remove duplicate includes r=media-playback-reviewers,padenot
Differential Revision: https://phabricator.services.mozilla.com/D138441
2022-02-11 10:01:15 +00:00
Tom Schuster
b39be51d3d Bug 1728981 - Don't upgrade HTTP WebSocket requests of exempt principals. r=ckerschb
Differential Revision: https://phabricator.services.mozilla.com/D131094
2021-11-24 14:50:35 +00:00
Valentin Gosu
990245fb6a Bug 1729897 - CSP Upgrade-insecure-requests is upgrading localhost websocket r=necko-reviewers,dragana
Differential Revision: https://phabricator.services.mozilla.com/D125533
2021-09-15 11:28:13 +00:00
Paul Zuehlcke
f97e49d85c Bug 1713748 - Partition WebSocket nsWSAdmissionManager queue. r=timhuang,nhnt11
Differential Revision: https://phabricator.services.mozilla.com/D119534
2021-07-21 12:44:40 +00:00
Olli Pettay
6b13ce2296 Bug 1705147 - Make it possible to use WebSocket outside Window/Worker scopes, r=asuth
Differential Revision: https://phabricator.services.mozilla.com/D112061
2021-04-19 17:16:14 +00:00
Kershaw Chang
d475062c84 Bug 1660307 - Get rid off nsSupportsWeakReference for WebSocketImpl, r=baku
Differential Revision: https://phabricator.services.mozilla.com/D111059
2021-04-13 12:00:26 +00:00
Butkovits Atila
8c73b1c603 Backed out changeset e3a7a6111dfe (bug 1660307) for a possible regression. CLOSED TREE 2021-04-13 01:29:29 +03:00
Kershaw Chang
c34f63634c Bug 1660307 - Get rid off nsSupportsWeakReference for WebSocketImpl, r=baku
Differential Revision: https://phabricator.services.mozilla.com/D111059
2021-04-12 11:50:35 +00:00
Hubert Boma Manilla
53847edbe6 Bug 1695185 - Use the WindowId of the owner document instead r=valentin,necko-reviewers,baku
The websocket uses the innerWindowId of the window where the script lives when
triggering events for devtools. This is may not be the same as the websocket
owner window as mentioned here https://searchfox.org/mozilla-central/rev/f1159268add2fd0959e9f91b474f5da74c90f305/dom/websocket/WebSocket.cpp#206-207,212
This seems to be the case when we have iframes within a page. The devtools
do not get the events for the websockets channels opened within iframes as
the innerWindowId is that of the top-level window.

`...->TopWindowContext()->InnerWindowId()` also always point to the top-level window.

This patch fixes these issues by switching to use the websocket owner window which
the iframe.

Note: The parent revsion contains the changes for the devtools fission work that
depends on this fix. i did this to make it easy to test and review.

Differential Revision: https://phabricator.services.mozilla.com/D106607
2021-03-04 21:46:07 +00:00
smolnar
631c520695 Backed out changeset dc7664f78fbd (bug 1660307) for causing mochitest failures. CLOSED TREE DONTBUILD 2021-02-18 14:49:38 +02:00
Yaron Tausky
744388b5f9 Bug 1660307 - Use thread-safe weak pointers in WebSocketImpl r=dragana
Differential Revision: https://phabricator.services.mozilla.com/D104518
2021-02-18 12:16:11 +00:00
Kershaw Chang
15436fbdba Bug 1675207 - Fail the websocket connection when there is no enough memory r=necko-reviewers,valentin CLOSED TREE
Differential Revision: https://phabricator.services.mozilla.com/D99145
2020-12-15 04:18:17 +02:00
Butkovits Atila
fd134a95ca Backed out changeset 084279c12a76 (bug 1675207) for build bustage complaining about rules.mk. CLOSED TREE 2020-12-14 15:42:52 +02:00
Kershaw Chang
0b0f595f73 Bug 1675207 - Fail the websocket connection when there is no enough memory r=necko-reviewers,valentin
Differential Revision: https://phabricator.services.mozilla.com/D99145
2020-12-14 12:14:38 +00:00
Razvan Maries
63e133ae53 Backed out changeset 259ad0fe9f08 (bug 1675207) for build bustages on WebSocketChannelChild.h. CLOSED TREE 2020-12-11 12:05:34 +02:00
Kershaw Chang
fcca17a6ca Bug 1675207 - Fail the websocket connection when there is no enough memory r=necko-reviewers,valentin
Differential Revision: https://phabricator.services.mozilla.com/D99145
2020-12-11 09:35:05 +00:00
Simon Giesecke
7499023887 Bug 1673931 - Avoid including DebuggerNotificationBinding.h from header files. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D97611
2020-12-10 11:09:32 +00:00
Karl Tomlinson
88c7f3ad66 Bug 1119956 derive from DiscardableRunnable instead of CancelableRunnable when Cancel() is not supported r=asuth,sg
Differential Revision: https://phabricator.services.mozilla.com/D98118
2020-12-03 09:04:44 +00:00
Valentin Gosu
052d788334 Bug 1349969 - WebSocket: don't throw for bad ports r=annevk
Differential Revision: https://phabricator.services.mozilla.com/D96164
2020-11-06 12:57:05 +00:00
Valentin Gosu
64c7493cd9 Bug 1660968 - Remove uses of GetInProcessScriptableTop in WebSocketImpl::GetLoadingPrincipal r=baku
This change also simplifies the code a bit.
Also, as BrowsingContext::GetOpener returns null when there's no opener,
we don't have to check whether the opener and innerWindow are the same.

Differential Revision: https://phabricator.services.mozilla.com/D93219
2020-10-19 12:07:00 +00:00
Paul Adenot
f18e95d3c1 Bug 1668248 - Use fallible string operations in WebSocket::Send. r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D91929
2020-10-02 12:42:06 +00:00
Dorel Luca
def16b8152 Backed out 3 changesets (bug 1668248) for Devtools failures in devtools/shared/resources/tests/browser_resources_websocket.js. CLOSED TREE
Backed out changeset 3097e934187b (bug 1668248)
Backed out changeset 9f6b8aa11110 (bug 1668248)
Backed out changeset eaa857f4564d (bug 1668248)
2020-10-01 21:24:48 +03:00
Paul Adenot
96c087c6af Bug 1668248 - Use fallible string operations in WebSocket::Send. r=valentin
Differential Revision: https://phabricator.services.mozilla.com/D91929
2020-09-30 17:40:16 +00:00
Simon Giesecke
de7bab0f06 Bug 1650145 - Replace all value uses of Empty[C]String by 0-length _ns literals. r=froydnj,geckoview-reviewers,agi
Differential Revision: https://phabricator.services.mozilla.com/D82325
2020-09-23 15:17:15 +00:00
Valentin Gosu
573bb57628 Bug 1646545 - Replace GetInProcessScriptableTop usage with TopWindowContext() in WebSocket.cpp r=baku
Differential Revision: https://phabricator.services.mozilla.com/D87843
2020-08-25 08:25:00 +00:00