IPKIFScvpClient Class Reference

#include <IPKIFScvpClient.h>

Inheritance diagram for IPKIFScvpClient:

Inheritance graph
[legend]
Collaboration diagram for IPKIFScvpClient:

Collaboration graph
[legend]

List of all members.


Detailed Description

This class serves as a base class for the classes that implement SCVP support in terms of IPKIFColleagues aggregated by the CPKIFPathProcessingMediator2. All functions are virtual, but an implementation has been provided for each.

TSP-enforcing: No

Definition at line 40 of file IPKIFScvpClient.h.


Public Member Functions

 IPKIFScvpClient (void)
virtual ~IPKIFScvpClient (void)
virtual void SetResponderUrl (const char *url)
virtual const char * GetResponderUrl () const
virtual void SetGenerateNonce (bool b)
virtual bool GetGenerateNonce () const
virtual void SetRequireNonceMatch (bool bRequireNonceMatch)
virtual bool GetRequireNonceMatch ()
virtual void SetRequireSignedDPD (bool b)
virtual bool GetRequireSignedDPD () const
virtual void SetWantBacks (CPKIFOIDListPtr &wantBack)
virtual CPKIFOIDListPtr GetWantBacks () const
virtual void SetEvidenceRecordVerifier (CPKIFEvidenceRecordVerifierPtr &erv)
virtual
CPKIFEvidenceRecordVerifierPtr 
GetEvidenceRecordVerifier () const
virtual CPKIFContentInfoPtr FetchValPol ()
virtual void SetValPol (CPKIFContentInfoPtr &vp)
virtual CPKIFContentInfoPtr GetValPol () const
CPKIFValPolResponsePtr VerifyValPol ()
virtual void SetFetchValPolWhenLoading (bool b)
virtual bool GetFetchValPolWhenLoading () const
CPKIFOIDPtr GetValidationPolicy () const
void SetValidationPolicy (CPKIFOIDPtr &valPol)
virtual void SetSigningCredential (CPKIFCredentialPtr &cred)
virtual CPKIFCredentialPtr GetSigningCredential () const
virtual void AddNamespace (CPKIFGeneralSubtreePtr &name)
virtual CPKIFGeneralSubtreeList GetNamespaces ()
bool CheckNamespaces (const CPKIFCertificatePtr &cert)
virtual void SetMediator (IPKIFMediatorPtr &m)
virtual IPKIFMediatorPtr GetMediator () const
virtual void SetPathSettings (CPKIFPathSettingsPtr &settings)
virtual CPKIFPathSettingsPtr GetPathSettings () const
virtual void SetPathSettingsForValPol (CPKIFPathSettingsPtr &settings)
virtual CPKIFPathSettingsPtr GetPathSettingsForValPol () const
virtual void SetWantBacksFromResponse (CPKIFReplyWantBack_ExtDataHandlerPtr &wantBacks)
virtual
CPKIFReplyWantBack_ExtDataHandlerPtr 
GetWantBacksFromResponse () const

Constructor & Destructor Documentation

IPKIFScvpClient::IPKIFScvpClient ( void   ) 

Interface: External

Default constructor for IPKIFScvpClient.

Returns:
None

Definition at line 140 of file IPKIFScvpClient.cpp.

IPKIFScvpClient::~IPKIFScvpClient ( void   )  [virtual]

Interface: External

Default destructor for IPKIFScvpClient.

Returns:
None

Definition at line 151 of file IPKIFScvpClient.cpp.


Member Function Documentation

void IPKIFScvpClient::SetResponderUrl ( const char *  url  )  [virtual]

Interface: External

Sets the HTTP URL to which SCVP requests are posted.

Returns:
None

Definition at line 169 of file IPKIFScvpClient.cpp.

Referenced by LoadPathProcessingComponents().

const char * IPKIFScvpClient::GetResponderUrl (  )  const [virtual]

Interface: External

Returns the HTTP URL to which SCVP requests are posted.

Returns:
const char* to buffer that lives until IPKIFScvpClient is destroyed or SetURL is called

Definition at line 181 of file IPKIFScvpClient.cpp.

Referenced by CPKIFScvpPathBuildAndValidate::BuildAndValidatePath(), CPKIFScvpPathBuild::BuildPath(), FetchValPol(), and SavePathProcessingComponents().

void IPKIFScvpClient::SetGenerateNonce ( bool  b  )  [virtual]

Interface: External

Get the instruction that determines is a request includes a nonce. The default value is false.

Returns:
None

Definition at line 268 of file IPKIFScvpClient.cpp.

Referenced by LoadPathProcessingComponents().

bool IPKIFScvpClient::GetGenerateNonce (  )  const [virtual]

Interface: External

Set the instruction that determines is a request includes a nonce. The default value is false.

Returns:
bool

Definition at line 280 of file IPKIFScvpClient.cpp.

Referenced by CPKIFScvpPathBuildAndValidate::BuildAndValidatePath(), CPKIFScvpPathBuild::BuildPath(), FetchValPol(), MakeQueryForPath(), and SavePathProcessingComponents().

void IPKIFScvpClient::SetRequireNonceMatch ( bool  bRequireNonceMatch  )  [virtual]

Interface: External

Set the instruction that determines if a nonce match is required. The default value is true.

Returns:
None

Definition at line 292 of file IPKIFScvpClient.cpp.

Referenced by LoadPathProcessingComponents().

bool IPKIFScvpClient::GetRequireNonceMatch (  )  [virtual]

Interface: External

Get the instruction that determines if a nonce match is required. The default value is true.

Returns:
bool

Definition at line 304 of file IPKIFScvpClient.cpp.

Referenced by MakeQueryForPath(), and SavePathProcessingComponents().

void IPKIFScvpClient::SetRequireSignedDPD ( bool  b  )  [virtual]

Interface: External

Set the instruction that determines if DPD requests require a signature. The default value is false.

Returns:
None

Definition at line 316 of file IPKIFScvpClient.cpp.

Referenced by LoadPathProcessingComponents().

bool IPKIFScvpClient::GetRequireSignedDPD (  )  const [virtual]

Interface: External

Get the instruction that determines if DPD requests require a signature. The default value is false.

Returns:
bool

Definition at line 328 of file IPKIFScvpClient.cpp.

Referenced by MakeQueryForPath(), SavePathProcessingComponents(), and VerifyResponseSignature().

void IPKIFScvpClient::SetWantBacks ( CPKIFOIDListPtr &  wantBack  )  [virtual]

Interface: External

Set the list of wantBacks that are included in a CVRequest.

Returns:
None

Definition at line 217 of file IPKIFScvpClient.cpp.

Referenced by LoadPathProcessingComponents().

CPKIFOIDListPtr IPKIFScvpClient::GetWantBacks (  )  const [virtual]

Interface: External

Get the list of wantBacks that are included in a CVRequest.

Returns:
CPKIFOIDListPtr

Definition at line 232 of file IPKIFScvpClient.cpp.

Referenced by MakeQueryForPath(), and SavePathProcessingComponents().

void IPKIFScvpClient::SetEvidenceRecordVerifier ( CPKIFEvidenceRecordVerifierPtr &  erv  )  [virtual]

Interface: External

Set the evidence record verifier.

Returns:
None

Definition at line 244 of file IPKIFScvpClient.cpp.

Referenced by LoadPathProcessingComponents().

CPKIFEvidenceRecordVerifierPtr IPKIFScvpClient::GetEvidenceRecordVerifier (  )  const [virtual]

Interface: External

Get the evidence record verifier.

Returns:
None

Definition at line 256 of file IPKIFScvpClient.cpp.

Referenced by SavePathProcessingComponents(), VerifyCertPathWB_ER(), VerifyPartialPathWB_ER(), VerifyPKCCertWB_ER(), and VerifyRevInfoWB_ER().

CPKIFContentInfoPtr IPKIFScvpClient::FetchValPol (  )  [virtual]

Interface: External

FetchValPol will request send a val pol request to the responder and store the result via a call to SetValPol. It returns the result of GetValPol, which will be a NULL CPKIFContentInfoPtr if the fetch operation fails. This function DOES NOT verify the validation policy response. The caller can do that.

Returns:
CPKIFContentInfoPtr

Definition at line 556 of file IPKIFScvpClient.cpp.

References CPKIFContentInfo::Encode(), CPKIFValPolRequest::Encode(), g_id_ct_scvp_valPolRequest, GetGenerateNonce(), GetResponderUrl(), GetValPol(), PKIF_SCVP_VAL_POL, PostRequestURL(), CPKIFContentInfo::SetContent(), CPKIFContentInfo::SetContentType(), CPKIFValPolRequest::SetGenerateNonce(), and SetValPol().

Referenced by CertPathWantBackToResultsAndStores(), and CertPathWantBackToResultsAndStoresForDpd().

void IPKIFScvpClient::SetValPol ( CPKIFContentInfoPtr &  vp  )  [virtual]

Interface: External

Set the current val pol response.

Returns:
None

Definition at line 465 of file IPKIFScvpClient.cpp.

Referenced by FetchValPol(), and LoadPathProcessingComponents().

CPKIFContentInfoPtr IPKIFScvpClient::GetValPol (  )  const [virtual]

Interface: External

Get the current val pol response.

Returns:
CPKIFContentInfoPtr

Definition at line 481 of file IPKIFScvpClient.cpp.

Referenced by CertPathWantBackToResultsAndStores(), CertPathWantBackToResultsAndStoresForDpd(), FetchValPol(), PrepareCustomValidationPolicyIfNecessary(), and SavePathProcessingComponents().

CPKIFValPolResponsePtr IPKIFScvpClient::VerifyValPol (  ) 

Interface: External

VerifyValPol verifies the SignedData object inside the ContentInfo passed to SetValPol using the mediator set and path settings passed to SetMediator and SetPathSettings. If SignedData verification is successful, the ValPolResponse payload is parsed and returned.

The parsed val pol response is cached following verification, so repeated calls to this function do not require repeated verification. The cached val pol is cleared when SetValPol is called.

Returns:
CPKIFContentInfoPtr

Definition at line 507 of file IPKIFScvpClient.cpp.

References CPKIFSignedData::AddMediator(), COMMON_INVALID_INPUT, CPKIFSignedData::Decode(), g_id_ct_scvp_valPolResponse, g_signedData, CPKIFSignedData::GetEncapsulatedContent(), CPKIFSignedData::SetPathSettings(), TOOLKIT_SCVP_SUBCOMPONENT, and CPKIFSignedData::Verify().

Referenced by CertPathWantBackToResultsAndStores(), CertPathWantBackToResultsAndStoresForDpd(), and PrepareCustomValidationPolicyIfNecessary().

void IPKIFScvpClient::SetFetchValPolWhenLoading ( bool  b  )  [virtual]

Interface: External

Set the instruction that determines if a validation policy is retrieved when SCVP is loaded. The default is true.

Returns:
None

Definition at line 413 of file IPKIFScvpClient.cpp.

Referenced by LoadPathProcessingComponents().

bool IPKIFScvpClient::GetFetchValPolWhenLoading (  )  const [virtual]

Interface: External

Return the instruction that determines if a validation policy is retrieved when SCVP is loaded. The default is true.

Returns:
None

Definition at line 426 of file IPKIFScvpClient.cpp.

Referenced by SavePathProcessingComponents().

CPKIFOIDPtr IPKIFScvpClient::GetValidationPolicy (  )  const

Definition at line 486 of file IPKIFScvpClient.cpp.

void IPKIFScvpClient::SetValidationPolicy ( CPKIFOIDPtr &  valPol  ) 

Definition at line 490 of file IPKIFScvpClient.cpp.

void IPKIFScvpClient::SetSigningCredential ( CPKIFCredentialPtr &  cred  )  [virtual]

Interface: External

Set the credential used to sign outbound requests.

Returns:
None

Definition at line 193 of file IPKIFScvpClient.cpp.

Referenced by LoadPathProcessingComponents().

CPKIFCredentialPtr IPKIFScvpClient::GetSigningCredential (  )  const [virtual]

Interface: External

Get the credential used to sign outbound requests.

Returns:
CPKIFCredentialPtr

Definition at line 205 of file IPKIFScvpClient.cpp.

Referenced by CPKIFScvpPathBuildAndValidate::BuildAndValidatePath(), CPKIFScvpPathBuild::BuildPath(), and SavePathProcessingComponents().

void IPKIFScvpClient::AddNamespace ( CPKIFGeneralSubtreePtr &  name  )  [virtual]

Interface: External

Add a namespace that determine if the colleague is consulted during path processing.

Returns:
None

Definition at line 438 of file IPKIFScvpClient.cpp.

Referenced by LoadPathProcessingComponents().

CPKIFGeneralSubtreeList IPKIFScvpClient::GetNamespaces (  )  [virtual]

Interface: External

Get the namespaces that determine if the colleague is consulted during path processing.

Returns:
CPKIFGeneralSubtreeList

Definition at line 453 of file IPKIFScvpClient.cpp.

Referenced by SavePathProcessingComponents().

bool IPKIFScvpClient::CheckNamespaces ( const CPKIFCertificatePtr &  cert  ) 

void IPKIFScvpClient::SetMediator ( IPKIFMediatorPtr m  )  [virtual]

Interface: External

Set the mediator collection that is used to verify signed SCVP responses.

Returns:
None

Definition at line 340 of file IPKIFScvpClient.cpp.

Referenced by LoadPathProcessingComponents().

IPKIFMediatorPtr IPKIFScvpClient::GetMediator (  )  const [virtual]

Interface: External

Get the mediator collection that is used to verify signed SCVP responses.

Returns:
IPKIFMediatorPtr

Definition at line 352 of file IPKIFScvpClient.cpp.

Referenced by CPKIFScvpPathBuildAndValidate::BuildAndValidatePath(), CPKIFScvpPathBuild::BuildPath(), CertPathWantBackToResultsAndStores(), CertPathWantBackToResultsAndStoresForDpd(), SavePathProcessingComponents(), StickCrlsFromWantBackInCrlStore(), and VerifyResponseSignature().

void IPKIFScvpClient::SetPathSettings ( CPKIFPathSettingsPtr &  settings  )  [virtual]

Interface: External

Set the path settings that are used to verify signed SCVP responses.

Returns:
None

Definition at line 364 of file IPKIFScvpClient.cpp.

Referenced by LoadPathProcessingComponents().

CPKIFPathSettingsPtr IPKIFScvpClient::GetPathSettings (  )  const [virtual]

Interface: External

Get the path settings that are used to verify signed SCVP responses.

Returns:
CPKIFPathSettingsPtr

Definition at line 376 of file IPKIFScvpClient.cpp.

Referenced by SavePathProcessingComponents().

void IPKIFScvpClient::SetPathSettingsForValPol ( CPKIFPathSettingsPtr &  settings  )  [virtual]

Interface: External

Set the path settings that are used to customize the val pol stuff in CVRequests.

Returns:
None

Definition at line 388 of file IPKIFScvpClient.cpp.

Referenced by LoadPathProcessingComponents().

CPKIFPathSettingsPtr IPKIFScvpClient::GetPathSettingsForValPol (  )  const [virtual]

Interface: External

Get the path settings that are used to customize the val pol stuff in CVRequests.

Returns:
CPKIFPathSettingsPtr

Definition at line 400 of file IPKIFScvpClient.cpp.

Referenced by SavePathProcessingComponents().

void IPKIFScvpClient::SetWantBacksFromResponse ( CPKIFReplyWantBack_ExtDataHandlerPtr &  wantBacks  )  [virtual]

Interface: External

This function sets wantBacks from the response

Returns:
CPKIFContentInfoPtr

Definition at line 599 of file IPKIFScvpClient.cpp.

Referenced by CPKIFScvpPathBuildAndValidate::BuildAndValidatePath(), and CPKIFScvpPathBuild::BuildPath().

CPKIFReplyWantBack_ExtDataHandlerPtr IPKIFScvpClient::GetWantBacksFromResponse (  )  const [virtual]

Interface: External

Return the live pointer. this is relied upon in the VerifyXXXWB_ER family of functions.

Returns:
CPKIFReplyWantBack_ExtDataHandlerPtr

Definition at line 612 of file IPKIFScvpClient.cpp.

Referenced by VerifyCertPathWB_ER(), VerifyPartialPathWB_ER(), VerifyPKCCertWB_ER(), and VerifyRevInfoWB_ER().


The documentation for this class was generated from the following files:

Generated on Mon Nov 15 11:21:00 2010 for PublicKeyInfrastructureFramework(PKIF) by  doxygen 1.5.6