Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

CODEX_Ciphers::Policy Class Reference

This class is used to express an access policy. More...

#include <Policy.h>

Inheritance diagram for CODEX_Ciphers::Policy:

Inheritance graph
[legend]
Collaboration diagram for CODEX_Ciphers::Policy:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 Policy ()
 Default constructor, for creating an object to be unmarshalled.
 Policy (const Policy &aPol)
 Create Policy from other Policy.
virtual ~Policy ()
 Virtual destructor.
void operator= (const Policy &aPol)
 Assignment operator.
bool verify (const Credentials &credentials) const
 Verify that a Credentials object satisfies the policy.
int marshal (unsigned char **pp) const
 This function creates a serialized representation of the object, which is returned through the argument pp.
void * unmarshal (void *bogus, unsigned char **pp, long length)
 This function takes a serialized representation of the object and recreates the object representation.
bool initialized () const

Protected Attributes

bool m_initialized
 Has this object been initialized yet, or is it still blank?

Detailed Description

This class is used to express an access policy.

The current version of this class is a trivial acceptance of any Credentials. It is designed to provide an interface for a mechanism such as SDSI or KeyNote.

Deprecated:
Access rights are granted by a private key operation, and this class holds the corresponding public key used to verify that the rights have been granted. The public key is signed by another authority, such as the owner of the access-controlled data.

Definition at line 38 of file Policy.h.


Member Function Documentation

bool CODEX_ASN1::Base::initialized  )  const [inline, inherited]
 

Returns:
Has this object been initialized?

Definition at line 175 of file Base.h.

References CODEX_ASN1::Base::m_initialized.

Referenced by CODEX_APSS::SecretManagement::addComputeMsg(), CODEX_APSS::SecretManagement::addEstablishMsg(), CODEX_APSS::SecretManagement::addEstablishResponse(), CODEX_APSS::SecretManagement::addInitMsg(), CODEX_APSS::SecretManagement::addSharing(), CODEX_APSS::SecretManagement::addSubsharing(), CODEX_VSS::Combinatoric< NumT, ThreshT >::apply(), CODEX_Server::ServerState::caKey(), CODEX_KeyService::ClientCreateCallback::ClientCreateCallback(), CODEX_VSS::Combinatoric< NumT, ThreshT >::count(), CODEX_Server::QuorumBuilderAct::handler(), CODEX_APSS::MessageVerifier::handler(), CODEX_KeyService::DelegateResponseVerifier::handler(), CODEX_KeyService::DelegateRequestDistributor::handler(), CODEX_KeyService::ClientMessageVerifier::handler(), CODEX_KeyService::ClientMessageSigner::handler(), CODEX_VSS::SubshareLabel< LabelType >::marshal(), CODEX_KeyService::KeyInfo::marshal(), CODEX_VSS::LabeledShare< ShareType, OneWay >::marshal(), CODEX_VSS::ShareLabel< _ShareType, _OneWay >::marshal(), CODEX_VSS::ModExpFunctionalArgs::marshal(), CODEX_VSS::Combinatoric< NumT, ThreshT >::marshal(), CODEX_KeyService::SignWriteCallback::operator()(), CODEX_KeyService::SignReadCallback::operator()(), CODEX_KeyService::SignCreateCallback::operator()(), CODEX_VSS::ModExpFunctional::operator()(), CODEX_KeyService::ClientReadCallback::operator()(), CODEX_KeyService::ClientCreateCallback::operator()(), CODEX_VSS::Combinatoric< NumT, ThreshT >::operator+=(), CODEX_Server::ServerState::readElGamalShares(), CODEX_VSS::Combinatoric< NumT, ThreshT >::recover(), CODEX_APSS::SecretManagement::sendFinished(), CODEX_Server::ServerState::serviceKey(), CODEX_Server::ServerState::setEGShareCallback(), and CODEX_Server::ServerState::setRSAShareCallback().

int Policy::marshal unsigned char **  pp  )  const [virtual]
 

This function creates a serialized representation of the object, which is returned through the argument pp.

This must be overridden by the concrete derived class.

Parameters:
pp Serialized form of the object
Returns:
Length of the marshalled data

Implements CODEX_ASN1::Base.

Definition at line 60 of file Policy.cc.

Referenced by CODEX_Client::Interface::codex_create_policy(), CODEX_Client::Interface::codex_parse_binding(), and CODEX_Client::CreateKeyMsg::marshal().

void * Policy::unmarshal void *  bogus,
unsigned char **  pp,
long  length
[virtual]
 

This function takes a serialized representation of the object and recreates the object representation.

This must be overridden by the concrete derived class.

Parameters:
bogus Included for compatibility with OpenSSL ASN.1 macros
pp Serialized form of the data
length Number of bytes of pp to unmarshal
Returns:
success or failure of the unmarshalling

Implements CODEX_ASN1::Base.

Definition at line 66 of file Policy.cc.

Referenced by CODEX_Client::Interface::codex_create_key(), CODEX_Client::Client::createPolicy(), and CODEX_Client::CreateKeyMsg::unmarshal().

bool Policy::verify const Credentials credentials  )  const
 

Verify that a Credentials object satisfies the policy.

Parameters:
credentials The credentials presented.
Return values:
true if the Credentials satisfy this Policy
false if the Credentials do not satisfy this Policy

Definition at line 54 of file Policy.cc.

Referenced by CODEX_KeyService::ClientMessageVerifier::handler().


The documentation for this class was generated from the following files:
Generated on Fri May 6 17:41:52 2005 for COrnell Data EXchange (CODEX) by  doxygen 1.4.1