activemq-cpp-3.9.5
X509Certificate.h
Go to the documentation of this file.
1/*
2 * Licensed to the Apache Software Foundation (ASF) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * The ASF licenses this file to You under the Apache License, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18#ifndef _DECAF_SECURITY_CERT_X509CERTIFICATE_H_
19#define _DECAF_SECURITY_CERT_X509CERTIFICATE_H_
20
22
23#include <decaf/util/Config.h>
24#include <decaf/util/Date.h>
25
26namespace decaf {
27namespace security {
28namespace auth {
29 class X500Principal;
30}
31namespace cert {
32
37 public:
38
39 virtual ~X509Certificate() {
40 }
41
42 virtual void checkValidity() const = 0;
43
44 virtual void checkValidity(const decaf::util::Date& date) const = 0;
45
46 virtual int getBasicConstraints() const = 0;
47
48 virtual void getIssuerUniqueID(std::vector<bool>& output) const = 0;
49
50 virtual const auth::X500Principal* getIssuerX500Principal() const = 0;
51
52 virtual void getKeyUsage(std::vector<unsigned char>& output) const = 0;
53
54 virtual decaf::util::Date getNotAfter() const = 0;
55
56 virtual decaf::util::Date getNotBefore() const = 0;
57
58 //virtual BigInteger getSerialNumber() const = 0;
59
60 virtual std::string getSigAlgName() const = 0;
61
62 virtual std::string getSigAlgOID() const = 0;
63
64 virtual void getSigAlgParams(std::vector<unsigned char>& output) const = 0;
65
66 virtual void getSignature(std::vector<unsigned char>& output) const = 0;
67
68 virtual void getSubjectUniqueID(std::vector<bool>& output) const = 0;
69
70 virtual const auth::X500Principal* getSubjectX500Principal() const = 0;
71
72 virtual void getTBSCertificate(std::vector<unsigned char>& output) const = 0;
73
74 virtual int getVersion() const = 0;
75
76 };
77
78}}}
79
80#endif /*_DECAF_SECURITY_CERT_X509CERTIFICATE_H_*/
Base interface for all identity certificates.
Definition Certificate.h:41
Base interface for all identity certificates.
Definition X509Certificate.h:36
virtual void getKeyUsage(std::vector< unsigned char > &output) const =0
virtual void getSubjectUniqueID(std::vector< bool > &output) const =0
virtual decaf::util::Date getNotAfter() const =0
virtual void getSigAlgParams(std::vector< unsigned char > &output) const =0
virtual const auth::X500Principal * getIssuerX500Principal() const =0
virtual void getIssuerUniqueID(std::vector< bool > &output) const =0
virtual decaf::util::Date getNotBefore() const =0
virtual void checkValidity() const =0
virtual void getTBSCertificate(std::vector< unsigned char > &output) const =0
virtual void checkValidity(const decaf::util::Date &date) const =0
virtual const auth::X500Principal * getSubjectX500Principal() const =0
virtual void getSignature(std::vector< unsigned char > &output) const =0
virtual int getBasicConstraints() const =0
virtual std::string getSigAlgName() const =0
virtual std::string getSigAlgOID() const =0
virtual ~X509Certificate()
Definition X509Certificate.h:39
Wrapper class around a time value in milliseconds.
Definition Date.h:34
#define DECAF_API
Definition Config.h:29
Definition X500Principal.h:30
Definition Certificate.h:34
Definition Engine.h:26
Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.
Definition AprPool.h:25