BuilderUtils.h
Go to the documentation of this file.00001
00010 #ifndef __BUILDERUTILS_H__
00011 #define __BUILDERUTILS_H__
00012
00013 #include "PKIFdll.h"
00014 #include "IPKIFTrustAnchor.h"
00015 #include <vector>
00016
00017
00018
00019
00020 FD_NODE_LIST_PTR(CPKIFCertificateNodeEntry);
00021 FD_SMART_PTR(CPKIFTrustRoot);
00022 FD_SMART_PTR(CPKIFPathSettings);
00023 FD_SMART_PTR(CPKIFName);
00024 FD_SMART_PTR(CPKIFCertificateNodeListWithSourceInfo);
00025 FD_SMART_PTR(CPKIFCertificate);
00026 FD_LIST_PTR(CPKIFNameAndKeyWithScore);
00027
00028 class CPKIFPathValidationResults;
00029
00030
00031 bool PathOK(CPKIFCertificateNodeList& builtPath, IPKIFTrustAnchorPtr& curRoot, CPKIFPathSettingsPtr& settings, CPKIFPathValidationResults& tmpResults);
00032
00033 void IgnoreNotIssuedBy(CPKIFCertificateNodeListWithSourceInfoPtr& pos, CPKIFNamePtr& issuerName);
00034 void ClearAllIgnore(CPKIFCertificateNodeListWithSourceInfoPtr& tablePos);
00035 void RemoveAllIssuedBy(CPKIFCertificateNodeListWithSourceInfoPtr& pos, CPKIFNamePtr& prevName);
00036 void RemoveAllIssuedBy(CPKIFNameAndKeyWithScoreListPtr& pos, CPKIFNamePtr& prevName);
00037 void RemoveAllIssuedTo(CPKIFNameAndKeyWithScoreListPtr& pos, CPKIFNamePtr& prevName);
00038 bool SetNextToIgnore(CPKIFCertificateNodeListWithSourceInfoPtr& tablePos);
00039
00040 void IgnoreNotIssuedBy(CPKIFNameAndKeyWithScoreListPtr& pos, CPKIFNamePtr& issuerName);
00041 void ClearAllIgnore(CPKIFNameAndKeyWithScoreListPtr& tablePos);
00042 bool SetNextToIgnore(CPKIFNameAndKeyWithScoreListPtr& tablePos);
00043
00044
00045 CPKIFCertificateNodeEntryPtr GetFirstNonIgnoredNodeNotAlreadyInPathIssuedBy(CPKIFCertificateNodeListWithSourceInfoPtr& pos, CPKIFCertificateNodeList& builtPath, IPKIFNameAndKey* issuer, CPKIFPathSettingsPtr& settings);
00046 CPKIFNameAndKeyWithScorePtr GetFirstNonIgnoredNodeNotAlreadyInPathIssuedBy(CPKIFNameAndKeyWithScoreListPtr& pos, CPKIFNameAndKeyWithScoreList& builtPath, IPKIFNameAndKeyPtr& issuer, CPKIFPathSettingsPtr& settings);
00047
00048
00049
00050 void DumpTable( std::vector<CPKIFCertificateNodeListWithSourceInfoPtr>& table, const char* str);
00051
00052
00053 #endif