|
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: ExtendedKeyUsageExt.hpp 00015 00016 Author: <Michael Calmer> <mc@suse.de> 00017 Maintainer: <Michael Calmer> <mc@suse.de> 00018 00019 Purpose: 00020 00021 /-*/ 00022 #ifndef LIMAL_CA_MGM_EXTENDED_KEY_USAGE_EXT_HPP 00023 #define LIMAL_CA_MGM_EXTENDED_KEY_USAGE_EXT_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 CA; 00035 class CAConfig; 00036 class ExtendedKeyUsageExtImpl; 00037 00044 class ExtendedKeyUsageExt : public ExtensionBase { 00045 public: 00046 ExtendedKeyUsageExt(); 00047 ExtendedKeyUsageExt(CAConfig* caConfig, Type type); 00048 00053 ExtendedKeyUsageExt(const StringList& extKeyUsages); 00054 00055 ExtendedKeyUsageExt(const ExtendedKeyUsageExt& extension); 00056 00057 virtual ~ExtendedKeyUsageExt(); 00058 00059 #ifndef SWIG 00060 00061 ExtendedKeyUsageExt& 00062 operator=(const ExtendedKeyUsageExt& extension); 00063 00064 #endif 00065 00085 void 00086 setExtendedKeyUsage(const StringList& usageList); 00087 00088 00092 StringList 00093 getExtendedKeyUsage() const; 00094 00098 bool 00099 isEnabledFor(const String& extKeyUsage) const; 00100 00101 00108 virtual void 00109 commit2Config(CA& ca, Type type) const; 00110 00116 virtual bool 00117 valid() const; 00118 00126 virtual blocxx::StringArray 00127 verify() const; 00128 00132 virtual blocxx::StringArray 00133 dump() const; 00134 00135 private: 00136 blocxx::COWIntrusiveReference<ExtendedKeyUsageExtImpl> m_impl; 00137 00138 bool 00139 checkValue(const String& value) const; 00140 00141 }; 00142 00143 } 00144 } 00145 00146 #endif //LIMAL_CA_MGM_EXTENDED_KEY_USAGE_EXT_HPP
1.7.5.1