diff options
Diffstat (limited to 'src/cert/x509/pkcs10.h')
-rw-r--r-- | src/cert/x509/pkcs10.h | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/src/cert/x509/pkcs10.h b/src/cert/x509/pkcs10.h new file mode 100644 index 000000000..f688688ee --- /dev/null +++ b/src/cert/x509/pkcs10.h @@ -0,0 +1,46 @@ +/************************************************* +* PKCS #10 Header File * +* (C) 1999-2007 Jack Lloyd * +*************************************************/ + +#ifndef BOTAN_PKCS10_H__ +#define BOTAN_PKCS10_H__ + +#include <botan/x509_obj.h> +#include <botan/pkcs8.h> +#include <botan/datastor.h> +#include <vector> + +namespace Botan { + +/************************************************* +* PKCS #10 Certificate Request * +*************************************************/ +class BOTAN_DLL PKCS10_Request : public X509_Object + { + public: + Public_Key* subject_public_key() const; + + MemoryVector<byte> raw_public_key() const; + X509_DN subject_dn() const; + AlternativeName subject_alt_name() const; + Key_Constraints constraints() const; + std::vector<OID> ex_constraints() const; + + bool is_CA() const; + u32bit path_limit() const; + + std::string challenge_password() const; + + PKCS10_Request(DataSource&); + PKCS10_Request(const std::string&); + private: + void force_decode(); + void handle_attribute(const Attribute&); + + Data_Store info; + }; + +} + +#endif |