PasswordOptions

Struct PasswordOptions 

Source
pub struct PasswordOptions {
    pub query: Vec<(CFString, CFType)>,
}
Expand description

PasswordOptions constructor

Fields§

§query: Vec<(CFString, CFType)>
👎Deprecated: This field should have been private. Please use setters that don’t expose CFType

query built for the keychain request

Implementations§

Source§

impl PasswordOptions

Source

pub fn new_generic_password(service: &str, account: &str) -> Self

Create a new generic password options Generic passwords are identified by service and account. They have other attributes, but this interface doesn’t allow specifying them.

Source

pub fn new_internet_password( server: &str, security_domain: Option<&str>, account: &str, path: &str, port: Option<u16>, protocol: SecProtocolType, authentication_type: SecAuthenticationType, ) -> Self

Create a new internet password options Internet passwords are identified by a number of attributes. They can have others, but this interface doesn’t allow specifying them.

Source

pub fn set_access_control_options(&mut self, options: AccessControlOptions)

Add access control to the password

Source

pub fn set_access_control(&mut self, access_control: SecAccessControl)

Add access control to the password

Source

pub fn set_access_group(&mut self, group: &str)

Add access group to the password

Source

pub fn set_access_synchronized(&mut self, synchronized: Option<bool>)

Specify whether password is cloud-synchronized, not cloud-synchronized, or either (None).

Note: cloud-synchronized and not-cloud-synchronized passwords are kept in completely different stores, so they are uniquely identified not just by their service and account but also their cloud-synchronized option.

If you specify a non-None value for this option, any operation you perform - whether set, get, or delete - will only affect the store matching the value: Some(true) will only affect the cloud-synchronized store and Some(false) will only affect the not-cloud-synchronized store.

If you specify None for this option, the effect depends on your operation:

  • Performing a delete will delete from both stores.
  • Performing a get will return values from both stores, but since get only returns one value you can’t be sure which store that value was in.
  • Performing a set will update existing values in both stores. But, before doing any updates, set will first try to create a new value in the not-cloud-synchronized store (interpreting None as false). If that creation attempt succeeds, no update will be done of any existing value in the cloud-synchronized store. Thus, only if there is an existing value in the not-cloud-synchronized store will set update the cloud-synchronized store.
Source

pub fn set_comment(&mut self, comment: &str)

Set the comment on the password

Source

pub fn set_description(&mut self, description: &str)

Add a description to the password

Source

pub fn set_label(&mut self, label: &str)

Add a label to the password

Source

pub fn use_protected_keychain(&mut self)

Use the data protection keychain (always true except on macOS)

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.