📄 pgpkeysx.h
字号:
/*____________________________________________________________________________
Copyright (C) 2002 PGP Corporation
All rights reserved.
PGPKeysx.h - internal include file for PGPkeys project
$Id: PGPkeysx.h,v 1.54 2002/10/31 04:13:36 pbj Exp $
____________________________________________________________________________*/
#ifndef Included_PGPkeysx_h /* [ */
#define Included_PGPkeysx_h
#define WIN32_LEAN_AND_MEAN
#define _WIN32_WINNT 0x0400
// Win32 header files
#include <windows.h>
#include <commctrl.h>
#include <ole2.h>
#include <shellapi.h>
// PGP build flags
#include "pgpBuild.h"
// PGP SDK header files
#include "pgpPubTypes.h"
#include "pgpErrors.h"
#include "pgpUtilities.h"
#include "pgpMem.h"
#include "pgpKeys.h"
#include "pgpClientPrefs.h"
#include "pgpKeyServerPrefs.h"
// PGP client header files
#include "PGPHelp.h"
#include "pgpWin32Errors.h"
#include "PGPgm.h"
#include "pgpClientLib.h"
#include "pgpLnLib.h"
#include "TreeList.h"
#include "resource.h"
#define MAXSHEETS 16 // maximum number of simultaneous dialogs
#define IDC_STATUSBAR 0x3333
#define IDC_TOOLBAR 0x3334
#define IDM_DOMAINKEYSERVERX 41000
#define IDM_TOOLBARSENDTOSERVER 42000
#define IDM_PDAOPERATION 43000
// macro definitions
#define CKERR if (IsPGPError (err)) goto done
// constant definitions
#define DEFAULTWINDOWWIDTH 520
#define DEFAULTWINDOWHEIGHT 300
#define DEFAULTWINDOWX 85
#define DEFAULTWINDOWY 90
#define DEFAULTGROUPSHOW FALSE
#define DEFAULTGROUPPERCENT 30
#define DEFAULTTOOLHEIGHT 28
#define TOOLBARXOFFSET 4
#define TOOLBARYOFFSET 4
#define KM_NOACTION 0
#define KM_COPY 1
#define KM_PASTE 2
#define KM_DELETE 3
#define KM_SELECTALL 4
#define KM_COLLAPSEALL 5
#define KM_COLLAPSESEL 6
#define KM_EXPANDALL 7
#define KM_EXPANDSEL 8
#define KM_CERTIFY 9
#define KM_ENABLE 10
#define KM_DISABLE 11
#define KM_ADDUSERID 12
#define KM_REVOKE 13
#define KM_SETASDEFAULT 14
#define KM_SETASPRIMARY 15
#define KM_IMPORT 16
#define KM_EXPORT 17
#define KM_PROPERTIES 18
#define KM_SENDTOSERVER 19
#define KM_GETFROMSERVER 20
#define KM_DELETEFROMSERVER 21
#define KM_DISABLEONSERVER 22
#define KM_RETRIEVECERTIFICATE 23
#define KM_ADDCERTIFICATE 24
#define KM_REVERIFYSIGS 25
#define KM_SPLITKEY 26
#define KM_ADDPHOTOID 27
#define KM_ADDREVOKER 28
#define KM_ADDTOMAIN 29
#define KM_UNSELECTALL 30
#define KM_RECONSTRUCTKEY 31
#define KM_SENDTORECONSERVER 32
#define KM_SENDTOTOKEN 33
#define KM_SENDVIAEMAIL 34
#define PK_M_RELOADKEYRINGS WM_APP+98
#define PK_M_KEYCREATEDONE WM_APP+97
#define PK_M_CHANGEPHASE WM_APP+96
#define PK_M_RESIZE WM_APP+95
#define PK_M_REFRESHKEYRINGS WM_APP+94
#define PK_M_NEWKEYRINGS WM_APP+93
#define PK_M_CLOSEWINDOW WM_APP+92
#define PK_EXPORTEDKEYFILE 0
#define PK_EXPORTEDGROUPFILE 1
// flags
#define PK_MAINWINDOW 0x0001
#define PK_FILEWINDOW 0x0002
#define PK_SEARCHWINDOW 0x0004
#define PK_PDAWINDOW 0x0008
#define PK_KEYWINDOW (PK_MAINWINDOW|PK_FILEWINDOW|PK_PDAWINDOW)
#define PK_IDROP_KEYLIST 0x0001
#define PK_IDROP_GROUPLIST 0x0002
#define PK_IDROP_SPLITLIST 0x0004
#define PK_MOD_INDEX_0 0x0001
#define PK_PDAWINDOWOP 0x0001
// typedefs
typedef struct {
HWND hwndMain;
UINT uFlags;
BOOL bReadOnly;
BOOL bLocalKeySet;
UINT uKeySelectionFlags;
UINT uBackupFlags;
HKEYLIST hKL;
PGPclKeyListConfig klConfig;
HWND hwndTreeList;
HWND hwndToolBar;
HWND hwndSearchControl;
LPDROPTARGET pDropTarget;
VOID* pSplitKeyDlgList;
PGPKeySetRef keysetDisp;
PGPKeyDBRef keydbMain;
CHAR szFilePub[MAX_PATH];
CHAR szFileSec[MAX_PATH];
HMENU hmenuKeyMan;
HMENU hmenuKeyserver;
INT iToolHeight;
INT iKeysHeight;
PGPclGroupFile* pGroupFile;
BOOL bGroupsVisible;
BOOL bGroupsFocused;
HGROUPMAN hGM;
GMCONFIG gmConfig;
UINT uGroupSelectionFlags;
HWND hwndTreeListGroups;
INT iGroupsHeight;
INT iGroupsPercent;
BOOL bGrabEnabled;
BOOL bGrabbed;
HCURSOR hCursorOld;
LPDROPTARGET pDropTargetGroups;
BOOL bSearchInProgress;
INT iStatusValue;
INT iStatusPrevValue;
INT iStatusDirection;
INT iTLSstatus;
CHAR szTLSserver[256];
PGPKeyDBRef keydbAuth;
PGPKeyDBObjRef keyAuth;
PGPtlsCipherSuiteNum tlsCipher;
} PGPKEYSSTRUCT, *PPGPKEYSSTRUCT;
typedef struct _SHAREHOLDERSTRUCT {
BOOL bPublicKey;
PGPKeyID keyid;
CHAR szUserID[kPGPMaxUserIDSize];
LPSTR pszPassphrase;
UINT uShares;
} SHAREHOLDERSTRUCT, *PSHAREHOLDERSTRUCT;
typedef struct _SPLITKEYSTRUCT {
struct _SPLITKEYSTRUCT* next;
struct _SPLITKEYSTRUCT** pHeadOfList;
PPGPKEYSSTRUCT ppks;
HWND hwndDlg;
HWND hwndList;
LPDROPTARGET pDropTarget;
PGPKeyID keyidToSplit;
CHAR szUserIDToSplit[kPGPMaxUserIDSize];
UINT uTotalShares;
UINT uThreshold;
INT iIndexCurrent;
PSHAREHOLDERSTRUCT pshsCurrent;
HFONT hUTF8Font;
} SPLITKEYSTRUCT, *PSPLITKEYSTRUCT;
typedef struct {
HMODULE hmod;
BOOL bKeyring;
UINT uOp;
HWND hwnd;
UINT uPlatform;
UINT uVersion;
UINT uFlags;
} PGPPDASTRUCT;
// PGPkeys.c
VOID PKAddRemoveWindowList (HWND hwnd, BOOL bAdd, BOOL bDlg, BOOL bProperties);
VOID PKEnableWindowList (BOOL bEnabled);
VOID PKPostMessageWindowList (UINT uMsg, WPARAM wParam, LPARAM lParam);
VOID PKSendMessageWindowList (UINT uMsg, WPARAM wParam, LPARAM lParam);
// PKAddID.c
BOOL PKAddPhotoToKey (PGPKEYSSTRUCT* ppks);
BOOL PKAddUserToKey (PGPKEYSSTRUCT* ppks);
// PKIDataObject.cpp
LPDATAOBJECT PKCreateDataObject (PPGPKEYSSTRUCT ppks, LPSTR szName);
BOOL PKOKToDeleteDataObject (LPDATAOBJECT pDataObject);
// PKIDropSource.cpp
LPDROPSOURCE PKCreateDropSource (PPGPKEYSSTRUCT ppks,
HWND hwnd, HWND hwndTree, BOOL bRenderAll);
// PKIDropTarget.cpp
LPDROPTARGET PKCreateDropTarget (HWND hwnd,
UINT uWindowType, VOID* pUserStruct);
VOID PKReleaseDropTarget (LPDROPTARGET pDropTarget);
VOID PKEnableDropTarget (LPDROPTARGET pDropTarget, BOOL bEnable);
// PKKeyIO.c
BOOL PKInputFile (PGPKEYSSTRUCT* ppks, HDROP hDrop);
BOOL PKExportKeys (PGPKEYSSTRUCT* ppks, LPSTR szFile);
BOOL PKCopyKeys (PGPKEYSSTRUCT* ppks, HANDLE* phMem);
BOOL PKDataToPaste (VOID);
BOOL PKPasteKeys (PGPKEYSSTRUCT* ppks);
BOOL PKDragAndDrop (PGPKEYSSTRUCT* ppks);
BOOL PKSendViaEmail (PGPKEYSSTRUCT* ppks);
// PKKeyOps.c
BOOL PKEnableKey (PGPKEYSSTRUCT* ppks);
BOOL PKDisableKey (PGPKEYSSTRUCT* ppks);
BOOL PKReverifySigs (PGPKEYSSTRUCT* ppks);
BOOL PKSetPrimaryUserID (PGPKEYSSTRUCT* ppks);
BOOL PKSetDefaultKey (PGPKEYSSTRUCT* ppks);
BOOL PKCertifyKeyOrUserID (PGPKEYSSTRUCT* ppks);
BOOL PKDeleteObject (PGPKEYSSTRUCT* ppks);
BOOL PKAddSelectedToMain (PGPKEYSSTRUCT* ppks);
// PKMenu.c
VOID PKInitMenuKeyMan (HMENU hmenu, UINT uFlags);
VOID PKSetMainMenu (PGPKEYSSTRUCT* ppks);
VOID PKContextMenu (PGPKEYSSTRUCT* ppks, HWND hwnd, INT x, INT y);
VOID PKGetServerActionFromID (
UINT uID, PGPKeyServerEntry* pkeyserver, UINT* uAction);
VOID PKToolbarKeyserverMenu (PGPKEYSSTRUCT* ppks, HWND hwnd, LPRECT lprect);
BOOL PKIsActionEnabled (PGPKEYSSTRUCT* ppks, ULONG ulAction);
PGPError PKPerformAction (PGPKEYSSTRUCT* ppks, ULONG ulAction);
BOOL PKIsDeleteEnabled (PGPKEYSSTRUCT* ppks);
// PKMisc.c
VOID* pkAlloc (LONG size);
VOID pkFree (VOID* p);
BOOL PKGetPrivatePrefData (DWORD* show, INT* X, INT* Y,
INT* Width, INT* Height, BOOL* bShowGroups, INT* iGroupsPercent,
INT* iToolHeight);
BOOL PKGetColWidthsFromRegistry (WORD * widths, INT nWidths);
BOOL PKGetSortOrderFromRegistry (LONG * field);
VOID PKReloadPGPPreferences (PGPKEYSSTRUCT* ppks);
BOOL PKPGPPreferences (PGPKEYSSTRUCT* ppks, HWND hwnd, INT iPage);
VOID PKSetPrivatePrefData (HWND hWnd, BOOL bGroupShow,
INT iGroupPercent, INT iToolHeight);
BOOL PKAutoUpdateIntroducers (HWND hwnd, PGPKEYSSTRUCT* ppks, BOOL bForce);
BOOL PKUpdateCARevocations (HWND hwnd, HKEYLIST kKL, PGPKeyDBRef keydb);
BOOL PKScheduleNextCRLUpdate (PGPContextRef context, PGPKeyDBRef keydb);
BOOL PKIsThisTheOnlyUserID (PGPKeyDBObjRef userid);
BOOL PKIsThisThePrimaryUserID (PGPKeyDBObjRef userid);
BOOL PKCheckForNonTokenSecretKeys (PGPKeySetRef keyset);
BOOL PKExistingPhotoID (PGPKeyDBObjRef key);
BOOL PKFileIsForImporting (LPSTR pszFile,
PGPUInt32* puType, PGPInputFormat* pformat);
// PKMsgPrc.c
LONG APIENTRY PGPkeysWndProc (HWND hwnd,
UINT msg, WPARAM wParam, LPARAM lParam);
BOOL PKNewWindowForFile (HWND hwnd,
PGPKEYSSTRUCT* ppks, BOOL bNew, LPSTR pszPath);
// PKProps.c
BOOL PKObjectProperties (PPGPKEYSSTRUCT ppks);
VOID PKUpdateAllObjectPropertiesWindows (PPGPKEYSSTRUCT ppks);
VOID PKDeletePropertiesWindow (HWND hwnd);
VOID PKDeletePropertiesWindowForObject (PGPKeyDBObjRef obj);
VOID PKDeleteAllObjectPropertiesWindows (PPGPKEYSSTRUCT ppks);
VOID PKEnableAllObjectPropertiesWindows (PPGPKEYSSTRUCT ppks,
BOOL bEnable);
HWND PKSingleObjectProperties (PPGPKEYSSTRUCT ppks, PGPKeyDBObjRef obj,
PGPUInt32 uObjectType);
VOID PKRegisterPropertiesWindow (HWND hwndParent, HWND hwndChild);
// PKReconstruct.c
BOOL PKReconstructKey (PGPKEYSSTRUCT* ppks);
BOOL PKSendToReconServer (PGPKEYSSTRUCT* ppks);
// PKRevoke.c
BOOL PKRevokeKey (PGPKEYSSTRUCT* ppks);
BOOL PKRevokeCert (PGPKEYSSTRUCT* ppks);
BOOL PKAddRevoker (PGPKEYSSTRUCT* ppks);
// PKSend.c
INT PKSendShares (PGPContextRef context, HWND hwnd, PGPKeySetRef keyset);
// PKServer.c
BOOL PKSendToServer (PGPKEYSSTRUCT* ppks, UINT uServerFlags);
BOOL PKGetFromServer (PGPKEYSSTRUCT* ppks);
BOOL PKGetFromServerInternal (PGPKEYSSTRUCT* ppks,
BOOL bQueryAdd, BOOL bWarn, BOOL bGetSigners);
BOOL PKDeleteFromServer (PGPKEYSSTRUCT* ppks);
BOOL PKDisableOnServer (PGPKEYSSTRUCT* ppks);
BOOL PKAddCertificate (PGPKEYSSTRUCT* ppks);
BOOL PKRetrieveCertificate (PGPKEYSSTRUCT* ppks);
BOOL PKUpdateConfigurationFromServer (HWND hwnd, PGPKeyDBRef keydb);
// PKSplit.c
BOOL PKSplitKey (PPGPKEYSSTRUCT ppks);
BOOL PKExistSplitKeyDialog (PPGPKEYSSTRUCT ppks);
BOOL PKSplitDropKeys (PSPLITKEYSTRUCT psks, HANDLE hMem);
// PKToken.c
BOOL PKTokenProperties (PGPKEYSSTRUCT* ppks);
BOOL PKSendToToken (PGPKEYSSTRUCT* ppks);
VOID PKReloadTokenProperties (BOOL bLoadKeys);
// PKTools.c
HWND PKCreateToolbar (HWND hwndParent);
VOID PKDestroyToolbar (HWND hwndToolbar);
VOID PKGetToolbarTooltipText (LPTOOLTIPTEXT lpttt);
VOID PKSetToolbarButtonStates (PPGPKEYSSTRUCT ppks);
VOID PKGetSendToServerButtonRect (HWND hwndToolbar, LPRECT lprect);
// PKUser.c
LRESULT PKMessageBox (HWND hwnd, INT iCaption, INT iMessage, ULONG flags);
BOOL PKBackupWarn (HWND hwnd, BOOL bClosingPGPkeys, BOOL* pbBackup);
BOOL PKUserBackup (HWND hwnd, PGPKeyDBRef keydb);
VOID PKAutoBackup (PPGPKEYSSTRUCT ppks);
VOID PKHelpAbout (HWND hwnd);
VOID PKReadOnlyWarning (HWND hwnd);
VOID PKWipeEditBox (HWND hwnd, UINT uID);
BOOL PKSplitKeyWarn (HWND hwnd);
BOOL PKConstructUserID (HWND hwnd,
UINT uNameIDC, UINT uAddrIDC, LPSTR* pszUserID);
VOID PKCreateKey (HWND hwnd, PGPKeyDBRef keydb);
VOID PKKeyDBOpened (PPGPKEYSSTRUCT ppks);
VOID PKKeyDBModified (PPGPKEYSSTRUCT ppks, UINT uModIndex);
#endif /* ] Included_PGPkeysx_h */
/*__Editor_settings____
Local Variables:
tab-width: 4
End:
vi: ts=4 sw=4
vim: si
_____________________*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -