ValidationPolicy.h

Go to the documentation of this file.
00001 
00010 #ifndef __VALIDATIONPOLICY_H__
00011 #define __VALIDATIONPOLICY_H__
00012 
00013 #include "PKIFSCVPDLL.h"
00014 
00015 // forward declarations
00016 struct CPKIFValidationPolicyImpl;
00017 
00018 FD_SMART_PTR(CPKIFKeyUsage);
00019 FD_SMART_PTR(CPKIFPKCReference);
00020 FD_LIST_PTR(CPKIFPKCReference);
00021 FD_LIST_PTR(CPKIFKeyUsage);
00022 FD_LIST_PTR(CPKIFPolicyInformation);
00023 FD_LIST_PTR(CPKIFOID);
00024 
00027 typedef CPKIFAlgorithmIdentifier CPKIFValidationPolRef;
00030 typedef CPKIFAlgorithmIdentifier CPKIFValidationAlg;
00031 
00032 DECLARE_SMART_POINTERS(CPKIFValidationPolRef);
00033 DECLARE_SMART_POINTERS(CPKIFValidationAlg);
00034 
00035 
00057 class PKIFSCVP_API CPKIFValidationPolicy
00058 {
00059 public:
00060     CPKIFValidationPolicy();
00061     CPKIFValidationPolicy(const CPKIFBufferPtr& valPol);
00062     virtual ~CPKIFValidationPolicy(void);
00063 
00064     enum {EXPLICIT_POLICY, POLICY_MAPPING, ANY_POLICY};
00065 
00066     //req field
00067     void SetValidationPolRef(CPKIFValidationPolRefPtr& valPolRef);
00068     CPKIFValidationPolRefPtr GetValidationPolRef() const;
00069 
00070     //optional field
00071     void SetInitialExplicitPolicyIndicator();
00072     bool GetInitialExplicitPolicyIndicator();
00073 
00074     //optional field
00075     void SetInitialPolicyMappingInhibitIndicator();
00076     bool GetInitialPolicyMappingInhibitIndicator();
00077 
00078     //optional field
00079     void SetInitialInhibitAnyPolicyIndicator();
00080     bool GetInitialInhibitAnyPolicyIndicator();
00081 
00082     //optional field
00083     void SetInitialPolicySet(CPKIFPolicyInformationListPtr& initPolSet);
00084     void GetInitialPolicySet(CPKIFPolicyInformationListPtr& initPolSet) const;
00085 
00086     //optional field
00087     void SetValidationAlg(CPKIFValidationAlgPtr& valAlg);
00088     CPKIFValidationAlgPtr GetValidationAlg() const;
00089 
00090     //optional field
00091     void SetKeyUsages(CPKIFKeyUsageListPtr& keyUsages);
00092     void GetKeyUsages(CPKIFKeyUsageListPtr& keyUsages) const;
00093 
00094     //optional field
00095     void SetEKUs(CPKIFOIDListPtr& ekus);
00096     void GetEKUs(CPKIFOIDListPtr& ekus) const;
00097 
00098     void SetSKUs(CPKIFOIDListPtr& skus);
00099     void GetSKUs(CPKIFOIDListPtr& skus) const;
00100 
00101     void SetTAs(CPKIFPKCReferenceListPtr& tas);
00102     void GetTAs(CPKIFPKCReferenceListPtr& tas) const;
00103 
00104 private:
00106     CPKIFValidationPolicy(const CPKIFValidationPolicy& copy);
00108     CPKIFValidationPolicy& operator=(const CPKIFValidationPolicy& rhs); 
00109 
00110     struct CPKIFValidationPolicyImpl *m_impl;
00111 };
00112 DECLARE_SMART_POINTERS(CPKIFValidationPolicy);
00113 
00114 
00115 
00116 #endif //__VALIDATIONPOLICY_H__

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