5#ifndef __EDLIDOMSECURITY_H__
6#define __EDLIDOMSECURITY_H__
23#define edlobj2IDOMSecurityInfo(src) edl_cast((IDOMSecurityInfo *)NULL, src)
42#define edlobj2IDOMPDFSecurityInfo(src) edl_cast((IDOMPDFSecurityInfo *)NULL, src)
52#define IDOMStandardPDFSecurityInfoClassID 0x04e1352e, 0xf6554791, 0x9d4c410a, 0xe798d64d
237#define edlobj2IDOMStandardPDFSecurityInfo(src) edl_cast((IDOMStandardPDFSecurityInfo *)NULL, src)
248#define IDOMPublicKeyPDFSecurityInfoClassID 0x2f812253, 0xd5a34fcc, 0x955c6437, 0x5caf6c1e
281#define edlobj2IDOMPublicKeyPDFSecurityInfo(src) edl_cast((IDOMPublicKeyPDFSecurityInfo *)NULL, src)
Definition idomsecurity.h:26
virtual EDLSysString getSecurityHandlerName() const =0
Retrieves the name of the security handler.
virtual int32 getKeyLength() const =0
Retrieves the length of the encryption key (rnagind from 40 to 256)
virtual int32 getAlgorithmCode() const =0
Retrieves encryption algorithm code (0, 1, 2, 3, 4 or 5)
Represents security information from PDF public key (certificate based) security handling....
Definition idomsecurity.h:247
DECLARE_CLASS_ID(IDOMPublicKeyPDFSecurityInfoClassID)
virtual bool isOwnerAccess() const =0
Returns true if the input has permissions to change input encryption settings, effectively granting o...
virtual EDLSysString getUserPassword() const
The password is never returned for public key cryptography.
Definition idomsecurity.h:264
@ eChangeEncryptionAllowed
Definition idomsecurity.h:276
Base DOM security class.
Definition idomsecurity.h:20
Represents security information from PDF Standard encryption handler.
Definition idomsecurity.h:51
virtual EDLSysString getUserPassword() const =0
Retrieves the user access password.
bool isPrintingAllowed() const
Returns true if printing is allowed.
Definition idomsecurity.h:83
bool isCopyingAllowed() const
Returns true if copying of text and graphics from the document for operations other than those specif...
Definition idomsecurity.h:122
bool isHighQualityPrintingAllowed() const
Returns true if high quality printing is allowed.
Definition idomsecurity.h:92
DECLARE_CLASS_ID(IDOMStandardPDFSecurityInfoClassID)
virtual bool isOwnerAccess() const =0
Returns true if the owner password was used to open the PDF.
virtual int32 getHandlerRevision() const =0
Retrieves the revision of the handler.
bool isFillingFormsAllowed() const
Returns true if form-filling is allowed.
Definition idomsecurity.h:140
bool isDocumentAssemblyAllowed() const
Returns true if document assembly is allowed.
Definition idomsecurity.h:190
virtual uint32 getPermissionFlags() const =0
Retrieve the raw permissions flags according to the PDF 1.7 spec, table 3.2.0. These should be interp...
bool isContentAccessibilityExtractionAllowed() const
Returns true if extracting for content accessibility is allowed.
Definition idomsecurity.h:168
bool isEditingAllowed() const
Returns true if modification of the contents by operations other than those specified by isAnnotation...
Definition idomsecurity.h:112
bool isAnnotationEditingAllowed() const
Returns true if editing of annotations and forms is allowed.
Definition idomsecurity.h:131
virtual bool encryptMetadata() const =0
Returns true if document level metadata stream is to be encrypted meaningful only when algorithm code...
@ ePrintAllowed
Definition idomsecurity.h:224
@ eEverythingAllowed
Definition idomsecurity.h:232
@ eContentAccessibilityExtractionAllowed
Definition idomsecurity.h:229
@ eCopyingAllowed
Definition idomsecurity.h:226
@ eAnnotationEditingAllowed
Definition idomsecurity.h:227
@ eEditingAllowed
Definition idomsecurity.h:225
@ eHighQualityPrintAllowed
Definition idomsecurity.h:231
@ eFormFillingAllowed
Definition idomsecurity.h:228
@ eDocumentAssemblyAllowed
Definition idomsecurity.h:230
IEDLObject is an abstract base class that is used by all classes that are intended to be created via ...
Definition iedlobject.h:53
#define _END_EDL_DOM_NAMESPACE
Definition edlnamespaces.h:110
#define _BEGIN_EDL_DOM_NAMESPACE
Definition edlnamespaces.h:109
EDLString and EDLSysString classes and associated EDL string manipulation functions.
std::string EDLSysString
Definition edlstring.h:158
EDL "standard" types including known bit-length signed and unsigned integer type[def]s and definition...
unsigned int uint32
Definition edltypes.h:34
signed int int32
Definition edltypes.h:29
ePermissionsFlags
Bit values for each permission flag as available from getPermissionFlags.
Definition idomsecurity.h:223
ePublicKeyPermissionsFlags
An additional flag over and above that provided by IDOMStandardPDFSecurityInfo.
Definition idomsecurity.h:275
#define IDOMPublicKeyPDFSecurityInfoClassID
Definition idomsecurity.h:248
#define IDOMStandardPDFSecurityInfoClassID
Definition idomsecurity.h:52
#define DECL_SMART_PTR(cls)
Definition smartptr.h:211