Struct btlib::atomic_file::AtomicFileReadGuard
source · pub struct AtomicFileReadGuard<'a, T> { /* private fields */ }
Trait Implementations§
Auto Trait Implementations§
impl<'a, T> RefUnwindSafe for AtomicFileReadGuard<'a, T>where T: RefUnwindSafe,
impl<'a, T> !Send for AtomicFileReadGuard<'a, T>
impl<'a, T> Sync for AtomicFileReadGuard<'a, T>where T: Sync,
impl<'a, T> Unpin for AtomicFileReadGuard<'a, T>
impl<'a, T> UnwindSafe for AtomicFileReadGuard<'a, T>where T: RefUnwindSafe,
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, P> CredStore for Pwhere
T: CredStore + ?Sized,
P: Deref<Target = T>,
impl<T, P> CredStore for Pwhere T: CredStore + ?Sized, P: Deref<Target = T>,
§type CredHandle = <T as CredStore>::CredHandle
type CredHandle = <T as CredStore>::CredHandle
The type of the credential handle returned by this store.
§type ExportedCreds = <T as CredStore>::ExportedCreds
type ExportedCreds = <T as CredStore>::ExportedCreds
The type of the exported credentials returned by this store.
source§fn node_creds(&self) -> Result<<P as CredStore>::CredHandle, Error>
fn node_creds(&self) -> Result<<P as CredStore>::CredHandle, Error>
Returns the node credentials. If credentials haven’t been generated, they are generated
stored and returned.
source§fn root_creds(
&self,
password: &str
) -> Result<<P as CredStore>::CredHandle, Error>
fn root_creds( &self, password: &str ) -> Result<<P as CredStore>::CredHandle, Error>
Returns the root credentials. If no root credentials have been generated, or the provided
password is incorrect, then an error is returned.
source§fn storage_key(&self) -> Result<AsymKey<Public, Encrypt>, Error>
fn storage_key(&self) -> Result<AsymKey<Public, Encrypt>, Error>
Returns a public key which can be used to encrypt data intended only to be accessed by this
node. The returned key can be given as the
new_parent
parameter to the
CredStore::export_root_creds method.source§fn export_root_creds(
&self,
root_creds: &<P as CredStore>::CredHandle,
password: &str,
new_parent: &AsymKey<Public, Encrypt>
) -> Result<<P as CredStore>::ExportedCreds, Error>
fn export_root_creds( &self, root_creds: &<P as CredStore>::CredHandle, password: &str, new_parent: &AsymKey<Public, Encrypt> ) -> Result<<P as CredStore>::ExportedCreds, Error>
Exports the root credentials. These can be serialized and persisted external to the
application and later loaded and deserialized and passed to the
CredStoreMut::import_root_creds method.
The
password
argument must match the value provided when the CredStore::root_creds
method was called. The new_parent
argument is the public key of the node that is to import
the root key, which can be obtained using the CredStoreMut::gen_root_creds method on the
importing node.source§impl<T, P> CredStoreMut for Pwhere
T: CredStoreMut + ?Sized,
P: Deref<Target = T>,
impl<T, P> CredStoreMut for Pwhere T: CredStoreMut + ?Sized, P: Deref<Target = T>,
source§fn gen_root_creds(
&self,
password: &str
) -> Result<<T as CredStore>::CredHandle, Error>
fn gen_root_creds( &self, password: &str ) -> Result<<T as CredStore>::CredHandle, Error>
Generates the root credentials and protects them using the given password. If the root
credentials have already been generated then an error is returned.
source§fn import_root_creds(
&self,
password: &str,
exported: <P as CredStore>::ExportedCreds
) -> Result<<P as CredStore>::CredHandle, Error>
fn import_root_creds( &self, password: &str, exported: <P as CredStore>::ExportedCreds ) -> Result<<P as CredStore>::CredHandle, Error>
Imports root credentials that were previously created with CredStore::export_root_creds.
The provided password must match the value that was given to that method.
source§fn assign_node_writecap(
&self,
handle: &mut <P as CredStore>::CredHandle,
writecap: Writecap
) -> Result<(), Error>
fn assign_node_writecap( &self, handle: &mut <P as CredStore>::CredHandle, writecap: Writecap ) -> Result<(), Error>
source§fn assign_root_writecap(
&self,
handle: &mut <P as CredStore>::CredHandle,
writecap: Writecap
) -> Result<(), Error>
fn assign_root_writecap( &self, handle: &mut <P as CredStore>::CredHandle, writecap: Writecap ) -> Result<(), Error>
Assigns
writecap
to the root credentials referred to by handle
. This method
is responsible for committing the given Writecap to durable storage.source§fn provision_root(
&self,
password: &str,
expires: Epoch
) -> Result<Self::CredHandle>
fn provision_root( &self, password: &str, expires: Epoch ) -> Result<Self::CredHandle>
Generates new root credentials protected by
password
and issues them a self-signed
Writecap which expires after valid_for
. The newly generated root credentials are
returned.source§fn provision_node_start(&self) -> Result<Principal>
fn provision_node_start(&self) -> Result<Principal>
source§fn provision_node_finish(&self, writecap: Writecap) -> Result<Self::CredHandle>
fn provision_node_finish(&self, writecap: Writecap) -> Result<Self::CredHandle>
Assigns the given Writecap to the node credentials and commits it to durable storage.
A handle to the node credentials is returned.
source§impl<T> DecrypterExt for Twhere
T: Decrypter + ?Sized,
impl<T> DecrypterExt for Twhere T: Decrypter + ?Sized,
fn ser_decrypt<T: DeserializeOwned>(&self, ct: &Ciphertext<T>) -> Result<T>
§impl<T, A> DynAccess<T> for Awhere
A: Access<T>,
<A as Access<T>>::Guard: 'static,
impl<T, A> DynAccess<T> for Awhere A: Access<T>, <A as Access<T>>::Guard: 'static,
source§impl<T> EncrypterExt for Twhere
T: Encrypter + ?Sized,
impl<T> EncrypterExt for Twhere T: Encrypter + ?Sized,
source§fn ser_encrypt<T: Serialize>(&self, value: &T) -> Result<Ciphertext<T>>
fn ser_encrypt<T: Serialize>(&self, value: &T) -> Result<Ciphertext<T>>
Serializes the given value into a new vector, then encrypts it and returns the resulting
ciphertext.