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.

61 lines
1.6 KiB

// ---------------------------------------------------------------------------
// Name: actITokenConfig.h
// Product: cv act library
// Purpose: IToken configuration.
//
// Copyright: (c) 2008 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: Markus Tesche
// Date: 11/07/2008
// ---------------------------------------------------------------------------
#ifndef ACT_ITokenConfig_h
#define ACT_ITokenConfig_h
#include "actIParam.h"
#include "actIRefCounted.h"
namespace act
{
class ISCardOS;
class IToken;
class ITokenPIN;
class ITokenAuth;
class ITokenKey;
class ITokenBlockCipher;
class ITokenBlockCipherKey;
class ITokenFileMap;
class ITokenFileCache;
//
// ITokenConfig
class ITokenConfig
: public IParam
, virtual public IRefCounted
{
public:
virtual ITokenConfig* Clone() const = 0;
// Individual card detection
virtual bool IsSupported(ISCardOS* os) const = 0;
// Configures the token, if fails throws an Exception
virtual void Configure(IToken* token) const = 0;
virtual void Configure(ITokenPIN* auth_obj) const = 0;
virtual void Configure(ITokenKey* key) const = 0;
virtual void Configure(ITokenBlockCipher* cipher) const = 0;
virtual void Configure(ITokenBlockCipherKey* key) const = 0;
// Factory's for token helper objects
virtual ITokenAuth* CreateAuth(IToken* token) = 0;
virtual ITokenFileMap* CreateFileMap(const IToken* token) = 0;
virtual ITokenFileCache* CreateFileCache(IToken* token) = 0;
};
} // namespace act
#endif // ACT_ITokenConfig_h