[][src]Struct opensc_sys::sc_card_operations

#[repr(C)]pub struct sc_card_operations {
    pub match_card: Option<unsafe extern "C" fn(card: *mut sc_card) -> c_int>,
    pub init: Option<unsafe extern "C" fn(card: *mut sc_card) -> c_int>,
    pub finish: Option<unsafe extern "C" fn(card: *mut sc_card) -> c_int>,
    pub read_binary: Option<unsafe extern "C" fn(card: *mut sc_card, idx: c_uint, buf: *mut u8, count: size_t, flags: c_ulong) -> c_int>,
    pub write_binary: Option<unsafe extern "C" fn(card: *mut sc_card, idx: c_uint, buf: *const u8, count: size_t, flags: c_ulong) -> c_int>,
    pub update_binary: Option<unsafe extern "C" fn(card: *mut sc_card, idx: c_uint, buf: *const u8, count: size_t, flags: c_ulong) -> c_int>,
    pub erase_binary: Option<unsafe extern "C" fn(card: *mut sc_card, idx: c_uint, count: size_t, flags: c_ulong) -> c_int>,
    pub read_record: Option<unsafe extern "C" fn(card: *mut sc_card, rec_nr: c_uint, buf: *mut u8, count: size_t, flags: c_ulong) -> c_int>,
    pub write_record: Option<unsafe extern "C" fn(card: *mut sc_card, rec_nr: c_uint, buf: *const u8, count: size_t, flags: c_ulong) -> c_int>,
    pub append_record: Option<unsafe extern "C" fn(card: *mut sc_card, buf: *const u8, count: size_t, flags: c_ulong) -> c_int>,
    pub update_record: Option<unsafe extern "C" fn(card: *mut sc_card, rec_nr: c_uint, buf: *const u8, count: size_t, flags: c_ulong) -> c_int>,
    pub select_file: Option<unsafe extern "C" fn(card: *mut sc_card, path: *const sc_path, file_out: *mut *mut sc_file) -> c_int>,
    pub get_response: Option<unsafe extern "C" fn(card: *mut sc_card, count: *mut size_t, buf: *mut u8) -> c_int>,
    pub get_challenge: Option<unsafe extern "C" fn(card: *mut sc_card, buf: *mut u8, count: size_t) -> c_int>,
    pub verify: Option<unsafe extern "C" fn(card: *mut sc_card, type_: c_uint, ref_qualifier: c_int, data: *const u8, data_len: size_t, tries_left: *mut c_int) -> c_int>,
    pub logout: Option<unsafe extern "C" fn(card: *mut sc_card) -> c_int>,
    pub restore_security_env: Option<unsafe extern "C" fn(card: *mut sc_card, se_num: c_int) -> c_int>,
    pub set_security_env: Option<unsafe extern "C" fn(card: *mut sc_card, env: *const sc_security_env, se_num: c_int) -> c_int>,
    pub decipher: Option<unsafe extern "C" fn(card: *mut sc_card, crgram: *const u8, crgram_len: size_t, out: *mut u8, outlen: size_t) -> c_int>,
    pub compute_signature: Option<unsafe extern "C" fn(card: *mut sc_card, data: *const u8, data_len: size_t, out: *mut u8, outlen: size_t) -> c_int>,
    pub change_reference_data: Option<unsafe extern "C" fn(card: *mut sc_card, type_: c_uint, ref_qualifier: c_int, old: *const u8, oldlen: size_t, newref: *const u8, newlen: size_t, tries_left: *mut c_int) -> c_int>,
    pub reset_retry_counter: Option<unsafe extern "C" fn(card: *mut sc_card, type_: c_uint, ref_qualifier: c_int, puk: *const u8, puklen: size_t, newref: *const u8, newlen: size_t) -> c_int>,
    pub create_file: Option<unsafe extern "C" fn(card: *mut sc_card, file: *mut sc_file) -> c_int>,
    pub delete_file: Option<unsafe extern "C" fn(card: *mut sc_card, path: *const sc_path) -> c_int>,
    pub list_files: Option<unsafe extern "C" fn(card: *mut sc_card, buf: *mut u8, buflen: size_t) -> c_int>,
    pub check_sw: Option<unsafe extern "C" fn(card: *mut sc_card, sw1: c_uint, sw2: c_uint) -> c_int>,
    pub card_ctl: Option<unsafe extern "C" fn(card: *mut sc_card, request: c_ulong, data: *mut c_void) -> c_int>,
    pub process_fci: Option<unsafe extern "C" fn(card: *mut sc_card, file: *mut sc_file, buf: *const u8, buflen: size_t) -> c_int>,
    pub construct_fci: Option<unsafe extern "C" fn(card: *mut sc_card, file: *const sc_file, out: *mut u8, outlen: *mut size_t) -> c_int>,
    pub pin_cmd: Option<unsafe extern "C" fn(arg1: *mut sc_card, arg2: *mut sc_pin_cmd_data, tries_left: *mut c_int) -> c_int>,
    pub get_data: Option<unsafe extern "C" fn(arg1: *mut sc_card, arg2: c_uint, arg3: *mut u8, arg4: size_t) -> c_int>,
    pub put_data: Option<unsafe extern "C" fn(arg1: *mut sc_card, arg2: c_uint, arg3: *const u8, arg4: size_t) -> c_int>,
    pub delete_record: Option<unsafe extern "C" fn(card: *mut sc_card, rec_nr: c_uint) -> c_int>,
    pub read_public_key: Option<unsafe extern "C" fn(arg1: *mut sc_card, arg2: c_uint, arg3: *mut sc_path, arg4: c_uint, arg5: c_uint, arg6: *mut *mut c_uchar, arg7: *mut size_t) -> c_int>,
    pub card_reader_lock_obtained: Option<unsafe extern "C" fn(arg1: *mut sc_card, was_reset: c_int) -> c_int>,
    pub wrap: Option<unsafe extern "C" fn(card: *mut sc_card, out: *mut u8, outlen: size_t) -> c_int>,
    pub unwrap: Option<unsafe extern "C" fn(card: *mut sc_card, crgram: *const u8, crgram_len: size_t) -> c_int>,
}

Fields

match_card: Option<unsafe extern "C" fn(card: *mut sc_card) -> c_int>init: Option<unsafe extern "C" fn(card: *mut sc_card) -> c_int>finish: Option<unsafe extern "C" fn(card: *mut sc_card) -> c_int>read_binary: Option<unsafe extern "C" fn(card: *mut sc_card, idx: c_uint, buf: *mut u8, count: size_t, flags: c_ulong) -> c_int>write_binary: Option<unsafe extern "C" fn(card: *mut sc_card, idx: c_uint, buf: *const u8, count: size_t, flags: c_ulong) -> c_int>update_binary: Option<unsafe extern "C" fn(card: *mut sc_card, idx: c_uint, buf: *const u8, count: size_t, flags: c_ulong) -> c_int>erase_binary: Option<unsafe extern "C" fn(card: *mut sc_card, idx: c_uint, count: size_t, flags: c_ulong) -> c_int>read_record: Option<unsafe extern "C" fn(card: *mut sc_card, rec_nr: c_uint, buf: *mut u8, count: size_t, flags: c_ulong) -> c_int>write_record: Option<unsafe extern "C" fn(card: *mut sc_card, rec_nr: c_uint, buf: *const u8, count: size_t, flags: c_ulong) -> c_int>append_record: Option<unsafe extern "C" fn(card: *mut sc_card, buf: *const u8, count: size_t, flags: c_ulong) -> c_int>update_record: Option<unsafe extern "C" fn(card: *mut sc_card, rec_nr: c_uint, buf: *const u8, count: size_t, flags: c_ulong) -> c_int>select_file: Option<unsafe extern "C" fn(card: *mut sc_card, path: *const sc_path, file_out: *mut *mut sc_file) -> c_int>get_response: Option<unsafe extern "C" fn(card: *mut sc_card, count: *mut size_t, buf: *mut u8) -> c_int>get_challenge: Option<unsafe extern "C" fn(card: *mut sc_card, buf: *mut u8, count: size_t) -> c_int>verify: Option<unsafe extern "C" fn(card: *mut sc_card, type_: c_uint, ref_qualifier: c_int, data: *const u8, data_len: size_t, tries_left: *mut c_int) -> c_int>logout: Option<unsafe extern "C" fn(card: *mut sc_card) -> c_int>restore_security_env: Option<unsafe extern "C" fn(card: *mut sc_card, se_num: c_int) -> c_int>set_security_env: Option<unsafe extern "C" fn(card: *mut sc_card, env: *const sc_security_env, se_num: c_int) -> c_int>decipher: Option<unsafe extern "C" fn(card: *mut sc_card, crgram: *const u8, crgram_len: size_t, out: *mut u8, outlen: size_t) -> c_int>compute_signature: Option<unsafe extern "C" fn(card: *mut sc_card, data: *const u8, data_len: size_t, out: *mut u8, outlen: size_t) -> c_int>change_reference_data: Option<unsafe extern "C" fn(card: *mut sc_card, type_: c_uint, ref_qualifier: c_int, old: *const u8, oldlen: size_t, newref: *const u8, newlen: size_t, tries_left: *mut c_int) -> c_int>reset_retry_counter: Option<unsafe extern "C" fn(card: *mut sc_card, type_: c_uint, ref_qualifier: c_int, puk: *const u8, puklen: size_t, newref: *const u8, newlen: size_t) -> c_int>create_file: Option<unsafe extern "C" fn(card: *mut sc_card, file: *mut sc_file) -> c_int>delete_file: Option<unsafe extern "C" fn(card: *mut sc_card, path: *const sc_path) -> c_int>list_files: Option<unsafe extern "C" fn(card: *mut sc_card, buf: *mut u8, buflen: size_t) -> c_int>check_sw: Option<unsafe extern "C" fn(card: *mut sc_card, sw1: c_uint, sw2: c_uint) -> c_int>card_ctl: Option<unsafe extern "C" fn(card: *mut sc_card, request: c_ulong, data: *mut c_void) -> c_int>process_fci: Option<unsafe extern "C" fn(card: *mut sc_card, file: *mut sc_file, buf: *const u8, buflen: size_t) -> c_int>construct_fci: Option<unsafe extern "C" fn(card: *mut sc_card, file: *const sc_file, out: *mut u8, outlen: *mut size_t) -> c_int>pin_cmd: Option<unsafe extern "C" fn(arg1: *mut sc_card, arg2: *mut sc_pin_cmd_data, tries_left: *mut c_int) -> c_int>get_data: Option<unsafe extern "C" fn(arg1: *mut sc_card, arg2: c_uint, arg3: *mut u8, arg4: size_t) -> c_int>put_data: Option<unsafe extern "C" fn(arg1: *mut sc_card, arg2: c_uint, arg3: *const u8, arg4: size_t) -> c_int>delete_record: Option<unsafe extern "C" fn(card: *mut sc_card, rec_nr: c_uint) -> c_int>read_public_key: Option<unsafe extern "C" fn(arg1: *mut sc_card, arg2: c_uint, arg3: *mut sc_path, arg4: c_uint, arg5: c_uint, arg6: *mut *mut c_uchar, arg7: *mut size_t) -> c_int>card_reader_lock_obtained: Option<unsafe extern "C" fn(arg1: *mut sc_card, was_reset: c_int) -> c_int>wrap: Option<unsafe extern "C" fn(card: *mut sc_card, out: *mut u8, outlen: size_t) -> c_int>unwrap: Option<unsafe extern "C" fn(card: *mut sc_card, crgram: *const u8, crgram_len: size_t) -> c_int>

Trait Implementations

impl Clone for sc_card_operations[src]

impl Copy for sc_card_operations[src]

impl Debug for sc_card_operations[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.