libcamgm
SubjectKeyIdentifierExtension.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: SubjectKeyIdentifierExtension.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_SUBJECT_KEY_IDENTIFIER_EXTENSION_HPP
23 #define CA_MGM_SUBJECT_KEY_IDENTIFIER_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 SubjectKeyIdentifierExtImpl;
35 
37  public:
39  SubjectKeyIdentifierExt(CAConfig* caConfig, Type type);
40  SubjectKeyIdentifierExt(bool autoDetect, const std::string& keyid = std::string());
42  virtual ~SubjectKeyIdentifierExt();
43 
44 #ifndef SWIG
45 
47  operator=(const SubjectKeyIdentifierExt& extension);
48 
49 #endif
50 
51  void
52  setSubjectKeyIdentifier(bool autoDetect, const std::string& keyId = std::string());
53 
54  bool
55  isAutoDetectionEnabled() const;
56 
62  std::string
63  getKeyID() const;
64 
65  virtual void
66  commit2Config(CA& ca, Type type) const;
67 
68  virtual bool
69  valid() const;
70 
71  virtual std::vector<std::string>
72  verify() const;
73 
74  virtual std::vector<std::string>
75  dump() const;
76 
77  private:
79  };
80 
81 }
82 
83 #endif // CA_MGM_SUBJECT_KEY_IDENTIFIER_EXTENSION_HPP
Definition: ExtensionBase.hpp:34
Managing a CA repository.
Definition: CA.hpp:54
Definition: SubjectKeyIdentifierExtension.hpp:36
ca_mgm::RWCOW_pointer< SubjectKeyIdentifierExtImpl > m_impl
Definition: SubjectKeyIdentifierExtension.hpp:78
Definition: CAConfig.hpp:43
Type
Definition: CommonData.hpp:39