Closed RedTeaDev closed 1 month ago
Hello @RedTeaDev, have you tried setting the maximum frame size (https://github.com/TooTallNate/Java-WebSocket/blob/master/src/main/java/org/java_websocket/drafts/Draft_6455.java#L237)
Best regards, Marcel
Thanks, it fixed the issue by closing the connection!
However shouldn't a maximum frame size be applied as a default value to the draft?
Describe the bug The server crashes for OOM when receiving a large
TEXT
framesTo Reproduce Steps to reproduce the behavior:
send("{" + "a".repeat(Integer.MAX_VALUE - 1024) + ":'test'}");
Example application to reproduce the issue I have used ChatServer.java and was able to reproduce this issue by doing
send("a".repeat(Integer.MAX_VALUE - 1024), null));
from client onWebSocketClient#onOpen
, though, any clients should be able to reproduct this issueExpected behavior
Should disconnect the client and continue
Debug log The the debug log (set the log level to
TRACE
) to help explain your problem.latest.log
Environment(please complete the following information):
1.5.7
Microsoft Windows NT 10.0.22621.0
/
,HTTP/1.1
-Xmx10G
Additional context Add any other context about the problem here.
interestingly, server did not crash when the data is not a JSON, but it crashes when i pass thing likes
{"a":"<large amont of junk data>"}
Here is the python script i used to generate the payload:
When i passes random junk data it didn't crash, only crashes when i try to send "JSON" data.
Update: adding a OOM check on
Charsetfunctions#stringUtf8
seems to fix the issue.