Foxit PDF SDK
fs_ofdsecurity.h
1 #ifndef FS_OFD_SECURITY_H_
2 #define FS_OFD_SECURITY_H_
3 
4 #include "common/fs_common.h"
5 #include "ofd/fs_ofddoc.h"
6 
12 namespace foxit {
16 namespace ofd {
19  public:
21  virtual ~SecurityCallback() {}
22 
31  virtual bool IsEncrypted(const void* src_buf, foxit::uint32 src_size) = 0;
32 
38  virtual String GetCryptoType() = 0;
39 
50  virtual bool EncryptData(const void* src_buf, foxit::uint32 src_size, void* dest_buf, foxit::uint32& dest_size) = 0;
51 
62  virtual bool DecryptData(const void* src_buf, foxit::uint32 src_size, void* dest_buf, foxit::uint32& dest_size) = 0;
63 
69  virtual void* EncryptStart() = 0;
70 
80  virtual bool EncryptFinish(void* context, foxit::common::file::StreamCallback* input_callback, foxit::common::file::StreamCallback* output_callback) = 0;
81 
87  virtual void* DecryptStart() = 0;
88 
98  virtual bool DecryptFinish(void* context, foxit::common::file::StreamCallback* input_callback, foxit::common::file::StreamCallback* output_callback) = 0;
99 };
100 
101 class OFDSecurity FS_FINAL : public Base {
102  public:
113  static void RegisterHandler(const String& security_type, const String& crypto_type, int key_length, SecurityCallback* security_callback);
114 
124  static void UnregisterHandler(const String& security_type, const String& crypto_type, int key_length);
125 };
126 
127 } // namespace ofd
128 } // namespace foxit
129 
130 #endif // FS_OFD_SECURITY_H_
virtual bool DecryptFinish(void *context, foxit::common::file::StreamCallback *input_callback, foxit::common::file::StreamCallback *output_callback)=0
结束解密操作。
virtual bool EncryptFinish(void *context, foxit::common::file::StreamCallback *input_callback, foxit::common::file::StreamCallback *output_callback)=0
结束加密操作。
virtual String GetCryptoType()=0
获取加密类型。
文件流接口,用于读取和写入。
Definition: fx_stream.h:692
virtual void * DecryptStart()=0
开始解密操作。
FX_UINT32 uint32
无符号 32 位整数。
Definition: fs_basictypes.h:195
通用定义和类的头文件。
virtual bool DecryptData(const void *src_buf, foxit::uint32 src_size, void *dest_buf, foxit::uint32 &dest_size)=0
解密数据。
Definition: fs_basictypes.h:465
virtual ~SecurityCallback()
析构函数。
Definition: fs_ofdsecurity.h:21
Foxit命名空间。
Definition: fs_pdf3d.h:26
字节字符串类
Definition: fx_string.h:317
virtual void * EncryptStart()=0
开始加密操作。
virtual bool IsEncrypted(const void *src_buf, foxit::uint32 src_size)=0
检查数据是否被加密。
virtual bool EncryptData(const void *src_buf, foxit::uint32 src_size, void *dest_buf, foxit::uint32 &dest_size)=0
加密数据。
Definition: fs_ofdsecurity.h:18