|
limal-ca-mgm
|
00001 /*---------------------------------------------------------------------\ 00002 | | 00003 | _ _ _ _ __ _ | 00004 | | | | | | \_/ | / \ | | | 00005 | | | | | | |_| | / /\ \ | | | 00006 | | |__ | | | | | | / ____ \ | |__ | 00007 | |____||_| |_| |_|/ / \ \|____| | 00008 | | 00009 | ca-mgm library | 00010 | | 00011 | (C) SUSE Linux Products GmbH | 00012 \----------------------------------------------------------------------/ 00013 00014 File: RequestGenerationData.hpp 00015 00016 Author: <Michael Calmer> <mc@suse.de> 00017 Maintainer: <Michael Calmer> <mc@suse.de> 00018 00019 Purpose: 00020 00021 /-*/ 00022 00023 #ifndef LIMAL_CA_MGM_REQUEST_GENERATION_DATA_HPP 00024 #define LIMAL_CA_MGM_REQUEST_GENERATION_DATA_HPP 00025 00026 #include <limal/ca-mgm/config.h> 00027 #include <limal/ca-mgm/CommonData.hpp> 00028 #include <limal/ca-mgm/DNObject.hpp> 00029 #include <limal/ca-mgm/X509v3RequestExtensions.hpp> 00030 #include <blocxx/COWIntrusiveReference.hpp> 00031 00032 namespace LIMAL_NAMESPACE 00033 { 00034 namespace CA_MGM_NAMESPACE 00035 { 00036 00037 class CA; 00038 class CAConfig; 00039 class RequestGenerationDataImpl; 00040 00046 class RequestGenerationData { 00047 public: 00048 RequestGenerationData(); 00049 00053 RequestGenerationData(CAConfig* caConfig, Type type); 00054 RequestGenerationData(const RequestGenerationData& data); 00055 virtual ~RequestGenerationData(); 00056 00057 #ifndef SWIG 00058 00059 RequestGenerationData& 00060 operator=(const RequestGenerationData& data); 00061 00062 #endif 00063 00064 void 00065 setSubjectDN(const DNObject dn); 00066 00067 DNObject 00068 getSubjectDN() const; 00069 00070 DNObject& 00071 subjectDN(); 00072 00073 void 00074 setKeysize(blocxx::UInt32 size); 00075 00076 blocxx::UInt32 00077 getKeysize() const; 00078 00079 void 00080 setMessageDigest(MD md); 00081 00082 MD 00083 getMessageDigest() const; 00084 00085 void 00086 setChallengePassword(const String &passwd); 00087 00088 String 00089 getChallengePassword() const; 00090 00091 void 00092 setUnstructuredName(const String &name); 00093 00094 String 00095 getUnstructuredName() const; 00096 00097 void 00098 setExtensions(const X509v3RequestExts &ext); 00099 00100 X509v3RequestExts 00101 getExtensions() const; 00102 00103 X509v3RequestExts& 00104 extensions(); 00105 00109 void 00110 commit2Config(CA& ca, Type type) const; 00111 00112 virtual bool 00113 valid() const; 00114 00115 virtual blocxx::StringArray 00116 verify() const; 00117 00118 virtual blocxx::StringArray 00119 dump() const; 00120 00121 private: 00122 blocxx::COWIntrusiveReference<RequestGenerationDataImpl> m_impl; 00123 00124 }; 00125 00126 } 00127 } 00128 #endif //LIMAL_CA_MGM_REQUEST_GENERATION_DATA_HPP
1.7.5.1