A simple Qt based browser with no bullshit that supports PKCS#11 tokens (such as the SuisseID).
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

63 lines
1.6 KiB

// ---------------------------------------------------------------------------
// 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