22
33import java .io .File ;
44import java .net .URI ;
5+ import java .nio .file .FileSystem ;
56import java .nio .file .Path ;
67import java .nio .file .Paths ;
78
@@ -13,6 +14,119 @@ void sink(Object o) { }
1314
1415 public void test () throws Exception {
1516
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+ }
16130 {
17131 // "java.nio.file;Path;true;normalize;;;Argument[-1];ReturnValue;taint;manual"
18132 Path out = null ;
@@ -51,10 +165,10 @@ public void test() throws Exception {
51165 sink (out ); // $ hasTaintFlow
52166 }
53167 {
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 ;
56170 Path in = (Path )source ();
57- out = in .toFile ();
171+ out = in .toAbsolutePath ();
58172 sink (out ); // $ hasTaintFlow
59173 }
60174 {
@@ -72,24 +186,24 @@ public void test() throws Exception {
72186 sink (out ); // $ hasTaintFlow
73187 }
74188 {
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"
76190 Path out = null ;
77191 String in = (String )source ();
78192 out = Paths .get (in , (String [])null );
79193 sink (out ); // $ hasTaintFlow
80194 }
81195 {
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"
83197 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 );
86200 sink (out ); // $ hasTaintFlow
87201 }
88202 {
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"
90204 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 );
93207 sink (out ); // $ hasTaintFlow
94208 }
95209
0 commit comments