Skip to main content

RandAlg

Struct RandAlg 

Source
pub struct RandAlg { /* private fields */ }
Expand description

An OpenSSL RAND algorithm descriptor (EVP_RAND*).

Fetched once and reused to create RandCtx instances.

Implementations§

Source§

impl RandAlg

Source

pub fn fetch(name: &CStr, props: Option<&CStr>) -> Result<Self, ErrorStack>

Fetch a RAND algorithm from the global default library context.

Common algorithm names: c"CTR-DRBG", c"HASH-DRBG", c"HMAC-DRBG".

§Errors

Returns Err if the algorithm is not available.

Source

pub fn fetch_in( ctx: &Arc<LibCtx>, name: &CStr, props: Option<&CStr>, ) -> Result<Self, ErrorStack>

Fetch a RAND algorithm within an explicit library context.

Use this when the DRBG must be bound to a specific provider set (e.g. a FIPS-isolated LibCtx).

The Arc<LibCtx> is retained for the lifetime of the RandAlg to ensure the context outlives the algorithm descriptor.

§Errors

Returns Err if the algorithm is not available in ctx.

Trait Implementations§

Source§

impl Drop for RandAlg

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more
Source§

impl Send for RandAlg

Source§

impl Sync for RandAlg

Auto Trait Implementations§

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> 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, U> TryFrom<U> for T
where U: Into<T>,

Source§

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

Source§

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.