TSTInfo.h
Go to the documentation of this file.00001
00009 #ifndef __TSTINFO_H__
00010 #define __TSTINFO_H__
00011
00012 #include "PKIFdll.h"
00013 #include "PKIFTSPDLL.h"
00014 #include "IPKIFHasExtensions.h"
00015
00016
00017 struct CPKIFTSTInfoImpl;
00018
00019 FD_SMART_PTR(CPKIFAccuracy);
00020 FD_SMART_PTR(CPKIFGeneralName);
00021 FD_SMART_PTR(CPKIFOID);
00022 FD_SMART_PTR(CPKIFMessageImprint);
00023 FD_SMART_PTR(CPKIFTime);
00024 FD_SMART_PTR(CPKIFBuffer);
00025 FD_SMART_PTR(CPKIFX509Extension);
00026
00050 class ASN1CGeneralizedTime;
00051 class PKIFTSP_API CPKIFTSTInfo: public IPKIFHasExtensions
00052 {
00053 public:
00054 CPKIFTSTInfo();
00055 virtual ~CPKIFTSTInfo(void);
00056
00057
00058 int GetVersion() const;
00059
00060
00061 void SetPolicy(CPKIFOIDPtr& policy);
00062 CPKIFOIDPtr GetPolicy() const;
00063
00064
00065 void SetMessageImprint(CPKIFMessageImprintPtr& messageImprint);
00066 CPKIFMessageImprintPtr GetMessageImprint() const;
00067
00068
00069 void SetSerialNumber(CPKIFStringPtr& serialNumber);
00070 const char* GetSerialNumber() const;
00071
00072
00073 void SetGeneralizedTime(CPKIFTimePtr& genTime);
00074
00075 void GetExtensionByOID(const CPKIFOID& oid, CPKIFX509ExtensionPtr& ref);
00076 void GetEncodedExtensions (CPKIFBufferPtr& buf);
00077
00078 CPKIFTimePtr GetGeneralizedTime() const;
00079
00080
00081 void SetAccuracy(CPKIFAccuracyPtr& accuracy);
00082 CPKIFAccuracyPtr GetAccuracy() const;
00083
00084
00085 void SetOrdering(bool ordering);
00086 bool GetOrdering() const;
00087
00088
00089 void SetNonce(CPKIFStringPtr& nonce);
00090 const char* GetNonce() const;
00091
00092
00093 void SetTSA(CPKIFGeneralNamePtr& tsa);
00094 CPKIFGeneralNamePtr GetTSA() const;
00095
00096
00097
00098
00099
00100 CPKIFBufferPtr Encode();
00101 void Decode(CPKIFBufferPtr& bp);
00102
00103 bool ExtensionsPresent() const;
00104
00105 template <class T> boost::shared_ptr<T> GetExtension();
00106
00107
00108 private:
00110 CPKIFTSTInfo(const CPKIFTSTInfo& copy);
00112 CPKIFTSTInfo& operator=(const CPKIFTSTInfo& rhs);
00113
00114 struct CPKIFTSTInfoImpl *m_impl;
00115 };
00116 DECLARE_SMART_POINTERS(CPKIFTSTInfo);
00117
00119
00120
00121
00122
00123
00124
00125
00126
00127
00128
00129
00130
00131
00132
00133
00134
00135
00136
00137
00138
00139
00140
00141
00142
00143
00144
00145
00146
00147
00148
00149
00150
00151
00152
00153
00154
00155
00156
00157
00158
00159
00160
00161
00162
00163
00164
00165
00166
00167
00168
00169
00170 #endif //TSTInfo
00171