Skip to content

Commit 18c74c5

Browse files
committed
Simplify Ratpack API using standard abstract classes
1 parent b2e3df2 commit 18c74c5

File tree

1 file changed

+2
-14
lines changed
  • java/ql/src/semmle/code/java/frameworks/ratpack

1 file changed

+2
-14
lines changed

java/ql/src/semmle/code/java/frameworks/ratpack/Ratpack.qll

Lines changed: 2 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -91,23 +91,11 @@ class RatpackHeader extends RefType {
9191
}
9292
}
9393

94-
private class RatpackHeaderTaintPropigatingMethod extends Method {
94+
private class RatpackHeaderTaintPropigatingMethod extends Method, TaintPreservingCallable {
9595
RatpackHeaderTaintPropigatingMethod() {
9696
getDeclaringType() instanceof RatpackHeader and
9797
hasName(["get", "getAll", "getNames", "asMultiValueMap"])
9898
}
99-
}
100-
101-
class TaintPropigatingHeaderMethod extends AdditionalTaintStep {
102-
override predicate step(DataFlow::Node node1, DataFlow::Node node2) {
103-
stepHeaderPropigatingTaint(node1, node2)
104-
}
10599

106-
private predicate stepHeaderPropigatingTaint(DataFlow::Node node1, DataFlow::Node node2) {
107-
exists(MethodAccess ma |
108-
ma.getMethod() instanceof RatpackHeaderTaintPropigatingMethod and
109-
node2.asExpr() = ma and
110-
node1.asExpr() = ma.getQualifier()
111-
)
112-
}
100+
override predicate returnsTaintFrom(int arg) { arg = -1 }
113101
}

0 commit comments

Comments
 (0)