pub type protocomm_security_t = protocomm_security;
Expand description
@brief Protocomm security object structure.
The member functions are used for implementing secure protocomm sessions.
@note This structure should not have any dynamic members to allow re-entrancy
Aliased Type§
struct protocomm_security_t {
pub ver: i32,
pub init: Option<unsafe extern "C" fn(_: *mut *mut c_void) -> i32>,
pub cleanup: Option<unsafe extern "C" fn(_: *mut c_void) -> i32>,
pub new_transport_session: Option<unsafe extern "C" fn(_: *mut c_void, _: u32) -> i32>,
pub close_transport_session: Option<unsafe extern "C" fn(_: *mut c_void, _: u32) -> i32>,
pub security_req_handler: Option<unsafe extern "C" fn(_: *mut c_void, _: *const c_void, _: u32, _: *const u8, _: isize, _: *mut *mut u8, _: *mut isize, _: *mut c_void) -> i32>,
pub encrypt: Option<unsafe extern "C" fn(_: *mut c_void, _: u32, _: *const u8, _: isize, _: *mut *mut u8, _: *mut isize) -> i32>,
pub decrypt: Option<unsafe extern "C" fn(_: *mut c_void, _: u32, _: *const u8, _: isize, _: *mut *mut u8, _: *mut isize) -> i32>,
}
Fields§
§ver: i32
Unique version number of security implementation
init: Option<unsafe extern "C" fn(_: *mut *mut c_void) -> i32>
Function for initializing/allocating security infrastructure
cleanup: Option<unsafe extern "C" fn(_: *mut c_void) -> i32>
Function for deallocating security infrastructure
new_transport_session: Option<unsafe extern "C" fn(_: *mut c_void, _: u32) -> i32>
Starts new secure transport session with specified ID
close_transport_session: Option<unsafe extern "C" fn(_: *mut c_void, _: u32) -> i32>
Closes a secure transport session with specified ID
security_req_handler: Option<unsafe extern "C" fn(_: *mut c_void, _: *const c_void, _: u32, _: *const u8, _: isize, _: *mut *mut u8, _: *mut isize, _: *mut c_void) -> i32>
Handler function for authenticating connection request and establishing secure session
encrypt: Option<unsafe extern "C" fn(_: *mut c_void, _: u32, _: *const u8, _: isize, _: *mut *mut u8, _: *mut isize) -> i32>
Function which implements the encryption algorithm
decrypt: Option<unsafe extern "C" fn(_: *mut c_void, _: u32, _: *const u8, _: isize, _: *mut *mut u8, _: *mut isize) -> i32>
Function which implements the decryption algorithm
Trait Implementations
Source§impl Clone for protocomm_security
impl Clone for protocomm_security
Source§fn clone(&self) -> protocomm_security
fn clone(&self) -> protocomm_security
Returns a copy of the value. Read more
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for protocomm_security
impl Debug for protocomm_security
Source§impl Default for protocomm_security
impl Default for protocomm_security
Source§fn default() -> protocomm_security
fn default() -> protocomm_security
Returns the “default value” for a type. Read more