diff --git a/java/ql/lib/ext/org.springframework.web.socket.model.yml b/java/ql/lib/ext/org.springframework.web.socket.model.yml index e1c5c4d8215..2a70baf2a26 100644 --- a/java/ql/lib/ext/org.springframework.web.socket.model.yml +++ b/java/ql/lib/ext/org.springframework.web.socket.model.yml @@ -8,10 +8,9 @@ extensions: - ["org.springframework.web.socket", "WebSocketHandler", True, "handleMessage", "", "", "Parameter[0]", "remote", "manual"] - ["org.springframework.web.socket", "WebSocketHandler", True, "handleMessage", "", "", "Parameter[1]", "remote", "manual"] - ["org.springframework.web.socket", "WebSocketHandler", True, "handleTransportError", "", "", "Parameter[0]", "remote", "manual"] - - ["org.springframework.web.socket.handler", "AbstractWebSocketHandler", True, "handleBinaryMessage", "", "", "Parameter[0]", "remote", "manual"] - - ["org.springframework.web.socket.handler", "AbstractWebSocketHandler", True, "handleBinaryMessage", "", "", "Parameter[1]", "remote", "manual"] - - ["org.springframework.web.socket.handler", "AbstractWebSocketHandler", True, "handleTextMessage", "", "", "Parameter[0]", "remote", "manual"] - - ["org.springframework.web.socket.handler", "AbstractWebSocketHandler", True, "handleTextMessage", "", "", "Parameter[1]", "remote", "manual"] + - ["org.springframework.web.socket.handler", "AbstractWebSocketHandler", True, "handleBinaryMessage", "", "", "Parameter[0..1]", "remote", "manual"] + - ["org.springframework.web.socket.handler", "AbstractWebSocketHandler", True, "handlePongMessage", "", "", "Parameter[0..1]", "remote", "manual"] + - ["org.springframework.web.socket.handler", "AbstractWebSocketHandler", True, "handleTextMessage", "", "", "Parameter[0..1]", "remote", "manual"] - addsTo: pack: codeql/java-all extensible: summaryModel diff --git a/java/ql/test/library-tests/frameworks/spring/websocket/Test.java b/java/ql/test/library-tests/frameworks/spring/websocket/Test.java index 194a24b3fc8..ceaab98344e 100644 --- a/java/ql/test/library-tests/frameworks/spring/websocket/Test.java +++ b/java/ql/test/library-tests/frameworks/spring/websocket/Test.java @@ -4,6 +4,7 @@ import org.springframework.web.socket.WebSocketSession; import org.springframework.web.socket.WebSocketMessage; import org.springframework.web.socket.TextMessage; import org.springframework.web.socket.BinaryMessage; +import org.springframework.web.socket.PongMessage; import org.springframework.web.socket.CloseStatus; @@ -37,6 +38,12 @@ public class Test { sink(m); // $hasTaintFlow } + @Override + protected void handlePongMessage(WebSocketSession s, PongMessage m) { + sink(s); // $hasTaintFlow + sink(m); // $hasTaintFlow + } + @Override public void afterConnectionEstablished(WebSocketSession s) { sink(s); // $hasTaintFlow