Class Make::DataFlowIntegration::SsaInputNode
A node that represents an input to an SSA phi (read) definition.
This allows for barrier guards to filter input to phi nodes. For example, in
x = taint
if x != "safe" then
x = "safe"
end
sink x
the false edge out of x != "safe" guards the input from x = taint into the
phi node after the condition.
It is also relevant to filter input into phi read nodes:
x = taint
if b then
if x != "safe1" then
return
end
else
if x != "safe2" then
return
end
end
sink x
both inputs into the phi read node after the outer condition are guarded.
Import path
import codeql.ssa.SsaDirect supertypes
Predicates
| getBasicBlock | Gets the basic block to which this node belongs. |
| getDefinitionExt | Gets the underlying SSA definition. |
| getIndex | INTERNAL: Do not use. |
| getLocation | Gets the location of this node. |
| getPhi | |
| getSourceVariable | Gets the underlying source variable that this node tracks flow for. |
| isInputInto | Holds if this node represents input into SSA definition |
| toString | Gets a textual representation of this node. |
Inherited predicates
| asDefinition | Gets the SSA definition this node corresponds to, if any. | from SsaNodeImpl |