libcamgm
IssuerAlternativeNameExtension.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: IssuerAlternativeNameExtension.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_ISSUER_ALTERNATIVE_NAME_EXTENSION_HPP
23 #define CA_MGM_ISSUER_ALTERNATIVE_NAME_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/LiteralValues.hpp>
29 #include <ca-mgm/PtrTypes.hpp>
30 
31 
32 namespace CA_MGM_NAMESPACE {
33 
34  class CA;
35  class CAConfig;
36  class IssuerAlternativeNameExtImpl;
37 
39  public:
41 
42  IssuerAlternativeNameExt(bool copyIssuer,
43  const std::list<LiteralValue> &alternativeNameList);
44 
45  IssuerAlternativeNameExt(CAConfig* caConfig, Type type);
46 
48 
49  virtual ~IssuerAlternativeNameExt();
50 
51 #ifndef SWIG
52 
54  operator=(const IssuerAlternativeNameExt& extension);
55 
56 #endif
57 
58  void
59  setCopyIssuer(bool copyIssuer);
60 
61  bool
62  getCopyIssuer() const;
63 
64  void
65  setAlternativeNameList(const std::list<LiteralValue> &alternativeNameList);
66 
67  std::list<LiteralValue>
68  getAlternativeNameList() const;
69 
70  void
71  addIssuerAltName(const LiteralValue& altName);
72 
73  virtual void
74  commit2Config(CA& ca, Type type) const;
75 
76  virtual bool
77  valid() const;
78 
79  virtual std::vector<std::string>
80  verify() const;
81 
82  virtual std::vector<std::string>
83  dump() const;
84 
85  private:
87 
88  };
89 
90 }
91 
92 #endif // CA_MGM_ISSUER_ALTERNATIVE_NAME_EXTENSION_HPP
Definition: ExtensionBase.hpp:34
ca_mgm::RWCOW_pointer< IssuerAlternativeNameExtImpl > m_impl
Definition: IssuerAlternativeNameExtension.hpp:86
Managing a CA repository.
Definition: CA.hpp:54
Definition: CAConfig.hpp:43
Definition: IssuerAlternativeNameExtension.hpp:38
Type
Definition: CommonData.hpp:39
Definition: LiteralValues.hpp:41