Columns 'OpCode', 'MaskBit' and 'FinBit' are showing wrong values
Categories
(Core :: Networking: WebSockets, defect, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox70 | --- | fixed |
People
(Reporter: christoph-wa, Assigned: christoph-wa)
References
(Blocks 2 open bugs)
Details
(Whiteboard: [necko-triaged])
Attachments
(3 files)
- Column 'OpCode' shows wrong opcode
- Column 'MaskBit' is always true, even if the payload is not masked
- Column 'FinBit' is always true. The WS engine automatically combines fragmented frames, so this Column can't be false?
Also the ping request of the server is displayed after the response from the browser
Code I used for testing this: https://gist.github.com/wiomoc/00bfdb866e3f5383bc8d302d24a4d43f
Assignee | ||
Updated•5 years ago
|
Comment 1•5 years ago
|
||
@hengyeow: Can you please test this and see whether it's the platform who's providing the wrong data?
(+ also check the order of WS frames)
Thanks,
Honza
Comment 2•5 years ago
|
||
Hi @Honza
I was able to reproduce the scenario mentioned. The attached image shows a series of console logs of frame details (provided by platform) intercepted by the frameReceived
callback function in websocket-actor.js
.
Comment 3•5 years ago
|
||
@baku, it looks like the platform is giving us wrong WS frame data.
Can you please have a look?
Thanks,
Honza
Comment 4•5 years ago
|
||
Can you assign this to someone from the DOM team? It's important for devtools, but I'm not able to work on this right now. Thanks.
In case, I can give an overview about how webSocket events for devtools are dispatched.
Assignee | ||
Comment 5•5 years ago
|
||
Looks like in https://searchfox.org/mozilla-central/source/netwerk/protocol/websocket/WebSocketFrame.cpp#113 the parameters 'opcode' and 'maskBit' are serialized in a different order then deserialized.
Assignee | ||
Comment 6•5 years ago
|
||
Comment 7•5 years ago
|
||
(In reply to Andrea Marchesini [:baku] from comment #4)
Can you assign this to someone from the DOM team? It's important for devtools, but I'm not able to work on this right now. Thanks.
In case, I can give an overview about how webSocket events for devtools are dispatched.
Taking via email discussion.
Updated•5 years ago
|
Comment 8•5 years ago
|
||
Thanks for submitting the patch, Christoph! Assigning the bug to you.
Michal, could you help submit the patch if it's correct? Thanks!
Comment 9•5 years ago
|
||
The product::component has been changed since the backlog priority was decided, so we're resetting it.
For more information, please visit auto_nag documentation.
Updated•5 years ago
|
Comment 10•5 years ago
|
||
Updated•5 years ago
|
Comment 11•5 years ago
|
||
bugherder |
Description
•