mirror of
https://github.com/github/codeql.git
synced 2025-12-17 09:13:20 +01:00
169 lines
4.8 KiB
Java
169 lines
4.8 KiB
Java
package generatedtest;
|
|
|
|
import java.net.InetAddress;
|
|
import java.net.InetSocketAddress;
|
|
import java.net.URI;
|
|
import java.net.URL;
|
|
import java.net.URLDecoder;
|
|
import java.nio.charset.Charset;
|
|
|
|
// Test case generated by GenerateFlowTestCase.ql
|
|
public class Test {
|
|
|
|
Object source() {
|
|
return null;
|
|
}
|
|
|
|
void sink(Object o) {}
|
|
|
|
public void test() throws Exception {
|
|
|
|
{
|
|
// "java.net;InetAddress;true;getByName;(String);;Argument[0];ReturnValue;taint;ai-generated"
|
|
InetAddress out = null;
|
|
String in = (String) source();
|
|
out = InetAddress.getByName(in);
|
|
sink(out); // $ hasTaintFlow
|
|
}
|
|
{
|
|
// "java.net;InetSocketAddress;true;InetSocketAddress;(String,int);;Argument[0];Argument[this];taint;ai-generated"
|
|
InetSocketAddress out = null;
|
|
String in = (String) source();
|
|
out = new InetSocketAddress(in, 0);
|
|
sink(out); // $ hasTaintFlow
|
|
}
|
|
{
|
|
// "java.net;InetSocketAddress;true;createUnresolved;(String,int);;Argument[0];ReturnValue;taint;ai-generated"
|
|
InetSocketAddress out = null;
|
|
String in = (String) source();
|
|
out = InetSocketAddress.createUnresolved(in, 0);
|
|
sink(out); // $ hasTaintFlow
|
|
}
|
|
{
|
|
// "java.net;URI;false;URI;(String);;Argument[0];Argument[this];taint;manual"
|
|
URI out = null;
|
|
String in = (String) source();
|
|
out = new URI(in);
|
|
sink(out); // $ hasTaintFlow
|
|
}
|
|
{
|
|
// "java.net;URI;false;create;;;Argument[0];ReturnValue;taint;manual"
|
|
URI out = null;
|
|
String in = (String) source();
|
|
out = URI.create(in);
|
|
sink(out); // $ hasTaintFlow
|
|
}
|
|
{
|
|
// "java.net;URI;false;resolve;(String);;Argument[0];ReturnValue;taint;ai-generated"
|
|
URI out = null;
|
|
String in = (String) source();
|
|
URI instance = null;
|
|
out = instance.resolve(in);
|
|
sink(out); // $ hasTaintFlow
|
|
}
|
|
{
|
|
// "java.net;URI;false;resolve;(URI);;Argument[0];ReturnValue;taint;ai-generated"
|
|
URI out = null;
|
|
URI in = (URI) source();
|
|
URI instance = null;
|
|
out = instance.resolve(in);
|
|
sink(out); // $ hasTaintFlow
|
|
}
|
|
{
|
|
// "java.net;URI;false;toASCIIString;;;Argument[this];ReturnValue;taint;manual"
|
|
String out = null;
|
|
URI in = (URI) source();
|
|
out = in.toASCIIString();
|
|
sink(out); // $ hasTaintFlow
|
|
}
|
|
{
|
|
// "java.net;URI;false;toString;;;Argument[this];ReturnValue;taint;manual"
|
|
String out = null;
|
|
URI in = (URI) source();
|
|
out = in.toString();
|
|
sink(out); // $ hasTaintFlow
|
|
}
|
|
{
|
|
// "java.net;URI;false;toURL;;;Argument[this];ReturnValue;taint;manual"
|
|
URL out = null;
|
|
URI in = (URI) source();
|
|
out = in.toURL();
|
|
sink(out); // $ hasTaintFlow
|
|
}
|
|
{
|
|
// manual test for `URI.toURL().getPath()`; checks that if a `URL` is tainted, then so are its synthetic fields
|
|
// java.net;URL;False;getPath;();;Argument[this].SyntheticField[java.net.URL.path];ReturnValue;taint;ai-manual
|
|
URL out = null;
|
|
URI in = (URI) source();
|
|
out = in.toURL();
|
|
sink(out.getPath()); // $ hasTaintFlow
|
|
}
|
|
{
|
|
// "java.net;URL;false;URL;(String);;Argument[0];Argument[this];taint;manual"
|
|
URL out = null;
|
|
String in = (String) source();
|
|
out = new URL(in);
|
|
sink(out); // $ hasTaintFlow
|
|
}
|
|
{
|
|
// manual test for `URL(String).getPath()`; checks that if a `URL` is tainted, then so are its synthetic fields
|
|
// java.net;URL;False;getPath;();;Argument[this].SyntheticField[java.net.URL.path];ReturnValue;taint;ai-manual
|
|
URL out = null;
|
|
String in = (String) source();
|
|
out = new URL(in);
|
|
sink(out.getPath()); // $ hasTaintFlow
|
|
}
|
|
{
|
|
// "java.net;URL;false;URL;(URL,String);;Argument[0];Argument[this];taint;ai-generated"
|
|
URL out = null;
|
|
URL in = (URL) source();
|
|
out = new URL(in, null);
|
|
sink(out); // $ hasTaintFlow
|
|
}
|
|
{
|
|
// "java.net;URL;false;URL;(URL,String);;Argument[1];Argument[this];taint;ai-generated"
|
|
URL out = null;
|
|
String in = (String) source();
|
|
out = new URL(null, in);
|
|
sink(out); // $ hasTaintFlow
|
|
}
|
|
{
|
|
// "java.net;URL;false;toExternalForm;;;Argument[this];ReturnValue;taint;manual"
|
|
String out = null;
|
|
URL in = (URL) source();
|
|
out = in.toExternalForm();
|
|
sink(out); // $ hasTaintFlow
|
|
}
|
|
{
|
|
// "java.net;URL;false;toURI;;;Argument[this];ReturnValue;taint;manual"
|
|
URI out = null;
|
|
URL in = (URL) source();
|
|
out = in.toURI();
|
|
sink(out); // $ hasTaintFlow
|
|
}
|
|
{
|
|
// "java.net;URLDecoder;false;decode;;;Argument[0];ReturnValue;taint;manual"
|
|
String out = null;
|
|
String in = (String) source();
|
|
out = URLDecoder.decode(in);
|
|
sink(out); // $ hasTaintFlow
|
|
}
|
|
{
|
|
// "java.net;URLDecoder;false;decode;;;Argument[0];ReturnValue;taint;manual"
|
|
String out = null;
|
|
String in = (String) source();
|
|
out = URLDecoder.decode(in, (Charset) null);
|
|
sink(out); // $ hasTaintFlow
|
|
}
|
|
{
|
|
// "java.net;URLDecoder;false;decode;;;Argument[0];ReturnValue;taint;manual"
|
|
String out = null;
|
|
String in = (String) source();
|
|
out = URLDecoder.decode(in, (String) null);
|
|
sink(out); // $ hasTaintFlow
|
|
}
|
|
|
|
}
|
|
|
|
}
|