Policy.Make
module Machine : Bap_primus.Std.Primus.Machine.S
select p k
selects the taint propagation policy p
for objects of kind k
. If no policy is selected for a kind of an object, then objects of that kind will be propagated by default policy.
set_default policy
makes policy
the default policy for all kinds that didn't select their own taint propagation policies.
selected p k
is true
if the policy p
was selected for the kind k
.
val propagate :
t ->
Rel.t ->
Rel.t ->
Bap_primus.Std.Primus.value list ->
Bap_primus.Std.Primus.value ->
unit Machine.t
propagate p rs rd srcs dst
transfers objects associated with srcs
to dst
based on the selected policy p
.
Effect: all objects that have selected the propagation policy p
and were associated with srcs
by the relation rs
are attached to the dst
value using the rd
relation. All associations of the srcs
values remain unaffected.