Struct sequoia_openpgp::packet::aed::AED1

source ·
pub struct AED1 { /* private fields */ }
Expand description

Holds an AEAD encrypted data packet.

An AEAD encrypted data packet holds encrypted data. The data contains additional OpenPGP packets. See Section 5.16 of RFC 4880bis for details.

An AED packet is not normally instantiated directly. In most cases, you’ll create one as a side-effect of encrypting a message using the streaming serializer, or parsing an encrypted message using the PacketParser.

This feature is experimental. It has not been standardized and we advise users to not emit AED packets.

§A note on equality

An unprocessed (encrypted) AED packet is never considered equal to a processed (decrypted) one. Likewise, a processed (decrypted) packet is never considered equal to a structured (parsed) one.

Implementations§

source§

impl AED1

source

pub fn new( sym_algo: SymmetricAlgorithm, aead: AEADAlgorithm, chunk_size: u64, iv: Box<[u8]> ) -> Result<Self>

Creates a new AED1 object.

source

pub fn symmetric_algo(&self) -> SymmetricAlgorithm

Gets the symmetric algorithm.

source

pub fn set_symmetric_algo( &mut self, sym_algo: SymmetricAlgorithm ) -> SymmetricAlgorithm

Sets the symmetric algorithm.

source

pub fn aead(&self) -> AEADAlgorithm

Gets the AEAD algorithm.

source

pub fn set_aead(&mut self, aead: AEADAlgorithm) -> AEADAlgorithm

Sets the AEAD algorithm.

source

pub fn chunk_size(&self) -> u64

Gets the chunk size.

source

pub fn set_chunk_size(&mut self, chunk_size: u64) -> Result<()>

Sets the chunk size.

source

pub fn chunk_digest_size(&self) -> Result<u64>

Gets the size of a chunk with a digest.

source

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

Gets the initialization vector for the AEAD algorithm.

source

pub fn set_iv(&mut self, iv: Box<[u8]>) -> Box<[u8]>

Sets the initialization vector for the AEAD algorithm.

Methods from Deref<Target = Container>§

source

pub fn children_ref(&self) -> Option<&[Packet]>

Returns a reference to this Packet’s children.

Returns None if the body is not structured.

source

pub fn children_mut(&mut self) -> Option<&mut Vec<Packet>>

Returns a mutable reference to this Packet’s children.

Returns None if the body is not structured.

source

pub fn descendants(&self) -> Option<Iter<'_>>

Returns an iterator over the packet’s descendants. The descendants are visited in depth-first order.

Returns None if the body is not structured.

source

pub fn children(&self) -> Option<Iter<'_, Packet>>

Returns an iterator over the packet’s immediate children.

Returns None if the body is not structured.

source

pub fn body(&self) -> &Body

Gets the packet’s body.

source

pub fn set_body(&mut self, body: Body) -> Body

Sets the packet’s body.

Trait Implementations§

source§

impl Clone for AED1

source§

fn clone(&self) -> AED1

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for AED1

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl DerefMut for AED1

source§

fn deref_mut(&mut self) -> &mut Self::Target

Mutably dereferences the value.
source§

impl From<AED1> for AED

source§

fn from(p: AED1) -> Self

Converts to this type from the input type.
source§

impl From<AED1> for Packet

source§

fn from(p: AED1) -> Self

Converts to this type from the input type.
source§

impl Hash for AED1

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl Marshal for AED1

source§

fn serialize(&self, o: &mut dyn Write) -> Result<()>

Writes a serialized version of the specified AED packet to o.

§Errors

Returns Error::InvalidOperation if this packet has children. To construct an encrypted message, use serialize::stream::Encryptor.

source§

fn export(&self, o: &mut dyn Write) -> Result<()>

Exports a serialized version of the object to o. Read more
source§

impl MarshalInto for AED1

source§

fn serialized_len(&self) -> usize

Computes the maximal length of the serialized representation. Read more
source§

fn serialize_into(&self, buf: &mut [u8]) -> Result<usize>

Serializes into the given buffer. Read more
source§

fn to_vec(&self) -> Result<Vec<u8>>

Serializes the packet to a vector.
source§

fn export_into(&self, buf: &mut [u8]) -> Result<usize>

Exports into the given buffer. Read more
source§

fn export_to_vec(&self) -> Result<Vec<u8>>

Exports to a vector. Read more
source§

impl PartialEq for AED1

source§

fn eq(&self, other: &AED1) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Deref for AED1

§

type Target = Container

The resulting type after dereferencing.
source§

fn deref(&self) -> &Self::Target

Dereferences the value.
source§

impl Eq for AED1

source§

impl StructuralPartialEq for AED1

Auto Trait Implementations§

§

impl Freeze for AED1

§

impl RefUnwindSafe for AED1

§

impl Send for AED1

§

impl Sync for AED1

§

impl Unpin for AED1

§

impl UnwindSafe for AED1

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> DynClone for T
where T: Clone,

source§

fn __clone_box(&self, _: Private) -> *mut ()

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> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

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

§

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>,

§

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.