limal-ca-mgm
X509v3CRLGenerationExtensions.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: X509v3CRLGenerationExtensions.hpp
15 
16  Author: <Michael Calmer> <mc@suse.de>
17  Maintainer: <Michael Calmer> <mc@suse.de>
18 
19  Purpose:
20 
21 /-*/
22 
23 #ifndef LIMAL_CA_MGM_X509V3_CRL_GENERATION_EXTENSIONS_HPP
24 #define LIMAL_CA_MGM_X509V3_CRL_GENERATION_EXTENSIONS_HPP
25 
26 #include <limal/ca-mgm/config.h>
30 #include <blocxx/COWIntrusiveReference.hpp>
31 
32 namespace LIMAL_NAMESPACE
33 {
34 namespace CA_MGM_NAMESPACE
35 {
36 
37  class CA;
38  class CAConfig;
39  class X509v3CRLGenerationExtsImpl;
40 
47  public:
49  X509v3CRLGenerationExts(CAConfig* caConfig, Type type);
51  virtual ~X509v3CRLGenerationExts();
52 
53 #ifndef SWIG
54 
56  operator=(const X509v3CRLGenerationExts& extension);
57 
58 #endif
59 
60  void
61  setAuthorityKeyIdentifier(const AuthorityKeyIdentifierGenerateExt &ext);
62 
64  getAuthorityKeyIdentifier() const;
65 
67  authorityKeyIdentifier();
68 
69  void
70  setIssuerAlternativeName(const IssuerAlternativeNameExt &ext);
71 
73  getIssuerAlternativeName() const;
74 
76  issuerAlternativeName();
77 
78  void
79  commit2Config(CA& ca, Type type) const;
80 
81  virtual bool
82  valid() const;
83 
84  virtual blocxx::StringArray
85  verify() const;
86 
87  virtual blocxx::StringArray
88  dump() const;
89 
90  private:
91  blocxx::COWIntrusiveReference<X509v3CRLGenerationExtsImpl> m_impl;
92 
93  };
94 
95 }
96 }
97 #endif //LIMAL_CA_MGM_X509V3_CRL_GENERATION_EXTENSIONS_HPP