C++: Simplify the description of the source.

This commit is contained in:
Mathias Vorreiter Pedersen
2023-07-25 09:13:27 +02:00
parent 359a9e5fe8
commit 55cfadb1f4

View File

@@ -22,9 +22,10 @@
* in `AllocationToInvalidPointer.qll` that are actually being dereferenced. We do this using a regular dataflow
* configuration (see `InvalidPointerToDerefConfig`).
*
* This dataflow traversal defines the set of sources as any dataflow node that is non-strictly lower-bounded by the
* pointer-arithmetic instruction identified by `AllocationToInvalidPointer.qll`. That is, the set of sources is any
* dataflow node `source` such that `source.asInstruction() >= pai + delta1` for some `delta1 >= 0`.
* This dataflow traversal defines the set of sources as any dataflow node `n` such that there exists a pointer-arithmetic
* instruction `pai` found by `AllocationToInvalidPointer.qll` and `n.asInstruction() >= pai + deltaDerefSourceAndPai`.
* Here, `deltaDerefSourceAndPai` is the constant difference between the source we track for finding a dereference and the
* pointer-arithmetic instruction.
*
* The set of sinks is defined to be any address operand `addr` that is non-strictly upper-bounded by the sink. That is,
* any dataflow node `n` such that `addr <= sink.asInstruction() + delta2` for some `delta2`. We call the instruction that