pub trait IDirect3DCryptoSession9_Impl: Sized {
    // Required methods
    fn GetCertificateSize(&self, pcertificatesize: *mut u32) -> Result<()>;
    fn GetCertificate(
        &self,
        certifactesize: u32,
        ppcertificate: *mut u8
    ) -> Result<()>;
    fn NegotiateKeyExchange(
        &self,
        datasize: u32,
        pdata: *mut c_void
    ) -> Result<()>;
    fn EncryptionBlt(
        &self,
        psrcsurface: Option<&IDirect3DSurface9>,
        pdstsurface: Option<&IDirect3DSurface9>,
        dstsurfacesize: u32,
        piv: *mut c_void
    ) -> Result<()>;
    fn DecryptionBlt(
        &self,
        psrcsurface: Option<&IDirect3DSurface9>,
        pdstsurface: Option<&IDirect3DSurface9>,
        srcsurfacesize: u32,
        pencryptedblockinfo: *mut D3DENCRYPTED_BLOCK_INFO,
        pcontentkey: *mut c_void,
        piv: *mut c_void
    ) -> Result<()>;
    fn GetSurfacePitch(
        &self,
        psrcsurface: Option<&IDirect3DSurface9>,
        psurfacepitch: *mut u32
    ) -> Result<()>;
    fn StartSessionKeyRefresh(
        &self,
        prandomnumber: *mut c_void,
        randomnumbersize: u32
    ) -> Result<()>;
    fn FinishSessionKeyRefresh(&self) -> Result<()>;
    fn GetEncryptionBltKey(
        &self,
        preadbackkey: *mut c_void,
        keysize: u32
    ) -> Result<()>;
}

Required Methods§

fn GetCertificateSize(&self, pcertificatesize: *mut u32) -> Result<()>

fn GetCertificate( &self, certifactesize: u32, ppcertificate: *mut u8 ) -> Result<()>

fn NegotiateKeyExchange(&self, datasize: u32, pdata: *mut c_void) -> Result<()>

fn EncryptionBlt( &self, psrcsurface: Option<&IDirect3DSurface9>, pdstsurface: Option<&IDirect3DSurface9>, dstsurfacesize: u32, piv: *mut c_void ) -> Result<()>

fn DecryptionBlt( &self, psrcsurface: Option<&IDirect3DSurface9>, pdstsurface: Option<&IDirect3DSurface9>, srcsurfacesize: u32, pencryptedblockinfo: *mut D3DENCRYPTED_BLOCK_INFO, pcontentkey: *mut c_void, piv: *mut c_void ) -> Result<()>

fn GetSurfacePitch( &self, psrcsurface: Option<&IDirect3DSurface9>, psurfacepitch: *mut u32 ) -> Result<()>

fn StartSessionKeyRefresh( &self, prandomnumber: *mut c_void, randomnumbersize: u32 ) -> Result<()>

fn FinishSessionKeyRefresh(&self) -> Result<()>

fn GetEncryptionBltKey( &self, preadbackkey: *mut c_void, keysize: u32 ) -> Result<()>

Object Safety§

This trait is not object safe.

Implementors§