22import org .springframework .web .socket .handler .TextWebSocketHandler ;
33import org .springframework .web .socket .WebSocketSession ;
44import org .springframework .web .socket .WebSocketMessage ;
5+ import org .springframework .web .socket .TextMessage ;
6+ import org .springframework .web .socket .BinaryMessage ;
7+ import org .springframework .web .socket .CloseStatus ;
58
69
7- public class Test extends TextWebSocketHandler {
10+ public class Test {
811 void sink (Object o ) {}
912
10- @ Override
11- public void handleMessage (WebSocketSession s , WebSocketMessage <?> m ) {
12- sink (s ); // $hasTaintFlow
13- sink (s .getAcceptedProtocol ()); // $hasTaintFlow
14- sink (s .getHandshakeHeaders ()); // $hasTaintFlow
15- sink (s .getPrincipal ()); // $hasTaintFlow
16- sink (s .getUri ()); // $hasTaintFlow
13+ public class A extends TextWebSocketHandler {
14+ @ Override
15+ public void handleMessage (WebSocketSession s , WebSocketMessage <?> m ) {
16+ sink (s ); // $hasTaintFlow
17+ sink (s .getAcceptedProtocol ()); // $hasTaintFlow
18+ sink (s .getHandshakeHeaders ()); // $hasTaintFlow
19+ sink (s .getPrincipal ()); // $hasTaintFlow
20+ sink (s .getUri ()); // $hasTaintFlow
1721
18- sink (m ); // $hasTaintFlow
19- sink (m .getPayload ()); // $hasTaintFlow
22+ sink (m ); // $hasTaintFlow
23+ sink (m .getPayload ()); // $hasTaintFlow
24+
25+ }
26+
27+ @ Override
28+ protected void handleTextMessage (WebSocketSession s , TextMessage m ) {
29+ sink (s ); // $hasTaintFlow
30+ sink (m ); // $hasTaintFlow
31+ sink (m .asBytes ()); // $hasTaintFlow
32+ }
33+
34+ @ Override
35+ protected void handleBinaryMessage (WebSocketSession s , BinaryMessage m ) {
36+ sink (s ); // $hasTaintFlow
37+ sink (m ); // $hasTaintFlow
38+ }
39+
40+ @ Override
41+ public void afterConnectionEstablished (WebSocketSession s ) {
42+ sink (s ); // $hasTaintFlow
43+ }
44+
45+ @ Override
46+ public void afterConnectionClosed (WebSocketSession s , CloseStatus c ) {
47+ sink (s ); // $ hasTaintFlow
48+ }
49+
50+ @ Override
51+ public void handleTransportError (WebSocketSession s , Throwable exc ) {
52+ sink (s ); // $ hasTaintFlow
53+ }
2054
2155 }
56+
2257}
0 commit comments