foxit.pdf.DRMSecurityCallback Class Reference
Inheritance diagram for foxit.pdf.DRMSecurityCallback:
foxit.pdf.SecurityCallback

Public Member Functions

virtual SecurityHandler.CipherType GetCipherType (PDFDoc document, string sub_filter)
 A callback function used to get the cipher type for encryption algorithm.
More...
 
virtual string GetFileID (PDFDoc document, string sub_filter)
 A callback function used to get the file identity string.
More...
 
virtual string GetInitialKey (PDFDoc document, string sub_filter)
 A callback function used to get the initial key to decrypt the DRM protected document.
More...
 
virtual int GetKeyLength (PDFDoc document, string sub_filter)
 A callback function used to get the length of cipher key.
More...
 
override PDFDoc.EncryptType GetSecurityType ()
 Get the encryption type of security callback.
More...
 
virtual int GetUserPermissions (PDFDoc document, string sub_filter)
 A callback function used to get the current user permissions.
More...
 
virtual bool IsOwner (PDFDoc document, string sub_filter)
 A callback function used to check if current user is the owner of the PDF document.
More...
 
- Public Member Functions inherited from foxit.pdf.SecurityCallback
virtual void Release ()
 A callback function used to release current security callback object itself.
More...
 

Detailed Description

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

Member Function Documentation

◆ GetCipherType()

SecurityHandler.CipherType foxit.pdf.DRMSecurityCallback.GetCipherType ( PDFDoc  document,
string  sub_filter 
)
inlinevirtual

A callback function used to get the cipher type for encryption algorithm.

Parameters
documentA PDF document object.
sub_filterThe sub filter of the PDF document.
Note
User should implement this callback function.
Returns
The cipher type. Please refer to e_CipherXXX values and this should be one or combination of its values.

◆ GetFileID()

string foxit.pdf.DRMSecurityCallback.GetFileID ( PDFDoc  document,
string  sub_filter 
)
inlinevirtual

A callback function used to get the file identity string.

Parameters
documentA PDF document object.
sub_filterThe sub filter of the PDF document.
Note
User should implement this callback function.
Returns
The identity string, used to identify the file.

◆ GetInitialKey()

string foxit.pdf.DRMSecurityCallback.GetInitialKey ( PDFDoc  document,
string  sub_filter 
)
inlinevirtual

A callback function used to get the initial key to decrypt the DRM protected document.

Parameters
documentA PDF document object.
sub_filterThe sub filter of the PDF document.
Note
User should implement this callback function.
Returns
The initial key.

◆ GetKeyLength()

int foxit.pdf.DRMSecurityCallback.GetKeyLength ( PDFDoc  document,
string  sub_filter 
)
inlinevirtual

A callback function used to get the length of cipher key.

Parameters
documentA PDF document object.
sub_filterThe sub filter of the PDF document.
Note
User should implement this callback function.
Returns
The key length.
For e_CipherRC4 cipher, this value should be between 5 and 16.
For e_CipherAES cipher, this value should be 16 or 32.

◆ GetSecurityType()

override PDFDoc.EncryptType foxit.pdf.DRMSecurityCallback.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 e_EncryptFoxitDRM.

Reimplemented from foxit.pdf.SecurityCallback.

◆ GetUserPermissions()

int foxit.pdf.DRMSecurityCallback.GetUserPermissions ( PDFDoc  document,
string  sub_filter 
)
inlinevirtual

A callback function used to get the current user permissions.

Parameters
documentA PDF document object.
sub_filterThe sub filter of the PDF document.
Note
User should implement this callback function.
Returns
Current user permissions. Please refer to e_PermXXX values and this should be one or combination of its values.

◆ IsOwner()

bool foxit.pdf.DRMSecurityCallback.IsOwner ( PDFDoc  document,
string  sub_filter 
)
inlinevirtual

A callback function used to check if current user is the owner of the PDF document.

Parameters
documentA PDF document object.
sub_filterThe sub filter of the PDF document.
Note
User should implement this callback function.
Returns
true means current user is the owner of the PDF document, while false means not.

Foxit Software Corporation Logo
@2018 Foxit Software Incorporated. All rights reserved.