pub struct SecurityTaintFlow {
pub source: TaintEndpoint,
pub sink: TaintEndpoint,
pub path: TaintPath,
}Expand description
A source-to-sink taint-flow triple, emitted only when an untrusted source is
import-reachable to the sink (reachability.reachable_from_untrusted_source).
The { source, sink, path } shape matches the model agent SAST tooling
expects (cf. Semgrep taint_source / taint_sink, SARIF threadFlows).
Fields§
§source: TaintEndpointThe untrusted-source endpoint (first hop of the reachability trace).
sink: TaintEndpointThe sink endpoint (terminal hop of the reachability trace / the anchor).
path: TaintPathCompact flow shape: same-module flag plus module hop count. The full
ordered path is reachability.untrusted_source_trace.
Trait Implementations§
Source§impl Clone for SecurityTaintFlow
impl Clone for SecurityTaintFlow
Source§impl Debug for SecurityTaintFlow
impl Debug for SecurityTaintFlow
Source§impl<'de> Deserialize<'de> for SecurityTaintFlow
impl<'de> Deserialize<'de> for SecurityTaintFlow
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for SecurityTaintFlow
Source§impl PartialEq for SecurityTaintFlow
impl PartialEq for SecurityTaintFlow
Source§impl Serialize for SecurityTaintFlow
impl Serialize for SecurityTaintFlow
impl StructuralPartialEq for SecurityTaintFlow
Auto Trait Implementations§
impl Freeze for SecurityTaintFlow
impl RefUnwindSafe for SecurityTaintFlow
impl Send for SecurityTaintFlow
impl Sync for SecurityTaintFlow
impl Unpin for SecurityTaintFlow
impl UnsafeUnpin for SecurityTaintFlow
impl UnwindSafe for SecurityTaintFlow
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.