libcamgm
BasicConstraintsExtension.hpp
Go to the documentation of this file.
1 /*---------------------------------------------------------------------\
2 | |
3 | _ _ _ _ __ _ |
4 | | | | | | \_/ | / \ | | |
5 | | | | | | |_| | / /\ \ | | |
6 | | |__ | | | | | | / ____ \ | |__ |
7 | |____||_| |_| |_|/ / \ \|____| |
8 | |
9 | ca-mgm library |
10 | |
11 | (C) SUSE Linux Products GmbH |
12 \----------------------------------------------------------------------/
13 
14  File: BasicConstraintsExtension.hpp
15 
16  Author: <Michael Calmer> <mc@suse.de>
17  Maintainer: <Michael Calmer> <mc@suse.de>
18 
19  Purpose:
20 
21 /-*/
22 #ifndef CA_MGM_BASIC_CONSTRAINTS_EXTENSION_HPP
23 #define CA_MGM_BASIC_CONSTRAINTS_EXTENSION_HPP
24 
25 #include <ca-mgm/config.h>
26 #include <ca-mgm/CommonData.hpp>
27 #include <ca-mgm/ExtensionBase.hpp>
28 #include <ca-mgm/PtrTypes.hpp>
29 
30 namespace CA_MGM_NAMESPACE {
31 
32  class CA;
33  class CAConfig;
34  class BasicConstraintsExtImpl;
35 
43  {
44  public:
46  BasicConstraintsExt(CAConfig* caConfig, Type type);
47  BasicConstraintsExt(bool isCa, int32_t pathLength=-1);
48  BasicConstraintsExt(const BasicConstraintsExt& extension);
49  virtual ~BasicConstraintsExt();
50 
51 #ifndef SWIG
52 
53  BasicConstraintsExt& operator=(const BasicConstraintsExt& extension);
54 
55 #endif
56 
64  void setBasicConstraints(bool isCa, int32_t pathLength=-1);
65 
69  bool isCA() const;
70 
74  int32_t getPathLength() const;
75 
82  virtual void commit2Config(CA& ca, Type type) const;
83 
89  virtual bool valid() const;
90 
98  virtual std::vector<std::string> verify() const;
99 
103  virtual std::vector<std::string> dump() const;
104 
105  private:
107 
108  };
109 
110 }
111 
112 #endif // CA_MGM_BASIC_CONSTRAINTS_EXTENSION_HPP
Definition: ExtensionBase.hpp:34
Managing a CA repository.
Definition: CA.hpp:54
ca_mgm::RWCOW_pointer< BasicConstraintsExtImpl > m_impl
Definition: BasicConstraintsExtension.hpp:106
Definition: CAConfig.hpp:43
Type
Definition: CommonData.hpp:39
Definition: BasicConstraintsExtension.hpp:42