store headers only once, refs #7
This commit is contained in:
62
actlibrary/include/actJCAppletReg.h
Normal file
62
actlibrary/include/actJCAppletReg.h
Normal file
@@ -0,0 +1,62 @@
|
||||
// ---------------------------------------------------------------------------
|
||||
// Name: actAppletReg.h
|
||||
// Product: cv act library
|
||||
// Purpose: registry for factory functions to create JavaCardApplet object
|
||||
//
|
||||
// Copyright: (c) 2002 cv cryptovision GmbH
|
||||
// all rights reserved
|
||||
// Licence: The conditions for the use of this software are regulated
|
||||
// in the cv act library licence agreement.
|
||||
//
|
||||
// Autor:
|
||||
// Date: 02/10/2003
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
#ifndef ACT_AppletReg_h
|
||||
#define ACT_AppletReg_h
|
||||
|
||||
#ifdef _MSC_VER
|
||||
#pragma warning (disable:4786)
|
||||
#endif
|
||||
|
||||
namespace act
|
||||
{
|
||||
class JavaCardOS;
|
||||
class IToken;
|
||||
class Blob;
|
||||
|
||||
typedef IToken* (*CreateJCardAppletPtr)(JavaCardOS*, const Blob& aid);
|
||||
typedef bool (*CheckJCardAppletPtr)(JavaCardOS*, const Blob& aid);
|
||||
|
||||
struct JCardAppletEntry
|
||||
{
|
||||
const char* hexid;
|
||||
CheckJCardAppletPtr CheckPtr;
|
||||
CreateJCardAppletPtr CreatePtr;
|
||||
int keys;
|
||||
int certs;
|
||||
int auth_objs;
|
||||
};
|
||||
|
||||
struct JCardAppletInfoEntry
|
||||
{
|
||||
int keys;
|
||||
int certs;
|
||||
int auth_objs;
|
||||
};
|
||||
|
||||
class JCardAppletReg
|
||||
{
|
||||
public:
|
||||
static IToken* CreateJCardApplet(JavaCardOS* os, const Blob& aid);
|
||||
static JCardAppletInfoEntry GetJCardAppletInfo(JavaCardOS* os, const Blob& aid);
|
||||
static bool IsJCardApplet(JavaCardOS* os, const Blob& aid);
|
||||
|
||||
static void Insert(const JCardAppletEntry* entry);
|
||||
static void Insert(const char* id, CheckJCardAppletPtr checkptr, CreateJCardAppletPtr createptr,
|
||||
int keys = -1, int auth_objs = -1, int certs = -1);
|
||||
};
|
||||
|
||||
} // namespace act
|
||||
|
||||
#endif // ACT_AppletReg_h
|
Reference in New Issue
Block a user