Files
openide/jvm/jvm-analysis-java-tests/testData/codeInspection/sourceToSinkFlow/IfStatementConstantMethod.java
Mikhail Pyltsin e7c4d58f83 [uast-inspections] IDEA-334967 Non-safe string: always true/false condition in taint inference in other methods
- support if in other methods

GitOrigin-RevId: 1012172402ed8ea0961b1ef552cdfb2f37a7d49e
2023-10-17 12:25:09 +00:00

44 lines
875 B
Java

import org.checkerframework.checker.tainting.qual.Untainted;
class IfStatement {
public void test1(String a) {
sink(<warning descr="Unknown string is used as safe parameter">a</warning>); //warn
}
public void test2(String a) {
String bar;
bar = doSomething1(a);
sink(bar);
}
public void test3(String a) {
String bar;
bar = doSomething2(a);
sink(<warning descr="Unknown string is used as safe parameter">bar</warning>);
}
private static String doSomething1(String param) {
int num = 106;
if ((7 * 18) + num > 100) {
return "This_should_always_happen";
}
return param;
}
private static String doSomething2(String param) {
int num = 106;
if ((7 * 18) + num > 500) {
return "This_should_always_happen";
}
return param;
}
public static void sink(@Untainted String t) {
}
}