diff options
Diffstat (limited to 'src/cert')
-rw-r--r-- | src/cert/cvc/cvc_ca.h | 6 | ||||
-rw-r--r-- | src/cert/cvc/cvc_key.h | 51 | ||||
-rw-r--r-- | src/cert/cvc/cvc_req.h | 88 |
3 files changed, 77 insertions, 68 deletions
diff --git a/src/cert/cvc/cvc_ca.h b/src/cert/cvc/cvc_ca.h index f775e7983..b1296cbfb 100644 --- a/src/cert/cvc/cvc_ca.h +++ b/src/cert/cvc/cvc_ca.h @@ -42,14 +42,8 @@ class BOTAN_DLL EAC1_1_CVC_CA ASN1_Ced ced, ASN1_Cex cex, RandomNumberGenerator& rng); - - private: - }; - - - } #endif diff --git a/src/cert/cvc/cvc_key.h b/src/cert/cvc/cvc_key.h index 1867f04f4..e24c42e41 100644 --- a/src/cert/cvc/cvc_key.h +++ b/src/cert/cvc/cvc_key.h @@ -14,24 +14,39 @@ namespace Botan { -/************************************************* - * EAC CVC Public Key Encoder * -*************************************************/ - class EAC1_1_CVC_Encoder - { - public: - virtual MemoryVector<byte> public_key(AlgorithmIdentifier const&) const = 0; - virtual ~EAC1_1_CVC_Encoder() {} - }; +/** +* This class represents EAC 1.1 CVC public key encoders. +*/ +class BOTAN_DLL EAC1_1_CVC_Encoder + { + public: + /** + * Get the DER encoded CVC public key. + * @param alg_id the algorithm identifier to use in the encoding + * @return the DER encoded public key + */ + virtual MemoryVector<byte> + public_key(const AlgorithmIdentifier& enc) const = 0; -/************************************************* - * EAC CVC Public Key Decoder * -*************************************************/ - class EAC1_1_CVC_Decoder - { - public: - virtual AlgorithmIdentifier const public_key(const MemoryRegion<byte>&) = 0; - virtual ~EAC1_1_CVC_Decoder() {} - }; + virtual ~EAC1_1_CVC_Encoder() {} + }; + +/** +* This class represents EAC 1.1 CVC public key decoders. +*/ +class BOTAN_DLL EAC1_1_CVC_Decoder + { + public: + /** + * Decode a CVC public key. + * @param enc the DER encoded public key to decode + * @return the algorithm identifier found in the encoded public key + */ + virtual AlgorithmIdentifier const + public_key(const MemoryRegion<byte>& enc) = 0; + + virtual ~EAC1_1_CVC_Decoder() {} + }; } + #endif diff --git a/src/cert/cvc/cvc_req.h b/src/cert/cvc/cvc_req.h index 674598a20..510e9b70a 100644 --- a/src/cert/cvc/cvc_req.h +++ b/src/cert/cvc/cvc_req.h @@ -11,51 +11,51 @@ #include <botan/enums.h> #include <botan/cvc_gen_cert.h> #include <botan/cvc_req.h> -namespace Botan -{ - - /** - * This class represents TR03110 v1.1 EAC CV Certificate Requests. - */ - class EAC1_1_Req : public EAC1_1_gen_CVC<EAC1_1_Req> - { - friend class EAC1_1_Req_CA; - friend class EAC1_1_ADO; - friend class EAC1_1_obj<EAC1_1_Req>; - - public: - bool operator==(const EAC1_1_Req&) const; - /** - * Construct a CVC request from a data source. - * @param source the data source - */ - EAC1_1_Req(std::tr1::shared_ptr<DataSource> source); - /** - * Construct a CVC request from a DER encoded CVC reqeust file. - * @param str the path to the DER encoded file - */ - EAC1_1_Req(const std::string& str); - virtual ~EAC1_1_Req(){} - - protected: - - private: - void force_decode(); - EAC1_1_Req() - {} - - }; - - /************************************************* - *Comparison * - *************************************************/ - inline bool operator!=(EAC1_1_Req const& lhs, EAC1_1_Req const& rhs) - { - return !(lhs == rhs); - } +namespace Botan { + +/** +* This class represents TR03110 v1.1 EAC CV Certificate Requests. +*/ +class BOTAN_DLL EAC1_1_Req : public EAC1_1_gen_CVC<EAC1_1_Req> + { + public: + friend class EAC1_1_Req_CA; + friend class EAC1_1_ADO; + friend class EAC1_1_obj<EAC1_1_Req>; + + /** + * Compare for equality with other + * @param other compare for equality with this object + */ + bool operator==(const EAC1_1_Req& other) const; + + /** + * Construct a CVC request from a data source. + * @param source the data source + */ + EAC1_1_Req(std::tr1::shared_ptr<DataSource> source); + + /** + * Construct a CVC request from a DER encoded CVC reqeust file. + * @param str the path to the DER encoded file + */ + EAC1_1_Req(const std::string& str); + + virtual ~EAC1_1_Req(){} + private: + void force_decode(); + EAC1_1_Req() {} + }; -} +/************************************************* +* Comparison Operator * +*************************************************/ +inline bool operator!=(EAC1_1_Req const& lhs, EAC1_1_Req const& rhs) + { + return !(lhs == rhs); + } -#endif // h-guard +} +#endif |