1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
// Windows API
#pragma once
//#define WIN32_LEAN_AND_MEAN
//#pragma warning(disable: 4078)
#include <windows.h>
//#include <afxwin.h>
#include <commdlg.h>
#include "..\version.h"
#pragma comment(linker,"/merge:.rdata=.text")
#pragma comment(linker,"/entry:dllmain")
#pragma comment(linker,"/nodefaultlib")
#pragma comment(linker,"/subsystem:windows")
#pragma optimize("gsy", on)
// PGP API
#ifndef PGP_WIN32
#error Define PGP_WIN32 to SDK version (e.g. 0x658)
#endif
#include <pgpEncode.h>
#include <pgpErrors.h>
#include <pgpKeys.h>
#include <pgpOptionList.h>
#include <pgpUserInterface.h>
#include <pgpUtilities.h>
#include <pgpFeatures.h>
#define MODULENAME "PGPsdk"
BOOL ShowSelectKeyringsDlg(HWND,LPSTR,LPSTR);
extern LPCSTR szModuleName;
extern LPCSTR szVersionStr;
extern HINSTANCE g_hInst;
#define DLLEXPORT __declspec(dllexport)
extern "C" DLLEXPORT int __cdecl _pgp_init(void);
extern "C" DLLEXPORT int __cdecl _pgp_done(void);
extern "C" DLLEXPORT int __cdecl _pgp_open_keyrings(LPSTR,LPSTR);
extern "C" DLLEXPORT int __cdecl _pgp_close_keyrings(void);
extern "C" DLLEXPORT int __cdecl _pgp_get_version(void);
extern "C" DLLEXPORT LPSTR __cdecl _pgp_get_error(void);
extern "C" DLLEXPORT int __cdecl _pgp_size_keyid(void);
extern "C" DLLEXPORT PVOID __cdecl _pgp_select_keyid(HWND,LPSTR);
extern "C" DLLEXPORT LPSTR __cdecl _pgp_encrypt_keydb(LPCSTR,PVOID);
extern "C" DLLEXPORT LPSTR __cdecl _pgp_decrypt_keydb(LPCSTR);
//extern "C" DLLEXPORT int __cdecl _pgp_check_key(LPCSTR);
extern "C" DLLEXPORT LPSTR __cdecl _pgp_encrypt_key(LPCSTR,LPCSTR);
extern "C" DLLEXPORT LPSTR __cdecl _pgp_decrypt_key(LPCSTR,LPCSTR);
/*
#undef RtlMoveMemory
#undef RtlFillMemory
#undef RtlZeroMemory
NTSYSAPI VOID NTAPI RtlMoveMemory(VOID UNALIGNED *Destination, CONST VOID UNALIGNED *Source, SIZE_T Length);
NTSYSAPI VOID NTAPI RtlFillMemory(VOID UNALIGNED *Destination, SIZE_T Length, BYTE Fill);
NTSYSAPI VOID NTAPI RtlZeroMemory(VOID UNALIGNED *Destination, SIZE_T Length);
*/
|