Skip to content

Commit dd30acf

Browse files
committed
C++: Add nodes query predicate to cpp/invalid-pointer-deref
1 parent f5ed02a commit dd30acf

File tree

2 files changed

+335
-0
lines changed

2 files changed

+335
-0
lines changed

cpp/ql/src/experimental/Security/CWE/CWE-193/InvalidPointerDeref.ql

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -324,6 +324,14 @@ query predicate edges(MergedPathNode node1, MergedPathNode node2) {
324324
joinOn2(node1.asPathNode3(), node2.asSinkNode(), _, _)
325325
}
326326

327+
query predicate nodes(MergedPathNode n, string key, string val) {
328+
AllocToInvalidPointerFlow::PathGraph1::nodes(n.asPathNode1(), key, val)
329+
or
330+
InvalidPointerToDerefFlow::PathGraph::nodes(n.asPathNode3(), key, val)
331+
or
332+
key = "semmle.label" and val = n.asSinkNode().toString()
333+
}
334+
327335
query predicate subpaths(
328336
MergedPathNode arg, MergedPathNode par, MergedPathNode ret, MergedPathNode out
329337
) {

0 commit comments

Comments
 (0)