windows-nt/Source/XPSP1/NT/ds/security/csps/gemsafe/gpkcsp/gpkgui.h

249 lines
7.9 KiB
C
Raw Normal View History

2020-09-26 03:20:57 -05:00
/*******************************************************************************
* Copyright (C) 1997 Gemplus International All Rights Reserved
*
* Name : GPKGUI.H
*
* Description : GUI used by Cryptographic Service Provider for GPK Card.
*
Author : Laurent CASSIER (1.0), Francois Jacques (2.0)
Compiler : Microsoft Visual C 6.0
Host : IBM PC and compatible machines under Windows 32 bit
* Release : 2.00.000
*
* Last Modif. : 15/04/99: V2.00.000 - International support, merged PKCS11/CSP UI
* 02/11/97: V1.00.002 - Separate code from GpkCsp Code.
* 27/08/97: V1.00.001 - Begin implementation based on CSP kit.
*
********************************************************************************
*
* Warning :
*
* Remark :
*
*******************************************************************************/
/*------------------------------------------------------------------------------
Name definition:
_GPKGUI_H is used to avoid multiple inclusion.
------------------------------------------------------------------------------*/
#ifndef _GPKGUI_H
#define _GPKGUI_H
#ifdef __cplusplus
extern "C" {
#endif
/*-----------------------------------------------------------------------------
Global Variable and Declaration for PIN an Progress DialogBox management
------------------------------------------------------------------------------*/
#define PIN_MAX (8)
#define PIN_MIN (4) // [JMR 02-04]
#define MAX_STRING MAX_PATH
#define MAX_REAL_KEY (16)
#define ACCEPT_CONTAINER (1)
#define ABORT_OPERATION (2)
extern HINSTANCE g_hInstMod;
extern HINSTANCE g_hInstRes;
extern HWND g_hMainWnd;
/* PIN DialogBox */
extern char szGpkPin[PIN_MAX+2]; // [JMR 02-04]
extern DWORD dwGpkPinLen;
extern char szGpkNewPin[PIN_MAX+2]; // [JMR 02-04]
extern WORD wGpkNewPinLen;
extern BOOL bChangePin;
//extern BOOL bAdmPin;
extern BOOL NoDisplay;
extern BOOL bNewPin;
extern BOOL bHideChange;
extern BOOL bUnblockPin;
extern BOOL bUser;
/* ProgressText DialogBox */
/* FJ: changed char to TCHAR
extern char szProgTitle[256];
extern char szProgText[256];
*/
extern TCHAR szProgTitle[MAX_STRING];
extern TCHAR szProgText[MAX_STRING];
extern BOOL IsProgButtonClick;
extern HWND hProgressDlg;
extern FARPROC lpProgressDlg;
extern HCURSOR hCursor, hCursor2;
void DisplayMessage( LPTSTR szMsg, LPTSTR szCaption, void* pValue);
/*------------------------------------------------------------------------------
Functions for PIN (User and SO) Dialog Box Management
------------------------------------------------------------------------------*/
LRESULT WINAPI PinDlgProc(HWND hDlg,
UINT message,
WPARAM wParam,
LPARAM lParam);
//#ifdef _GPKCSP
/*------------------------------------------------------------------------------
Functions for Container Dialogue Management
------------------------------------------------------------------------------*/
LRESULT WINAPI ContDlgProc(HWND hDlg,
UINT message,
WPARAM wParam,
LPARAM lParam);
//#endif /* _GPKCSP */
/*------------------------------------------------------------------------------
Functions for Key Dialog Box Management
------------------------------------------------------------------------------*/
LRESULT WINAPI KeyDlgProc (HWND hDlg,
UINT message,
WPARAM wParam,
LPARAM lParam);
/*------------------------------------------------------------------------------
Functions for Progress Dialog Box Management
------------------------------------------------------------------------------*/
/*******************************************************************************
* void Wait (DWORD ulStep,
* DWORD ulMaxStep,
* DWORD ulSecond)
*
* Description : Change Progress Box Text.
*
* Remarks : Nothing.
*
* In : ulStep = Current step number.
* ulMaxStep = Maximum step number.
* ulSecond =
*
* Out : Nothing.
*
* Response : Nothing.
*
*******************************************************************************/
void Wait(DWORD ulStep,
DWORD ulMaxStep,
DWORD ulSecond
);
/*******************************************************************************/
void ShowProgressWrapper(WORD wKeySize);
/*******************************************************************************/
void ChangeProgressWrapper(DWORD dwTime);
/*******************************************************************************
* void ShowProgress (HWND hWnd,
* LPTSTR lpstrTitle,
* LPTSTR lpstrText,
* LPTSTR lpstrButton
* )
*
* Description : Initialize Progress dialog box CALLBACK.
*
* Remarks : If lpstrButton is null, then don't display cancel button
*
* In : hWnd = Handle of parent window.
* lpstrTitle = Pointer to Title of dialog box.
* lpstrText = Pointer to Text of dialog box.
* lpstrButton = Pointer to Text of button.
*
* Out : Nothing.
*
* Response : Nothing.
*
*******************************************************************************/
void ShowProgress (HWND hWnd,
LPTSTR lpstrTitle,
LPTSTR lpstrText,
LPTSTR lpstrButton
);
/*******************************************************************************
* void ChangeProgressText (LPTSTR lpstrText)
*
* Description : Change Progress Box Text.
*
* Remarks : Nothing.
*
* In : lpstrText = Pointer to Text of dialog box.
*
* Out : Nothing.
*
* Response : Nothing.
*
*******************************************************************************/
void ChangeProgressText (LPTSTR lpstrText);
/*******************************************************************************
* void DestroyProgress (void)
*
* Description : Destroy Progress dialog box CALLBACK.
*
* Remarks : Nothing.
*
* In : Nothing.
*
* Out : Nothing.
*
* Response : Nothing.
*
*******************************************************************************/
void DestroyProgress (void);
/*******************************************************************************
* BOOL EXPORT CALLBACK ProgressDlgProc(HWND hDlg,
* UINT message,
* WPARAM wParam,
* LPARAM lParam
* )
*
* Description : CALLBACK for management of Progess Dialog Box.
*
* Remarks : Nothing.
*
* In : hDlg = Window handle.
* message = Type of message.
* wParam = Word message-specific information.
* lParam = Long message-specific information.
*
* Out : Nothing.
*
* Responses : If everything is OK :
* G_OK
* If an condition error is raised:
*
*******************************************************************************/
CALLBACK ProgressDlgProc(HWND hDlg,
UINT message,
WPARAM wParam,
LPARAM lParam
);
/*******************************************************************************
Functions for setting cursor in wait mode
*******************************************************************************/
void BeginWait(void);
void EndWait(void);
#ifdef __cplusplus
}
#endif
#endif