Struct esp_idf_svc::hal::sys::wpa_crypto_funcs_t
source · #[repr(C)]pub struct wpa_crypto_funcs_t {Show 29 fields
pub size: u32,
pub version: u32,
pub aes_wrap: Option<unsafe extern "C" fn(_: *const u8, _: i32, _: *const u8, _: *mut u8) -> i32>,
pub aes_unwrap: Option<unsafe extern "C" fn(_: *const u8, _: i32, _: *const u8, _: *mut u8) -> i32>,
pub hmac_sha256_vector: Option<unsafe extern "C" fn(_: *const u8, _: i32, _: i32, _: *mut *const u8, _: *const i32, _: *mut u8) -> i32>,
pub sha256_prf: Option<unsafe extern "C" fn(_: *const u8, _: i32, _: *const i8, _: *const u8, _: i32, _: *mut u8, _: i32) -> i32>,
pub hmac_md5: Option<unsafe extern "C" fn(_: *const u8, _: u32, _: *const u8, _: u32, _: *mut u8) -> i32>,
pub hamc_md5_vector: Option<unsafe extern "C" fn(_: *const u8, _: u32, _: u32, _: *mut *const u8, _: *const u32, _: *mut u8) -> i32>,
pub hmac_sha1: Option<unsafe extern "C" fn(_: *const u8, _: u32, _: *const u8, _: u32, _: *mut u8) -> i32>,
pub hmac_sha1_vector: Option<unsafe extern "C" fn(_: *const u8, _: u32, _: u32, _: *mut *const u8, _: *const u32, _: *mut u8) -> i32>,
pub sha1_prf: Option<unsafe extern "C" fn(_: *const u8, _: u32, _: *const i8, _: *const u8, _: u32, _: *mut u8, _: u32) -> i32>,
pub sha1_vector: Option<unsafe extern "C" fn(_: u32, _: *mut *const u8, _: *const u32, _: *mut u8) -> i32>,
pub pbkdf2_sha1: Option<unsafe extern "C" fn(_: *const i8, _: *const i8, _: u32, _: i32, _: *mut u8, _: u32) -> i32>,
pub rc4_skip: Option<unsafe extern "C" fn(_: *const u8, _: u32, _: u32, _: *mut u8, _: u32) -> i32>,
pub md5_vector: Option<unsafe extern "C" fn(_: u32, _: *mut *const u8, _: *const u32, _: *mut u8) -> i32>,
pub aes_encrypt: Option<unsafe extern "C" fn(_: *mut c_void, _: *const u8, _: *mut u8)>,
pub aes_encrypt_init: Option<unsafe extern "C" fn(_: *const u8, _: u32) -> *mut c_void>,
pub aes_encrypt_deinit: Option<unsafe extern "C" fn(_: *mut c_void)>,
pub aes_decrypt: Option<unsafe extern "C" fn(_: *mut c_void, _: *const u8, _: *mut u8)>,
pub aes_decrypt_init: Option<unsafe extern "C" fn(_: *const u8, _: u32) -> *mut c_void>,
pub aes_decrypt_deinit: Option<unsafe extern "C" fn(_: *mut c_void)>,
pub aes_128_encrypt: Option<unsafe extern "C" fn(_: *const u8, _: *const u8, _: *mut u8, _: i32) -> i32>,
pub aes_128_decrypt: Option<unsafe extern "C" fn(_: *const u8, _: *const u8, _: *mut u8, _: i32) -> i32>,
pub omac1_aes_128: Option<unsafe extern "C" fn(_: *const u8, _: *const u8, _: usize, _: *mut u8) -> i32>,
pub ccmp_decrypt: Option<unsafe extern "C" fn(_: *const u8, _: *const u8, _: *const u8, _: usize, _: *mut usize, _: bool) -> *mut u8>,
pub ccmp_encrypt: Option<unsafe extern "C" fn(_: *const u8, _: *mut u8, _: usize, _: usize, _: *mut u8, _: i32, _: *mut usize) -> *mut u8>,
pub aes_gmac: Option<unsafe extern "C" fn(_: *const u8, _: usize, _: *const u8, _: usize, _: *const u8, _: usize, _: *mut u8) -> i32>,
pub sha256_vector: Option<unsafe extern "C" fn(_: usize, _: *mut *const u8, _: *const usize, _: *mut u8) -> i32>,
pub crc32: Option<unsafe extern "C" fn(_: u32, _: *const u8, _: u32) -> u32>,
}
Expand description
@brief The crypto callback function structure used by esp_wifi. The structure can be set as software crypto or the crypto optimized by device’s hardware.
Fields§
§size: u32
< The crypto callback function structure size
version: u32
< The crypto callback function structure version
aes_wrap: Option<unsafe extern "C" fn(_: *const u8, _: i32, _: *const u8, _: *mut u8) -> i32>
< The AES wrap callback function used by esp_wifi
aes_unwrap: Option<unsafe extern "C" fn(_: *const u8, _: i32, _: *const u8, _: *mut u8) -> i32>
< The AES unwrap callback function used by esp_wifi
hmac_sha256_vector: Option<unsafe extern "C" fn(_: *const u8, _: i32, _: i32, _: *mut *const u8, _: *const i32, _: *mut u8) -> i32>
< The SHA256 callback function used by esp_wifi
sha256_prf: Option<unsafe extern "C" fn(_: *const u8, _: i32, _: *const i8, _: *const u8, _: i32, _: *mut u8, _: i32) -> i32>
< The SHA256 PRF callback function used by esp_wifi
hmac_md5: Option<unsafe extern "C" fn(_: *const u8, _: u32, _: *const u8, _: u32, _: *mut u8) -> i32>
< HMAC-MD5 callback function over data buffer (RFC 2104)
hamc_md5_vector: Option<unsafe extern "C" fn(_: *const u8, _: u32, _: u32, _: *mut *const u8, _: *const u32, _: *mut u8) -> i32>
< HMAC-MD5 callback function over data vector (RFC 2104)
hmac_sha1: Option<unsafe extern "C" fn(_: *const u8, _: u32, _: *const u8, _: u32, _: *mut u8) -> i32>
< HMAC-SHA1 callback function over data buffer (RFC 2104)
hmac_sha1_vector: Option<unsafe extern "C" fn(_: *const u8, _: u32, _: u32, _: *mut *const u8, _: *const u32, _: *mut u8) -> i32>
< HMAC-SHA1 callback function over data vector (RFC 2104)
sha1_prf: Option<unsafe extern "C" fn(_: *const u8, _: u32, _: *const i8, _: *const u8, _: u32, _: *mut u8, _: u32) -> i32>
< SHA1-based Pseudo-Random Function (PRF) (IEEE 802.11i, 8.5.1.1) callback function
sha1_vector: Option<unsafe extern "C" fn(_: u32, _: *mut *const u8, _: *const u32, _: *mut u8) -> i32>
< SHA-1 hash callback function for data vector
pbkdf2_sha1: Option<unsafe extern "C" fn(_: *const i8, _: *const i8, _: u32, _: i32, _: *mut u8, _: u32) -> i32>
< SHA1-based key derivation function (PBKDF2) callback function for IEEE 802.11i
rc4_skip: Option<unsafe extern "C" fn(_: *const u8, _: u32, _: u32, _: *mut u8, _: u32) -> i32>
< XOR RC4 stream callback function to given data with skip-stream-start
md5_vector: Option<unsafe extern "C" fn(_: u32, _: *mut *const u8, _: *const u32, _: *mut u8) -> i32>
< MD5 hash callback function for data vector
aes_encrypt: Option<unsafe extern "C" fn(_: *mut c_void, _: *const u8, _: *mut u8)>
< Encrypt one AES block callback function
aes_encrypt_init: Option<unsafe extern "C" fn(_: *const u8, _: u32) -> *mut c_void>
< Initialize AES callback function for encryption
aes_encrypt_deinit: Option<unsafe extern "C" fn(_: *mut c_void)>
< Deinitialize AES encryption callback function
aes_decrypt: Option<unsafe extern "C" fn(_: *mut c_void, _: *const u8, _: *mut u8)>
< Decrypt one AES block callback function
aes_decrypt_init: Option<unsafe extern "C" fn(_: *const u8, _: u32) -> *mut c_void>
< Initialize AES callback function for decryption
aes_decrypt_deinit: Option<unsafe extern "C" fn(_: *mut c_void)>
< Deinitialize AES decryption callback function
aes_128_encrypt: Option<unsafe extern "C" fn(_: *const u8, _: *const u8, _: *mut u8, _: i32) -> i32>
< The AES 128 encrypt callback function used by esp_wifi
aes_128_decrypt: Option<unsafe extern "C" fn(_: *const u8, _: *const u8, _: *mut u8, _: i32) -> i32>
< The AES 128 decrypt callback function used by esp_wifi
omac1_aes_128: Option<unsafe extern "C" fn(_: *const u8, _: *const u8, _: usize, _: *mut u8) -> i32>
< One-Key CBC MAC (OMAC1) hash with AES-128 callback function for MIC computation
ccmp_decrypt: Option<unsafe extern "C" fn(_: *const u8, _: *const u8, _: *const u8, _: usize, _: *mut usize, _: bool) -> *mut u8>
< Decrypt data callback function using CCMP
ccmp_encrypt: Option<unsafe extern "C" fn(_: *const u8, _: *mut u8, _: usize, _: usize, _: *mut u8, _: i32, _: *mut usize) -> *mut u8>
< Encrypt data callback function using CCMP
aes_gmac: Option<unsafe extern "C" fn(_: *const u8, _: usize, _: *const u8, _: usize, _: *const u8, _: usize, _: *mut u8) -> i32>
< One-Key GMAC hash callback function with AES for MIC computation
sha256_vector: Option<unsafe extern "C" fn(_: usize, _: *mut *const u8, _: *const usize, _: *mut u8) -> i32>
< SHA256 hash callback function for data vector
crc32: Option<unsafe extern "C" fn(_: u32, _: *const u8, _: u32) -> u32>
< CRC32 value callback function in little endian
Trait Implementations§
source§impl Clone for wpa_crypto_funcs_t
impl Clone for wpa_crypto_funcs_t
source§fn clone(&self) -> wpa_crypto_funcs_t
fn clone(&self) -> wpa_crypto_funcs_t
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for wpa_crypto_funcs_t
impl Debug for wpa_crypto_funcs_t
source§impl Default for wpa_crypto_funcs_t
impl Default for wpa_crypto_funcs_t
source§fn default() -> wpa_crypto_funcs_t
fn default() -> wpa_crypto_funcs_t
impl Copy for wpa_crypto_funcs_t
Auto Trait Implementations§
impl Freeze for wpa_crypto_funcs_t
impl RefUnwindSafe for wpa_crypto_funcs_t
impl Send for wpa_crypto_funcs_t
impl Sync for wpa_crypto_funcs_t
impl Unpin for wpa_crypto_funcs_t
impl UnwindSafe for wpa_crypto_funcs_t
Blanket Implementations§
§impl<T> Any for Twhere
T: 'static + ?Sized,
impl<T> Any for Twhere
T: 'static + ?Sized,
§impl<T> Borrow<T> for Twhere
T: ?Sized,
impl<T> Borrow<T> for Twhere
T: ?Sized,
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)§impl<T> CloneToUninit for Twhere
T: Copy,
impl<T> CloneToUninit for Twhere
T: Copy,
§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)