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
impl RandAlg
Sourcepub fn fetch(name: &CStr, props: Option<&CStr>) -> Result<Self, ErrorStack>
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.
Sourcepub fn fetch_in(
ctx: &Arc<LibCtx>,
name: &CStr,
props: Option<&CStr>,
) -> Result<Self, ErrorStack>
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§
Auto Trait Implementations§
impl Freeze for RandAlg
impl RefUnwindSafe for RandAlg
impl Unpin for RandAlg
impl UnsafeUnpin for RandAlg
impl UnwindSafe for RandAlg
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more