Struct openssl::envelope::Open [−][src]
Represents an EVP_Open context.
Implementations
impl Open
[src]
pub fn new<T>(
cipher: Cipher,
priv_key: &PKeyRef<T>,
iv: Option<&[u8]>,
encrypted_key: &[u8]
) -> Result<Open, ErrorStack> where
T: HasPrivate,
[src]
cipher: Cipher,
priv_key: &PKeyRef<T>,
iv: Option<&[u8]>,
encrypted_key: &[u8]
) -> Result<Open, ErrorStack> where
T: HasPrivate,
Creates a new Open
.
pub fn update(
&mut self,
input: &[u8],
output: &mut [u8]
) -> Result<usize, ErrorStack>
[src]
&mut self,
input: &[u8],
output: &mut [u8]
) -> Result<usize, ErrorStack>
Feeds data from input
through the cipher, writing decrypted 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 decryption 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
Auto Trait Implementations
impl RefUnwindSafe for Open
impl !Send for Open
impl !Sync for Open
impl Unpin for Open
impl UnwindSafe for Open
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,