Struct nrf52840_hal::Ccm[][src]

pub struct Ccm { /* fields omitted */ }
Expand description

A safe, blocking wrapper around the AES-CCM peripheral.

Implementations

impl Ccm[src]

pub fn init(regs: CCM, arr: AAR, data_rate: DataRate) -> Ccm[src]

Inits the CCM peripheral. This method also demands ownership of the AAR peripheral, because it shares registers with the CCM.

pub fn encrypt_packet(
    &mut self,
    ccm_data: &mut CcmData,
    clear_packet: &[u8],
    cipher_packet: &mut [u8],
    scratch: &mut [u8]
) -> Result<(), CcmError>
[src]

Encrypts a packet and generates a MIC.

The generated MIC will be placed after the payload in the cipher_packet. The slices passed to this method must have the correct size, for more information refer to the module level documentation. The counter in ccm_data will be incremented if the operation succeeds. All parameters passed to this method must reside in RAM.

pub fn decrypt_packet(
    &mut self,
    ccm_data: &mut CcmData,
    clear_packet: &mut [u8],
    cipher_packet: &[u8],
    scratch: &mut [u8]
) -> Result<(), CcmError>
[src]

Decrypts a packet and checks its MIC.

This method will return an error if the MIC verification fails. The slices passed to this method must have the correct size, for more information refer to the module level documentation. The counter in ccm_data will be incremented if the operation succeeds. All parameters passed to this method must reside in RAM.

Auto Trait Implementations

impl Send for Ccm

impl !Sync for Ccm

impl Unpin for Ccm

Blanket Implementations

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

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

impl<T> Az for T[src]

pub fn az<Dst>(self) -> Dst where
    T: Cast<Dst>, 
[src]

Casts the value.

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

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

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

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<T> CheckedAs for T[src]

pub fn checked_as<Dst>(self) -> Option<Dst> where
    T: CheckedCast<Dst>, 
[src]

Casts the value.

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

pub fn from(t: T) -> T[src]

Performs the conversion.

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

pub fn into(self) -> U[src]

Performs the conversion.

impl<Src, Dst> LosslessTryInto<Dst> for Src where
    Dst: LosslessTryFrom<Src>, 
[src]

pub fn lossless_try_into(self) -> Option<Dst>[src]

Performs the conversion.

impl<Src, Dst> LossyInto<Dst> for Src where
    Dst: LossyFrom<Src>, 
[src]

pub fn lossy_into(self) -> Dst[src]

Performs the conversion.

impl<T> OverflowingAs for T[src]

pub fn overflowing_as<Dst>(self) -> (Dst, bool) where
    T: OverflowingCast<Dst>, 
[src]

Casts the value.

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> SaturatingAs for T[src]

pub fn saturating_as<Dst>(self) -> Dst where
    T: SaturatingCast<Dst>, 
[src]

Casts the value.

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.

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

Performs the conversion.

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.

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

Performs the conversion.

impl<T> UnwrappedAs for T[src]

pub fn unwrapped_as<Dst>(self) -> Dst where
    T: UnwrappedCast<Dst>, 
[src]

Casts the value.

impl<T> WrappingAs for T[src]

pub fn wrapping_as<Dst>(self) -> Dst where
    T: WrappingCast<Dst>, 
[src]

Casts the value.