Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   Related Pages  

CODEX_ASN1::Base Class Reference

This is the base class for all serializable objects. More...

#include <Base.h>

Inheritance diagram for CODEX_ASN1::Base:

Inheritance graph
[legend]
List of all members.

Public Methods

 Base (bool initialized)
 
Parameters:
initialized  Does this object hold data yet?


virtual ~Base ()
 Destructor.

virtual int marshal (unsigned char **pp) const=0
 This function creates a serialized representation of the object, which is returned through the argument pp.

virtual void * unmarshal (void *bogus, unsigned char **pp, long length)=0
 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 is the base class for all serializable objects.

Definition at line 139 of file Base.h.


Member Function Documentation

bool CODEX_ASN1::Base::initialized   const [inline]
 

Returns:
Has this object been initialized?

Definition at line 172 of file Base.h.

References m_initialized.

Referenced by CODEX_APSS::SecretManagement::addComputeMsg(), CODEX_APSS::SecretManagement::addComputeResponse(), CODEX_APSS::SecretManagement::addEstablishMsg(), CODEX_APSS::SecretManagement::addEstablishResponse(), CODEX_APSS::SecretManagement::addInitMsg(), CODEX_APSS::SecretManagement::addInitResponse(), CODEX_APSS::SecretManagement::addSharing(), CODEX_APSS::SecretManagement::addSubsharing(), CODEX_Server::ServerState::caKey(), CODEX_VSS::Combinatoric< NumT, ThreshT >::count(), CODEX_Client::Client::createKey(), 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::ShareLabel< _ShareType, _OneWay >::marshal(), CODEX_VSS::ModExpFunctionalArgs::marshal(), CODEX_VSS::Combinatoric< NumT, ThreshT >::marshal(), CODEX_Client::Message::Message(), CODEX_APSS::Message::Message(), CODEX_KeyService::SignWriteCallback::operator()(), CODEX_KeyService::SignReadCallback::operator()(), CODEX_KeyService::SignCreateCallback::operator()(), CODEX_VSS::ModExpFunctional::operator()(), CODEX_APSS::InitCallback::operator()(), CODEX_KeyService::ClientReadCallback::operator()(), CODEX_KeyService::ClientCreateCallback::operator()(), CODEX_VSS::Combinatoric< NumT, ThreshT >::operator+=(), CODEX_Server::InternalVerifier::processRequest(), CODEX_Server::ServerState::publicKey(), CODEX_Server::ServerState::readElGamalShares(), CODEX_Client::Client::readKey(), CODEX_Server::ServerState::readRSAShares(), CODEX_Ciphers::RSAPlaintextPK::RSAPlaintextPK(), CODEX_Server::ServerState::serviceKey(), CODEX_Server::ServerState::setEGShareCallback(), CODEX_Server::ServerState::setRSAShareCallback(), CODEX_Ciphers::RSAPlaintextPK::verify(), CODEX_Ciphers::RSAPublicKey::verifySignature(), and CODEX_Client::Client::writeKey().

virtual int CODEX_ASN1::Base::marshal unsigned char **    pp const [pure 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

Implemented in CODEX_APSS::SignedMessage< MT, ST >, CODEX_APSS::InitMsg, CODEX_APSS::EstablishMsg, CODEX_APSS::EstablishedMsg, CODEX_APSS::ContributeMsg, CODEX_APSS::ComputeMsg, CODEX_APSS::ComputedMsg, CODEX_APSS::FinishedMsg, CODEX_APSS::RecoverMsg, CODEX_APSS::RecoveredMsg, CODEX_ASN1::Array< T >, CODEX_ASN1::BigNumber, CODEX_ASN1::Certificate, CODEX_ASN1::Integer, CODEX_ASN1::OctetString, CODEX_Ciphers::Credentials, CODEX_Ciphers::ElGamalCipherText, CODEX_Ciphers::ElGamalSchnorrCipherText, CODEX_Ciphers::ElGamalSignature, CODEX_Ciphers::ElGamalPublicKey, CODEX_Ciphers::PolCredBase, CODEX_Ciphers::Policy, CODEX_Ciphers::RSAPublicKey, CODEX_Ciphers::RSAPrivateKey, CODEX_Ciphers::RSAPlaintextPK, CODEX_Ciphers::TranslationCertificate, CODEX_Ciphers::VarRSACipherText, CODEX_Ciphers::VarRSABlindCipherText, CODEX_Ciphers::VarRSABlindPlainText, CODEX_Client::SignedMessage< MT, ST >, CODEX_Client::RequestKeyMsg, CODEX_Client::CreateKeyMsg, CODEX_Client::BoundNameMsg, CODEX_Client::WriteKeyMsg, CODEX_Client::KeyStoredMsg, CODEX_Client::ReadKeyMsg, CODEX_Client::BlindKeyMsg, CODEX_KeyService::KeyInfo, CODEX_KeyService::SupportedClientResponse< RespT, ReqT >, CODEX_KeyService::SupportedKeyStoredMsg, CODEX_KeyService::VerifiableBlindKeyMsg, CODEX_Server::AugmentedEGPublicKey, CODEX_Server::SignedAugmentedEGPublicKey, CODEX_Server::ServerSignature, CODEX_ThresholdCrypto::DLProof, CODEX_VSS::Combinatoric< NumT, ThreshT >, CODEX_VSS::ModExpFunctionalArgs, CODEX_VSS::ShareLabel< _ShareType, _OneWay >, CODEX_VSS::LabeledShare< _ShareType, _OneWay >, CODEX_VSS::SecretWitness< _ShareType, _OneWay >, CODEX_VSS::SubshareLabel< _ShareLabel >, CODEX_ASN1::Array< SignedComputedMsg >, CODEX_ASN1::Array< SignedEstablishedMsg >, CODEX_ASN1::Array< CODEX_Server::ServerSignature >, CODEX_ASN1::Array< CODEX_ASN1::BigNumber >, CODEX_VSS::Combinatoric< nServers, nFaults+1 >, CODEX_VSS::LabeledShare< ShareType, OneWay >, CODEX_VSS::SecretWitness< ShareType, OneWay >, and CODEX_VSS::SubshareLabel< LabelType >.

Referenced by CODEX_Client::Client::contactServer(), CODEX_Client::Message::digest(), CODEX_APSS::Message::digest(), CODEX_Ciphers::ElGamalPublicKey::encryptS(), CODEX_Ciphers::RSAPlaintextPK::RSAPlaintextPK(), CODEX_Ciphers::RSAPlaintextPK::verify(), and CODEX_Ciphers::ElGamalSchnorrCipherText::verify().

virtual void* CODEX_ASN1::Base::unmarshal void *    bogus,
unsigned char **    pp,
long    length
[pure 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

Implemented in CODEX_APSS::SignedMessage< MT, ST >, CODEX_APSS::InitMsg, CODEX_APSS::EstablishMsg, CODEX_APSS::EstablishedMsg, CODEX_APSS::ContributeMsg, CODEX_APSS::ComputeMsg, CODEX_APSS::ComputedMsg, CODEX_APSS::FinishedMsg, CODEX_APSS::RecoverMsg, CODEX_APSS::RecoveredMsg, CODEX_ASN1::Array< T >, CODEX_ASN1::BigNumber, CODEX_ASN1::Certificate, CODEX_ASN1::Integer, CODEX_ASN1::OctetString, CODEX_Ciphers::Credentials, CODEX_Ciphers::ElGamalCipherText, CODEX_Ciphers::ElGamalSchnorrCipherText, CODEX_Ciphers::ElGamalSignature, CODEX_Ciphers::ElGamalPublicKey, CODEX_Ciphers::PolCredBase, CODEX_Ciphers::Policy, CODEX_Ciphers::RSAPublicKey, CODEX_Ciphers::RSAPrivateKey, CODEX_Ciphers::RSAPlaintextPK, CODEX_Ciphers::TranslationCertificate, CODEX_Ciphers::VarRSACipherText, CODEX_Ciphers::VarRSABlindCipherText, CODEX_Ciphers::VarRSABlindPlainText, CODEX_Client::SignedMessage< MT, ST >, CODEX_Client::RequestKeyMsg, CODEX_Client::CreateKeyMsg, CODEX_Client::BoundNameMsg, CODEX_Client::WriteKeyMsg, CODEX_Client::KeyStoredMsg, CODEX_Client::ReadKeyMsg, CODEX_Client::BlindKeyMsg, CODEX_KeyService::KeyInfo, CODEX_KeyService::SupportedClientResponse< RespT, ReqT >, CODEX_KeyService::SupportedKeyStoredMsg, CODEX_KeyService::VerifiableBlindKeyMsg, CODEX_Server::AugmentedEGPublicKey, CODEX_Server::SignedAugmentedEGPublicKey, CODEX_Server::ServerSignature, CODEX_ThresholdCrypto::DLProof, CODEX_VSS::Combinatoric< NumT, ThreshT >, CODEX_VSS::ModExpFunctionalArgs, CODEX_VSS::ShareLabel< _ShareType, _OneWay >, CODEX_VSS::LabeledShare< _ShareType, _OneWay >, CODEX_VSS::SecretWitness< _ShareType, _OneWay >, CODEX_VSS::SubshareLabel< _ShareLabel >, CODEX_ASN1::Array< SignedComputedMsg >, CODEX_ASN1::Array< SignedEstablishedMsg >, CODEX_ASN1::Array< CODEX_Server::ServerSignature >, CODEX_ASN1::Array< CODEX_ASN1::BigNumber >, CODEX_VSS::Combinatoric< nServers, nFaults+1 >, CODEX_VSS::LabeledShare< ShareType, OneWay >, CODEX_VSS::SecretWitness< ShareType, OneWay >, and CODEX_VSS::SubshareLabel< LabelType >.


The documentation for this class was generated from the following files:
Generated on Wed Jun 2 16:33:03 2004 for COrnell Data EXchange (CODEX) by doxygen1.2.18