GenericCryptoObject Class Reference

Inheritance diagram for GenericCryptoObject:

Inheritance graph
[legend]
Collaboration diagram for GenericCryptoObject:

Collaboration graph
[legend]
List of all members.

Detailed Description

This class is meant to be inerhited from and provides basic searching functionality to all subclasses. The searching functionality is crucial to the Cryptoki search method


Public Member Functions

virtual ~GenericCryptoObject (void)
CK_OBJECT_HANDLE getHandle ()
CK_ATTRIBUTE * getAttribute (CK_ATTRIBUTE_TYPE type)
map< CK_ATTRIBUTE_TYPE, CK_ATTRIBUTE * > getAttributes ()
virtual CK_OBJECT_CLASS getClass ()
CK_ATTRIBUTE * matchAttribute (CK_ATTRIBUTE *attrib)
bool doAllAttribsMatch (CK_ATTRIBUTE *attributes, CK_ULONG numAttribs)

Protected Member Functions

 GenericCryptoObject ()

Protected Attributes

AttributeContainer container

Static Protected Attributes

const CK_BBOOL _TRUE = TRUE
const CK_BBOOL _FALSE = FALSE


Constructor & Destructor Documentation

GenericCryptoObject::~GenericCryptoObject void   )  [virtual]
 

Does nothing

GenericCryptoObject::GenericCryptoObject  )  [protected]
 

Only allows construction by subclasses


Member Function Documentation

CK_OBJECT_HANDLE GenericCryptoObject::getHandle  )  [virtual]
 

Returns:
the handle to this object that CRYPTOKI will use

Implements CryptoObject.

CK_ATTRIBUTE * GenericCryptoObject::getAttribute CK_ATTRIBUTE_TYPE  type  )  [virtual]
 

Parameters:
type the attribute type we are looking for
Returns:
the attribute struct for the type specified, null if not found

Implements CryptoObject.

map< CK_ATTRIBUTE_TYPE, CK_ATTRIBUTE * > GenericCryptoObject::getAttributes  )  [virtual]
 

Returns:
a map of all attributes for this object

Implements CryptoObject.

CK_OBJECT_CLASS GenericCryptoObject::getClass  )  [virtual]
 

Returns:
the cryptoki class type for this object. Will vary by subtype.
See also:
pkcs11t.h

Implements CryptoObject.

Reimplemented in CardCapabilityContainer, FingerPrintObject, Key, PivMechanism, PrivateKey, PublicKey, and X509Certificate.

CK_ATTRIBUTE * GenericCryptoObject::matchAttribute CK_ATTRIBUTE *  attrib  )  [virtual]
 

Parameters:
attrib a single attribute to check for in this object
Returns:
a pointer to the attribute struct if it exists. NULL if it doesn't

Implements CryptoObject.

bool GenericCryptoObject::doAllAttribsMatch CK_ATTRIBUTE *  attributes,
CK_ULONG  numAttribs
[virtual]
 

Parameters:
attributes an array of attributes to match
numAttribs the number of attributes in the array
Returns:
true if 'this' object contains all the attributes in 'attributes'

Implements CryptoObject.


Member Data Documentation

const CK_BBOOL GenericCryptoObject::_TRUE = TRUE [static, protected]
 

a constant so that I don't repeatedly have to use declare variables and then set them true

const CK_BBOOL GenericCryptoObject::_FALSE = FALSE [static, protected]
 

a constant so that I don't repeatedly have to use declare variables and then set them true

AttributeContainer GenericCryptoObject::container [protected]
 

contains all of our attributes. I think that the STL has a multimap object that might have worked


Generated on Fri Jan 12 15:48:44 2007 for NIST_PKCS11 by doxygen 1.3.1 using KingsTools