SSP

Struct SSP 

Source
pub struct SSP {
Show 34 fields pub GetLastError: unsafe extern "C" fn() -> DWORD, pub CertOpenStore: unsafe extern "C" fn(lpszStoreProvider: LPCSTR, dwEncodingType: DWORD, hCryptProv: HCRYPTPROV, dwFlags: DWORD, pvPara: *const c_void) -> HCERTSTORE, pub CertCloseStore: unsafe extern "C" fn(hCertStore: HCERTSTORE, dwFlags: DWORD) -> BOOL, pub CertEnumCertificatesInStore: unsafe extern "C" fn(hCertStore: HCERTSTORE, pPrevCertContext: PCCERT_CONTEXT) -> PCCERT_CONTEXT, pub CertFindCertificateInStore: unsafe extern "C" fn(hCertStore: HCERTSTORE, dwCertEncodingType: DWORD, dwFindFlags: DWORD, dwFindType: DWORD, pvFindPara: *const c_void, pPrevCertContext: PCCERT_CONTEXT) -> PCCERT_CONTEXT, pub CertFreeCertificateContext: unsafe extern "C" fn(pCertContext: PCCERT_CONTEXT) -> BOOL, pub CertGetCertificateContextProperty: unsafe extern "C" fn(pCertContext: PCCERT_CONTEXT, dwPropId: DWORD, pvData: *mut c_void, pcbData: *mut DWORD) -> BOOL, pub CertEnumCertificateContextProperties: unsafe extern "C" fn(pCertContext: PCCERT_CONTEXT, dwPropId: DWORD) -> DWORD, pub CryptAcquireContextW: unsafe extern "C" fn(phProv: *mut HCRYPTPROV, pszContainer: LPCWSTR, pszProvider: LPCWSTR, dwProvType: DWORD, dwFlags: DWORD) -> BOOL, pub CryptReleaseContext: unsafe extern "C" fn(hProv: HCRYPTPROV, dwFlags: DWORD) -> BOOL, pub CryptGenKey: unsafe extern "C" fn(hProv: HCRYPTPROV, Algid: ALG_ID, dwFlags: DWORD, phKey: *mut HCRYPTKEY) -> BOOL, pub CryptDeriveKey: unsafe extern "C" fn(hProv: HCRYPTPROV, Algid: ALG_ID, hBaseData: HCRYPTHASH, dwFlags: DWORD, phKey: *mut HCRYPTKEY) -> BOOL, pub CryptDestroyKey: unsafe extern "C" fn(hKey: HCRYPTKEY) -> BOOL, pub CryptSetKeyParam: unsafe extern "C" fn(hKey: HCRYPTKEY, dwParam: DWORD, pbData: *const BYTE, dwFlags: DWORD) -> BOOL, pub CryptGetKeyParam: unsafe extern "C" fn(hKey: HCRYPTKEY, dwParam: DWORD, pbData: *mut BYTE, pdwDataLen: *mut DWORD, dwFlags: DWORD) -> BOOL, pub CryptSetHashParam: unsafe extern "C" fn(hHash: HCRYPTHASH, dwParam: DWORD, pbData: *const BYTE, dwFlags: DWORD) -> BOOL, pub CryptGetHashParam: unsafe extern "C" fn(hHash: HCRYPTHASH, dwParam: DWORD, pbData: *mut BYTE, pdwDataLen: *mut DWORD, dwFlags: DWORD) -> BOOL, pub CryptSetProvParam: unsafe extern "C" fn(hProv: HCRYPTPROV, dwParam: DWORD, pbData: *const BYTE, dwFlags: DWORD) -> BOOL, pub CryptGetProvParam: unsafe extern "C" fn(hProv: HCRYPTPROV, dwParam: DWORD, pbData: *mut BYTE, pdwDataLen: *mut DWORD, dwFlags: DWORD) -> BOOL, pub CryptGenRandom: unsafe extern "C" fn(hProv: HCRYPTPROV, dwLen: DWORD, pbBuffer: *mut BYTE) -> BOOL, pub CryptGetUserKey: unsafe extern "C" fn(hProv: HCRYPTPROV, dwKeySpec: DWORD, phUserKey: *mut HCRYPTKEY) -> BOOL, pub CryptExportKey: unsafe extern "C" fn(hKey: HCRYPTKEY, hExpKey: HCRYPTKEY, dwBlobType: DWORD, dwFlags: DWORD, pbData: *mut BYTE, pdwDataLen: *mut DWORD) -> BOOL, pub CryptImportKey: unsafe extern "C" fn(hProv: HCRYPTPROV, pbData: *const BYTE, dwDataLen: DWORD, hPubKey: HCRYPTKEY, dwFlags: DWORD, phKey: *mut HCRYPTKEY) -> BOOL, pub CryptEncrypt: unsafe extern "C" fn(hKey: HCRYPTKEY, hHash: HCRYPTHASH, Final: BOOL, dwFlags: DWORD, pbData: *mut BYTE, pdwDataLen: *mut DWORD, dwBufLen: DWORD) -> BOOL, pub CryptDecrypt: unsafe extern "C" fn(hKey: HCRYPTKEY, hHash: HCRYPTHASH, Final: BOOL, dwFlags: DWORD, pbData: *mut BYTE, pdwDataLen: *mut DWORD) -> BOOL, pub CryptCreateHash: unsafe extern "C" fn(hProv: HCRYPTPROV, Algid: ALG_ID, hKey: HCRYPTKEY, dwFlags: DWORD, phHash: *mut HCRYPTHASH) -> BOOL, pub CryptHashData: unsafe extern "C" fn(hHash: HCRYPTHASH, pbData: *const BYTE, dwDataLen: DWORD, dwFlags: DWORD) -> BOOL, pub CryptHashSessionKey: unsafe extern "C" fn(hHash: HCRYPTHASH, hKey: HCRYPTKEY, dwFlags: DWORD) -> BOOL, pub CryptDestroyHash: unsafe extern "C" fn(hHash: HCRYPTHASH) -> BOOL, pub CryptSignHashA: unsafe extern "C" fn(hHash: HCRYPTHASH, dwKeySpec: DWORD, szDescription: LPCSTR, dwFlags: DWORD, pbSignature: *mut BYTE, pdwSigLen: *mut DWORD) -> BOOL, pub CryptVerifySignatureA: unsafe extern "C" fn(hHash: HCRYPTHASH, pbSignature: *const BYTE, dwSigLen: DWORD, hPubKey: HCRYPTKEY, szDescription: LPCSTR, dwFlags: DWORD) -> BOOL, pub CryptDuplicateKey: unsafe extern "C" fn(hKey: HCRYPTKEY, pdwReserved: *mut DWORD, dwFlags: DWORD, phKey: *mut HCRYPTKEY) -> BOOL, pub CryptDuplicateHash: unsafe extern "C" fn(hHash: HCRYPTHASH, pdwReserved: *mut DWORD, dwFlags: DWORD, phHash: *mut HCRYPTHASH) -> BOOL, pub CryptEnumProvidersA: unsafe extern "C" fn(dwIndex: DWORD, pdwReserved: *mut DWORD, dwFlags: DWORD, pdwProvType: *mut DWORD, szProvName: LPSTR, pcbProvName: *mut DWORD) -> BOOL, /* private fields */
}

Fields§

§GetLastError: unsafe extern "C" fn() -> DWORD§CertOpenStore: unsafe extern "C" fn(lpszStoreProvider: LPCSTR, dwEncodingType: DWORD, hCryptProv: HCRYPTPROV, dwFlags: DWORD, pvPara: *const c_void) -> HCERTSTORE§CertCloseStore: unsafe extern "C" fn(hCertStore: HCERTSTORE, dwFlags: DWORD) -> BOOL§CertEnumCertificatesInStore: unsafe extern "C" fn(hCertStore: HCERTSTORE, pPrevCertContext: PCCERT_CONTEXT) -> PCCERT_CONTEXT§CertFindCertificateInStore: unsafe extern "C" fn(hCertStore: HCERTSTORE, dwCertEncodingType: DWORD, dwFindFlags: DWORD, dwFindType: DWORD, pvFindPara: *const c_void, pPrevCertContext: PCCERT_CONTEXT) -> PCCERT_CONTEXT§CertFreeCertificateContext: unsafe extern "C" fn(pCertContext: PCCERT_CONTEXT) -> BOOL§CertGetCertificateContextProperty: unsafe extern "C" fn(pCertContext: PCCERT_CONTEXT, dwPropId: DWORD, pvData: *mut c_void, pcbData: *mut DWORD) -> BOOL§CertEnumCertificateContextProperties: unsafe extern "C" fn(pCertContext: PCCERT_CONTEXT, dwPropId: DWORD) -> DWORD§CryptAcquireContextW: unsafe extern "C" fn(phProv: *mut HCRYPTPROV, pszContainer: LPCWSTR, pszProvider: LPCWSTR, dwProvType: DWORD, dwFlags: DWORD) -> BOOL§CryptReleaseContext: unsafe extern "C" fn(hProv: HCRYPTPROV, dwFlags: DWORD) -> BOOL§CryptGenKey: unsafe extern "C" fn(hProv: HCRYPTPROV, Algid: ALG_ID, dwFlags: DWORD, phKey: *mut HCRYPTKEY) -> BOOL§CryptDeriveKey: unsafe extern "C" fn(hProv: HCRYPTPROV, Algid: ALG_ID, hBaseData: HCRYPTHASH, dwFlags: DWORD, phKey: *mut HCRYPTKEY) -> BOOL§CryptDestroyKey: unsafe extern "C" fn(hKey: HCRYPTKEY) -> BOOL§CryptSetKeyParam: unsafe extern "C" fn(hKey: HCRYPTKEY, dwParam: DWORD, pbData: *const BYTE, dwFlags: DWORD) -> BOOL§CryptGetKeyParam: unsafe extern "C" fn(hKey: HCRYPTKEY, dwParam: DWORD, pbData: *mut BYTE, pdwDataLen: *mut DWORD, dwFlags: DWORD) -> BOOL§CryptSetHashParam: unsafe extern "C" fn(hHash: HCRYPTHASH, dwParam: DWORD, pbData: *const BYTE, dwFlags: DWORD) -> BOOL§CryptGetHashParam: unsafe extern "C" fn(hHash: HCRYPTHASH, dwParam: DWORD, pbData: *mut BYTE, pdwDataLen: *mut DWORD, dwFlags: DWORD) -> BOOL§CryptSetProvParam: unsafe extern "C" fn(hProv: HCRYPTPROV, dwParam: DWORD, pbData: *const BYTE, dwFlags: DWORD) -> BOOL§CryptGetProvParam: unsafe extern "C" fn(hProv: HCRYPTPROV, dwParam: DWORD, pbData: *mut BYTE, pdwDataLen: *mut DWORD, dwFlags: DWORD) -> BOOL§CryptGenRandom: unsafe extern "C" fn(hProv: HCRYPTPROV, dwLen: DWORD, pbBuffer: *mut BYTE) -> BOOL§CryptGetUserKey: unsafe extern "C" fn(hProv: HCRYPTPROV, dwKeySpec: DWORD, phUserKey: *mut HCRYPTKEY) -> BOOL§CryptExportKey: unsafe extern "C" fn(hKey: HCRYPTKEY, hExpKey: HCRYPTKEY, dwBlobType: DWORD, dwFlags: DWORD, pbData: *mut BYTE, pdwDataLen: *mut DWORD) -> BOOL§CryptImportKey: unsafe extern "C" fn(hProv: HCRYPTPROV, pbData: *const BYTE, dwDataLen: DWORD, hPubKey: HCRYPTKEY, dwFlags: DWORD, phKey: *mut HCRYPTKEY) -> BOOL§CryptEncrypt: unsafe extern "C" fn(hKey: HCRYPTKEY, hHash: HCRYPTHASH, Final: BOOL, dwFlags: DWORD, pbData: *mut BYTE, pdwDataLen: *mut DWORD, dwBufLen: DWORD) -> BOOL§CryptDecrypt: unsafe extern "C" fn(hKey: HCRYPTKEY, hHash: HCRYPTHASH, Final: BOOL, dwFlags: DWORD, pbData: *mut BYTE, pdwDataLen: *mut DWORD) -> BOOL§CryptCreateHash: unsafe extern "C" fn(hProv: HCRYPTPROV, Algid: ALG_ID, hKey: HCRYPTKEY, dwFlags: DWORD, phHash: *mut HCRYPTHASH) -> BOOL§CryptHashData: unsafe extern "C" fn(hHash: HCRYPTHASH, pbData: *const BYTE, dwDataLen: DWORD, dwFlags: DWORD) -> BOOL§CryptHashSessionKey: unsafe extern "C" fn(hHash: HCRYPTHASH, hKey: HCRYPTKEY, dwFlags: DWORD) -> BOOL§CryptDestroyHash: unsafe extern "C" fn(hHash: HCRYPTHASH) -> BOOL§CryptSignHashA: unsafe extern "C" fn(hHash: HCRYPTHASH, dwKeySpec: DWORD, szDescription: LPCSTR, dwFlags: DWORD, pbSignature: *mut BYTE, pdwSigLen: *mut DWORD) -> BOOL§CryptVerifySignatureA: unsafe extern "C" fn(hHash: HCRYPTHASH, pbSignature: *const BYTE, dwSigLen: DWORD, hPubKey: HCRYPTKEY, szDescription: LPCSTR, dwFlags: DWORD) -> BOOL§CryptDuplicateKey: unsafe extern "C" fn(hKey: HCRYPTKEY, pdwReserved: *mut DWORD, dwFlags: DWORD, phKey: *mut HCRYPTKEY) -> BOOL§CryptDuplicateHash: unsafe extern "C" fn(hHash: HCRYPTHASH, pdwReserved: *mut DWORD, dwFlags: DWORD, phHash: *mut HCRYPTHASH) -> BOOL§CryptEnumProvidersA: unsafe extern "C" fn(dwIndex: DWORD, pdwReserved: *mut DWORD, dwFlags: DWORD, pdwProvType: *mut DWORD, szProvName: LPSTR, pcbProvName: *mut DWORD) -> BOOL

Implementations§

Source§

impl SSP

Source

pub unsafe fn new<P>(path: P) -> Result<Self, Error>
where P: AsRef<OsStr>,

Source

pub unsafe fn from_library<L>(library: L) -> Result<Self, Error>
where L: Into<Library>,

Source

pub unsafe fn GetLastError(&self) -> DWORD

Source

pub unsafe fn CertOpenStore( &self, lpszStoreProvider: LPCSTR, dwEncodingType: DWORD, hCryptProv: HCRYPTPROV, dwFlags: DWORD, pvPara: *const c_void, ) -> HCERTSTORE

Source

pub unsafe fn CertCloseStore( &self, hCertStore: HCERTSTORE, dwFlags: DWORD, ) -> BOOL

Source

pub unsafe fn CertEnumCertificatesInStore( &self, hCertStore: HCERTSTORE, pPrevCertContext: PCCERT_CONTEXT, ) -> PCCERT_CONTEXT

Source

pub unsafe fn CertFindCertificateInStore( &self, hCertStore: HCERTSTORE, dwCertEncodingType: DWORD, dwFindFlags: DWORD, dwFindType: DWORD, pvFindPara: *const c_void, pPrevCertContext: PCCERT_CONTEXT, ) -> PCCERT_CONTEXT

Source

pub unsafe fn CertFreeCertificateContext( &self, pCertContext: PCCERT_CONTEXT, ) -> BOOL

Source

pub unsafe fn CertGetCertificateContextProperty( &self, pCertContext: PCCERT_CONTEXT, dwPropId: DWORD, pvData: *mut c_void, pcbData: *mut DWORD, ) -> BOOL

Source

pub unsafe fn CertEnumCertificateContextProperties( &self, pCertContext: PCCERT_CONTEXT, dwPropId: DWORD, ) -> DWORD

Source

pub unsafe fn CryptAcquireContextW( &self, phProv: *mut HCRYPTPROV, pszContainer: LPCWSTR, pszProvider: LPCWSTR, dwProvType: DWORD, dwFlags: DWORD, ) -> BOOL

Source

pub unsafe fn CryptReleaseContext( &self, hProv: HCRYPTPROV, dwFlags: DWORD, ) -> BOOL

Source

pub unsafe fn CryptGenKey( &self, hProv: HCRYPTPROV, Algid: ALG_ID, dwFlags: DWORD, phKey: *mut HCRYPTKEY, ) -> BOOL

Source

pub unsafe fn CryptDeriveKey( &self, hProv: HCRYPTPROV, Algid: ALG_ID, hBaseData: HCRYPTHASH, dwFlags: DWORD, phKey: *mut HCRYPTKEY, ) -> BOOL

Source

pub unsafe fn CryptDestroyKey(&self, hKey: HCRYPTKEY) -> BOOL

Source

pub unsafe fn CryptSetKeyParam( &self, hKey: HCRYPTKEY, dwParam: DWORD, pbData: *const BYTE, dwFlags: DWORD, ) -> BOOL

Source

pub unsafe fn CryptGetKeyParam( &self, hKey: HCRYPTKEY, dwParam: DWORD, pbData: *mut BYTE, pdwDataLen: *mut DWORD, dwFlags: DWORD, ) -> BOOL

Source

pub unsafe fn CryptSetHashParam( &self, hHash: HCRYPTHASH, dwParam: DWORD, pbData: *const BYTE, dwFlags: DWORD, ) -> BOOL

Source

pub unsafe fn CryptGetHashParam( &self, hHash: HCRYPTHASH, dwParam: DWORD, pbData: *mut BYTE, pdwDataLen: *mut DWORD, dwFlags: DWORD, ) -> BOOL

Source

pub unsafe fn CryptSetProvParam( &self, hProv: HCRYPTPROV, dwParam: DWORD, pbData: *const BYTE, dwFlags: DWORD, ) -> BOOL

Source

pub unsafe fn CryptGetProvParam( &self, hProv: HCRYPTPROV, dwParam: DWORD, pbData: *mut BYTE, pdwDataLen: *mut DWORD, dwFlags: DWORD, ) -> BOOL

Source

pub unsafe fn CryptGenRandom( &self, hProv: HCRYPTPROV, dwLen: DWORD, pbBuffer: *mut BYTE, ) -> BOOL

Source

pub unsafe fn CryptGetUserKey( &self, hProv: HCRYPTPROV, dwKeySpec: DWORD, phUserKey: *mut HCRYPTKEY, ) -> BOOL

Source

pub unsafe fn CryptExportKey( &self, hKey: HCRYPTKEY, hExpKey: HCRYPTKEY, dwBlobType: DWORD, dwFlags: DWORD, pbData: *mut BYTE, pdwDataLen: *mut DWORD, ) -> BOOL

Source

pub unsafe fn CryptImportKey( &self, hProv: HCRYPTPROV, pbData: *const BYTE, dwDataLen: DWORD, hPubKey: HCRYPTKEY, dwFlags: DWORD, phKey: *mut HCRYPTKEY, ) -> BOOL

Source

pub unsafe fn CryptEncrypt( &self, hKey: HCRYPTKEY, hHash: HCRYPTHASH, Final: BOOL, dwFlags: DWORD, pbData: *mut BYTE, pdwDataLen: *mut DWORD, dwBufLen: DWORD, ) -> BOOL

Source

pub unsafe fn CryptDecrypt( &self, hKey: HCRYPTKEY, hHash: HCRYPTHASH, Final: BOOL, dwFlags: DWORD, pbData: *mut BYTE, pdwDataLen: *mut DWORD, ) -> BOOL

Source

pub unsafe fn CryptCreateHash( &self, hProv: HCRYPTPROV, Algid: ALG_ID, hKey: HCRYPTKEY, dwFlags: DWORD, phHash: *mut HCRYPTHASH, ) -> BOOL

Source

pub unsafe fn CryptHashData( &self, hHash: HCRYPTHASH, pbData: *const BYTE, dwDataLen: DWORD, dwFlags: DWORD, ) -> BOOL

Source

pub unsafe fn CryptHashSessionKey( &self, hHash: HCRYPTHASH, hKey: HCRYPTKEY, dwFlags: DWORD, ) -> BOOL

Source

pub unsafe fn CryptDestroyHash(&self, hHash: HCRYPTHASH) -> BOOL

Source

pub unsafe fn CryptSignHashA( &self, hHash: HCRYPTHASH, dwKeySpec: DWORD, szDescription: LPCSTR, dwFlags: DWORD, pbSignature: *mut BYTE, pdwSigLen: *mut DWORD, ) -> BOOL

Source

pub unsafe fn CryptVerifySignatureA( &self, hHash: HCRYPTHASH, pbSignature: *const BYTE, dwSigLen: DWORD, hPubKey: HCRYPTKEY, szDescription: LPCSTR, dwFlags: DWORD, ) -> BOOL

Source

pub unsafe fn CryptDuplicateKey( &self, hKey: HCRYPTKEY, pdwReserved: *mut DWORD, dwFlags: DWORD, phKey: *mut HCRYPTKEY, ) -> BOOL

Source

pub unsafe fn CryptDuplicateHash( &self, hHash: HCRYPTHASH, pdwReserved: *mut DWORD, dwFlags: DWORD, phHash: *mut HCRYPTHASH, ) -> BOOL

Source

pub unsafe fn CryptEnumProvidersA( &self, dwIndex: DWORD, pdwReserved: *mut DWORD, dwFlags: DWORD, pdwProvType: *mut DWORD, szProvName: LPSTR, pcbProvName: *mut DWORD, ) -> BOOL

Source§

impl SSP

Source

pub unsafe fn system() -> Result<Self, Error>

Auto Trait Implementations§

§

impl Freeze for SSP

§

impl RefUnwindSafe for SSP

§

impl Send for SSP

§

impl Sync for SSP

§

impl Unpin for SSP

§

impl UnwindSafe for SSP

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.