Foxit PDF SDK
foxit::pdf::RMSSecurityCallback Class Reference
Inheritance diagram for foxit::pdf::RMSSecurityCallback:
foxit::pdf::CustomSecurityCallback foxit::pdf::SecurityCallback

Public Member Functions

virtual PDFDoc::EncryptType GetSecurityType ()
 Get the encryption type of security callback. More...
 
- Public Member Functions inherited from foxit::pdf::CustomSecurityCallback
virtual void * CreateContext (const char *filter, const char *sub_filter, const char *encrypt_info)=0
 A callback function used to create context for encryption and decryption. More...
 
virtual String DecryptData (const void *decryptor, const void *encrypted_data, uint32 encrypted_data_len)=0
 A callback function used to decrypt the encrypted data. More...
 
virtual bool EncryptData (const void *context, int obj_num, int gen_num, const void *src_data, uint32 src_data_len, void *out_dst_buffer, uint32 *out_dst_buffer_len)=0
 A callback function used to get encrypted data. More...
 
virtual String FinishDecryptor (void *decryptor)=0
 A callback function used to finish the decryption. More...
 
virtual SecurityHandler::CipherType GetCipher (const void *context)=0
 A callback function used to get the cipher type. More...
 
virtual uint32 GetDecryptedSize (const void *context, uint32 src_data_size)=0
 A callback function used to get the estimated decrypted data size. More...
 
virtual uint32 GetEncryptedSize (const void *context, int obj_num, int gen_num, const void *src_data, uint32 src_data_len)=0
 A callback function used to get the estimated encrypted size. More...
 
virtual String GetEncryptKey (const void *context)=0
 A callback function used to get the encryption key. More...
 
virtual uint32 GetUserPermissions (const void *context, uint32 user_permission)=0
 A callback function used to get the user permissions. More...
 
virtual bool IsOwner (const void *context)=0
 A callback function used to check if current user is the owner of the PDF document. More...
 
virtual bool ReleaseContext (void *context)=0
 A callback function used to release the context for encryption and decryption. More...
 
virtual void * StartDecryptor (const void *context, int obj_num, int gen_num)=0
 A callback function used to start a decryption. More...
 
virtual bool UseStandardCryptoMethod (const void *context)
 A callback function to check if to use stanard crypto method or custom crypto method. More...
 
- Public Member Functions inherited from foxit::pdf::SecurityCallback
virtual void Release ()=0
 A callback function used to release current callback object itself. More...
 

Detailed Description

This class represents a callback object for RMS decryption and encryption. If user wants to use RMS security callback, user should inherit this callback class and implement the pure virtual functions (as callback functions), and then register the RMS security callback object to Foxit PDF SDK by function common::Library::RegisterSecurityCallback with filter "MicrosoftIRMServices". Function common::Library::UnregisterSecurityCallback can be called to unregister the security callback object with the registered filter name.

Member Function Documentation

◆ GetSecurityType()

virtual PDFDoc::EncryptType foxit::pdf::RMSSecurityCallback::GetSecurityType ( )
inlinevirtual

Get the encryption type of security callback.

Note
User should not override this function, otherwise there will be unexpected behavior.
Returns
The encryption type. It would always be PDFDoc::e_EncryptRMS.

Reimplemented from foxit::pdf::CustomSecurityCallback.