2
2
3
3
import java .io .File ;
4
4
import java .net .URI ;
5
+ import java .nio .file .FileSystem ;
5
6
import java .nio .file .Path ;
6
7
import java .nio .file .Paths ;
7
8
@@ -13,6 +14,119 @@ void sink(Object o) { }
13
14
14
15
public void test () throws Exception {
15
16
17
+ {
18
+ // "java.io;File;false;File;;;Argument[0];Argument[-1];taint;manual"
19
+ File out = null ;
20
+ File in = (File )source ();
21
+ out = new File (in , (String )null );
22
+ sink (out ); // $ hasTaintFlow
23
+ }
24
+ {
25
+ // "java.io;File;false;File;;;Argument[0];Argument[-1];taint;manual"
26
+ File out = null ;
27
+ String in = (String )source ();
28
+ out = new File (in );
29
+ sink (out ); // $ hasTaintFlow
30
+ }
31
+ {
32
+ // "java.io;File;false;File;;;Argument[0];Argument[-1];taint;manual"
33
+ File out = null ;
34
+ String in = (String )source ();
35
+ out = new File (in , (String )null );
36
+ sink (out ); // $ hasTaintFlow
37
+ }
38
+ {
39
+ // "java.io;File;false;File;;;Argument[0];Argument[-1];taint;manual"
40
+ File out = null ;
41
+ URI in = (URI )source ();
42
+ out = new File (in );
43
+ sink (out ); // $ hasTaintFlow
44
+ }
45
+ {
46
+ // "java.io;File;false;File;;;Argument[1];Argument[-1];taint;manual"
47
+ File out = null ;
48
+ String in = (String )source ();
49
+ out = new File ((File )null , in );
50
+ sink (out ); // $ hasTaintFlow
51
+ }
52
+ {
53
+ // "java.io;File;false;File;;;Argument[1];Argument[-1];taint;manual"
54
+ File out = null ;
55
+ String in = (String )source ();
56
+ out = new File ((String )null , in );
57
+ sink (out ); // $ hasTaintFlow
58
+ }
59
+ {
60
+ // "java.io;File;true;getAbsoluteFile;;;Argument[-1];ReturnValue;taint;manual"
61
+ File out = null ;
62
+ File in = (File )source ();
63
+ out = in .getAbsoluteFile ();
64
+ sink (out ); // $ hasTaintFlow
65
+ }
66
+ {
67
+ // "java.io;File;true;getAbsolutePath;;;Argument[-1];ReturnValue;taint;manual"
68
+ String out = null ;
69
+ File in = (File )source ();
70
+ out = in .getAbsolutePath ();
71
+ sink (out ); // $ hasTaintFlow
72
+ }
73
+ {
74
+ // "java.io;File;true;getCanonicalFile;;;Argument[-1];ReturnValue;taint;manual"
75
+ File out = null ;
76
+ File in = (File )source ();
77
+ out = in .getCanonicalFile ();
78
+ sink (out ); // $ hasTaintFlow
79
+ }
80
+ {
81
+ // "java.io;File;true;getCanonicalPath;;;Argument[-1];ReturnValue;taint;manual"
82
+ String out = null ;
83
+ File in = (File )source ();
84
+ out = in .getCanonicalPath ();
85
+ sink (out ); // $ hasTaintFlow
86
+ }
87
+ {
88
+ // "java.io;File;true;toPath;;;Argument[-1];ReturnValue;taint;manual"
89
+ Path out = null ;
90
+ File in = (File )source ();
91
+ out = in .toPath ();
92
+ sink (out ); // $ hasTaintFlow
93
+ }
94
+ {
95
+ // "java.io;File;true;toString;;;Argument[-1];ReturnValue;taint;manual"
96
+ String out = null ;
97
+ File in = (File )source ();
98
+ out = in .toString ();
99
+ sink (out ); // $ hasTaintFlow
100
+ }
101
+ {
102
+ // "java.io;File;true;toURI;;;Argument[-1];ReturnValue;taint;manual"
103
+ URI out = null ;
104
+ File in = (File )source ();
105
+ out = in .toURI ();
106
+ sink (out ); // $ hasTaintFlow
107
+ }
108
+ {
109
+ // "java.nio.file;FileSystem;true;getPath;;;Argument[0];ReturnValue;taint;manual"
110
+ Path out = null ;
111
+ String in = (String )source ();
112
+ FileSystem instance = null ;
113
+ out = instance .getPath (in , (String [])null );
114
+ sink (out ); // $ hasTaintFlow
115
+ }
116
+ {
117
+ // "java.nio.file;Path;false;toFile;;;Argument[-1];ReturnValue;taint;manual"
118
+ File out = null ;
119
+ Path in = (Path )source ();
120
+ out = in .toFile ();
121
+ sink (out ); // $ hasTaintFlow
122
+ }
123
+ {
124
+ // "java.nio.file;Path;true;getParent;;;Argument[-1];ReturnValue;taint;manual"
125
+ Path out = null ;
126
+ Path in = (Path )source ();
127
+ out = in .getParent ();
128
+ sink (out ); // $ hasTaintFlow
129
+ }
16
130
{
17
131
// "java.nio.file;Path;true;normalize;;;Argument[-1];ReturnValue;taint;manual"
18
132
Path out = null ;
@@ -51,10 +165,10 @@ public void test() throws Exception {
51
165
sink (out ); // $ hasTaintFlow
52
166
}
53
167
{
54
- // "java.nio.file;Path;true;toFile ;;;Argument[-1];ReturnValue;taint;manual"
55
- File out = null ;
168
+ // "java.nio.file;Path;true;toAbsolutePath ;;;Argument[-1];ReturnValue;taint;manual"
169
+ Path out = null ;
56
170
Path in = (Path )source ();
57
- out = in .toFile ();
171
+ out = in .toAbsolutePath ();
58
172
sink (out ); // $ hasTaintFlow
59
173
}
60
174
{
@@ -72,24 +186,24 @@ public void test() throws Exception {
72
186
sink (out ); // $ hasTaintFlow
73
187
}
74
188
{
75
- // "java.nio.file;Paths;true;get;;;Argument[0..1 ];ReturnValue;taint;manual"
189
+ // "java.nio.file;Paths;true;get;;;Argument[0];ReturnValue;taint;manual"
76
190
Path out = null ;
77
191
String in = (String )source ();
78
192
out = Paths .get (in , (String [])null );
79
193
sink (out ); // $ hasTaintFlow
80
194
}
81
195
{
82
- // "java.nio.file;Paths;true;get;;;Argument[0..1 ];ReturnValue;taint;manual"
196
+ // "java.nio.file;Paths;true;get;;;Argument[0];ReturnValue;taint;manual"
83
197
Path out = null ;
84
- String [] in = (String [] )source ();
85
- out = Paths .get (( String ) null , in );
198
+ URI in = (URI )source ();
199
+ out = Paths .get (in );
86
200
sink (out ); // $ hasTaintFlow
87
201
}
88
202
{
89
- // "java.nio.file;Paths;true;get;;;Argument[0..1] ;ReturnValue;taint;manual"
203
+ // "java.nio.file;Paths;true;get;;;Argument[1].ArrayElement ;ReturnValue;taint;manual"
90
204
Path out = null ;
91
- URI in = (URI ) source ();
92
- out = Paths .get (in );
205
+ String [] in = (String []) new String []{( String ) source ()} ;
206
+ out = Paths .get (( String ) null , in );
93
207
sink (out ); // $ hasTaintFlow
94
208
}
95
209
0 commit comments