#![allow(non_upper_case_globals)]
#![allow(non_camel_case_types)]
#![allow(non_snake_case)]
use crate::common::{CryptoResult, Crypto_DataBlob};
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
#[repr(C)]
pub struct OH_CryptoSymKey {
_unused: [u8; 0],
}
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
#[repr(C)]
pub struct OH_CryptoSymKeyGenerator {
_unused: [u8; 0],
}
extern "C" {
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_CryptoSymKeyGenerator_Create(
algoName: *const ::core::ffi::c_char,
ctx: *mut *mut OH_CryptoSymKeyGenerator,
) -> CryptoResult;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_CryptoSymKeyGenerator_Generate(
ctx: *mut OH_CryptoSymKeyGenerator,
keyCtx: *mut *mut OH_CryptoSymKey,
) -> CryptoResult;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_CryptoSymKeyGenerator_Convert(
ctx: *mut OH_CryptoSymKeyGenerator,
keyData: *const Crypto_DataBlob,
keyCtx: *mut *mut OH_CryptoSymKey,
) -> CryptoResult;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_CryptoSymKeyGenerator_GetAlgoName(
ctx: *mut OH_CryptoSymKeyGenerator,
) -> *const ::core::ffi::c_char;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_CryptoSymKeyGenerator_Destroy(ctx: *mut OH_CryptoSymKeyGenerator);
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_CryptoSymKey_GetAlgoName(keyCtx: *mut OH_CryptoSymKey) -> *const ::core::ffi::c_char;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_CryptoSymKey_GetKeyData(
keyCtx: *mut OH_CryptoSymKey,
out: *mut Crypto_DataBlob,
) -> CryptoResult;
#[cfg(feature = "api-12")]
#[cfg_attr(docsrs, doc(cfg(feature = "api-12")))]
pub fn OH_CryptoSymKey_Destroy(keyCtx: *mut OH_CryptoSymKey);
}