File tree Expand file tree Collapse file tree 3 files changed +14
-0
lines changed
src/semmle/javascript/frameworks
test/library-tests/frameworks/SocketIO Expand file tree Collapse file tree 3 files changed +14
-0
lines changed Original file line number Diff line number Diff line change @@ -51,6 +51,7 @@ module SocketIO {
5151 // exclude getter versions
5252 exists ( mcn .getAnArgument ( ) ) and
5353 result = mcn and
54+ t2 .getProp ( ) = "" and
5455 t = t2
5556 )
5657 )
@@ -110,6 +111,7 @@ module SocketIO {
110111 or
111112 // invocation of a chainable method
112113 result = pred .getAMethodCall ( namespaceChainableMethod ( ) ) and
114+ t2 .getProp ( ) = "" and
113115 t = t2
114116 or
115117 // invocation of chainable getter method
@@ -119,6 +121,7 @@ module SocketIO {
119121 m = "volatile"
120122 |
121123 result = pred .getAPropertyRead ( m ) and
124+ t2 .getProp ( ) = "" and
122125 t = t2
123126 )
124127 )
@@ -171,6 +174,7 @@ module SocketIO {
171174 m = EventEmitter:: chainableMethod ( )
172175 |
173176 result = pred .getAMethodCall ( m ) and
177+ t2 .getProp ( ) = "" and
174178 t = t2
175179 )
176180 or
@@ -182,6 +186,7 @@ module SocketIO {
182186 m = "volatile"
183187 |
184188 result = pred .getAPropertyRead ( m ) and
189+ t2 .getProp ( ) = "" and
185190 t = t2
186191 )
187192 )
Original file line number Diff line number Diff line change @@ -149,6 +149,7 @@ test_ServerNode
149149| tst.js:15:1:15:15 | io.attach(http) | tst.js:1:12:1:33 | socket.io server |
150150| tst.js:16:1:16:15 | io.bind(engine) | tst.js:1:12:1:33 | socket.io server |
151151| tst.js:17:1:17:23 | io.onco ... socket) | tst.js:1:12:1:33 | socket.io server |
152+ | tst.js:79:1:79:10 | obj.server | tst.js:1:12:1:33 | socket.io server |
152153test_ClientSendNode_getAReceiver
153154| client2.js:14:1:14:32 | sock.em ... there") | tst.js:72:3:72:43 | socket. ... => {}) |
154155| client2.js:16:1:16:36 | sock.wr ... => {}) | tst.js:70:3:70:35 | socket. ... => {}) |
Original file line number Diff line number Diff line change @@ -71,3 +71,11 @@ ns.on('connection', (socket) => {
7171 socket . once ( 'message' , ( data1 , data2 ) => { } ) ;
7272 socket . addListener ( eventName ( ) , ( ) => { } ) ;
7373} ) ;
74+
75+ var obj = {
76+ server : io ,
77+ serveClient : function ( ) { return null ; }
78+ } ;
79+ obj . server ; // SocketIO::ServerNode
80+ obj . serveClient ( false ) ; // not a SocketIO::ServerNode
81+ obj . serveClient ( false ) . server ; // not a SocketIO::ServerNode
You can’t perform that action at this time.
0 commit comments