[][src]Struct openssl::envelope::Seal

pub struct Seal { /* fields omitted */ }

Represents an EVP_Seal context.

Implementations

impl Seal[src]

pub fn new<T>(cipher: Cipher, pub_keys: &[PKey<T>]) -> Result<Seal, ErrorStack> where
    T: HasPublic
[src]

Creates a new Seal.

pub fn iv(&self) -> Option<&[u8]>[src]

Returns the initialization vector, if the cipher uses one.

pub fn encrypted_keys(&self) -> &[Vec<u8>][src]

Returns the encrypted keys.

pub fn update(
    &mut self,
    input: &[u8],
    output: &mut [u8]
) -> Result<usize, ErrorStack>
[src]

Feeds data from input through the cipher, writing encrypted bytes into output.

The number of bytes written to output is returned. Note that this may not be equal to the length of input.

Panics

Panics if output.len() < input.len() + block_size where block_size is the block size of the cipher (see Cipher::block_size), or if output.len() > c_int::max_value().

pub fn finalize(&mut self, output: &mut [u8]) -> Result<usize, ErrorStack>[src]

Finishes the encryption process, writing any remaining data to output.

The number of bytes written to output is returned.

update should not be called after this method.

Panics

Panics if output is less than the cipher's block size.

Trait Implementations

impl Drop for Seal[src]

Auto Trait Implementations

impl RefUnwindSafe for Seal

impl !Send for Seal

impl !Sync for Seal

impl Unpin for Seal

impl UnwindSafe for Seal

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.