Skip to content

Commit d3d67f0

Browse files
committed
Add tests & stubs
1 parent 977263a commit d3d67f0

29 files changed

+1008
-379
lines changed
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
import com.google.gson.Gson;
2+
3+
public class Test {
4+
public static class Potato {
5+
private String name;
6+
private Potato inner;
7+
private Object object;
8+
9+
private String getName() {
10+
return name;
11+
}
12+
13+
private Potato getInner() {
14+
return inner;
15+
}
16+
17+
private Object getObject() {
18+
return object;
19+
}
20+
21+
}
22+
23+
public static String source() {
24+
return "";
25+
}
26+
27+
public static void sink(Object any) {}
28+
29+
public static void gsonfromJson() throws Exception {
30+
String s = source();
31+
Potato tainted = new Gson().fromJson(s, Potato.class);
32+
sink(tainted); // $ hasTaintFlow
33+
sink(tainted.getName()); // $ hasTaintFlow
34+
sink(tainted.getInner()); // $ hasTaintFlow
35+
sink(tainted.getInner().getName()); // $ hasTaintFlow
36+
sink(tainted.getObject()); // $ hasTaintFlow
37+
}
38+
}

java/ql/test/library-tests/dataflow/taint-gson/dataFlow.expected

Whitespace-only changes.
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
import java
2+
import TestUtilities.InlineFlowTest
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
//semmle-extractor-options: --javac-args -cp ${testdir}/../../../stubs/gson-2.8.6

0 commit comments

Comments
 (0)