00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef LIMAL_CA_MGM_AUTHORITY_KEY_IDENTIFIER_EXTENSION_HPP
00023 #define LIMAL_CA_MGM_AUTHORITY_KEY_IDENTIFIER_EXTENSION_HPP
00024
00025 #include <limal/ca-mgm/config.h>
00026 #include <limal/ca-mgm/CommonData.hpp>
00027 #include <limal/ca-mgm/ExtensionBase.hpp>
00028 #include <blocxx/COWIntrusiveReference.hpp>
00029
00030 namespace LIMAL_NAMESPACE {
00031
00032 namespace CA_MGM_NAMESPACE {
00033
00034 class AuthorityKeyIdentifierExtImpl;
00035
00036 class AuthorityKeyIdentifierExt : public ExtensionBase {
00037 public:
00038
00039 AuthorityKeyIdentifierExt();
00040 AuthorityKeyIdentifierExt(const AuthorityKeyIdentifierExt& extension);
00041 virtual ~AuthorityKeyIdentifierExt();
00042
00043 #ifndef SWIG
00044
00045 AuthorityKeyIdentifierExt&
00046 operator=(const AuthorityKeyIdentifierExt& extension);
00047
00048 #endif
00049
00053 String
00054 getKeyID() const;
00055
00059 String
00060 getDirName() const;
00061
00065 String
00066 getSerial() const;
00067
00073 virtual bool
00074 valid() const;
00075
00083 virtual blocxx::StringArray
00084 verify() const;
00085
00089 virtual blocxx::StringArray
00090 dump() const;
00091
00092 protected:
00093 blocxx::COWIntrusiveReference<AuthorityKeyIdentifierExtImpl> m_impl;
00094
00095 void
00096 setKeyID(const String& kid);
00097
00098 void
00099 setDirName(const String& dirName);
00100
00101 void
00102 setSerial(const String& serial);
00103
00104 private:
00105 virtual void commit2Config(CA& ca, Type type) const;
00106 };
00107
00108 }
00109 }
00110
00111 #endif // LIMAL_CA_MGM_AUTHORITY_KEY_IDENTIFIER_EXTENSION_HPP