mirror of
https://github.com/github/codeql.git
synced 2026-05-03 12:45:27 +02:00
QL code and tests for C#/C++/JavaScript.
This commit is contained in:
@@ -0,0 +1,14 @@
|
||||
| amd1.js:1:25:1:26 | fs | fs | amd1.js:2:3:2:4 | fs | fs |
|
||||
| amd2.js:2:12:2:24 | require('fs') | fs | amd2.js:3:3:3:4 | fs | fs |
|
||||
| instanceThroughDefaultImport.js:1:8:1:42 | myDefaultImportedModuleInstanceName | myDefaultImportedModuleInstance | instanceThroughDefaultImport.js:2:1:2:35 | myDefau ... nceName | myDefaultImportedModuleInstanceName |
|
||||
| instanceThroughDefaultImport.js:1:8:1:42 | myDefaultImportedModuleInstanceName | myDefaultImportedModuleInstance | instanceThroughDefaultImport.js:4:5:4:39 | myDefau ... nceName | myDefaultImportedModuleInstanceName |
|
||||
| instanceThroughNamespaceImport.js:1:8:1:49 | myNamespaceImportedModuleInstanceName | myNamespaceImportedModuleInstance | instanceThroughNamespaceImport.js:2:1:2:37 | myNames ... nceName | myNamespaceImportedModuleInstanceName |
|
||||
| instanceThroughNamespaceImport.js:1:8:1:49 | myNamespaceImportedModuleInstanceName | myNamespaceImportedModuleInstance | instanceThroughNamespaceImport.js:4:5:4:41 | myNames ... nceName | myNamespaceImportedModuleInstanceName |
|
||||
| instanceThroughRequire.js:1:36:1:70 | require ... tance') | myRequiredModuleInstance | instanceThroughRequire.js:2:1:2:28 | myRequi ... nceName | myRequiredModuleInstanceName |
|
||||
| instanceThroughRequire.js:1:36:1:70 | require ... tance') | myRequiredModuleInstance | instanceThroughRequire.js:4:5:4:32 | myRequi ... nceName | myRequiredModuleInstanceName |
|
||||
| moduleUses.js:1:11:1:24 | require('mod') | mod | moduleUses.js:3:1:3:3 | mod | mod |
|
||||
| moduleUses.js:1:11:1:24 | require('mod') | mod | moduleUses.js:5:9:5:11 | mod | mod |
|
||||
| moduleUses.js:1:11:1:24 | require('mod') | mod | moduleUses.js:8:9:8:11 | mod | mod |
|
||||
| moduleUses.js:1:11:1:24 | require('mod') | mod | moduleUses.js:11:1:11:3 | mod | mod |
|
||||
| moduleUses.js:1:11:1:24 | require('mod') | mod | moduleUses.js:13:1:13:3 | mod | mod |
|
||||
| moduleUses.js:1:11:1:24 | require('mod') | mod | moduleUses.js:15:5:15:7 | mod | mod |
|
||||
@@ -0,0 +1,5 @@
|
||||
import javascript
|
||||
|
||||
from DataFlow::ModuleImportNode m, Identifier use
|
||||
where m.flowsToExpr(use)
|
||||
select m, m.getPath(), use, use.getName()
|
||||
@@ -0,0 +1,2 @@
|
||||
| destructuringRequire.js:1:27:1:45 | require('electron') | destructuringRequire.js:2:1:2:19 | new BrowserWindow() |
|
||||
| moduleUses.js:1:11:1:24 | require('mod') | moduleUses.js:9:1:9:7 | new K() |
|
||||
@@ -0,0 +1,4 @@
|
||||
import javascript
|
||||
|
||||
from DataFlow::ModuleImportNode m
|
||||
select m, m.getAConstructorInvocation(_)
|
||||
@@ -0,0 +1,4 @@
|
||||
| amd1.js:1:25:1:26 | fs | amd1.js:2:3:2:29 | fs.read ... a.txt") |
|
||||
| amd2.js:2:12:2:24 | require('fs') | amd2.js:3:3:3:29 | fs.read ... a.txt") |
|
||||
| moduleUses.js:1:11:1:24 | require('mod') | moduleUses.js:3:1:3:18 | mod.moduleMethod() |
|
||||
| moduleUses.js:1:11:1:24 | require('mod') | moduleUses.js:6:1:6:3 | f() |
|
||||
@@ -0,0 +1,4 @@
|
||||
import javascript
|
||||
|
||||
from DataFlow::ModuleImportNode m
|
||||
select m, m.getAMemberCall(_)
|
||||
@@ -0,0 +1,6 @@
|
||||
| amd1.js:1:25:1:26 | fs | amd1.js:2:3:2:29 | fs.read ... a.txt") |
|
||||
| amd2.js:2:12:2:24 | require('fs') | amd2.js:3:3:3:29 | fs.read ... a.txt") |
|
||||
| destructuringRequire.js:1:27:1:45 | require('electron') | destructuringRequire.js:2:1:2:19 | new BrowserWindow() |
|
||||
| moduleUses.js:1:11:1:24 | require('mod') | moduleUses.js:3:1:3:18 | mod.moduleMethod() |
|
||||
| moduleUses.js:1:11:1:24 | require('mod') | moduleUses.js:6:1:6:3 | f() |
|
||||
| moduleUses.js:1:11:1:24 | require('mod') | moduleUses.js:9:1:9:7 | new K() |
|
||||
@@ -0,0 +1,4 @@
|
||||
import javascript
|
||||
|
||||
from DataFlow::ModuleImportNode m
|
||||
select m, m.getAMemberInvocation(_)
|
||||
@@ -0,0 +1,3 @@
|
||||
| amd1.js:1:25:1:26 | fs | amd1.js:2:3:2:29 | fs.read ... a.txt") |
|
||||
| amd2.js:2:12:2:24 | require('fs') | amd2.js:3:3:3:29 | fs.read ... a.txt") |
|
||||
| moduleUses.js:1:11:1:24 | require('mod') | moduleUses.js:3:1:3:18 | mod.moduleMethod() |
|
||||
@@ -0,0 +1,4 @@
|
||||
import javascript
|
||||
|
||||
from DataFlow::ModuleImportNode m
|
||||
select m, m.getAMethodCall(_)
|
||||
@@ -0,0 +1,7 @@
|
||||
| amd1.js:1:25:1:26 | fs | amd1.js:2:3:2:17 | fs.readFileSync |
|
||||
| amd2.js:2:12:2:24 | require('fs') | amd2.js:3:3:3:17 | fs.readFileSync |
|
||||
| destructuringRequire.js:1:27:1:45 | require('electron') | destructuringRequire.js:1:9:1:21 | BrowserWindow |
|
||||
| moduleUses.js:1:11:1:24 | require('mod') | moduleUses.js:3:1:3:16 | mod.moduleMethod |
|
||||
| moduleUses.js:1:11:1:24 | require('mod') | moduleUses.js:5:9:5:26 | mod.moduleFunction |
|
||||
| moduleUses.js:1:11:1:24 | require('mod') | moduleUses.js:8:9:8:31 | mod.con ... unction |
|
||||
| moduleUses.js:1:11:1:24 | require('mod') | moduleUses.js:11:1:11:15 | mod.moduleField |
|
||||
@@ -0,0 +1,4 @@
|
||||
import javascript
|
||||
|
||||
from DataFlow::ModuleImportNode m
|
||||
select m, m.getAPropertyRead(_)
|
||||
@@ -0,0 +1,7 @@
|
||||
| amd1.js:1:25:1:26 | fs | fs |
|
||||
| amd2.js:2:12:2:24 | require('fs') | fs |
|
||||
| destructuringRequire.js:1:27:1:45 | require('electron') | electron |
|
||||
| instanceThroughDefaultImport.js:1:8:1:42 | myDefaultImportedModuleInstanceName | myDefaultImportedModuleInstance |
|
||||
| instanceThroughNamespaceImport.js:1:8:1:49 | myNamespaceImportedModuleInstanceName | myNamespaceImportedModuleInstance |
|
||||
| instanceThroughRequire.js:1:36:1:70 | require ... tance') | myRequiredModuleInstance |
|
||||
| moduleUses.js:1:11:1:24 | require('mod') | mod |
|
||||
@@ -0,0 +1,4 @@
|
||||
import javascript
|
||||
|
||||
from DataFlow::ModuleImportNode m
|
||||
select m, m.getPath()
|
||||
@@ -0,0 +1,3 @@
|
||||
define(['fs'], function(fs) {
|
||||
fs.readFileSync("data.txt");
|
||||
});
|
||||
@@ -0,0 +1,4 @@
|
||||
define(function(require) {
|
||||
var fs = require('fs');
|
||||
fs.readFileSync("data.txt");
|
||||
});
|
||||
@@ -0,0 +1,2 @@
|
||||
import { BrowserWindow } from 'electron';
|
||||
new BrowserWindow();
|
||||
@@ -0,0 +1,2 @@
|
||||
const { BrowserWindow } = require('electron');
|
||||
new BrowserWindow();
|
||||
@@ -0,0 +1,5 @@
|
||||
import myDefaultImportedModuleInstanceName from 'myDefaultImportedModuleInstance';
|
||||
myDefaultImportedModuleInstanceName;
|
||||
function g() {
|
||||
myDefaultImportedModuleInstanceName;
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
import * as myNamespaceImportedModuleInstanceName from 'myNamespaceImportedModuleInstance';
|
||||
myNamespaceImportedModuleInstanceName;
|
||||
function g() {
|
||||
myNamespaceImportedModuleInstanceName;
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
var myRequiredModuleInstanceName = require('myRequiredModuleInstance');
|
||||
myRequiredModuleInstanceName;
|
||||
function g() {
|
||||
myRequiredModuleInstanceName;
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
| electron | BrowserWindow | destructuringES6.js:1:10:1:22 | BrowserWindow |
|
||||
| electron | BrowserWindow | destructuringRequire.js:1:9:1:21 | BrowserWindow |
|
||||
| fs | readFileSync | amd1.js:2:3:2:17 | fs.readFileSync |
|
||||
| fs | readFileSync | amd2.js:3:3:3:17 | fs.readFileSync |
|
||||
| mod | constructorFunction | moduleUses.js:8:9:8:31 | mod.con ... unction |
|
||||
| mod | moduleField | moduleUses.js:11:1:11:15 | mod.moduleField |
|
||||
| mod | moduleFunction | moduleUses.js:5:9:5:26 | mod.moduleFunction |
|
||||
| mod | moduleMethod | moduleUses.js:3:1:3:16 | mod.moduleMethod |
|
||||
| myDefaultImportedModuleInstance | default | instanceThroughDefaultImport.js:1:8:1:42 | myDefaultImportedModuleInstanceName |
|
||||
@@ -0,0 +1,4 @@
|
||||
import javascript
|
||||
|
||||
from string path, string m
|
||||
select path, m, DataFlow::moduleMember(path, m)
|
||||
@@ -0,0 +1,15 @@
|
||||
var mod = require('mod');
|
||||
|
||||
mod.moduleMethod();
|
||||
|
||||
var f = mod.moduleFunction;
|
||||
f();
|
||||
|
||||
var K = mod.constructorFunction;
|
||||
new K();
|
||||
|
||||
mod.moduleField;
|
||||
|
||||
mod();
|
||||
|
||||
new mod();
|
||||
Reference in New Issue
Block a user