Data flow: Inline local(Expr)?(Flow|Taint)

See https://github.com/github/codeql/pull/7791
This commit is contained in:
Owen Mansel-Chan
2022-11-02 15:51:37 +00:00
parent 736435adda
commit 1718ef88be
2 changed files with 3 additions and 0 deletions

View File

@@ -131,6 +131,7 @@ predicate simpleLocalFlowStep(Node nodeFrom, Node nodeTo) {
* Holds if data flows from `source` to `sink` in zero or more local
* (intra-procedural) steps.
*/
pragma[inline]
predicate localFlow(Node source, Node sink) { localFlowStep*(source, sink) }
private newtype TContent =

View File

@@ -9,12 +9,14 @@ private import FlowSummaryImpl as FlowSummaryImpl
* Holds if taint can flow from `src` to `sink` in zero or more
* local (intra-procedural) steps.
*/
pragma[inline]
predicate localTaint(DataFlow::Node src, DataFlow::Node sink) { localTaintStep*(src, sink) }
/**
* Holds if taint can flow from `src` to `sink` in zero or more
* local (intra-procedural) steps.
*/
pragma[inline]
predicate localExprTaint(Expr src, Expr sink) {
localTaint(DataFlow::exprNode(src), DataFlow::exprNode(sink))
}