pub struct SignalTrustSet { /* private fields */ }Expand description
A set of Signal UUIDs with optional safety numbers for trust verification.
Can be deserialized from either:
- A map of UUID -> safety numbers:
{"uuid1": ["12345..."], "uuid2": []} - A sequence of UUIDs (no safety numbers):
["uuid1", "uuid2"]
Implementations§
Source§impl SignalTrustSet
impl SignalTrustSet
Sourcepub fn is_trusted(&self, envelope: &Envelope) -> bool
pub fn is_trusted(&self, envelope: &Envelope) -> bool
Check if the sender of an envelope is trusted.
Currently checks if the source UUID is in the trust set. Will eventually also verify safety numbers.
Sourcepub fn uuids(&self) -> impl Iterator<Item = &str>
pub fn uuids(&self) -> impl Iterator<Item = &str>
Get all UUIDs as an iterator of string slices.
Sourcepub fn iter(&self) -> impl Iterator<Item = (&Uuid, &Vec<SafetyNumber>)>
pub fn iter(&self) -> impl Iterator<Item = (&Uuid, &Vec<SafetyNumber>)>
Iterate over UUID and safety number pairs.
Sourcepub fn get(&self, uuid: &str) -> Option<&Vec<SafetyNumber>>
pub fn get(&self, uuid: &str) -> Option<&Vec<SafetyNumber>>
Get safety numbers for a specific UUID.
Sourcepub async fn update_trust(
&self,
signal_cli: &impl RpcClient,
signal_account: &str,
) -> Result<(), String>
pub async fn update_trust( &self, signal_cli: &impl RpcClient, signal_account: &str, ) -> Result<(), String>
Update trust for all UUIDs with safety numbers configured.
For each UUID with safety numbers:
- Check current identities in signal-cli via listIdentities
- If any trusted identity is NOT in our config, remove the contact entirely and re-add only configured ones
- Otherwise, just trust any new safety numbers from config that aren’t already trusted
Returns an error if any trust operation fails.
Trait Implementations§
Source§impl Clone for SignalTrustSet
impl Clone for SignalTrustSet
Source§fn clone(&self) -> SignalTrustSet
fn clone(&self) -> SignalTrustSet
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SignalTrustSet
impl Debug for SignalTrustSet
Source§impl Default for SignalTrustSet
impl Default for SignalTrustSet
Source§fn default() -> SignalTrustSet
fn default() -> SignalTrustSet
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for SignalTrustSet
impl<'de> Deserialize<'de> for SignalTrustSet
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
Source§impl FromIterator<(Uuid, Vec<SafetyNumber>)> for SignalTrustSet
impl FromIterator<(Uuid, Vec<SafetyNumber>)> for SignalTrustSet
Source§fn from_iter<I: IntoIterator<Item = (Uuid, Vec<SafetyNumber>)>>(iter: I) -> Self
fn from_iter<I: IntoIterator<Item = (Uuid, Vec<SafetyNumber>)>>(iter: I) -> Self
Creates a value from an iterator. Read more
Source§impl FromIterator<Uuid> for SignalTrustSet
impl FromIterator<Uuid> for SignalTrustSet
Source§impl<'a> IntoIterator for &'a SignalTrustSet
impl<'a> IntoIterator for &'a SignalTrustSet
Auto Trait Implementations§
impl Freeze for SignalTrustSet
impl RefUnwindSafe for SignalTrustSet
impl Send for SignalTrustSet
impl Sync for SignalTrustSet
impl Unpin for SignalTrustSet
impl UnwindSafe for SignalTrustSet
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