public override void VisitAssign(AssignPoint p) { var source = p.ROperand.Value; var target = p.LOperand.LValue; if (target == null || source == null) { //Variable has to be LValue return; } var sourceTaint = getTaint(source); var finalPropagation = sourceTaint; setTaint(target, finalPropagation); }
public override void VisitAssign(AssignPoint p) { var source = p.LOperand.LValue; var targetPoint = p.ROperand as LValuePoint; if (source == null || targetPoint == null || targetPoint.LValue == null) { //Variable has to be LValue return; } var target = targetPoint.LValue; var sourcePropagation = getPropagation(source); var targetPropagation = getPropagation(target); var finalPropagation = targetPropagation.PropagateTo(sourcePropagation); setPropagation(target, finalPropagation); }